diff options
author | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
---|---|---|
committer | Jef <jef@targetspot.com> | 2024-09-24 08:54:57 -0400 |
commit | 20d28e80a5c861a9d5f449ea911ab75b4f37ad0d (patch) | |
tree | 12f17f78986871dd2cfb0a56e5e93b545c1ae0d0 /Src/resources/skins | |
parent | 537bcbc86291b32fc04ae4133ce4d7cac8ebe9a7 (diff) | |
download | winamp-20d28e80a5c861a9d5f449ea911ab75b4f37ad0d.tar.gz |
Initial community commit
Diffstat (limited to 'Src/resources/skins')
417 files changed, 40238 insertions, 0 deletions
diff --git a/Src/resources/skins/Bento/screenshot.png b/Src/resources/skins/Bento/screenshot.png Binary files differnew file mode 100644 index 00000000..d1515c9d --- /dev/null +++ b/Src/resources/skins/Bento/screenshot.png diff --git a/Src/resources/skins/Bento/scripts/mcvcore.m b/Src/resources/skins/Bento/scripts/mcvcore.m new file mode 100644 index 00000000..1d3feed4 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/mcvcore.m @@ -0,0 +1,487 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: mcvcore.m +Version: 4.5 + +Type: maki +Date: 13. Aug. 2007 - 11:22 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on drawer.m + from Winamp Modern, but extended to + 5 components presets! + Like in drawer.m I warn everybody not + to modify this script, cause it can be + harmed very fast! And you don't want + a buggy winamp skin, want you? + + Since script version 3.1 + (onesie build #022) + the script is devided into subscripts + for better debugging. +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +//define DEBUG +#define FILE_NAME "infocompcore.m" +#include <lib/com/debug.m> + +#include workingdir.m + +#define BIG_BENTO_WORKINGDIR 1 + +#ifdef BIG_BENTO_WORKINGDIR +#include ../../Big Bento/scripts/attribs/init_windowpage.m +#include ../../Big Bento/scripts/attribs/init_vis.m +#include ../../Big Bento/scripts/attribs/init_appearance.m +#else +#include ../../__codename_onesie/scripts/attribs/init_windowpage.m +#include ../../__codename_onesie/scripts/attribs/init_vis.m +#include ../../__codename_onesie/scripts/attribs/init_appearance.m +#endif + +#define VIS_GUID "{0000000A-000C-0010-FF7B-01014263450C}" + +#ifndef DOHIDEMCV +#define updateSaving // +#endif + +//define FIT_W2_COMP fit(sui_fi, 159, 0, 2, 0, -162, 1, 76, 0) +#define FIT_W2_COMP fit(sui_fi, 180, 0, 2, 0, -183, 1, 76, 0) +//define FIT_W_COMP fit(sui_fi, 81, 0, 2, 0, -84, 1, 76, 0) +#define FIT_W_COMP fit(sui_fi, 92, 0, 2, 0, -95, 1, 76, 0) +#define FIT_WO_COMP fit(sui_fi, 4, 0, 2, 0, -7, 1, 76, 0) + +Global Boolean bypasscancel; +Global Timer callbackTimer, tempDisable; + +#define CURR_COMP plsc +#include ../../Big Bento/scripts/mcvcore/defs.m + +#ifdef IC_COVERFLOW +#undef CURR_COMP +#define CURR_COMP cflow +#include mcvcore/defs.m +#endif + +Function fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh); + +Function switchToIcOnly(); +Function switchToCover(); +Function switchToVisCover(); +Function switchToVis(); +Function switchToEQ(); +Function switchToCfg(); +Function switchToVis_Full(); +Function updateFileInfo(); + +Function hideFi(); +Function showFi(); +Function hideCover(); +Function showCover(); +Function hideVis(); +Function showVis(); +Function hideVis_Full(); +Function showVis_Full(); +Function hideEq(); +Function showEq(); +Function hideCfg(); +Function showCfg(); +Function openIC(); +Function closeIC(); +Function openLC(); +Function closeLC(); +#ifdef DOHIDEMCV +Function hideMCV(); +#endif + +Function onHideFi(); +Function onShowFi(); +Function onHideCover(); +Function onShowCover(); +Function onHideVis(); +Function onShowVis(); +Function onHideVis_Full(); +Function onShowVis_Full(); +Function onHideEq(); +Function onShowEq(); +Function onHideCfg(); +Function onShowCfg(); +Function onCloseIC(); +Function onOpenIC(); +Function onhideMCV(); + +Function dc_hideFi(); +Function dc_showFi(); +Function dc_showEq(); +Function dc_hideEq(); +Function dc_showCfg(); +Function dc_hideCfg(); +Function dc_hideCover(); +Function dc_showCover(); +Function dc_hideVis(); +Function dc_showVis(); +Function dc_hideVis_Full(); +Function dc_showVis_Full(); + +Function updateFooter(); + +Function ProcessMenuResult (int a); + +#ifdef DOHIDEMCV +function updateSaving (int l); +#endif + +Global Group sg, sui_cover, sui_vis_full, sui_vis, sui_fi, sui_eq, sui_cfg, g_footer, g_visbtns; +Global WindowHolder sui_vis_wdh, sui_vis_full_wdh; +Global Layout main; +Global Boolean callback_showing_vis, callback_hiding_vis, callback_showing_vis_full, callback_hiding_vis_full, callback_showing_cover, callback_hiding_cover, callback_showing_fi, callback_hiding_fi, callback_hiding_eq, callback_showing_eq, callback_hiding_cfg, callback_showing_cfg; +Global Boolean showing_vis, hiding_vis, showing_vis_full, hiding_vis_full, showing_cover, hiding_cover, hiding_fi, showing_fi, showing_eq, hiding_eq, showing_cfg, hiding_cfg; +Global Boolean Mychange; +Global Boolean prevent_vis = 1; +Global Frame dualwnd, mainframe; +Global GuiObject footerGrid, sendToBtn; + +Global Popupmenu compMenu; +//Global Button compChoose, nowPlayingBtn, webSearchBtn; +Global Button compChoose; +Global Boolean startup_done; +Global Int substract = 0; + +#ifdef DOHIDEMCV +Global Int last_menu_sel; +#endif + +// script loading/unloading goes here +#include mcvcore/load_handles.m + +// showing and hiding the components +#include mcvcore/show_hide.m + +#ifdef BIG_BENTO_WORKINGDIR +// open / hiding components not caused by button clicks +#include ../../Big Bento/scripts/mcvcore/external_handles.m +#else +// open / hiding components not caused by button clicks +#include ../../__codename_onesie/scripts/mcvcore/external_handles.m +#endif + +/* Switching menu */ +compChoose.onRightButtonUp(int x, int y) +{ + complete; +} + +compChoose.onRightClick () { + compChoose.onLeftClick (); +} + +compChoose.onLeftClick () +{ + compMenu = new Popupmenu; + popupmenu fiSub = new Popupmenu; + compMenu.addCommand("File Info", 1, ic_fileinfo.getData() == "1", 0); +#ifdef IC_COVERFLOW + compMenu.addCommand("Cover Flow", 7, _cflow_ic_attrib.getData() == "1", 0); +#endif + // System.isSafeMode() is not recognized by mc.exe + // if(!System.isSafeMode()) + // { + compMenu.addCommand("Visualization", 2, ic_vis.getData() == "1", 0); + // } + compMenu.addCommand("Stored Playlists", 3, _plsc_ic_attrib.getData() == "1", 0); + compMenu.addCommand("Equalizer", 4, ic_eq.getData() == "1", 0); + compMenu.addCommand("Skin Settings", 5, ic_config.getData() == "1", 0); +#ifdef DOHIDEMCV + compMenu.addCommand("Hide Multi Content View", 6, ic_hidden.getData() == "1", 0); +#endif + compMenu.addSeparator(); + compMenu.addSubmenu(fiSub, "File Info Components"); + + // System.isSafeMode() is not recognized by mc.exe + // if(!System.isSafeMode()) + // { + fiSub.addCommand("Visualization", 12, ic_vis_fileinfo.getData() == "1", 0); + // } + fiSub.addCommand("Album Art", 11, ic_cover_fileinfo.getData() == "1", 0); + fiSub.addSeparator(); + fiSub.addCommand("Show Track #", 24, infocomp_show_track.getData() == "1", 0); + fiSub.addCommand("Show Year", 21, infocomp_show_year.getData() == "1", 0); + fiSub.addCommand("Show Genre", 22, infocomp_show_genre.getData() == "1", 0); + fiSub.addCommand("Show Disc", 28, infocomp_show_disc.getData() == "1", 0); + fiSub.addCommand("Show Album Artist", 25, infocomp_show_albumartist.getData() == "1", 0); + fiSub.addCommand("Show Composer", 26, infocomp_show_composer.getData() == "1", 0); + fiSub.addCommand("Show Publisher", 23, infocomp_show_publisher.getData() == "1", 0); + fiSub.addCommand("Show Decoder", 27, infocomp_show_format.getData() == "1", 0); + fiSub.addCommand("Show Song Rating", 20, infocomp_show_rating.getData() == "1", 0); + fiSub.addSeparator(); + fiSub.addCommand("Cycle File Info", 30, infocomp_cycle.getData() == "1", 0); + fiSub.addSeparator(); + //fiSub.addCommand("Open Links in Now Playing", 40, infocomp_nowplaying.getData() == "1", 0); + //fiSub.addCommand("Open Links in Browser", 41, infocomp_browser.getData() == "1", 0); + + ProcessMenuResult (compMenu.popAtXY(clientToScreenX(compChoose.getLeft()), clientToScreenY(compChoose.getTop() + compChoose.getHeight()))); + delete compMenu; + delete fiSub; + complete; +} + +ProcessMenuResult (int a) +{ + if (a < 1) return; + if (a == 1) + { + ic_fileinfo.setData("1"); + } + else if (a == 2) + { + ic_vis.setData("1"); + } + else if (a == 3) + { + _plsc_ic_attrib.setData("1"); + } +#ifdef IC_COVERFLOW + else if (a == 7) + { + _cflow_ic_attrib.setData("1"); + } +#endif + else if (a == 4) + { + ic_eq.setData("1"); + } + else if (a == 5) + { + ic_config.setData("1"); + } +#ifdef DOHIDEMCV + else if (a == 6) + { + ic_hidden.setData("1"); + } +#endif + else if (a == 11) + { + toggleAttrib(ic_cover_fileinfo); + } + else if (a == 12) + { + toggleAttrib(ic_vis_fileinfo); + } + else if (a == 20) + { + toggleAttrib(infocomp_show_rating); + } + else if (a == 21) + { + toggleAttrib(infocomp_show_year); + } + else if (a == 22) + { + toggleAttrib(infocomp_show_genre); + } + else if (a == 23) + { + toggleAttrib(infocomp_show_publisher); + } + else if (a == 24) + { + toggleAttrib(infocomp_show_track); + } + else if (a == 25) + { + toggleAttrib(infocomp_show_albumartist); + } + else if (a == 26) + { + toggleAttrib(infocomp_show_composer); + } + else if (a == 27) + { + toggleAttrib(infocomp_show_format); + } + else if (a == 28) + { + toggleAttrib(infocomp_show_disc); + } + else if (a == 30) + { + toggleAttrib(infocomp_cycle); + } +/* else if (a == 40) + { + toggleAttrib(infocomp_nowplaying); + } + else if (a == 41) + { + toggleAttrib(infocomp_browser); + } +*/ +} + +// Hiding footer buttons (for file info view) + +/* artist_info_buttons_attrib.onDataChanged () +{ + + updateFooter (); +} +*/ + +g_footer.onResize (int x, int y, int w, int h) +{ + if (substract == 1) + w += stringToInteger(dualwnd.getXmlParam("maxwidth")) + 101; + else if (substract == 2) + w += stringToInteger(dualwnd.getXmlParam("maxwidth")) + 135; + else if (substract == 3) + w += stringToInteger(dualwnd.getXmlParam("maxwidth")) + 66; + +/* if (artist_info_buttons_attrib.getData() == "1") + { + if (w < 117) footerGrid.hide(); + else footerGrid.show(); + + if (w < 97) nowPlayingBtn.hide(); + else nowPlayingBtn.show(); + + if (w < 74) webSearchBtn.hide(); + else webSearchBtn.show(); + } + else + { + if (w < 70) footerGrid.hide(); + else footerGrid.show(); + nowPlayingBtn.hide(); + webSearchBtn.hide(); + } +*/ + if (w < 50) sendToBtn.hide(); + else sendToBtn.show(); + + if (w < 26) compChoose.hide(); + else compChoose.show(); +} + +updateFooter () +{ + g_footer.onResize (0, 0, g_footer.getWidth(), 0); +} + +#ifdef DOHIDEMCV +// Switching back from no comp + +sg.onResize (int x, int y, int w, int h) +{ + + if (ic_hidden.getData() == "0" || last_menu_sel == 0 || w == 0)// && dualwnd.getXmlParam("from") == "left") + { + return; + } + ProcessMenuResult (getPrivateInt(getSkinName(), "MCV last sel", 1)); +} + +// save last pos + +updateSaving (int l) +{ + if (last_menu_sel == l) + { + return; + } + if (last_menu_sel != 0) setPrivateInt(getSkinName(), "MCV last sel", last_menu_sel); + last_menu_sel = l; +} +#endif + +/** OSD */ +/* +Global boolean mouse_is_over = FALSE; + +osd_trigger.onEnterArea () +{ + //setXmlParam("ghost", "1"); +} + +osd_trigger.onMouseMove (int x, int y) +{ + if (!isMouseOverRect() && mouse_is_over) + { + mouse_is_over = 0; + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); + c = sui_vis.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); + } + else if (isMouseOverRect() && !mouse_is_over) + { + mouse_is_over = 1; + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.button.region", 0, 0, 0, 0); + c = sui_vis.findObject("vis"); + c.sendAction("setregion", "vis.button.region", 0, 0, 0, 0); + } +} + +osd_trigger.onLeaveArea () +{ + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); +}*/ + +/** Calls after comp is shown */ + +onCloseIC() {} +onOpenIC() {} + +onShowCover() {} + +onHideCover() {} + +onShowFi() {} + +onHideFi() {} + +onShowEq() {} + +onHideEq() {} + +onShowCfg() {} + +onHideCfg() {} + +onShowVis() +{ + g_visbtns.show(); +} +onHideVis() +{ + g_visbtns.hide(); +} + +onShowVis_Full() {} + +onHideVis_Full() {} + +#ifdef DOHIDEMCV +onhideMCV() {} +#endif + +fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh) +{ + if (!g) return; + g.setXmlParam("x", integerToString(x)); + g.setXmlParam("y", integerToString(y)); + g.setXmlParam("w", integerToString(w)); + g.setXmlParam("h", integerToString(h)); + g.setXmlParam("relatx", integerToString(rx)); + g.setXmlParam("relaty", integerToString(ry)); + g.setXmlParam("relatw", integerToString(rw)); + g.setXmlParam("relath", integerToString(rh)); +}
\ No newline at end of file diff --git a/Src/resources/skins/Bento/scripts/mcvcore.maki b/Src/resources/skins/Bento/scripts/mcvcore.maki Binary files differnew file mode 100644 index 00000000..336e7252 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/mcvcore.maki diff --git a/Src/resources/skins/Bento/scripts/mcvcore/load_handles.m b/Src/resources/skins/Bento/scripts/mcvcore/load_handles.m new file mode 100644 index 00000000..607c2901 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/mcvcore/load_handles.m @@ -0,0 +1,131 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: load_handles.m +Version: 1.0 + +Type: maki +Date: 28. Dez. 2006 - 08:40 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +System.onScriptLoaded () +{ + initAttribs_windowpage(); + initAttribs_vis(); + initAttribs_Appearance(); + + debugString(DEBUG_PREFIX "System.onScriptLoded() {", 0); + + sg = getScriptGroup(); + main = sg.getParentLayout(); + + mainframe = main.getObject("player.mainframe"); + dualwnd = mainframe.findObject("player.dualwnd"); + + sui_cover = sg.findObject("info.component.cover"); + sui_vis = sg.findObject("info.component.vis"); + sui_vis_full = sg.findObject("info.component.vis.full"); + sui_vis_wdh = sui_vis.getObject("vis"); + sui_vis_full_wdh = sui_vis_full.getObject("vis"); + sui_fi = sg.findObject("info.component.infodisplay"); + sui_eq = sg.findObject("info.component.eq"); + sui_cfg = sg.findObject("info.component.config"); +#ifdef IC_COVERFLOW + _cflow_sui = sg.findObject("info.component.coverflow"); +#endif + _plsc_sui = sg.findObject("info.component.plsidecar"); + g_footer = sg.findObject("infocomp.background.footer"); + g_visbtns = g_footer.findObject("infocomp.visbuttons"); + footerGrid = g_footer.findObject("footer.background.grid"); + + compChoose = sg.findObject("comp.menu"); + sendToBtn = sg.findObject("sendTo"); + //nowPlayingBtn = sg.findObject("nowplaying"); + //webSearchBtn = sg.findObject("search"); +#ifdef DOHIDEMCV + last_menu_sel = getPrivateInt(getSkinName(), "MCV last sel", 1); +#endif + callbackTimer = new Timer; + callbackTimer.setDelay(1); + tempDisable = new Timer; + tempDisable.setDelay(50); + + + if (ic_fileinfo.getData() == "1") + { + updateFileInfo (); + } + else if (ic_vis.getData() == "1") + { + switchToVis_Full(); + } + else if (ic_eq.getData() == "1") + { + switchToEq(); + } + else if (ic_config.getData() == "1") + { + switchToCfg(); + } + else if (_plsc_ic_attrib.getData() == "1") + { + _plsc_switchTo(); + } +#ifdef IC_COVERFLOW + else if (_cflow_ic_attrib.getData() == "1") + { + _cflow_switchTo(); + } +#endif +#ifdef DOHIDEMCV + else if (ic_hidden.getData() == "1") + { + hideMCV(); + } +#endif + startup_done = 1; + debugString(DEBUG_PREFIX "}", 0); + prevent_vis = 0; +} + +updateFileInfo () +{ + if (ic_vis_fileinfo.getData() == "1" && ic_cover_fileinfo.getData() == "1") + { + switchToVisCover(); + } + else if (ic_vis_fileinfo.getData() == "1") + { + switchToVis(); + } + else if (ic_cover_fileinfo.getData() == "1") + { + switchToCover(); + } + else + { + switchToIcOnly(); + } +} + +System.onScriptUnloading () +{ + debugString(DEBUG_PREFIX "System.onScriptUnloading() {", 0); + + delete callbackTimer; + delete tempDisable; + + debugString(DEBUG_PREFIX " delete Timers;", 0); + debugString(DEBUG_PREFIX "}", 0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Bento/scripts/mcvcore/show_hide.m b/Src/resources/skins/Bento/scripts/mcvcore/show_hide.m new file mode 100644 index 00000000..0bea76b3 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/mcvcore/show_hide.m @@ -0,0 +1,916 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: show_hide.m +Version: 1.0 + +Type: maki +Date: 29. Nov. 2006 - 15:57 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +switchToCover () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_cover_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 0; + sui_cover.setXmlParam("x", "4"); + + dualwnd.setXmlParam("maxwidth", "-100"); + dualwnd.sendAction("set_maxwidth", "", -100, 0 , 0, 0); + + g_footer.setXmlParam("x", "90"); + g_footer.setXmlParam("w", "-91"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showCover(); + FIT_W_COMP; + updateSaving(1); +} + +switchToVisCover () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_cover_fileinfo.setData("1"); + ic_vis_fileinfo.setData("1"); + vis_lefttoplayer_attrib.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 0; + sui_cover.setXmlParam("x", "92"); + + dualwnd.setXmlParam("maxwidth", "-188"); + dualwnd.sendAction("set_maxwidth", "", -188, 0 , 0, 0); + + g_footer.setXmlParam("x", "178"); + g_footer.setXmlParam("w", "-179"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showCover(); + showVis(); + FIT_W2_COMP; + updateSaving(1); +} +switchToVis () +{ + debugString(DEBUG_PREFIX "switchToVis();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideCover(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_vis_fileinfo.setData("1"); + vis_lefttoplayer_attrib.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 1; + + dualwnd.setXmlParam("maxwidth", "-100"); + dualwnd.sendAction("set_maxwidth", "", -100, 0 , 0, 0); + + g_footer.setXmlParam("x", "90"); + g_footer.setXmlParam("w", "-91"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showVis(); + FIT_W_COMP; + updateSaving(1); +} + +switchToIcOnly () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideEq(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) ic_fileinfo.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-100"); + dualwnd.sendAction("set_maxwidth", "", -100, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showFi(); + FIT_WO_COMP; + updateSaving(1); +} + +switchToEq () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + substract = 1; + ic_eq.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + + dualwnd.setXmlParam("maxwidth", "-196"); + dualwnd.sendAction("set_maxwidth", "", -196, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showEq(); + updateSaving(4); +} + +switchToCfg () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_config.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 2; + + dualwnd.setXmlParam("maxwidth", "-244"); + dualwnd.sendAction("set_maxwidth", "", -244, 0 , 0, 0); + + g_footer.setXmlParam("x", "75"); + g_footer.setXmlParam("w", "-76"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showCfg(); + updateSaving(5); +} + +_Plsc_switchTo () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + hideCfg(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + _plsc_ic_attrib.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + _Plsc_show(); + updateSaving(3); +} + +#ifdef IC_COVERFLOW +_Cflow_switchTo () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + hideCfg(); + _Plsc_hide(); + mychange = 1; + _cflow_ic_attrib.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + _Cflow_show(); + updateSaving(3); +} +#endif + +switchToVis_Full () +{ + debugString(DEBUG_PREFIX "switchToVis_FULL();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + closeIC(); + hideVis(); + hideCover(); + hideEq(); + //hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_vis.setData("1"); + vis_lefttoplayer_full_attrib.setData("1"); + mychange = 0; + substract = 1; + + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showVis_Full(); + updateSaving(2); +} + +#ifdef DOHIDEMCV +hideMCV () +{ + debugString(DEBUG_PREFIX "hideMCV();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + closeIC(); + hideVis(); + hideCover(); + hideEq(); + //hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_hidden.setData("1"); + mychange = 0; + updateSaving(0); + /*g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0);*/ +// dualwnd.setXmlParam("maxwidth", "-8"); +// dualwnd.sendAction("set_maxwidth", "", -8, 0 , 0, 0); + dualwnd.setXmlParam("from", "left"); + dualwnd.setXmlParam("minwidth", integerToString(8 - stringtoInteger(dualwnd.getXmlParam("maxwidth")))); + dualwnd.setXmlParam("maxwidth", "-155"); + dualwnd.sendAction("set_maxwidth", "", -155, 0 , 0, 0); + dualwnd.setPosition(0); + updateSaving(6); +} +#endif + +tempDisable.onTimer() +{ + stop(); +} + +closeLC () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis(); + hideCover(); + hideCfg(); + hideEq(); + hideVis_Full(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif +} + +closeIC () +{ + debugString(DEBUG_PREFIX "closeIC() {", 0); + + hideFi(); + + onCloseIC(); + + debugString(DEBUG_PREFIX "}", 0); +} + +openIC () +{ + debugString(DEBUG_PREFIX "openIC() {", 0); + + showFi(); + + onOpenIC(); + + debugString(DEBUG_PREFIX "}", 0); +} + +showFi() +{ + debugString(DEBUG_PREFIX "showFi() {", 0); + + showing_fi = 1; + setPrivateString(getSkinName(), "Component3", "File Info"); + GuiObject o = sui_fi; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) fi object not provided (show)", 0); +#endif + onShowFi(); + showing_Fi = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +hideFi() +{ + debugString(DEBUG_PREFIX "hideFi() {", 0); + + hiding_Fi = 1; + GuiObject o = sui_fi; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) sfi object not provided (hide)", 0); +#endif + onHideFi(); + hiding_Fi = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +showVis() +{ + //if (vis_inbig_attrib.getData() == "1") return; + debugString(DEBUG_PREFIX "showVis() {", D_WTF); + showing_vis = 1; + GuiObject o = sui_vis; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) vis object not provided (show)", D_WTF); +#endif + onShowVis(); + showing_vis = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideVis() +{ + debugString(DEBUG_PREFIX "hideVis() {", D_WTF); + + hiding_vis = 1; + GuiObject o = sui_vis; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) vis object not provided (hide)", D_WTF); +#endif + onHideVis(); + hiding_vis = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showCover() +{ + debugString(DEBUG_PREFIX "showCover() {", 0); + + showing_Cover = 1; + GuiObject o = sui_Cover; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Cover object not provided (show)", 0); +#endif + onShowCover(); + showing_Cover = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +hideCover() +{ + debugString(DEBUG_PREFIX "hideCover() {", 0); + + hiding_Cover = 1; + GuiObject o = sui_Cover; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Cover object not provided (hide)", 0); +#endif + onHideCover(); + hiding_Cover = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +showVis_Full() +{ + debugString(DEBUG_PREFIX "showVis_Full() {", D_WTF); + + showing_vis_full = 1; + GuiObject o = sui_vis_full; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (show)", D_WTF); +#endif + onShowVis_Full(); + showing_vis_full = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideVis_Full() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_vis_full = 1; + GuiObject o = sui_vis_full; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (hide)", D_WTF); +#endif + onHideVis_Full(); + hiding_vis_full = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showEq() +{ + debugString(DEBUG_PREFIX "showEq() {", D_WTF); + + showing_eq = 1; + GuiObject o = sui_eq; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (show)", D_WTF); +#endif + onShowEq(); + showing_eq = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideEq() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_eq = 1; + GuiObject o = sui_eq; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Eq object not provided (hide)", D_WTF); +#endif + onHideEq(); + hiding_eq = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showCfg() +{ + debugString(DEBUG_PREFIX "showCfg() {", D_WTF); + + showing_cfg = 1; + GuiObject o = sui_cfg; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) cfg_Full object not provided (show)", D_WTF); +#endif + onShowcfg(); + showing_cfg = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideCfg() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_cfg = 1; + GuiObject o = sui_cfg; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) cfg object not provided (hide)", D_WTF); +#endif + onHidecfg(); + hiding_cfg = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +callbackTimer.onTimer() +{ + callbackTimer.stop(); + + debugString(DEBUG_PREFIX "callbackTimer();", D_WTF); + + int _callback_showing_vis = callback_showing_vis; + int _callback_hiding_vis = callback_hiding_vis; + int _callback_showing_fi = callback_showing_fi; + int _callback_hiding_fi = callback_hiding_fi; + int _callback_showing_cover = callback_showing_cover; + int _callback_hiding_cover = callback_hiding_cover; + int _callback_showing_vis_full = callback_showing_vis_full; + int _callback_hiding_vis_full = callback_hiding_vis_full; + int _callback_showing_eq = callback_showing_eq; + int _callback_hiding_eq = callback_hiding_eq; + int _callback_showing_cfg = callback_showing_cfg; + int _callback_hiding_cfg = callback_hiding_cfg; + int _plsc_callback_showing_temp = _plsc_callback_showing; + int _plsc_callback_hiding_temp = _plsc_callback_hiding; +#ifdef IC_COVERFLOW + int _cflow_callback_showing_temp = _cflow_callback_showing; + int _cflow_callback_hiding_temp = _cflow_callback_hiding; +#endif + + callback_showing_vis = 0; + callback_hiding_vis = 0; + callback_showing_fi = 0; + callback_hiding_fi = 0; + callback_showing_cover = 0; + callback_hiding_cover = 0; + callback_showing_vis_full = 0; + callback_hiding_vis_full = 0; + callback_showing_eq = 0; + callback_hiding_eq = 0; + callback_showing_cfg = 0; + callback_hiding_cfg = 0; + _plsc_callback_showing = 0; + _plsc_callback_hiding = 0; +#ifdef IC_COVERFLOW + _cflow_callback_showing = 0; + _cflow_callback_hiding = 0; +#endif + + if (_callback_showing_vis == 1) + { + ic_vis_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + if (_callback_hiding_vis == 1) + { + ic_vis_fileinfo.setData("0"); + } + if (_callback_showing_fi == 1) + { + showFi(); + } + if (_callback_hiding_fi == 1) + { + hideFi(); + } + if (_callback_showing_cover == 1) + { + ic_cover_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + if (_callback_hiding_cover == 1) + { + ic_cover_fileinfo.setData("0"); + } + if (_callback_showing_vis_full == 1) + { + switchToVis_Full(); + } + if (_callback_hiding_vis_full == 1) + { + hideVis_Full(); + } + if (_callback_showing_eq == 1) + { + switchToEq(); + } + if (_callback_hiding_eq == 1) + { + hideEq(); + } + if (_callback_showing_cfg == 1) + { + switchTocfg(); + } + if (_callback_hiding_cfg == 1) + { + hidecfg(); + } + if (_plsc_callback_showing_temp == 1) + { + _Plsc_switchTo(); + } + if (_plsc_callback_hiding_temp == 1) + { + _Plsc_hide(); + } +#ifdef IC_COVERFLOW + if (_cflow_callback_showing_temp == 1) + { + _Cflow_switchTo(); + } + if (_cflow_callback_hiding_temp == 1) + { + _Cflow_hide(); + } +#endif +} + +dc_showFi () +{ + callback_showing_fi = 1; + callback_hiding_fi = 0; + callbackTimer.start(); +} + +dc_hideFi () +{ + callback_showing_fi = 0; + callback_hiding_fi = 1; + callbackTimer.start(); +} + +dc_showCover () +{ + callback_showing_cover = 1; + callback_hiding_cover = 0; + callbackTimer.start(); +} + +dc_hideCover () +{ + callback_showing_cover = 0; + callback_hiding_cover = 1; + callbackTimer.start(); +} + +dc_showVis () +{ + debugString(DEBUG_PREFIX "dc_showVis();", D_WTF); + callback_showing_vis = 1; + callback_hiding_vis = 0; + callbackTimer.start(); +} + +dc_hideVis () +{ + callback_showing_vis = 0; + callback_hiding_vis = 1; + callbackTimer.start(); +} + +dc_showVis_Full () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_vis_full = 1; + callback_hiding_vis_full = 0; + callbackTimer.start(); +} + +dc_hideVis_Full () +{ + callback_showing_vis_full = 0; + callback_hiding_vis_full = 1; + callbackTimer.start(); +} + +dc_showEq () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_eq = 1; + callback_hiding_eq = 0; + callbackTimer.start(); +} + +dc_hideEq () +{ + callback_showing_eq = 0; + callback_hiding_eq = 1; + callbackTimer.start(); +} + +dc_showCfg () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_Cfg = 1; + callback_hiding_Cfg = 0; + callbackTimer.start(); +} + +dc_hideCfg () +{ + callback_showing_Cfg = 0; + callback_hiding_Cfg = 1; + callbackTimer.start(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Bento/scripts/playlistpro.m b/Src/resources/skins/Bento/scripts/playlistpro.m new file mode 100644 index 00000000..17532b21 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/playlistpro.m @@ -0,0 +1,426 @@ +/* + +PlaylistPro build 005 +Originally done by pjn123 (www.skinconsortium.com) for the Classic Pro plugin + +*/ + +#include "lib/std.mi" +#include "lib/pldir.mi" +#include "init_Playlist.m" + +Function resizeResults(int items); +Function doSearch(String input); +Function setSearchBox(boolean onOff); +Function clearSearchBox(); +Function int getPlEntry(int search_item); +Function String replaceString(string baseString, string toreplace, string replacedby); + +Global Group frameGroup, topbar; +Global Edit searchBox; +Global Text helpSearch, searchNews;// fakeText; +Global GuiObject fakeSB, searchXUI, searchButtonXui; +Global Button searchButton, clearButton, clearButtonText; +Global GuiList searchResults; +Global Boolean foundsomething; +Global int tn, h_tune; +Global String temptoken; +Global Windowholder plwh; +GLobal Timer refreshActiveCheck; +Global PopupMenu search_rc; + +Global Container results_container; +Global Layout results_layout, main_layout; + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + topbar = frameGroup.findObject("PlaylistPro.topbar"); + plwh = frameGroup.findObject("wdh.playlist"); + + searchBox = frameGroup.findObject("wasabi.edit.box"); + searchXUI = frameGroup.findObject("pl.search.edit"); + searchButton = frameGroup.findObject("pl.search.go"); + searchButtonXui = frameGroup.findObject("pl.search.go"); + fakeSB = frameGroup.findObject("pl.search.edit.rect"); + clearButton = frameGroup.findObject("pl.search.edit.clear"); + clearButtonText = frameGroup.findObject("pl.search.edit.clear.text"); + helpSearch = frameGroup.findObject("pl.search.edit.searchhelp"); + //fakeText = frameGroup.findObject("pl.search.go.text.fake"); + + results_container = newDynamicContainer("searchresults"); + results_layout = results_container.getLayout("normal"); + searchResults = results_layout.findObject("PlaylistPro.list"); + searchResults.setFontSize(16); + searchNews = results_layout.findObject("PlaylistPro.list.news"); + + main_layout = getContainer("main").getLayout("normal"); + + initAttribs_Playlist(); + + //translation workaround + /*searchButtonXui.setXmlParam("text", System.translate("Search")); + searchButtonXui.setXmlParam("x", integerToString(-1*fakeText.getAutoWidth()-4)); + searchButtonXui.setXmlParam("w", integerToString(fakeText.getAutoWidth()+2)); + searchXUI.setXmlParam("w", integerToString(-1*fakeText.getAutoWidth()-9));*/ + + refreshActiveCheck = new Timer; + refreshActiveCheck.setDelay(100); +} +System.onScriptUnLoading() { + delete refreshActiveCheck; +} + +refreshActiveCheck.onTimer(){ + if((!System.isAppActive() || System.isMinimized()) && results_layout.isVisible() ) results_layout.hide(); +} + +results_layout.onSetVisible(boolean onOff){ + if(onOff){ + refreshActiveCheck.start(); + } + else{ + refreshActiveCheck.stop(); + } +} + +System.onShowLayout(Layout _layout){ + if(main_layout.isVisible()) results_layout.setXmlParam("ontop", "1"); +} + +frameGroup.onSetVisible(boolean onOff){ + if(!onOff) clearSearchBox(); +} + +searchButton.onLeftClick(){ + doSearch(searchBox.getText()); +} + +resizeResults(int items){ + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(500); + results_layout.setTargetSpeed(1); + results_layout.gotoTarget();*/ + + //items++; //temp add one extra for info... xx items found + if(items>20) items=20; + + + if(items>=1) h_tune=29; + else h_tune=25; + + //results_layout.setXmlParam("h", integerToString(20+items*18)); + + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(h_tune+items*16); + results_layout.setTargetSpeed(0.3); + results_layout.gotoTarget();*/ + results_layout.resize(results_layout.getLeft(), results_layout.getTop(), results_layout.getWidth(), h_tune+items*16); +} + +searchBox.onEnter(){ + doSearch(searchBox.getText()); +} + +doSearch(String input){ + if(input==""){ + clearSearchBox(); + return; + } + + //search history stuff + String history = getPublicString("cPro.PlaylistPro.history", ""); + history = replaceString(history, input, ""); + history = replaceString(history, ";;", ";"); + if(strleft(history, 1)==";") history = strright(history, strlen(history)-1); + if(strright(history, 1)==";") history = strleft(history, strlen(history)-1); + if(history=="") history= input; + else history= input+";"+history; + + String output = getToken(history, ";", 0); + for(int i = 1; i<15; i++){ + if(getToken(history, ";", i)=="") break; + output+=";"+getToken(history, ";", i); + } + setPublicString("cPro.PlaylistPro.history", history); + + + int itemsfound = 0; + input = strlower(input); + + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("w", integerToString(frameGroup.getWidth()-19)); + + if(!results_layout.isVisible()) results_layout.setXmlParam("h", "1"); + + searchResults.deleteAllItems(); + searchResults.scrollToItem(0); + + for(int i = 0; i<PlEdit.getNumTracks(); i++){ + foundsomething=false; + + for(tn = 0; tn<10; tn++){ + if(getToken(input, " ", tn)==""){ + break; + } + + temptoken = getToken(input, " ", tn); + if(strsearch(strlower(PlEdit.getTitle(i) + " " + PlEdit.getFileName(i)), temptoken)>=0){ + foundsomething=true; + } + else{ + foundsomething=false; + } + + if(!foundsomething){ + break; + } + } + + if(foundsomething){ + itemsfound++; + searchResults.addItem(integerToString(i+1)+". " + PlEdit.getTitle(i)); + if(itemsfound>500){ + searchNews.setText("Search result limited to 500 items"); + break; + } + } + } + + if(itemsfound==0){ + searchNews.setText("Nothing was found"); + } + else if(itemsfound<=500){ + searchNews.setText(System.translate("Items found: ") +integerToString(itemsfound)); + } + + if(!results_layout.isVisible()) results_layout.show(); + + // Fix if always on top is enabled.. it just refresh the ontop ;) + results_layout.setXmlParam("ontop", "1"); + + resizeResults(itemsfound); +} + +searchResults.onDoubleClick(Int itemnum){ + PlEdit.playTrack (getPlEntry(itemnum)); + setSearchBox(false); +} + +searchResults.onRightClick(Int itemnum){ + search_rc = new PopupMenu; + search_rc.addCommand("Move selected to top", 1, 0, 0); + search_rc.addCommand("Move selected to bottom", 2, 0, 0); + search_rc.addCommand("Move selected after current", 3, 0, 0); + search_rc.addCommand("Move selected together", 4, 0, 0); + search_rc.addSeparator(); + search_rc.addCommand("Remove selected from playlist", 5, 0, 0); + int result = search_rc.popAtMouse(); + delete search_rc; + + int lastselected = searchResults.getFirstItemSelected(); + int itemcounter = 1; + + if(result==1){ + PlEdit.moveTo (getPlEntry(lastselected), 0); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), itemcounter); + itemcounter++; + } + PlEdit.showTrack(0); + } + else if(result==2){ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getNumTracks ()-1); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected)-itemcounter, PlEdit.getNumTracks ()-1); + itemcounter++; + } + PlEdit.showTrack(PlEdit.getNumTracks ()-1); + } + else if(result==3){ + int align = 0; + int orignalPos = PlEdit.getCurrentIndex(); + int temp = getPlEntry(lastselected); + if(PlEdit.getCurrentIndex() > temp) align++; + + if(orignalPos > getPlEntry(lastselected)) PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()); + else PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+1); + + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + + if(orignalPos != getPlEntry(lastselected)){ + if(orignalPos > getPlEntry(lastselected)){ + PlEdit.moveTo (getPlEntry(lastselected)-align, PlEdit.getCurrentIndex()+itemcounter); + } + else{ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+itemcounter+1); + } + + temp = getPlEntry(lastselected); + if(orignalPos > temp) align++; + itemcounter++; + } + } + PlEdit.showCurrentlyPlayingTrack(); + } + else if(result==4){ + int startpos = getPlEntry(lastselected); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), startpos+itemcounter); + itemcounter++; + } + PlEdit.showTrack(startpos); + } + else if(result==5){ + PlEdit.removeTrack (getPlEntry(lastselected)); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.removeTrack (getPlEntry(lastselected)-itemcounter); + itemcounter++; + } + } + + else return; + + //hides the search + setSearchBox(false); +} + +int getPlEntry(int search_item){ + return stringToInteger(getToken(searchResults.getItemLabel(search_item,0), ". ", 0))-1; +} + +setSearchBox(boolean onOff){ + if(onOff){ + searchBox.show(); + clearButton.show(); + clearButtonText.show(); + helpSearch.hide(); + searchBox.setFocus(); + } + else{ + searchBox.hide(); + clearButton.hide(); + clearButtonText.hide(); + helpSearch.show(); + results_layout.hide(); + } +} + +fakeSB.onLeftButtonDown(int x, int y){ + setSearchBox(true); +} +fakeSB.onRightButtonDown(int x, int y){ + search_rc = new PopupMenu; + search_rc.addCommand("** Search history **", 0, 0, 1); + search_rc.addSeparator(); + + String history = getPublicString("cPro.PlaylistPro.history", ""); + boolean historyfound=false; + for(int i=0;i<15;i++){ + String historyitem = getToken(history, ";", i); + if(historyitem==""){ + if(i>0) historyfound=true; + break; + } + search_rc.addCommand(historyitem, i+1, 0, 0); + } + if(historyfound) search_rc.addSeparator(); + search_rc.addCommand("Clear History", 100, 0, 0); + + int result = search_rc.popAtMouse(); + delete search_rc; + + if(result>0 && result<100){ + setSearchBox(true); + searchBox.setText(getToken(history, ";", result-1)); + searchButton.leftClick(); + } + else if(result==100){ + setPublicString("cPro.PlaylistPro.history", ""); + } +} + +clearSearchBox(){ + searchBox.setText(""); + setSearchBox(false); +} + +main_layout.onMove(){ + if(results_layout.isVisible()){ + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("ontop", "1"); + } +} +main_layout.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); +} + +frameGroup.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); + + //if(playlist_search_attib.getData()=="0") return; + + if(h<102 || playlist_search_attrib.getData()=="0"){ + + if(!topbar.isVisible()) return; //Don't do the same code over and over + + topbar.hide(); + plwh.setXmlParam("y", "0"); + plwh.setXmlParam("h", "0"); + } + else{ + if(topbar.isVisible()) return; //Don't do the same code over and over + + topbar.show(); + plwh.setXmlParam("y", "30"); + plwh.setXmlParam("h", "-30"); + } +} + +clearButton.onLeftClick(){ + clearSearchBox(); +} + +playlist_search_attrib.onDataChanged(){ + frameGroup.onResize(frameGroup.getLeft(), frameGroup.getTop(), frameGroup.getWidth(), frameGroup.getHeight()); + //debug("abc " + getData()); + + if (getData() == "0"){ + topbar.hide(); + plwh.setXMLParam("y", "0"); + plwh.setXMLParam("h", "0"); + } + else if(getData() == "1"){ + + topbar.show(); + plwh.setXMLParam("y", "30"); + plwh.setXMLParam("h", "-30"); + + } +} + + + +String replaceString(string baseString, string toreplace, string replacedby){ + if (toreplace == "") return baseString; + string sf1 = strupper(baseString); + string sf2 = strupper(toreplace); + int i = strsearch(sf1, sf2); + if (i == -1) return baseString; + string left = "", right = ""; + if (i != 0) left = strleft(baseString, i); + if (strlen(basestring) - i - strlen(toreplace) != 0) { + right = strright(basestring, strlen(basestring) - i - strlen(toreplace)); + } + return left + replacedby + right; +}
\ No newline at end of file diff --git a/Src/resources/skins/Bento/scripts/playlistpro.maki b/Src/resources/skins/Bento/scripts/playlistpro.maki Binary files differnew file mode 100644 index 00000000..3db3ab8f --- /dev/null +++ b/Src/resources/skins/Bento/scripts/playlistpro.maki diff --git a/Src/resources/skins/Bento/scripts/pledit.m b/Src/resources/skins/Bento/scripts/pledit.m new file mode 100644 index 00000000..87b2cf31 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/pledit.m @@ -0,0 +1,619 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: pledit.m +Version: 3.1 + +Type: maki +Date: 18. Sep. 2007 - 19:42 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +//#define DEBUG +#define FILE_NAME "pledit.m" +#include <lib/com/debug.m> + +#define PL_GUID "{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D}" +#define PLC_POPPLER_POS 200 + +#include "../../Big Bento/scripts/attribs/init_playlist.m" + +Function fitContent (int playlistw, int playlistx); +Function fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh); +Function int updatePoppler(int w); +Function int updateMainPoppler(int w); + +Global Frame dualwnd, pl_dualwnd, mainframe; + +Global Group g_playlist, g_player, g_sui, g_buttons, g_mcv, g_cover, g_upper, wdh_pl; +Global Button p_enlarge, p_small; +Global Button p_resize; +Global int down_x, down_gx, isresizing; +Global layout normal; +Global Container player; +//Global WindowHolder wdh_pl; +Global Text pl_time; + +Global Button pe_add, pe_rem, pe_sel, pe_misc, pe_manage; + +Global Boolean startup, isBig, bypass_nocomp; + +Global Timer dc_openPl, dc_closePl, dc_loadWnd; + +Global Int COMP_Y, COMP_H, SUI_Y, SUI_H, BOTTOMSPACER, MAX_PL_H; +Global Int DEF_PL_W, SIDESPACER; + +Global Int min_infowidth; + + +System.onScriptLoaded () +{ + initAttribs_Playlist(); + normal = getScriptGroup(); + player = normal.getContainer(); + + isBig = (getParam() == "big"); + if (isBig) + { + mainframe = normal.getObject("player.mainframe.big"); + } + else + { + mainframe = normal.getObject("player.mainframe"); + } + + dualwnd = mainframe.findObject("player.dualwnd"); + g_mcv = dualwnd.findObject("player.component.fileinfo"); + g_upper = dualwnd.findObject("player.component.playlist.frame"); + pl_dualwnd = dualwnd.findObject("playlist.dualwnd"); + g_playlist = pl_dualwnd.findObject("player.component.playlist"); + g_cover = pl_dualwnd.findObject("player.component.playlist.albumart"); + g_player = dualwnd.findObject("player.layout"); + g_sui = normal.getObject("sui.content"); + g_buttons = g_playlist.getObject("player.component.playlist.buttons"); + p_enlarge = g_buttons.getObject("player.playlist.enlarge"); + p_small = g_buttons.getObject("player.playlist.small"); + p_resize = g_playlist.getObject("player.resize"); + wdh_pl = g_playlist.getObject("playlistpro"); + pl_time = g_buttons.getObject("PLTime"); + + pe_add = g_buttons.getObject("player.playlist.add"); + pe_rem = g_buttons.getObject("player.playlist.rem"); + pe_sel = g_buttons.getObject("player.playlist.sel"); + pe_misc = g_buttons.getObject("player.playlist.misc"); + pe_manage = g_buttons.getObject("player.playlist.manage"); + + min_infowidth = stringtoInteger(dualwnd.getXmlParam("maxwidth")); + + dc_openPl = new Timer; + dc_openPl.setDelay(1); + + dc_closePl = new Timer; + dc_closePl.setDelay(1); + + dc_loadWnd = new Timer; + dc_loadWnd.setDelay(1); + + // Global Definitions: + + DEF_PL_W = g_playlist.getGuiW(); // (-) + SIDESPACER = g_sui.getGuiX(); // (+) + COMP_Y = mainframe.getGuiY(); // (+) + COMP_H = mainframe.getGuiH(); // (+) + SUI_Y = g_sui.getGuiY(); // (+) + SUI_H = g_sui.getGuiH(); // (-) + BOTTOMSPACER = SUI_Y + SUI_H; // (-) + MAX_PL_H = BOTTOMSPACER - COMP_Y; // (-) + + startup = 1; + + // show playlist album art if checked + playlist_cover_attrib.onDataChanged(); + + //Bento v0.8 hack + if (mainframe.getPosition() < stringToInteger(mainframe.getXmlParam("minwidth"))) + { + mainframe.setPosition(stringToInteger(mainframe.getXmlParam("minwidth"))); + } +} + +system.onScriptUnloading () +{ + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + delete dc_loadWnd; +} + +dc_loadWnd.onTimer () +{ + stop(); + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); + playlist_enlarge_attrib.onDataChanged(); + + if (dualwnd.getPosition() > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) dc_openPL.start(); + + + else wdh_pl.hide(); //hideWa2Component(PL_GUID); +} + +playlist_enlarge_attrib.onDataChanged () +{ + int pl_w = dualwnd.getPosition(); + +#ifdef DOHIDEMCV + if (dualwnd.getXmlParam("from") == "left") + { + pl_w = dualwnd.getWidth() - 8; + } +#endif + + int pl_x = 0 - ( pl_w + SIDESPACER ); // (-) + + if (getData() == "1") + { + int sui_w = pl_x - SIDESPACER; // (-) + + dualwnd.setXmlParam("relath", "1"); + dualwnd.setXmlParam("h", integerToString(0)); + mainframe.setXmlParam("relath", "1"); + mainframe.setXmlParam("h", integerToString(MAX_PL_H)); + + g_sui.setXmlParam("w", integerToString(sui_w-8)); + + int pos = getPrivateInt(getSkinName(), "playlist_cover_poppler", PLC_POPPLER_POS); + if (playlist_cover_attrib.getData() == "1" && pos > 0 && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden") + { + g_cover.show(); + pl_dualwnd.setPosition (pos); + } + else + { + pl_dualwnd.setPosition (0); + g_cover.hide(); + } + + p_enlarge.hide(); + p_small.show(); + } + else + { + int sui_w = 0 - SIDESPACER - SIDESPACER; // (-) + int pc_w = pl_x - SIDESPACER; // (-) + + g_cover.hide(); + + if (playlist_cover_attrib.getData() == "1") + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } + pl_dualwnd.setPosition (0); + + dualwnd.setXmlParam("h", integerToString(COMP_H-3)); + dualwnd.setXmlParam("relath", "0"); + mainframe.setXmlParam("h", integerToString(COMP_H)); + mainframe.setXmlParam("relath", "0"); + + g_sui.setXmlParam("w", integerToString(sui_w)); + p_enlarge.show(); + p_small.hide(); + } +} + +g_playlist.onResize (int x, int y, int w, int h) +{ + int pos = dualwnd.getPosition(); + debugString(integerToString(pos), 9); + updateMainPoppler(min_infowidth - pos - 8); + + if (pos > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) + { + //setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + if (!wdh_pl.isVisible()) + { + setPrivateString(getSkinName(), "Pledit_pos", "top"); + g_sui.sendAction("hide_comp", "pe", 0,0,0,0); + + dc_openPl.start(); + } + + if (isBig) + { + if (w > 189) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.show(); + } + else if (w <= 189 && w >158) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.hide(); + } + else if (w <= 158 && w >127) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 127 && w >96) + { + pe_add.show(); + pe_rem.show(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 96 && w >65) + { + pe_add.show(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else + { + pe_add.hide(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + } + else + { + if (w > 146) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.show(); + } + else if (w <= 146 && w >122) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.hide(); + } + else if (w <= 122 && w >98) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 98 && w >74) + { + pe_add.show(); + pe_rem.show(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 74 && w >50) + { + pe_add.show(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else + { + pe_add.hide(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + } + } + else wdh_pl.hide(); + if (playlist_enlarge_attrib.getdata() == "1") + { + int sui_w = - g_playlist.getWidth() - (2 * SIDESPACER) - 8; + g_sui.setXmlParam("w", integerToString(sui_w)); + if (startup) + { + startup = 0; + mainframe.setXmlParam("relath", "1"); + mainframe.setXmlParam("h", integerToString(MAX_PL_H)); + dualwnd.setXmlParam("relath", "1"); + dualwnd.setXmlParam("h", integerToString(0)); + } + } +} + +normal.onSetVisible (Boolean onoff) +{ + if (onoff) + { + playlist_enlarge_attrib.onDataChanged(); + int pos = dualwnd.getPosition(); + if (pos > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) + { + updatePoppler(pos); + dc_openPL.start(); + } + else wdh_pl.hide();//hideWa2Component(PL_GUID); + } +} + +normal.onUserResize (int x, int y, int w, int h) +{ + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); +} + +/** Hide pl_time if it cannot be full displayed */ + +pl_time.onResize (int x, int y, int w, int h) +{ + if (w < getTextWidth()) + { + hide(); + } + else + { + show(); + } +} + +pl_time.onTextChanged (String newtxt) +{ + if (getWidth() < getTextWidth()) + { + hide(); + } + else + { + show(); + } +} + +/** Playlist Component Handling */ + +System.onGetCancelComponent (String guid, boolean goingvisible) +{ + if (getPrivateString(getSkinName(), "Pledit_pos", "top") == "sui") + { + return; + } + + debugString(DEBUG_PREFIX "System.onGetCancelComponent ( "+ guid + " , " + integerToString(goingvisible) + " )", D_WTF); + if (guid == PL_GUID) + { + Boolean isShade = player.getCurLayout() != normal; + if (goingvisible == TRUE && !isShade) + { + int poppler_w = getPrivateInt(getSkinName(), "pledit poppler width", 200); + if (poppler_w < 1) poppler_w = 200; + g_playlist.show(); + updatePoppler(poppler_w); + dc_openPl.start(); + return FALSE; + } + else + { + if (dualwnd.getPosition() > 0) setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + wdh_pl.hide(); + dualwnd.setPosition(0); + return FALSE; + } + } +} + +normal.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "load_comp" && strlower(param) == "pledit") + { + int poppler_w = getPrivateInt(getSkinName(), "pledit poppler width", 200); + if (dualwnd.getPosition() > 0) poppler_w = dualwnd.getPosition(); + if (dualwnd.getPosition() == 0) poppler_w = 200; + updatePoppler(poppler_w); + dc_openPl.start(); + } + if (action == "hide_comp" && strlower(param) == "pledit") + { + setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + wdh_pl.hide(); + dualwnd.setPosition(0); + } + if (action == "pledit_posupdate") + { + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); + } + if (action == "sui") + { + if (param == "tonocomp") + { + if (playlist_cover_attrib.getData() == "1") + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } + bypass_nocomp = TRUE; //we need to add a bypass otherwise playlist_cover_attrib will be turned OFF + pl_dualwnd.setPosition (0); + g_cover.hide(); + bypass_nocomp = FALSE; + } + else if (param == "fromnocomp") + { + playlist_cover_attrib.onDataChanged (); + } + } +} + +dualwnd.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "set_maxwidth") + { + // update poppler for playlist/infocomp + updatePoppler(dualwnd.getPosition()); + // update poppler bands for player/infocomp + min_infowidth = x; + updateMainPoppler(min_infowidth - dualwnd.getPosition() - 8); + } +} + +wdh_pl.onSetVisible (Boolean onoff) +{ + debugString("wdh_pl set visible: " + integerToString(onoff), 9); + if (onoff) + { + playlist_cover_attrib.onDataChanged(); + } + else + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } +} + +updatePoppler(int w) +{ + if (dualwnd.getPosition() == 0 && w == 0) return; + int min_w = stringToInteger(dualwnd.getXmlParam("minwidth")); + int max_w = stringToInteger(dualwnd.getXmlParam("maxwidth")); + if (max_w < 0) max_w = dualwnd.getWidth() + max_w; + debugString("max_w: " + integerToString(max_w), 9); + boolean reset = FALSE; + reset += (w == 0); + reset += (w < min_w); + if (reset) w = min_w; + + // Prevent the playlist from overlapping the player + if (w > max_w) + { + w = max_w; + + // Resize the player to get more space + if (max_w < min_w) + { + w = min_w; + int mainframe_pos = mainframe.getPosition() - (min_w - max_w); // I need to save this in a variable first, otherwise mainframe.setPos will crash... + mainframe.setPosition(mainframe_pos); + } + } + debugString("set poppler: " + integerToString(w), 9); + dualwnd.setPosition(w); +} + +updateMainPoppler (int w) +{ + mainframe.setXmlparam("maxwidth", integerToString(w)); +} + +dc_openPl.onTimer () +{ + dc_openPl.stop(); + debugString("dc_openPl called!", 9); + wdh_pl.show(); + g_playlist.show(); + g_upper.show(); + //if (!wdh_pl.isVisible()) debugInt(g_playlist.getWidth()); +} + +dc_closePl.onTimer () +{ + dc_closePl.stop(); + wdh_pl.hide(); +} + +//---------------------------------------------------------------------------------------------------------------- +// Playlist Album Art Handles +//---------------------------------------------------------------------------------------------------------------- + +Global boolean attrib_bypass = false; + +playlist_cover_attrib.onDataChanged () +{ + if (attrib_bypass) + return; + + if (playlist_enlarge_attrib.getData() == "0") + return; + + if (getData() == "1") + { + int pos = getPrivateInt(getSkinName(), "playlist_cover_poppler", PLC_POPPLER_POS); + if (pos > 0 && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden") + { + pl_dualwnd.setPosition (pos); + g_cover.show(); + } + else + { + pl_dualwnd.setPosition (0); + g_cover.hide(); + } + } + else + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + pl_dualwnd.setPosition(0); + g_cover.hide(); + } +} + +Global Boolean bypass; + +player.onBeforeSwitchToLayout (Layout oldlayout, Layout newlayout) +{ + if (oldlayout == normal) + { + bypass = 1; + } +} + +g_cover.onSetVisible (Boolean onoff) +{ + if (bypass) + { + bypass = 0; + return; + } + + if (!onoff && !bypass_nocomp && playlist_cover_attrib.getdata() == "1" && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden" && playlist_enlarge_attrib.getData() == "1" && dualwnd.getPosition() > 0) + { + playlist_cover_attrib.setdata("0"); + } + else if (onoff && !bypass_nocomp && playlist_cover_attrib.getdata() == "0" && dualwnd.getPosition() > 0) + { + attrib_bypass = true; + playlist_cover_attrib.setdata("1"); + attrib_bypass = false; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Bento/scripts/pledit.maki b/Src/resources/skins/Bento/scripts/pledit.maki Binary files differnew file mode 100644 index 00000000..0e4f04a4 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/pledit.maki diff --git a/Src/resources/skins/Bento/scripts/workingdir.m b/Src/resources/skins/Bento/scripts/workingdir.m new file mode 100644 index 00000000..7ab02534 --- /dev/null +++ b/Src/resources/skins/Bento/scripts/workingdir.m @@ -0,0 +1 @@ +//define BIG_BENTO_WORKINGDIR
\ No newline at end of file diff --git a/Src/resources/skins/Bento/skin.xml b/Src/resources/skins/Bento/skin.xml new file mode 100644 index 00000000..cadb8cd0 --- /dev/null +++ b/Src/resources/skins/Bento/skin.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> + +<WinampAbstractionLayer version="1.35"> + <skininfo> + <version>1.2.4</version> + <name>Bento</name> + <author>Martin Pöhlmann, Taber Buhl</author> + <comment>Graphics by Taber Buhl - Wasabi Development by Ben Allison and Martin Poehlmann</comment> + <email>martin@skinconsortium.com</email> + <screenshot>screenshot.png</screenshot> + <homepage>http://www.skinconsortium.com/</homepage> + </skininfo> + + <accelerators section="general"> + <accelerator bind="Alt+F" action="MENUHOTKEY_FILE" /> + <accelerator bind="Alt+P" action="MENUHOTKEY_PLAY" /> + <accelerator bind="Alt+O" action="MENUHOTKEY_OPTIONS" /> + <accelerator bind="Alt+I" action="MENUHOTKEY_VIEW" /> + <accelerator bind="Alt+H" action="MENUHOTKEY_HELP" /> + </accelerators> + + <accelerators section="normal"> + <accelerator bind="space" action="SHOW_CURRENT_TRACK" /> + </accelerators> + + <!-- This Skin uses shared Graphics, XML and Maki from 'Big Bento' --> + + <scripts> + <script file="../Big Bento/scripts/loadattribs.maki" param="small"/> <!-- Must be loaded at first --> + </scripts> + + <include file="../Big Bento/xml/color-presets.xml"/> + <include file="../Big Bento/xml/system-colors.xml"/> + <include file="../Big Bento/xml/system-elements.xml"/> + <include file="xml/standardframe.xml" /> + <include file="../Big Bento/xml/window-overrides.xml"/> + <include file="xml/player.xml"/> + <include file="xml/notifier.xml"/> + <include file="../Big Bento/about/about.xml"/> + + <scripts> + <script file="../Big Bento/scripts/maximize.maki" param="130,18"/> + </scripts> + +</WinampAbstractionLayer>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/window/aol_radio_alb_art.jpg b/Src/resources/skins/Bento/window/aol_radio_alb_art.jpg Binary files differnew file mode 100644 index 00000000..9523fce5 --- /dev/null +++ b/Src/resources/skins/Bento/window/aol_radio_alb_art.jpg diff --git a/Src/resources/skins/Bento/window/config.png b/Src/resources/skins/Bento/window/config.png Binary files differnew file mode 100644 index 00000000..4f071aa0 --- /dev/null +++ b/Src/resources/skins/Bento/window/config.png diff --git a/Src/resources/skins/Bento/window/controls.png b/Src/resources/skins/Bento/window/controls.png Binary files differnew file mode 100644 index 00000000..f87807d3 --- /dev/null +++ b/Src/resources/skins/Bento/window/controls.png diff --git a/Src/resources/skins/Bento/window/equalizer.png b/Src/resources/skins/Bento/window/equalizer.png Binary files differnew file mode 100644 index 00000000..50ae5d93 --- /dev/null +++ b/Src/resources/skins/Bento/window/equalizer.png diff --git a/Src/resources/skins/Bento/window/menu_file.png b/Src/resources/skins/Bento/window/menu_file.png Binary files differnew file mode 100644 index 00000000..7baced0b --- /dev/null +++ b/Src/resources/skins/Bento/window/menu_file.png diff --git a/Src/resources/skins/Bento/window/menu_help.png b/Src/resources/skins/Bento/window/menu_help.png Binary files differnew file mode 100644 index 00000000..cb4cb613 --- /dev/null +++ b/Src/resources/skins/Bento/window/menu_help.png diff --git a/Src/resources/skins/Bento/window/menu_options.png b/Src/resources/skins/Bento/window/menu_options.png Binary files differnew file mode 100644 index 00000000..434ede9e --- /dev/null +++ b/Src/resources/skins/Bento/window/menu_options.png diff --git a/Src/resources/skins/Bento/window/menu_play.png b/Src/resources/skins/Bento/window/menu_play.png Binary files differnew file mode 100644 index 00000000..0ac444b6 --- /dev/null +++ b/Src/resources/skins/Bento/window/menu_play.png diff --git a/Src/resources/skins/Bento/window/menu_view.png b/Src/resources/skins/Bento/window/menu_view.png Binary files differnew file mode 100644 index 00000000..53edb782 --- /dev/null +++ b/Src/resources/skins/Bento/window/menu_view.png diff --git a/Src/resources/skins/Bento/window/numfont.png b/Src/resources/skins/Bento/window/numfont.png Binary files differnew file mode 100644 index 00000000..1033d27c --- /dev/null +++ b/Src/resources/skins/Bento/window/numfont.png diff --git a/Src/resources/skins/Bento/window/player.png b/Src/resources/skins/Bento/window/player.png Binary files differnew file mode 100644 index 00000000..f0ae7d88 --- /dev/null +++ b/Src/resources/skins/Bento/window/player.png diff --git a/Src/resources/skins/Bento/window/sc_alb_art.jpg b/Src/resources/skins/Bento/window/sc_alb_art.jpg Binary files differnew file mode 100644 index 00000000..3f677c12 --- /dev/null +++ b/Src/resources/skins/Bento/window/sc_alb_art.jpg diff --git a/Src/resources/skins/Bento/window/scrollbars.png b/Src/resources/skins/Bento/window/scrollbars.png Binary files differnew file mode 100644 index 00000000..b75e3959 --- /dev/null +++ b/Src/resources/skins/Bento/window/scrollbars.png diff --git a/Src/resources/skins/Bento/window/shade.png b/Src/resources/skins/Bento/window/shade.png Binary files differnew file mode 100644 index 00000000..e9532db7 --- /dev/null +++ b/Src/resources/skins/Bento/window/shade.png diff --git a/Src/resources/skins/Bento/window/sui.png b/Src/resources/skins/Bento/window/sui.png Binary files differnew file mode 100644 index 00000000..2c38d0af --- /dev/null +++ b/Src/resources/skins/Bento/window/sui.png diff --git a/Src/resources/skins/Bento/window/sui2.png b/Src/resources/skins/Bento/window/sui2.png Binary files differnew file mode 100644 index 00000000..5f0e3872 --- /dev/null +++ b/Src/resources/skins/Bento/window/sui2.png diff --git a/Src/resources/skins/Bento/window/window-elements.png b/Src/resources/skins/Bento/window/window-elements.png Binary files differnew file mode 100644 index 00000000..4809baf8 --- /dev/null +++ b/Src/resources/skins/Bento/window/window-elements.png diff --git a/Src/resources/skins/Bento/window/window.png b/Src/resources/skins/Bento/window/window.png Binary files differnew file mode 100644 index 00000000..06fee270 --- /dev/null +++ b/Src/resources/skins/Bento/window/window.png diff --git a/Src/resources/skins/Bento/xml/config.xml b/Src/resources/skins/Bento/xml/config.xml new file mode 100644 index 00000000..ab5e9280 --- /dev/null +++ b/Src/resources/skins/Bento/xml/config.xml @@ -0,0 +1,597 @@ +<groupdef id="info.component.config"> + + <!-- config page target --> + <GroupXFade speed="0.5" x="75" y="1" w="-75" h="0" relatw="1" relath="1" id="skin.config.target" move="1"/> + + <!-- config menu --> + <componentbucket id="my.bucket" x="0" y="1" w="72" h="90" spacing="0" leftmargin="0" rightmargin="0" vertical="1" wndtype="skin.config" /> + <layer x="73" y="0" image="config.vdivider" move="0"/> + + <script file="../Big Bento/scripts/configtarget.maki" /> +</groupdef> + +<!-- config menu items --> + +<groupdef id="bucket.entry.0" windowtype="skin.config" w="72" h="14"> + <togglebutton + id="btn" + action="switchto;optionsgroup.appearance" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.appearance" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.1" windowtype="skin.config" w="98" h="18"> + <togglebutton + id="btn" + action="switchto;optionsgroup.songticker" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.songticker" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.2" windowtype="skin.config" w="98" h="18"> + <togglebutton + id="btn" + action="switchto;optionsgroup.autoresize" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.windowsizing" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.3" windowtype="skin.config" w="98" h="18"> + <togglebutton + id="btn" + action="switchto;optionsgroup.notifier" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.notifier" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.4" windowtype="skin.config" w="98" h="18"> + <togglebutton + id="btn" + action="switchto;optionsgroup.visualization" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.visualization" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.5" windowtype="skin.config" w="98" h="18"> + <togglebutton + id="btn" + action="switchto;optionsgroup.cthemes" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.colorthemes" ghost="1"/> +</groupdef> + + +<!-- config menu pages --> + +<groupdef id="optionsgroup.autoresize" h="91" w="209"> + + <togglebutton x="-2" y="14" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{0542AFA4-48D9-4c9f-8900-5739D52C114F};Prevent video resize" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{0542AFA4-48D9-4c9f-8900-5739D52C114F};Prevent video resize" /> + + <togglebutton x="-2" y="0" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Autoresize Main Window if maximized" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Autoresize Main Window if maximized" /> + + <togglebutton x="-2" y="28" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Link shade and player width" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Link shade and player width" /> + + + <layer x="1" y="45" image="config.windowsizing.titlebar.text" ghost="1" /> + + <togglebutton x="-2" y="59" h="12" w="74" rectrgn="1" + hoverImage="config.windowsizing.titlebar.maximize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Maximize Window on Titlebar Doubleclick" + /> + <togglebutton x="1" y="59" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Maximize Window on Titlebar Doubleclick" /> + + <togglebutton x="67" y="59" h="12" w="129" rectrgn="1" + hoverImage="config.windowsizing.titlebar.shade.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Switch to Shade on Titlebar Doubleclick" + /> + <togglebutton x="70" y="59" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Switch to Shade on Titlebar Doubleclick" /> + + <layer x="1" y="0" image="config.windowsizing.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.songticker" h="91" w="159"> + + <togglebutton x="-2" y="0" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Disable Songticker Scrolling" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Disable Songticker Scrolling" /> + + <togglebutton x="-2" y="14" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Modern Songticker Scrolling" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Modern Songticker Scrolling" /> + + <togglebutton x="-2" y="28" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Classic Songticker Scrolling" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Classic Songticker Scrolling" /> + + <layer x="1" y="0" image="config.songticker.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.cthemes" h="91" w="159"> + + <ColorThemes:List + id="colorthemes" + x="0" y="0" + w="0" h="75" relatw="1" + nohscroll="1" + nocolheader="1" + visible="0" + antialias="0" + fontsize="13" + /> + + <button id="colorthemes.prev" + action="colorthemes_previous" + action_target="colorthemes" + x="0" h="13" w="25" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous ColorTheme" + /> + + <button id="colorthemes.switch" + action="colorthemes_switch" + action_target="colorthemes" + x="24" h="13" w="31" y="76" + image="config.colorthemes.button.set.normal" + hoverImage="config.colorthemes.button.set.hover" + downImage="config.colorthemes.button.set.down" + tooltip="Switch to selected ColorTheme" + /> + + <button id="colorthemes.next" + action="colorthemes_next" + action_target="colorthemes" + x="54" h="13" w="25" y="76" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next ColorTheme" + /> + + <button id="colorthemes.more" + x="78" h="13" w="31" y="76" + image="config.colorthemes.button.more.normal" + hoverImage="config.colorthemes.button.more.hover" + downImage="config.colorthemes.button.more.down" + tooltip="Download more ColorThemes" + /> + + <script file="../Big Bento/scripts/colorthemes.maki" /> + +</groupdef> + +<groupdef id="optionsgroup.appearance" h="91" w="209"> + + <togglebutton x="-2" y="0" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Main Window Menu" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Main Window Menu" /> + + <togglebutton x="-2" y="14" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Visualizer Reflection" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Visualizer Reflection" /> + + <togglebutton x="-2" y="28" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Timer Reflection" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Timer Reflection" /> + + <togglebutton x="-2" y="42" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" + /> + <togglebutton x="1" y="42" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" /> + + <togglebutton x="-2" y="60" h="12" w="194" rectrgn="1" + hoverImage="config.notifier.sub.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Switch to Bento with Big Buttons" + /> + + <button + action="switchto;optionsgroup.appearance.2;subpage" action_target="skin.config.target" + x="0" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <button + action="switchto;optionsgroup.appearance.2;subpage" action_target="skin.config.target" + x="24" y="76" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next Configpage" + /> + + <layer x="1" y="0" image="config.appearance.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.appearance.2" > + +<!--does anyone know why this is still visible?--> +<!-- <togglebutton x="-2" y="0" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Artist-Information Buttons" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Artist-Information Buttons" /> +--> + <togglebutton x="-2" y="14" h="12" w="194" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Playlist Tab" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Playlist Tab" /> + + <button + action="switchto;optionsgroup.appearance;subpage" action_target="skin.config.target" + x="0" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <button + action="switchto;optionsgroup.appearance;subpage" action_target="skin.config.target" + x="24" y="76" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next Configpage" + /> + + <layer x="1" y="0" image="config.appearance.2.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier" h="91" w="159"> + + <button id="holdtime.decrease" + x="67" y="42" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="holdtime.text" + x="72" y="42" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="holdtime.increase" + x="114" y="42" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="../Big Bento/scripts/timecontrol.maki" param="holdtime.text;holdtime.decrease;holdtime.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications display time|100|10000|0.001|a"/> + + <button + action="switchto;optionsgroup.notifier.show;subpage" action_target="skin.config.target" + x="1" y="0" h="12" w="208" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.show" x="72" y="0" image="config.notifier.text.always" ghost="1"/> + <script file="../Big Bento/scripts/imagecontrol.maki" param="notifier.show|4|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always;config.notifier.text.always|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized;config.notifier.text.shade_minimized|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized;config.notifier.text.minimized|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show;config.notifier.text.never" /> + + <button + action="switchto;optionsgroup.notifier.location;subpage" action_target="skin.config.target" + x="1" y="14" h="12" w="208" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.location" x="49" y="14" image="config.notifier.text.bottomright" ghost="1"/> + <script file="../Big Bento/scripts/imagecontrol.maki" param="notifier.location|6|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left;config.notifier.text.topleft|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center;config.notifier.text.topcenter|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right;config.notifier.text.topright|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left;config.notifier.text.bottomleft|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center;config.notifier.text.bottomcenter|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right;config.notifier.text.bottomright" /> + + <button + action="switchto;optionsgroup.notifier.animation.fadein;subpage" action_target="skin.config.target" + x="1" y="28" h="12" w="208" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.fadein" x="92" y="28" image="config.notifier.text.alphafade" ghost="1"/> + <script file="../Big Bento/scripts/imagecontrol.maki" param="notifier.fadein|3|{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade;config.notifier.text.alphafade|{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide;config.notifier.text.vslide|{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide;config.notifier.text.hslide" /> + + <button + action="switchto;optionsgroup.notifier.animation.fadeout;subpage" action_target="skin.config.target" + x="1" y="56" h="12" w="208" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.fadeout" x="99" y="56" image="config.notifier.text.alphafade" ghost="1"/> + <script file="../Big Bento/scripts/imagecontrol.maki" param="notifier.fadeout|3|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade ;config.notifier.text.alphafade|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide ;config.notifier.text.vslide|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide ;config.notifier.text.hslide" /> + + <layer x="1" y="0" image="config.notifier.text" ghost="1" /> +</groupdef> + +<!-- notifier --> + +<groupdef id="optionsgroup.notifier.show" h="91" w="209"> + + <togglebutton x="-2" y="0" h="12" w="199" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always" /> + + <togglebutton x="-2" y="14" h="12" w="199" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized" /> + + <togglebutton x="-2" y="28" h="12" w="199" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized" /> + + <togglebutton x="-2" y="42" h="12" w="199" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show" + /> + <togglebutton x="1" y="42" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show" /> + + <togglebutton x="-2" y="60" h="12" w="199" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Disable in fullscreen" + /> + <togglebutton x="1" y="60" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Disable in fullscreen" /> + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" h="13" w="25" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <layer x="1" y="0" image="config.notifier.show.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.location" h="91" w="209"> + + <togglebutton x="-1" y="0" h="12" w="80" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left" /> + + <togglebutton x="-1" y="14" h="12" w="80" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center" /> + + <togglebutton x="-1" y="28" h="12" w="80" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right" /> + + + <togglebutton x="75" y="0" h="12" w="111" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left" + /> + <togglebutton x="77" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left" /> + + <togglebutton x="75" y="14" h="12" w="111" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center" + /> + <togglebutton x="77" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center" /> + + <togglebutton x="75" y="28" h="12" w="111" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right" + /> + <togglebutton x="77" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right" /> + + + <togglebutton x="-2" y="46" h="12" w="156" rectrgn="1" + hoverImage="config.notifier.location.relative.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Viewport" + /> + <togglebutton x="1" y="46" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Viewport" /> + + <togglebutton x="-2" y="60" h="12" w="156" rectrgn="1" + hoverImage="config.notifier.location.relative.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Monitor" + /> + <togglebutton x="1" y="60" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Monitor" /> + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" h="13" w="25" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <layer x="1" y="0" image="config.notifier.location.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.animation.fadein" h="91" w="209"> + + <togglebutton x="-1" y="0" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade" + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade" /> + + <togglebutton x="-1" y="14" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide" /> + + <togglebutton x="-1" y="28" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide" /> + + <button id="fdin.decrease" + x="91" y="46" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="fdin.text" + x="96" y="46" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="fdin.increase" + x="138" y="46" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="../Big Bento/scripts/timecontrol.maki" param="fdin.text;fdin.decrease;fdin.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade in time|100|10000|0.001|a"/> + + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" h="13" w="25" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <layer x="1" y="0" image="config.notifier.animation.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.animation.fadeout" h="91" w="209"> + + <togglebutton x="-1" y="0" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade " + /> + <togglebutton x="1" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade " /> + + <togglebutton x="-1" y="14" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide " + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide " /> + + <togglebutton x="-1" y="28" h="12" w="113" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide " + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide " /> + + <button id="fdout.decrease" + x="91" y="46" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="fdout.text" + x="96" y="46" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="fdout.increase" + x="138" y="46" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="../Big Bento/scripts/timecontrol.maki" param="fdout.text;fdout.decrease;fdout.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade out time|100|10000|0.001|a"/> + + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" h="13" w="25" y="76" + image="config.colorthemes.button.prev.normal" + hoverImage="config.colorthemes.button.prev.hover" + downImage="config.colorthemes.button.prev.down" + tooltip="Previous Configpage" + /> + + <layer x="1" y="0" image="config.notifier.animation.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.visualization" h="91" w="159"> + + <togglebutton x="-1" y="14" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Big Component View" + /> + <togglebutton x="1" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Big Component View" /> + + <togglebutton x="-1" y="28" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (stretched)" + /> + <togglebutton x="1" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (stretched)" /> + + <togglebutton x="-1" y="42" h="12" w="208" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (mini)" + /> + <togglebutton x="1" y="42" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (mini)" /> + + <layer x="1" y="0" image="config.visualization.text" ghost="1" /> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/notifier-elements.xml b/Src/resources/skins/Bento/xml/notifier-elements.xml new file mode 100644 index 00000000..8a1ff98d --- /dev/null +++ b/Src/resources/skins/Bento/xml/notifier-elements.xml @@ -0,0 +1,22 @@ +<elements> + + <bitmap id="notifier.bg.left" file="../Big Bento/window/notifier.png" x="0" y="0" w="13" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.center" file="../Big Bento/window/notifier.png" x="13" y="0" w="133" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.right" file="../Big Bento/window/notifier.png" x="146" y="0" w="13" h="80" gammagroup="NotifierBackground"/> + + <bitmap id="notifier.bg.left.da" file="../Big Bento/window/notifier.png" x="0" y="80" w="13" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.center.da" file="../Big Bento/window/notifier.png" x="13" y="80" w="133" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.right.da" file="../Big Bento/window/notifier.png" x="146" y="80" w="13" h="80" gammagroup="NotifierBackground"/> + + <bitmap id="notifier.bg.cover" file="../Big Bento/window/notifier.png" x="0" y="160" w="78" h="80" gammagroup="NotifierBackground"/> + + + <color id="notifier.dark" value="35,35,35" gammagroup="NotifierTextShadow" /> + <color id="notifier.bright" value="255,255,255" gammagroup="NotifierText" /> + + <color id="notifier.dark.upper" value="35,35,35" gammagroup="NotifierUpperText" /> + <color id="notifier.bright.upper" value="255,255,255" gammagroup="NotifierUpperTextShadow" /> + + +</elements> + diff --git a/Src/resources/skins/Bento/xml/notifier-normal.xml b/Src/resources/skins/Bento/xml/notifier-normal.xml new file mode 100644 index 00000000..c662dac7 --- /dev/null +++ b/Src/resources/skins/Bento/xml/notifier-normal.xml @@ -0,0 +1,51 @@ +<groupdef id="notifier.albumart" sysregion="1" ghost="1" > + + <layer id="notifier.cover.bg" x="0" y="0" image="notifier.bg.cover" move="0"/> + <AlbumArt id="notifier.cover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" notfoundImage="winamp.cover.notfound.50" noAutoRefresh="1"/> + <layer id="notifier.webcover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" visible="0"/> + +</groupdef> + +<groupdef id="notifier.text" sysregion = "1" ghost="1"> + + <!-- mp: I know this is an unusual way to get text shadow - but it creates a much better effect than the shadow params --> + + <text id="plentry.shadow" x="0" y="13" default="2/15" w="100" color="notifier.bright.upper" font="Arial" fontsize="12" bold="1" ghost="1" alpha="128"/> + <text id="plentry" x="0" y="12" default="2/15" w="100" color="notifier.dark.upper" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="nexttrack.shadow" x="-102" y="13" w="102" relatw="1" align="right" default="Next track" color="notifier.bright.upper" font="Arial" fontsize="12" bold="1" ghost="1" alpha="128"/> + <text id="nexttrack" x="-102" y="12" w="102" relatw="1" align="right" default="Next track" color="notifier.dark.upper" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="title.shadow" x="0" y="28" w="0" relatw="1" default="Nothing" color="notifier.dark" font="Arial" fontsize="17" ghost="1" alpha="128" bold="1" translate="0"/> + <text id="title" x="0" y="27" w="0" relatw="1" default="Nothing" color="notifier.bright" font="Arial" fontsize="17" ghost="1" bold="1" translate="0"/> + + <text id="artist.shadow" x="0" y="42" w="0" h="18" relatw="1" default="Nithin Sawhney" color="notifier.dark" font="Arial" fontsize="13" ghost="1" alpha="128" translate="0"/> + <text id="artist" x="0" y="41" w="0" h="18" relatw="1" default="Nithin Sawhney" color="notifier.bright" font="Arial" fontsize="13" ghost="1" alpha="235" translate="0"/> + + <text id="album.shadow" x="0" y="55" w="0" h="14" relatw="1" default="Prophesy" color="notifier.dark" font="Arial" fontsize="13" ghost="1" alpha="128" translate="0"/> + <text id="album" x="0" y="54" w="0" h="14" relatw="1" default="Prophesy" color="notifier.bright" font="Arial" fontsize="13" ghost="1" alpha="235" translate="0"/> + +</groupdef> + + +<layout id="normal" noparent="1" ontop="1" h="80" w="128" forcealpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left" middle="notifier.bg.center" right="notifier.bg.right" fitparent="1" sysregion="1" ghost="1" rectrgn="0" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback.shadow" x="15" y="32" w="-35" relatw="1" align="center" default="End of playback" color="notifier.dark" font="Arial" fontsize="20" visible="0" ghost="1"/> + <text id="endofplayback" x="15" y="31" w="-35" relatw="1" align="center" default="End of playback" color="notifier.bright" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout> + +<layout id="desktopalpha" noparent="1" ontop="1" h="80" w="128" desktopalpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left.da" middle="notifier.bg.center.da" right="notifier.bg.right.da" fitparent="1" ghost="1" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback.shadow" x="15" y="32" w="-35" relatw="1" align="center" default="End of playback" color="notifier.dark" font="Arial" fontsize="20" visible="0" ghost="1"/> + <text id="endofplayback" x="15" y="31" w="-35" relatw="1" align="center" default="End of playback" color="notifier.bright" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/notifier.xml b/Src/resources/skins/Bento/xml/notifier.xml new file mode 100644 index 00000000..47a002ff --- /dev/null +++ b/Src/resources/skins/Bento/xml/notifier.xml @@ -0,0 +1,10 @@ +<include file="notifier-elements.xml"/> +<container id="notifier" name="Notifier" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1"> + + <include file="notifier-normal.xml"/> + +</container> + +<!-- this script runs independent --> +<script file="@SKINSPATH@\Big Bento\scripts\notifier.maki"/> +<!--script file="scripts\notifier.maki"/-->
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-elements.xml b/Src/resources/skins/Bento/xml/player-elements.xml new file mode 100644 index 00000000..c1b11fd6 --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-elements.xml @@ -0,0 +1,640 @@ +<elements> + + + <!-- SUI Playlist Search --> + <bitmap id="sui.pl.search.box.1" file="window/sui2.png" x="180" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.2" file="window/sui2.png" x="187" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.3" file="window/sui2.png" x="194" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.4" file="window/sui2.png" x="180" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.5" file="window/sui2.png" x="187" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.6" file="window/sui2.png" x="194" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.7" file="window/sui2.png" x="180" y="48" w="6" h="24" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.8" file="window/sui2.png" x="187" y="48" w="6" h="24" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.9" file="window/sui2.png" x="194" y="48" w="6" h="24" gammagroup="WindowBackground"/> + + <bitmap id="sui.pl.search.bg.1" file="window/sui2.png" x="81" y="31" w="18" h="30" gammagroup="PlayerDisplay"/> + <bitmap id="sui.pl.search.bg.2" file="window/sui2.png" x="100" y="31" w="20" h="30" gammagroup="PlayerDisplay"/> + <bitmap id="sui.pl.search.bg.3" file="window/sui2.png" x="121" y="31" w="18" h="30" gammagroup="PlayerDisplay"/> + + <bitmap id="sui.pl.search.bgv.1" file="window/sui2.png" x="0" y="31" w="30" h="30" gammagroup="ComponentFrame"/> + <bitmap id="sui.pl.search.bgv.2" file="window/sui2.png" x="31" y="31" w="20" h="30" gammagroup="ComponentFrame"/> + <bitmap id="sui.pl.search.bgv.3" file="window/sui2.png" x="50" y="31" w="30" h="30" gammagroup="ComponentFrame"/> + + <bitmap id="sui.pl.search.go.bgv" file="window/sui2.png" x="225" y="0" w="20" h="19" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.go.1" file="window/sui2.png" x="225" y="20" w="20" h="19" gammagroup="PlayerButton"/> + <bitmap id="sui.pl.search.go.2" file="window/sui2.png" x="225" y="40" w="20" h="19" gammagroup="PlayerButton"/> + <bitmap id="sui.pl.search.go.3" file="window/sui2.png" x="225" y="60" w="20" h="19" gammagroup="PlayerButton"/> + + <bitmap id="sui.pl.search.stop.bgv" file="window/sui2.png" x="201" y="0" w="20" h="19" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.stop.1" file="window/sui2.png" x="201" y="20" w="20" h="19" gammagroup="Column"/> + <bitmap id="sui.pl.search.stop.2" file="window/sui2.png" x="201" y="40" w="20" h="19" gammagroup="Column"/> + <bitmap id="sui.pl.search.stop.3" file="window/sui2.png" x="201" y="60" w="20" h="19" gammagroup="Column"/> + + + <!-- TitleBar --> + + <bitmap id="window.titlebar.grid.left" file="window/window.png" x="0" y="0" h="18" w="5" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.middle" file="window/window.png" x="5" y="0" h="18" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.right" file="window/window.png" x="15" y="0" h="18" w="5" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.grid.over.left" file="window/window.png" x="20" y="0" h="18" w="5" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.over.middle" file="window/window.png" x="25" y="0" h="18" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.over.right" file="window/window.png" x="35" y="0" h="18" w="5" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.text.winamp" file="window/window.png" x="100" y="32" h="7" w="37" gammagroup="TitlebarText"/> + + <bitmap id="window.titlebar.menu.normal" file="window/window.png" x="25" y="1" h="20" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.menu.hover" file="window/window.png" x="40" y="1" h="20" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.menu.down" file="window/window.png" x="50" y="1" h="20" w="10" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.menu.text.file" file="window/menu_file.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.play" file="window/menu_play.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.options" file="window/menu_options.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.view" file="window/menu_view.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.help" file="window/menu_help.png" gammagroup="TitlebarMenuText"/> + + <bitmap id="window.titlebar.button.sysmenu.normal" file="../Big Bento/window/window.png" x="0" y="0" h="13" w="15" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.sysmenu.hover" file="../Big Bento/window/window.png" x="0" y="13" h="13" w="15" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.sysmenu.down" file="../Big Bento/window/window.png" x="0" y="26" h="13" w="15" gammagroup="TitleButtonOrange"/> + + <bitmap id="window.titlebar.button.minimize.normal" file="../Big Bento/window/window.png" x="15" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.minimize.hover" file="../Big Bento/window/window.png" x="15" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.minimize.down" file="../Big Bento/window/window.png" x="15" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.maximize.normal" file="../Big Bento/window/window.png" x="32" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.maximize.hover" file="../Big Bento/window/window.png" x="32" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.maximize.down" file="../Big Bento/window/window.png" x="32" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.restore.normal" file="../Big Bento/window/window.png" x="49" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.restore.hover" file="../Big Bento/window/window.png" x="49" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.restore.down" file="../Big Bento/window/window.png" x="49" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.shade.normal" file="../Big Bento/window/window.png" x="66" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.shade.hover" file="../Big Bento/window/window.png" x="66" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.shade.down" file="../Big Bento/window/window.png" x="66" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.close.normal" file="../Big Bento/window/window.png" x="83" y="0" h="13" w="17" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.close.hover" file="../Big Bento/window/window.png" x="83" y="13" h="13" w="17" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.close.down" file="../Big Bento/window/window.png" x="83" y="26" h="13" w="17" gammagroup="TitleButtonOrange"/> + + + <!-- Window Elements --> + + <bitmap id="window.background.maximized" file="$solid" h="64" w="64" color="0,0,0" gammagroup="WindowBackground"/> + + <bitmap id="window.background.gradient" file="../Big Bento/window/window-gradient.png" gammagroup="WindowBackgroundGradient"/> + + <bitmap id="window.background.topleft" file="../Big Bento/window/window.png" x="100" y="23" h="5" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.top" file="../Big Bento/window/window.png" x="105" y="23" h="5" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.topright" file="../Big Bento/window/window.png" x="115" y="23" h="5" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.left" file="../Big Bento/window/window.png" x="100" y="28" h="6" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.center" file="../Big Bento/window/window.png" x="105" y="28" h="6" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.right" file="../Big Bento/window/window.png" x="115" y="28" h="6" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.bottomleft" file="../Big Bento/window/window.png" x="100" y="34" h="5" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.bottom" file="../Big Bento/window/window.png" x="105" y="34" h="5" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.bottomright" file="../Big Bento/window/window.png" x="115" y="34" h="5" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.resizer" file="window/window.png" x="137" y="32" h="7" w="15" gammagroup="WindowBackground"/> + + <bitmap id="window.background.region" file="$solid" h="1" w="1" color="0,0,0"/> + + <bitmap id="window.button.collapse.normal" file="window/sui.png" x="282" y="0" h="11" w="34" gammagroup="PlayerButton"/> + <bitmap id="window.button.collapse.hover" file="window/sui.png" x="282" y="11" h="11" w="34" gammagroup="PlayerButton"/> + <bitmap id="window.button.collapse.down" file="window/sui.png" x="282" y="22" h="11" w="34" gammagroup="PlayerButton"/> + + <bitmap id="window.button.expand.normal" file="window/sui.png" x="316" y="0" h="11" w="34" gammagroup="PlayerButton"/> + <bitmap id="window.button.expand.hover" file="window/sui.png" x="316" y="11" h="11" w="34" gammagroup="PlayerButton"/> + <bitmap id="window.button.expand.down" file="window/sui.png" x="316" y="22" h="11" w="34" gammagroup="PlayerButton"/> + + <bitmap id="window.background.collapse" file="window/sui.png" x="282" y="36" h="13" w="36" gammagroup="WindowBackground"/> + + + <!-- Player --> + + <bitmap id="player.display.background.left" file="window/player.png" x="0" y="0" h="54" w="80" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.left" file="window/player.png" x="0" y="326" h="54" w="80" gammagroup="WindowBackground"/> + <bitmap id="player.display.background.center" file="window/player.png" x="80" y="0" h="54" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.center" file="window/player.png" x="80" y="326" h="54" w="10" gammagroup="WindowBackground"/>^ + <bitmap id="player.display.background.right" file="window/player.png" x="90" y="0" h="54" w="132" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.right" file="window/player.png" x="90" y="326" h="54" w="132" gammagroup="WindowBackground"/> + + <bitmap id="player.songinfo.bitrate" file="../Big Bento/window/songinfo.png" x="0" y="15" h="5" w="14" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.frequency" file="../Big Bento/window/songinfo.png" x="15" y="15" h="5" w="11" gammagroup="DisplayText"/> + + <bitmap id="player.songinfo.mono" file="../Big Bento/window/songinfo.png" x="0" y="21" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.stereo" file="../Big Bento/window/songinfo.png" x="0" y="27" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.multi" file="../Big Bento/window/songinfo.png" x="0" y="33" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.multi2" file="../Big Bento/window/songinfo.png" x="41" y="33" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.na" file="../Big Bento/window/songinfo.png" x="0" y="0" h="5" w="40" gammagroup="DisplayText"/> + + <bitmap id="empty" file="$polygon" x="0" y="0" h="48" w="8" gammagroup="none"/> + + <bitmap id="player.beatvis.left" file="../Big Bento/window/beatvis.png" x="0" y="0" w="43" h="280" gammagroup="DisplayText"/> + <bitmap id="player.beatvis.right" file="../Big Bento/window/beatvis.png" x="43" y="0" w="43" h="280" gammagroup="DisplayText"/> + + <bitmap id="player.beatvis.left.wo" file="../Big Bento/window/beatvis.png" x="86" y="0" w="43" h="280" gammagroup="DisplayText"/> + <bitmap id="player.beatvis.right.wo" file="../Big Bento/window/beatvis.png" x="129" y="0" w="43" h="280" gammagroup="DisplayText"/> + + <bitmap id="player.bitmapfont.songinfo.source" file="../Big Bento/window/songinfo.png" x="0" y="0" h="15" w="110" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.songinfo" file="player.bitmapfont.songinfo.source" charwidth="5" charheight="5" hspacing="0" vspacing="0" /> + + <bitmap id="player.bitmapfont.nums.source" file="window/numfont.png" x="0" y="0" h="81" w="240" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.nums" file="player.bitmapfont.nums.source" charwidth="15" charheight="27" hspacing="0" vspacing="-2"/> + + <bitmap id="player.bitmapfont.nums.noreflect.source" file="window/numfont.png" x="0" y="81" h="81" w="240" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.nums.noreflect" file="player.bitmapfont.nums.noreflect.source" charwidth="15" charheight="27" hspacing="0" vspacing="-2"/> + + <bitmap id="player.display.status.playing" file="../Big Bento/window/songinfo.png" x="0" y="39" h="6" w="5" gammagroup="DisplayText"/> + <bitmap id="player.display.status.paused" file="../Big Bento/window/songinfo.png" x="6" y="39" h="6" w="5" gammagroup="DisplayText"/> + <bitmap id="player.display.status.stopped" file="../Big Bento/window/songinfo.png" x="12" y="39" h="6" w="5" gammagroup="DisplayText"/> + + <bitmap id="player.button.mute.normal" file="window/player.png" x="0" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.hover" file="window/player.png" x="25" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.down" file="window/player.png" x="50" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.normal" file="window/player.png" x="75" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.hover" file="window/player.png" x="100" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.down" file="window/player.png" x="125" y="55" h="14" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.placeholder" file="window/player.png" x="150" y="55" h="14" w="25" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.mute.glow" file="window/player.png" x="125" y="175" h="16" w="25" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.mute.active" file="window/player.png" x="0" y="295" h="28" w="28" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.slider.background.left" file="window/player.png" x="175" y="56" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="player.slider.background.center" file="window/player.png" x="180" y="56" h="5" w="15" gammagroup="PlayerSliderBackground"/> + <bitmap id="player.slider.background.right" file="window/player.png" x="195" y="56" h="5" w="5" gammagroup="PlayerSliderBackground"/> + + <bitmap id="player.slider.light.left" file="window/player.png" x="175" y="61" h="2" w="4" gammagroup="PlayerSliderLight"/> + <bitmap id="player.slider.light.center" file="window/player.png" x="179" y="61" h="2" w="8" gammagroup="PlayerSliderLight"/> + <bitmap id="player.slider.light.right" file="window/player.png" x="187" y="61" h="2" w="4" gammagroup="PlayerSliderLight"/> + + <bitmap id="player.label.volume" file="window/player.png" x="0" y="69" h="8" w="71" gammagroup="WindowText"/> + + <bitmap id="player.volume.thumb.normal" file="window/player.png" x="71" y="69" h="10" w="17" gammagroup="PlayerButton"/> + <bitmap id="player.volume.thumb.hover" file="window/player.png" x="88" y="69" h="10" w="17" gammagroup="PlayerButton"/> + <bitmap id="player.volume.thumb.down" file="window/player.png" x="105" y="69" h="10" w="17" gammagroup="PlayerButton"/> + + <bitmap id="player.posbar.thumb.normal" file="window/player.png" x="122" y="69" h="10" w="31" gammagroup="PlayerButton"/> + <bitmap id="player.posbar.thumb.hover" file="window/player.png" x="153" y="69" h="10" w="31" gammagroup="PlayerButton"/> + <bitmap id="player.posbar.thumb.down" file="window/player.png" x="184" y="69" h="10" w="31" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.placeholder" file="window/player.png" x="0" y="79" h="24" w="26" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.play.placeholder" file="window/player.png" x="26" y="79" h="24" w="22" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.pause.placeholder" file="window/player.png" x="48" y="79" h="24" w="22" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.stop.placeholder" file="window/player.png" x="70" y="79" h="24" w="22" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.next.placeholder" file="window/player.png" x="92" y="79" h="24" w="26" gammagroup="PlayerButtonPlaceHolder"/> + + <bitmap id="player.button.previous.normal" file="window/player.png" x="0" y="103" h="24" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.normal" file="window/player.png" x="26" y="103" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.normal" file="window/player.png" x="48" y="103" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.normal" file="window/player.png" x="70" y="103" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.normal" file="window/player.png" x="92" y="103" h="24" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.hover" file="window/player.png" x="0" y="127" h="24" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.hover" file="window/player.png" x="26" y="127" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.hover" file="window/player.png" x="48" y="127" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.hover" file="window/player.png" x="70" y="127" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.hover" file="window/player.png" x="92" y="127" h="24" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.glow" file="window/player.png" x="118" y="127" h="24" w="26" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.pps.glow" file="window/player.png" x="144" y="127" h="24" w="22" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.next.glow" file="window/player.png" x="166" y="127" h="24" w="26" gammagroup="PlayerButtonGlow"/> + + <bitmap id="player.button.previous.down" file="window/player.png" x="0" y="151" h="24" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.down" file="window/player.png" x="26" y="151" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.down" file="window/player.png" x="48" y="151" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.down" file="window/player.png" x="70" y="151" h="24" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.down" file="window/player.png" x="92" y="151" h="24" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.eject.placeholder" file="window/player.png" x="0" y="175" h="17" w="25" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.eject.normal" file="window/player.png" x="25" y="175" h="17" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.eject.hover" file="window/player.png" x="50" y="175" h="17" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.eject.down" file="window/player.png" x="75" y="175" h="17" w="25" gammagroup="PlayerButton"/> + <bitmap id="player.button.eject.glow" file="window/player.png" x="100" y="175" h="17" w="25" gammagroup="PlayerButtonGlow"/> + + <bitmap id="player.button.shuffle.placeholder" file="window/player.png" x="0" y="192" h="17" w="32" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.shuffle.normal0" file="window/player.png" x="0" y="209" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.hover0" file="window/player.png" x="32" y="209" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.down0" file="window/player.png" x="64" y="209" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.normal1" file="window/player.png" x="0" y="226" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.hover1" file="window/player.png" x="32" y="226" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.down1" file="window/player.png" x="64" y="226" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.glow" file="window/player.png" x="96" y="209" h="17" w="32" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.shuffle.active0" file="$polygon" h="31" w="34" /> + <bitmap id="player.button.shuffle.active1" file="window/player.png" x="28" y="295" h="31" w="34" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.button.repeat.placeholder" file="window/player.png" x="32" y="192" h="17" w="24" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.repeat.normal0" file="window/player.png" x="0" y="243" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover0" file="window/player.png" x="27" y="243" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down0" file="window/player.png" x="54" y="243" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.normal1" file="window/player.png" x="0" y="260" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover1" file="window/player.png" x="27" y="260" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down1" file="window/player.png" x="54" y="260" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.normal2" file="window/player.png" x="0" y="277" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover2" file="window/player.png" x="27" y="277" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down2" file="window/player.png" x="54" y="277" h="17" w="27" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.glow" file="window/player.png" x="81" y="243" h="17" w="27" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.repeat.active0" file="$polygon" h="30" w="35" /> + <bitmap id="player.button.repeat.active1" file="window/player.png" x="62" y="295" h="30" w="35" gammagroup="PlayerButtonActive"/> + <bitmap id="player.button.repeat.active2" file="window/player.png" x="97" y="295" h="30" w="35" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.button.bolt.glow" file="window/player.png" x="138" y="221" h="37" w="42" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.normal" file="window/player.png" x="180" y="184" h="37" w="42" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.hover" file="window/player.png" x="180" y="221" h="37" w="42" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.down" file="window/player.png" x="180" y="258" h="37" w="42" gammagroup="LightningBolt"/> + + + <!-- SUI Background --> + + <bitmap id="sui.background.topleft" file="../Big Bento/window/window.png" x="160" y="0" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.top" file="../Big Bento/window/window.png" x="165" y="0" h="5" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.topright" file="../Big Bento/window/window.png" x="175" y="0" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.left" file="../Big Bento/window/window.png" x="160" y="5" h="10" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.center" file="../Big Bento/window/window.png" x="165" y="5" h="10" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.right" file="../Big Bento/window/window.png" x="175" y="5" h="10" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottomleft" file="../Big Bento/window/window.png" x="160" y="15" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottom" file="../Big Bento/window/window.png" x="165" y="15" h="5" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottomright" file="../Big Bento/window/window.png" x="175" y="15" h="5" w="5" gammagroup="PlayerDisplay"/> + + <bitmap id="sui.component.topleft" file="../Big Bento/window/window.png" x="200" y="0" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.top" file="../Big Bento/window/window.png" x="205" y="0" h="5" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.top2" file="../Big Bento/window/window.png" x="205" y="0" h="1" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.topright" file="../Big Bento/window/window.png" x="215" y="0" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.left" file="../Big Bento/window/window.png" x="200" y="5" h="10" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.center" file="../Big Bento/window/window.png" x="205" y="5" h="10" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.right" file="../Big Bento/window/window.png" x="215" y="5" h="10" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottomleft" file="../Big Bento/window/window.png" x="200" y="15" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottom" file="../Big Bento/window/window.png" x="205" y="15" h="5" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottom2" file="../Big Bento/window/window.png" x="205" y="19" h="1" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottomright" file="../Big Bento/window/window.png" x="215" y="15" h="5" w="5" gammagroup="ComponentFrame"/> + + <!-- SUI Component Buttons --> + + <bitmap id="sui.button.active.normal.left" file="window/sui.png" x="0" y="18" h="18" w="6" gammagroup="CompButtonActive" /> + <bitmap id="sui.button.active.normal.center" file="window/sui.png" x="6" y="18" h="18" w="10" gammagroup="CompButtonActive" /> + <bitmap id="sui.button.active.normal.right" file="window/sui.png" x="81" y="18" h="18" w="6" gammagroup="CompButtonActive" /> + + <bitmap id="sui.button.active.footer.left" file="window/sui.png" x="0" y="34" h="1" w="6" gammagroup="ComponentFrame" /> + <bitmap id="sui.button.active.footer.center" file="window/sui.png" x="6" y="34" h="1" w="10" gammagroup="ComponentFrame" /> + <bitmap id="sui.button.active.footer.right" file="window/sui.png" x="81" y="34" h="1" w="6" gammagroup="ComponentFrame" /> + + <bitmap id="sui.button.inactive.normal.left" file="window/sui.png" x="0" y="0" h="17" w="6" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.normal.center" file="window/sui.png" x="6" y="0" h="17" w="10" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.normal.right" file="window/sui.png" x="81" y="0" h="17" w="6" gammagroup="CompButtonInactive" /> + + <bitmap id="sui.button.inactive.hover.left" file="window/sui.png" x="0" y="36" h="17" w="6" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.hover.center" file="window/sui.png" x="6" y="36" h="17" w="10" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.hover.right" file="window/sui.png" x="81" y="36" h="17" w="6" gammagroup="CompButtonInactive" /> + + <!-- Info Component --> + + <bitmap id="infocomp.background.topleft" file="../Big Bento/window/window.png" x="180" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.top" file="../Big Bento/window/window.png" x="187" y="0" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.topright" file="../Big Bento/window/window.png" x="193" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.left" file="../Big Bento/window/window.png" x="180" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.center" file="../Big Bento/window/window.png" x="187" y="7" h="6" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.right" file="../Big Bento/window/window.png" x="193" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottomleft" file="../Big Bento/window/window.png" x="180" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottom" file="../Big Bento/window/window.png" x="187" y="13" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottomright" file="../Big Bento/window/window.png" x="193" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + + <bitmap id="infocomp.background.buttons.left.over" file="../Big Bento/window/window.png" x="0" y="83" h="13" w="130" gammagroup="PlayerDisplay"/> + + <bitmap id="infocomp.button.more.normal" file="window/controls.png" x="0" y="0" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.more.hover" file="window/controls.png" x="25" y="0" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.more.down" file="window/controls.png" x="50" y="0" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.toggle.normal" file="window/controls.png" x="0" y="13" h="13" w="26" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.toggle.hover" file="window/controls.png" x="26" y="13" h="13" w="26" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.toggle.down" file="window/controls.png" x="52" y="13" h="13" w="26" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.vis.cfg.normal" file="window/controls.png" x="0" y="143" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg.hover" file="window/controls.png" x="25" y="143" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg.down" file="window/controls.png" x="50" y="143" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.vis.rnd.normal" file="window/controls.png" x="0" y="156" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.hover" file="window/controls.png" x="25" y="156" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.down" file="window/controls.png" x="50" y="156" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.active" file="window/controls.png" x="75" y="143" h="17" w="41" gammagroup="PlayerButtonGlow"/> + + <bitmap id="infocomp.button.vis.cfg2.normal" file="window/controls.png" x="0" y="169" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg2.hover" file="window/controls.png" x="25" y="169" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg2.down" file="window/controls.png" x="50" y="169" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.rating.empty" file="../Big Bento/window/rating.png" x="22" y="0" h="12" w="11" gammagroup="DisplayText"/> + <bitmap id="infocomp.rating.hover" file="../Big Bento/window/rating.png" x="11" y="0" h="12" w="11" gammagroup="DisplayText"/> + <bitmap id="infocomp.rating.star" file="../Big Bento/window/rating.png" x="0" y="0" h="12" w="11" gammagroup="DisplayText"/> + + <bitmap id="infocomp.button.blank.normal" file="window/controls.png" x="0" y="195" h="13" w="24" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.blank.hover" file="window/controls.png" x="24" y="195" h="13" w="24" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.blank.down" file="window/controls.png" x="48" y="195" h="13" w="24" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.icon.nowplaying" file="window/controls.png" x="24" y="208" h="13" w="24" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.icon.search" file="window/controls.png" x="48" y="208" h="13" w="24" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.branding" file="../Big Bento/window/branding.png" x="0" y="0" h="53" w="129"/> + + <bitmap id="winamp.cover.notfound" file="xml/winamp/cover/notfound.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.60" file="xml/winamp/cover/notfound60.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.90" file="xml/winamp/cover/notfound90.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.84" file="../Big Bento/window/notfound.png" x="0" y="0" h="84" w="84" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.50" file="../Big Bento/window/notfound.png" x="0" y="158" h="50" w="50" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.70" file="../Big Bento/window/notfound.png" x="0" y="84" h="70" w="70" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.xxl" file="../Big Bento/window/notfoundXXL.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.shoutcast" file="window/sc_alb_art.jpg" x="0" y="0" h="84" w="84" /> + + <bitmap id="coverflow.button.play.normal" file="../Big Bento/window/compcontrols.png" x="256" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="coverflow.button.play.hover" file="../Big Bento/window/compcontrols.png" x="256" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="coverflow.button.play.down" file="../Big Bento/window/compcontrols.png" x="256" y="42" h="21" w="24" gammagroup="WindowText"/> + + <!-- Playlist Editor --> + + <bitmap id="pledit.background.topleft" file="../Big Bento/window/window.png" x="220" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.top" file="../Big Bento/window/window.png" x="227" y="0" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.topright" file="../Big Bento/window/window.png" x="233" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.left" file="../Big Bento/window/window.png" x="220" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.center" file="../Big Bento/window/window.png" x="227" y="7" h="6" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.right" file="../Big Bento/window/window.png" x="233" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottomleft" file="../Big Bento/window/window.png" x="220" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottom" file="../Big Bento/window/window.png" x="227" y="13" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottomright" file="../Big Bento/window/window.png" x="233" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + + <bitmap id="pledit.background.buttons.center" file="../Big Bento/window/window.png" x="221" y="24" h="13" w="11" gammagroup="PlayerDisplayGradient"/> + <bitmap id="pledit.background.buttons.right" file="../Big Bento/window/window.png" x="232" y="24" h="13" w="7" gammagroup="PlayerDisplayGradient"/> + + <bitmap id="pledit.button.toggle.normal" file="window/controls.png" x="0" y="26" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.toggle.hover" file="window/controls.png" x="25" y="26" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.toggle.down" file="window/controls.png" x="50" y="26" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.manage.normal" file="window/controls.png" x="0" y="39" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.manage.hover" file="window/controls.png" x="25" y="39" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.manage.down" file="window/controls.png" x="50" y="39" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.misc.normal" file="window/controls.png" x="0" y="52" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.misc.hover" file="window/controls.png" x="25" y="52" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.misc.down" file="window/controls.png" x="50" y="52" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.sel.normal" file="window/controls.png" x="0" y="65" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.sel.hover" file="window/controls.png" x="25" y="65" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.sel.down" file="window/controls.png" x="50" y="65" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.rem.normal" file="window/controls.png" x="0" y="78" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.rem.hover" file="window/controls.png" x="25" y="78" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.rem.down" file="window/controls.png" x="50" y="78" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.add.normal" file="window/controls.png" x="0" y="91" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.add.hover" file="window/controls.png" x="25" y="91" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.add.down" file="window/controls.png" x="50" y="91" h="13" w="25" gammagroup="PlayerButton"/> + + <!-- Playlist Editor Tab --> + + <bitmap id="pledit.tab.button.add" file="../Big Bento/window/pl_btn_icons.png" x="0" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.rem" file="../Big Bento/window/pl_btn_icons.png" x="25" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.sel" file="../Big Bento/window/pl_btn_icons.png" x="50" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.misc" file="../Big Bento/window/pl_btn_icons.png" x="75" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.manage" file="../Big Bento/window/pl_btn_icons.png" x="100" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.up" file="../Big Bento/window/pl_btn_icons.png" x="125" y="0" h="21" w="24" gammagroup="PlayerButton"/> + + <!-- Video --> + + <bitmap id="video.button.fullscreen.normal" file="../Big Bento/window/compcontrols.png" x="0" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.fullscreen.hover" file="../Big Bento/window/compcontrols.png" x="0" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.fullscreen.down" file="../Big Bento/window/compcontrols.png" x="0" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.1x.normal" file="../Big Bento/window/compcontrols.png" x="24" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.1x.hover" file="../Big Bento/window/compcontrols.png" x="24" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.1x.down" file="../Big Bento/window/compcontrols.png" x="24" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.2x.normal" file="../Big Bento/window/compcontrols.png" x="48" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.2x.hover" file="../Big Bento/window/compcontrols.png" x="48" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.2x.down" file="../Big Bento/window/compcontrols.png" x="48" y="42" h="21" w="24" gammagroup="WindowText"/> + + <!--<bitmap id="video.button.itv.normal" file="../Big Bento/window/compcontrols.png" x="72" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.itv.hover" file="../Big Bento/window/compcontrols.png" x="72" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.itv.down" file="../Big Bento/window/compcontrols.png" x="72" y="42" h="21" w="24" gammagroup="WindowText"/>--> + + <bitmap id="video.button.cfg.normal" file="../Big Bento/window/compcontrols.png" x="96" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.cfg.hover" file="../Big Bento/window/compcontrols.png" x="96" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.cfg.down" file="../Big Bento/window/compcontrols.png" x="96" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.pin.normal1" file="../Big Bento/window/compcontrols.png" x="208" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.hover1" file="../Big Bento/window/compcontrols.png" x="208" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.down1" file="../Big Bento/window/compcontrols.png" x="208" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.pin.normal0" file="../Big Bento/window/compcontrols.png" x="232" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.hover0" file="../Big Bento/window/compcontrols.png" x="232" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.down0" file="../Big Bento/window/compcontrols.png" x="232" y="42" h="21" w="24" gammagroup="WindowText"/> + + + <!-- Visualizer --> + + <bitmap id="vis.button.prev.normal" file="../Big Bento/window/compcontrols.png" x="120" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.prev.hover" file="../Big Bento/window/compcontrols.png" x="120" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.prev.down" file="../Big Bento/window/compcontrols.png" x="120" y="42" h="21" w="21" gammagroup="WindowText"/> + + <bitmap id="vis.button.next.normal" file="../Big Bento/window/compcontrols.png" x="141" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.next.hover" file="../Big Bento/window/compcontrols.png" x="141" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.next.down" file="../Big Bento/window/compcontrols.png" x="141" y="42" h="21" w="21" gammagroup="WindowText"/> + + <bitmap id="vis.button.random.normal" file="../Big Bento/window/compcontrols.png" x="162" y="0" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.hover" file="../Big Bento/window/compcontrols.png" x="162" y="21" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.down" file="../Big Bento/window/compcontrols.png" x="162" y="42" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.active" file="../Big Bento/window/compcontrols.png" x="162" y="63" h="21" w="25" gammagroup="PlayerButtonActive"/> + + <bitmap id="vis.button.presets.normal" file="../Big Bento/window/compcontrols.png" x="187" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.presets.hover" file="../Big Bento/window/compcontrols.png" x="187" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.presets.down" file="../Big Bento/window/compcontrols.png" x="187" y="42" h="21" w="21" gammagroup="WindowText"/> + + + <!-- Equalizer --> + + <bitmap id="equalizer.background" file="window/equalizer.png" x="0" y="0" h="92" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.labels.winamp" file="../Big Bento/window/equalizer.png" x="0" y="195" h="5" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.labels.iso" file="../Big Bento/window/equalizer.png" x="0" y="189" h="5" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.button.xfade.normal" file="window/equalizer.png" x="0" y="92" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.hover" file="window/equalizer.png" x="0" y="104" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.down" file="window/equalizer.png" x="0" y="116" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.active" file="window/equalizer.png" x="51" y="105" h="21" w="31" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.decrease.normal" file="window/equalizer.png" x="25" y="92" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.decrease.hover" file="window/equalizer.png" x="25" y="104" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.decrease.down" file="window/equalizer.png" x="25" y="116" h="12" w="13" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.button.increase.normal" file="window/equalizer.png" x="38" y="92" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.increase.hover" file="window/equalizer.png" x="38" y="104" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.increase.down" file="window/equalizer.png" x="38" y="116" h="12" w="13" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.xfade.display" file="window/equalizer.png" x="51" y="92" h="12" w="19" gammagroup="PlayerDisplay" /> + + <bitmap id="equalizer.button.eqon.normal" file="window/equalizer.png" x="0" y="128" h="13" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.hover" file="window/equalizer.png" x="0" y="141" h="13" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.down" file="window/equalizer.png" x="0" y="154" h="13" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.active" file="window/equalizer.png" x="0" y="167" h="22" w="29" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.auto.normal" file="window/equalizer.png" x="25" y="128" h="13" w="32" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.hover" file="window/equalizer.png" x="25" y="141" h="13" w="32" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.down" file="window/equalizer.png" x="25" y="154" h="13" w="32" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.active" file="window/equalizer.png" x="29" y="167" h="22" w="44" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.presets.normal" file="window/equalizer.png" x="57" y="128" h="13" w="47" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.presets.hover" file="window/equalizer.png" x="57" y="141" h="13" w="47" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.presets.down" file="window/equalizer.png" x="57" y="154" h="13" w="47" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.slider.balance.background" file="window/equalizer.png" x="70" y="92" h="10" w="78" gammagroup="PlayerSliderBackground" /> + <bitmap id="equalizer.slider.balance.normal" file="window/equalizer.png" x="148" y="92" h="10" w="17" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.balance.hover" file="window/equalizer.png" x="165" y="92" h="10" w="17" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.balance.down" file="window/equalizer.png" x="182" y="92" h="10" w="17" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.slider.eqband.background" file="window/equalizer.png" x="104" y="102" h="55" w="11" gammagroup="PlayerSliderBackground" /> + <bitmap id="equalizer.slider.eqband.normal" file="window/equalizer.png" x="115" y="102" h="19" w="11" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.eqband.hover" file="window/equalizer.png" x="115" y="121" h="19" w="11" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.eqband.down" file="window/equalizer.png" x="115" y="140" h="19" w="11" gammagroup="PlayerButton" /> + + + <!-- Config --> + + <bitmap id="config.button.text.windowsizing" file="window/config.png" x="0" y="0" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.visualization" file="window/config.png" x="72" y="0" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.songticker" file="window/config.png" x="0" y="14" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.colorthemes" file="window/config.png" x="0" y="28" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.notifier" file="window/config.png" x="0" y="42" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.appearance" file="window/config.png" x="0" y="56" h="14" w="72" gammagroup="DisplayText"/> + + <bitmap id="config.button.selected" file="$solid" h="14" w="72" color="49,53,64" gammagroup="SelectionBg"/> + <bitmap id="config.button.hover" file="$solid" h="14" w="72" color="31,35,44" gammagroup="SelectionBg"/> + + <bitmap id="config.vdivider" file="$solid" h="90" w="2" color="32,34,35" gammagroup="WindowBackground"/> + + <bitmap id="config.checkbox.active" file="window/config.png" x="158" y="84" h="12" w="12" gammagroup="DisplayText"/> + <bitmap id="config.checkbox.inactive" file="window/config.png" x="170" y="84" h="12" w="12" gammagroup="DisplayText"/> + + <bitmap id="config.windowsizing.text" file="window/config.png" x="0" y="70" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.windowsizing.autoresize.hover" file="window/config.png" x="158" y="70" h="12" w="158" gammagroup="SelectionBg"/> + <bitmap id="config.windowsizing.titlebar.maximize.hover" file="window/config.png" x="158" y="70" h="12" w="54" gammagroup="SelectionBg"/> + <bitmap id="config.windowsizing.titlebar.shade.hover" file="window/config.png" x="158" y="70" h="12" w="89" gammagroup="SelectionBg"/> + + <bitmap id="config.appearance.text" file="window/config.png" x="0" y="144" h="74" w="158" gammagroup="DisplayText"/> + + <bitmap id="config.colorthemes.button.prev.normal" file="window/controls.png" x="0" y="104" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev.hover" file="window/controls.png" x="25" y="104" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev.down" file="window/controls.png" x="50" y="104" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.next.normal" file="window/controls.png" x="0" y="117" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.next.hover" file="window/controls.png" x="25" y="117" h="13" w="25" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.next.down" file="window/controls.png" x="50" y="117" h="13" w="25" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.set.normal" file="window/controls.png" x="0" y="130" h="13" w="31" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.set.hover" file="window/controls.png" x="31" y="130" h="13" w="31" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.set.down" file="window/controls.png" x="62" y="130" h="13" w="31" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.more.normal" file="window/controls.png" x="0" y="182" h="13" w="31" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.more.hover" file="window/controls.png" x="31" y="182" h="13" w="31" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.more.down" file="window/controls.png" x="62" y="182" h="13" w="31" gammagroup="PlayerButton"/> + + <bitmap id="config.songticker.text" file="window/config.png" x="0" y="218" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.songticker.scroll.hover" file="window/config.png" x="158" y="70" h="12" w="144" gammagroup="SelectionBg"/> + <bitmap id="config.appearance.2.text" file="window/config.png" x="0" y="440" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text" file="window/config.png" x="158" y="144" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.show.text" file="window/config.png" x="158" y="218" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.location.text" file="window/config.png" x="158" y="292" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.animation.text" file="window/config.png" x="0" y="292" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.visualization.text" file="window/config.png" x="0" y="366" h="74" w="158" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.sub.hover" file="window/config.png" x="158" y="112" h="12" w="158" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.show.hover" file="window/config.png" x="158" y="70" h="12" w="139" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.top.hover" file="window/config.png" x="158" y="70" h="12" w="66" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.bottom.hover" file="window/config.png" x="158" y="70" h="12" w="81" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.relative.hover" file="window/config.png" x="158" y="70" h="12" w="106" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.animation.hover" file="window/config.png" x="158" y="70" h="12" w="83" gammagroup="SelectionBg"/> + + <bitmap id="config.bitmapfont.source" file="window/config.png" x="158" y="0" h="42" w="158" gammagroup="DisplayText"/> + <bitmapfont id="config.bitmapfont" file="config.bitmapfont.source" charwidth="7" charheight="14" hspacing="0" vspacing="0"/> + + <bitmap id="config.button.left.normal" file="window/config.png" x="183" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.normal" file="window/config.png" x="191" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.button.left.hover" file="window/config.png" x="199" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.hover" file="window/config.png" x="207" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.button.left.down" file="window/config.png" x="215" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.down" file="window/config.png" x="223" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.always" file="window/config.png" x="171" y="218" h="12" w="48" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.shade_minimized" file="window/config.png" x="158" y="28" h="12" w="80" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.minimized" file="window/config.png" x="196" y="28" h="12" w="42" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.never" file="window/config.png" x="171" y="260" h="12" w="58" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.topleft" file="window/config.png" x="171" y="292" h="12" w="50" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.topcenter" file="window/config.png" x="171" y="306" h="12" w="50" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.topright" file="window/config.png" x="171" y="320" h="12" w="50" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.bottomleft" file="window/config.png" x="248" y="292" h="12" w="65" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.bottomcenter" file="window/config.png" x="248" y="306" h="12" w="65" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.bottomright" file="window/config.png" x="248" y="320" h="12" w="65" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.alphafade" file="window/config.png" x="13" y="292" h="12" w="68" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.vslide" file="window/config.png" x="158" y="56" h="12" w="68" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.hslide" file="window/config.png" x="158" y="42" h="12" w="68" gammagroup="DisplayText"/> + + <bitmap id="config.background.over" file="window/songinfo-gradient.png" x="0" y="13" h="13" w="74" gammagroup="PlayerDisplay"/> + + + <!-- Shade --> + + <bitmap id="shade.resizer.right" file="window/shade.png" x="0" y="48" h="18" w="5" gammagroup="Titlebar"/> + + <bitmap id="shade.button.previous.normal" file="window/shade.png" x="0" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.normal" file="window/shade.png" x="14" y="0" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.normal" file="window/shade.png" x="26" y="0" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.normal" file="window/shade.png" x="38" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.normal" file="window/shade.png" x="52" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.normal" file="window/shade.png" x="66" y="0" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.previous.hover" file="window/shade.png" x="0" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.hover" file="window/shade.png" x="14" y="16" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.hover" file="window/shade.png" x="26" y="16" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.hover" file="window/shade.png" x="38" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.hover" file="window/shade.png" x="52" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.hover" file="window/shade.png" x="66" y="16" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.previous.down" file="window/shade.png" x="0" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.down" file="window/shade.png" x="14" y="32" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.down" file="window/shade.png" x="26" y="32" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.down" file="window/shade.png" x="38" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.down" file="window/shade.png" x="52" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.down" file="window/shade.png" x="66" y="32" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.mute.normal" file="window/shade.png" x="81" y="0" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.mute.hover" file="window/shade.png" x="81" y="16" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.mute.down" file="window/shade.png" x="81" y="32" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.normal" file="window/shade.png" x="96" y="0" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.hover" file="window/shade.png" x="96" y="16" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.down" file="window/shade.png" x="96" y="32" h="16" w="16" gammagroup="ShadeButton"/> + + <bitmap id="shade.display.left" file="window/shade.png" x="5" y="48" h="18" w="2" gammagroup="PlayerDisplay"/> + <bitmap id="shade.display.middle" file="window/shade.png" x="7" y="48" h="18" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="shade.display.right" file="window/shade.png" x="13" y="48" h="18" w="2" gammagroup="PlayerDisplay"/> + + <bitmap id="shade.label.volume" file="window/shade.png" x="15" y="48" h="4" w="35" gammagroup="WindowText"/> + <bitmap id="shade.track.volume" file="window/shade.png" x="50" y="48" h="5" w="40" gammagroup="WindowBackground"/> + + <bitmap id="shade.track.seek.left" file="window/shade.png" x="50" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="shade.track.seek.middle" file="window/shade.png" x="55" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="shade.track.seek.right" file="window/shade.png" x="85" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + + <bitmap id="shade.volume.thumb.normal" file="window/shade.png" x="15" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.volume.thumb.hover" file="window/shade.png" x="25" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.volume.thumb.down" file="window/shade.png" x="35" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + + <bitmap id="shade.seek.thumb.normal" file="window/shade.png" x="45" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.seek.thumb.hover" file="window/shade.png" x="61" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.seek.thumb.down" file="window/shade.png" x="77" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + + <bitmap id="shade.button.search.normal" file="window/shade.png" x="120" y="0" h="16" w="18" gammagroup="WindowBackground"/> + <bitmap id="shade.button.search.hover" file="window/shade.png" x="120" y="18" h="16" w="18" gammagroup="WindowBackground"/> + <bitmap id="shade.button.search.down" file="window/shade.png" x="120" y="36" h="16" w="18" gammagroup="WindowBackground"/> + + <bitmap id="shade.button.icon.nowplaying" file="window/shade.png" x="140" y="18" h="16" w="18" gammagroup="PlayerButton"/> + <bitmap id="shade.button.icon.search" file="window/shade.png" x="140" y="36" h="16" w="18" gammagroup="PlayerButton"/> + +</elements>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-normal-group.xml b/Src/resources/skins/Bento/xml/player-normal-group.xml new file mode 100644 index 00000000..2abd120a --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-normal-group.xml @@ -0,0 +1,486 @@ +<!-- Player:Component:Player --> + +<groupdef id="player.display.beatvis.content"> + + <animatedlayer id="beatvisleft" x="0" y="0" h="28" w="43" image="player.beatvis.left" move="0" autoplay="0" autoreplay="0" ghost="1" /> + <animatedlayer id="beatvisright" x="44" y="0" h="28" w="43" image="player.beatvis.right" move="0" autoplay="0" autoreplay="0" ghost="1" /> + + <togglebutton fitparent="1" rectrgn="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" tooltip="Toggle Beat Visualization"/> + +</groupdef> + +<groupdef id="player.display.beatvis"> + + <group id="player.display.beatvis.content" x="0" y="0" w="87" h="28" /> + + <script file="../Big Bento/scripts/beatvisualization.maki"/> + +</groupdef> + +<groupdef id="player.display"> + + <grid x="0" y="0" h="54" w="0" relatw="1" left="player.display.background.left" middle="player.display.background.center" right="player.display.background.right" move="1"/> + <grid x="0" y="0" h="54" w="0" relatw="1" left="player.display.foreground.left" middle="player.display.foreground.center" right="player.display.foreground.right" move="1"/> + + <status + id="status" w="5" h="6" + x="-122" y="20" relatx="1" move="1" + stopBitmap="player.display.status.stopped" + playBitmap="player.display.status.playing" + pauseBitmap="player.display.status.paused" + /> + + <text id="SongTime" + x="11" y="5" h="27" w="99" + font="player.bitmapfont.nums" timecolonwidth="6" + display="time" align="left" alpha="220" + /> + + <SongTicker id="Songticker" + x="70" y="3" h="20" w="-72" relatw="1" + showlen="1" rightpadding="-3" + rightclickaction="trackmenu" dblclickaction="trackinfo" align="right" + color="color.display" fontsize="13" valign="top" bold="2" + /> + <Text id="InfoDisplay" + x="70" y="3" h="20" w="-72" relatw="1" alpha="0" + display="SONGTITLE" showlen="1" offsetx="-3" align="right" + color="color.display" fontsize="13" valign="top" bold="2" ghost="1" + /> + + <script file="../Big Bento/scripts/songticker.maki" param="-7,small"/> + + <!-- Bitrate --> + <layer id="Bitrate.label" x="-96" relatx="1" y="20" image="player.songinfo.bitrate" move="1"/> + <text + id="Bitrate" move="1" + x="-118" y="20" w="20" h="5" relatx="1" fontsize="5" font="player.bitmapfont.songinfo" align="right" + /> + + <!-- Frequency --> + <layer id="Frequency.label" x="-63" y="20" relatx="1" image="player.songinfo.frequency" move="1"/> + <text + id="Frequency" move="1" + display="SONGSAMPLERATE" textrefreshrate="500" + x="-80" y="20" w="15" h="5" relatx="1" fontsize="5" font="player.bitmapfont.songinfo" align="right" + /> + + <layer id="monster" x="-45" y="20" h="5" w="40" relatx="1" image="player.songinfo.na" move="1" rectrgn="1" dblclickaction="WA5:Prefs" dblclickparam="42" /> + + <script file="../Big Bento/scripts/songinfo.maki" param="small"/> + + <vis + id="main.vis" + x="15" y="31" + w="72" h="16" + colorbandpeak="162,193,204" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + gammagroup="DisplayText" + /> + + <vis + id="main.vis.mirror" + x="15" y="48" + w="72" h="16" + colorbandpeak="83,97,104" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + ghost="1" + alpha="100" + flipv="1" + mode="1" + gammagroup="DisplayText" + /> + + <layer id="main.vis.trigger" x="15" y="33" h="21" w="72" rectrgn="1"/> + + <group id="player.display.beatvis" x="86" y="28" w="-208" h="28" relatw="1"/> + + <script file="../Big Bento/scripts/visualizer.maki" /> + +</groupdef> + +<groupdef id="player.cbuttons"> + + <layer x="0" y="0" image="player.button.previous.placeholder" move="0"/> + <Button id="Prev" + x="0" y="0" h="24" w="26" + image="player.button.previous.normal" + hoverImage="player.button.previous.hover" + downImage="player.button.previous.down" + action="PREV" tooltip="Previous Track" + /> + <layer id="Prev.glow" x="0" y="0" image="player.button.previous.glow" alpha="0" ghost="1"/> + + <layer x="25" y="0" image="player.button.play.placeholder" move="0"/> + <Button id="Play" + x="25" y="0" h="24" w="22" + image="player.button.play.normal" + hoverImage="player.button.play.hover" + downImage="player.button.play.down" + action="PLAY" tooltip="Play" + /> + <layer id="Play.glow" x="25" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <layer x="46" y="0" image="player.button.pause.placeholder" move="0"/> + <Button id="Pause" + x="46" y="0" h="24" w="22" + image="player.button.pause.normal" + hoverImage="player.button.pause.hover" + downImage="player.button.pause.down" + action="PAUSE" tooltip="Pause Playback" + /> + <layer id="Pause.glow" x="46" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <layer x="67" y="0" image="player.button.stop.placeholder" move="0"/> + <Button id="Stop" + x="67" y="0" h="24" w="22" + image="player.button.stop.normal" + hoverImage="player.button.stop.hover" + downImage="player.button.stop.down" + action="STOP" tooltip="Stop Playback" + /> + <layer id="Stop.glow" x="67" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <layer x="88" y="0" image="player.button.next.placeholder" move="0"/> + <Button id="Next" + x="88" y="0" h="24" w="26" + image="player.button.next.normal" + hoverImage="player.button.next.hover" + downImage="player.button.next.down" + action="NEXT" tooltip="Next Track" + /> + <layer id="Next.glow" x="88" y="0" image="player.button.next.glow" alpha="0" ghost="1"/> + + <layer x="-112" y="3" relatx="1" image="player.button.eject.placeholder" move="0"/> + <Button id="Eject" + x="-112" y="3" h="17" w="25" relatx="1" + image="player.button.eject.normal" + hoverImage="player.button.eject.hover" + downImage="player.button.eject.down" + action="EJECT" tooltip="Open File(s)" + /> + <layer id="Eject.glow" x="-112" y="3" relatx="1" image="player.button.Eject.glow" alpha="0" ghost="1"/> + + <layer x="-83" y="3" relatx="1" image="player.button.shuffle.placeholder" move="0"/> + <NStatesButton + id="shuffle" + x="-83" y="3" w="32" h="17" relatx="1" + image="player.button.shuffle.normal" + hoverimage="player.button.shuffle.hover" + downimage="player.button.shuffle.down" + extendedSongtickerMessage="Shuffle: On; Shuffle: Off" + rectrgn="1" nstates="2" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + /> + <layer id="shuffle.glow" x="-83" y="3" relatx="1" image="player.button.shuffle.glow" alpha="0" ghost="1"/> + + <layer x="-51" y="3" relatx="1" image="player.button.repeat.placeholder" move="0"/> + <NStatesButton + id="repeat" + x="-54" y="3" w="27" h="17" relatx="1" + image="player.button.repeat.normal" + hoverimage="player.button.repeat.hover" + downimage="player.button.repeat.down" + extendedSongtickerMessage="Repeat: Playlist;Repeat: Track;Repeat: Off" + rectrgn="1" nstates="3" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + /> + <layer id="repeat.glow" x="-54" y="3" relatx="1" image="player.button.repeat.glow" alpha="0" ghost="1"/> + +</groupdef> + +<groupdef id="player.layout" wantfocus="1" rectrgn="1" move="1"> + + <group id="player.display" x="3" w="-4" relatw="1" h="54" y="0"/> + + <!-- Volume --> + + <layer id="player.placeholder.mute" x="-112" y="40" relatx="1" image="player.button.mute.placeholder" move="0"/> + + <button id="mute" x="-111" y="40" w="25" h="14" relatx="1" + image="player.button.mute.normal" + hoverImage="player.button.mute.hover" + downImage="player.button.mute.down" + tooltip="Mute Volume" + /> + <button id="etum" x="-111" y="40" w="25" h="14" relatx="1" + image="player.button.demute.normal" + hoverImage="player.button.demute.hover" + downImage="player.button.demute.down" + tooltip="Turn Volume On" + visible="0" + /> + + <layer id="mute.glow" x="-112" y="39" relatx="1" image="player.button.mute.glow" alpha="0" ghost="1"/> + <layer id="mute.active" x="-115" y="33" relatx="1" image="player.button.mute.active" visible="0" ghost="1"/> + + <layer id="player.volume.label" x="-78" y="34" relatx="1" image="player.label.volume" move="1"/> + + <grid id="player.volume.bg" + x="-80" y="44" h="5" w="78" relatx="1" + left="player.slider.background.left" + middle="player.slider.background.center" + right="player.slider.background.right" + /> + + <grid id="player.volume.fill" + x="-78" y="46" h="2" w="76" relatx="1" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="Volume" + action="Volume" + x="-81" y="43" h="10" w="80" relatx="1" + thumb="player.volume.thumb.normal" + hoverThumb="player.volume.thumb.hover" + downThumb="player.volume.thumb.down" + tooltip="Volume" + /> + + <script file="../Big Bento/scripts/mute.maki" param="76"/> + <!-- param = max_w for volume fillbar --> + + <!-- Seek --> + + <grid id="player.seek.bg" + x="4" y="60" h="5" w="-6" relatw="1" + left="player.slider.background.left" + middle="player.slider.background.center" + right="player.slider.background.right" + /> + + <ProgressGrid id="progressbar" + x="6" y="62" h="2" w="-8" relatw="1" + orientation="right" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="seeker" + action="SEEK" + x="3" y="59" h="10" w="-4" relatw="1" + thumb="player.posbar.thumb.normal" + hoverThumb="player.posbar.thumb.hover" + downThumb="player.posbar.thumb.down" + ghost="1" + visible="0" + tooltip="Seeker" + /> + + <Slider + id="seeker.ghost" + action="SEEK" + x="3" y="59" h="10" w="-4" relatw="1" + thumb="player.posbar.thumb.normal" + hoverThumb="player.posbar.thumb.hover" + downThumb="player.posbar.thumb.down" + tooltip="Seeker" + /> + + <script file="../Big Bento/scripts/seek.maki"/> + + <group id="player.cbuttons" x="0" y="70" h="32" w="0" relatw="1"/> + <NStatesButton id="shuffle.active" x="-84" relatx="1" y="66" image="player.button.shuffle.active" ghost="1" cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" nstates="2"/> + <NStatesButton id="repeat.active" x="-56" relatx="1" y="66" image="player.button.repeat.active" ghost="1" cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" cfgvals="0;1;-1" nstates="3"/> + + <script file="../Big Bento/scripts/cbuttons.maki" param="226"/> + <!-- Param defines the min_w of the cbuttons group --> + +</groupdef> + +<!-- Player:Titlebar --> + +<groupdef id="player.mainmenu" rectregn="1" > + + <!-- Note: Most of the items in this group will be placed by script, so don't waste your time --> + + <layer id="menu.text.file" x="0" y="4" h="9" image="window.titlebar.menu.text.file" /> + <layer id="menu.layer.file.normal" x="0" y="0" h="20" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.file.hover" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.file.down" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.play" x="0" y="4" h="9" image="window.titlebar.menu.text.play" /> + <layer id="menu.layer.play.normal" x="0" y="0" h="20" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.play.hover" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.play.down" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.options" x="0" y="4" h="9" image="window.titlebar.menu.text.options" /> + <layer id="menu.layer.options.normal" x="0" y="0" h="20" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.options.hover" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.options.down" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.view" x="0" y="4" h="9" image="window.titlebar.menu.text.view" /> + <layer id="menu.layer.view.normal" x="0" y="0" h="20" w="20" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.view.hover" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.view.down" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.help" x="0" y="4" h="9" image="window.titlebar.menu.text.help" /> + <layer id="menu.layer.help.normal" x="0" y="0" h="20" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.help.hover" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.help.down" x="0" y="0" h="20" w="0" image="window.titlebar.menu.down" visible="0" /> + + <Menu id="File.menu" menugroup="main" next="Play.menu" prev="Help.menu" x="0" y="0" h="16" w="0" menu="WA5:File" normal="menu.layer.file.normal" hover="menu.layer.file.hover" down="menu.layer.file.down" /> + <Menu id="Play.menu" menugroup="main" next="Options.menu" prev="File.menu" x="0" y="0" h="16" w="0" menu="WA5:Play" normal="menu.layer.play.normal" hover="menu.layer.play.hover" down="menu.layer.play.down" /> + <Menu id="Options.menu" menugroup="main" next="View.menu" prev="Play.menu" x="0" y="0" h="16" w="0" menu="WA5:Options" normal="menu.layer.options.normal" hover="menu.layer.options.hover" down="menu.layer.options.down" /> + <Menu id="View.menu" menugroup="main" next="Help.menu" prev="Options.menu" x="0" y="0" h="16" w="0" menu="WA5:Windows" normal="menu.layer.view.normal" hover="menu.layer.view.hover" down="menu.layer.view.down" /> + <Menu id="Help.menu" menugroup="main" next="File.menu" prev="View.menu" x="0" y="0" h="16" w="0" menu="WA5:Help" normal="menu.layer.help.normal" hover="menu.layer.help.hover" down="menu.layer.help.down" /> + + <guiObject fitparent="1" id="menu.hidden.mousetrap" visible="0" move="1"/> + +</groupdef> + +<groupdef id="player.titlebar"> + + <grid + x="0" y="0" h="18" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + + <layer x="27" y="6" image="window.titlebar.text.winamp" ghost="1" /> + + <guiobject fitparent="1" rectrgn="1" move="1" id="player.mousetrap.maximize"/> + + <layer id="titlebar.resizer.topleft" x="0" y="0" h="3" w="5" rectrgn="1" resize="topleft" /> + <layer id="titlebar.resizer.top" x="5" y="0" h="3" w="-10" relatw="1" rectrgn="1" resize="top" /> + <layer id="titlebar.resizer.topright" x="-5" y="0" h="3" w="5" relatx="1" rectrgn="1" resize="topright" /> + <layer x="0" y="3" h="15" w="5" rectrgn="1" resize="left" /> + <layer x="-5" y="3" h="15" w="5" relatx="1" rectrgn="1" resize="right" /> + <layer id="titlebar.resizer.disable" x="0" y="0" h="18" w="0" relatw="1" rectrgn="1" ghost="1" move="0"/> + + <grid + x="0" y="0" h="18" w="75" relatw="0" regionop="1" ghost="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + /> + + <grid + id="titlebar.grid.right" + x="231" y="0" h="18" w="-231" relatw="1" regionop="1" ghost="1" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <group id="player.mainmenu" x="75" y="1" w="300" h="16"/> + + <button + x="5" y="2" h="13" w="20" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-79" relatx="1" y="2" h="13" w="17" + id="player.button.minimize" + action="MINIMIZE" + image="window.titlebar.button.minimize.normal" + hoverImage="window.titlebar.button.minimize.hover" + downImage="window.titlebar.button.minimize.down" + tooltip="Minimize Winamp" + /> + + <button + x="-60" relatx="1" y="2" h="13" w="17" + id="player.titlebar.button.restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Winamp" + /> + + <button + x="-60" relatx="1" y="2" h="13" w="17" + id="player.titlebar.button.maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Winamp" + /> + + <button + x="-41" relatx="1" y="2" h="13" w="17" + action="SWITCH" param="shade" + image="window.titlebar.button.shade.normal" + hoverImage="window.titlebar.button.shade.hover" + downImage="window.titlebar.button.shade.down" + tooltip="Windowshade Mode" + /> + + <button + id="maximize.slam.close" visible="1" + x="-22" relatx="1" y="0" h="15" w="22" + rectrgn="1" + action="CLOSE" + tooltip="Exit Winamp" + /> + <button + x="-22" relatx="1" y="2" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Exit Winamp" + /> + + <script file="../Big Bento/scripts/mainmenu.maki"/> + +</groupdef> + +<groupdef id="window.background.regions"> + <layer x="0" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="0" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-normal-mcv.xml b/Src/resources/skins/Bento/xml/player-normal-mcv.xml new file mode 100644 index 00000000..03b20c7b --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-normal-mcv.xml @@ -0,0 +1,828 @@ +<include file="config.xml"/> + +<groupdef id="player.dualwnd.pl.info" wantfocus="1" rectrgn="1"> + + <Wasabi:Frame id="player.dualwnd" x="0" y="0" w="0" relath="0" h="92" from="r" relatw="1" orientation="v" maxwidth="-141" left="player.component.fileinfo" right="player.component.playlist.frame" minwidth="27" width="200" jump="right" /> + +</groupdef> + +<!-- Player:Component:PlayList --> + +<groupdef id="player.component.playlist.frame" wantfocus="1" rectrgn="1"> + + <Wasabi:Frame id="playlist.dualwnd" fitparent="1" from="bottom" orientation="h" maxheight="null" bottom="player.component.playlist.albumart" top="player.component.playlist" minheight="55" height="100" jump="0"/> + +</groupdef> + +<groupdef id="player.component.playlist.albumart" wantfocus="1" rectrgn="1"> + + <grid fitparent="1" + topleft="sui.background.topleft" + top="sui.background.top" + topright="sui.background.topright" + left="sui.background.left" + middle="sui.background.center" + right="sui.background.right" + bottomleft="sui.background.bottomleft" + bottom="sui.background.bottom" + bottomright="sui.background.bottomright" + /> + + <group fitparent="-2" id="info.component.cover2" /> + +</groupdef> + +<groupdef id="player.component.playlist" wantfocus="1" rectrgn="1"> + + <grid fitparent="1" + topleft="pledit.background.topleft" + top="pledit.background.top" + topright="pledit.background.topright" + left="pledit.background.left" + middle="pledit.background.center" + right="pledit.background.right" + bottomleft="pledit.background.bottomleft" + bottom="pledit.background.bottom" + bottomright="pledit.background.bottomright" + /> + + <group id="playlistpro" y="1" h="-15" x="2" w="-3" relath="1" relatw="1"/> + + <group id="player.component.playlist.buttons" x="1" y="-14" w="-2" relatw="1" relaty="1" /> + +</groupdef> + +<groupdef id="player.component.playlist.buttons"> + + <grid + x="0" y="0" h="13" w="0" relatw="1" move="1" + middle="pledit.background.buttons.center" + right="pledit.background.buttons.right" + /> + + <button id="player.playlist.add" + x="0" h="13" w="25" y="0" + image="pledit.button.add.normal" + hoverImage="pledit.button.add.hover" + downImage="pledit.button.add.down" + action="PE_Add" tooltip="Add Files to Playlist" + /> + <button id="player.playlist.rem" + x="24" h="13" w="25" y="0" + image="pledit.button.rem.normal" + hoverImage="pledit.button.rem.hover" + downImage="pledit.button.rem.down" + action="PE_Rem" tooltip="Remove Files from Playlist" + /> + <button id="player.playlist.sel" + x="48" h="13" w="25" y="0" + image="pledit.button.sel.normal" + hoverImage="pledit.button.sel.hover" + downImage="pledit.button.sel.down" + action="PE_Sel" tooltip="Select Files in Playlist" + /> + <button id="player.playlist.misc" + x="72" h="13" w="25" y="0" + image="pledit.button.misc.normal" + hoverImage="pledit.button.misc.hover" + downImage="pledit.button.misc.down" + action="PE_Misc" tooltip="Misc Actions" + /> + <button id="player.playlist.manage" + x="96" h="13" w="25" y="0" + image="pledit.button.manage.normal" + hoverImage="pledit.button.manage.hover" + downImage="pledit.button.manage.down" + action="PE_List" tooltip="Manage Playlist" + /> + <togglebutton id="player.playlist.small" + x="-25" h="13" w="25" y="0" relatx="1" + image="pledit.button.toggle.normal" + hoverImage="pledit.button.toggle.hover" + downImage="pledit.button.toggle.down" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" + tooltip="Collapse Playlist" + /> + <togglebutton id="player.playlist.enlarge" + x="-25" h="13" w="25" y="0" relatx="1" + image="pledit.button.toggle.normal" + hoverImage="pledit.button.toggle.hover" + downImage="pledit.button.toggle.down" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" + tooltip="Enlarge Playlist" + /> + + <text id="PLTime" ticker="1" display="PE_Info" + x="122" y="0" h="13" w="-148" relatw="1" + align="center" color="color.display" + bold="0" fontsize="13" antialias="1" move="1" + /> + +</groupdef> + +<!-- Info:Component:Vis --> + +<groupdef id="info.component.vis"> + + <component id="vis" fitparent="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="0" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + +</groupdef> + +<groupdef id="info.component.vis.full"> + + <component id="vis" x="3" w="-6" y="0" h="74" relatw="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="0" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + + <button + image="infocomp.button.vis.cfg.normal" + downImage="infocomp.button.vis.cfg.down" + hoverImage="infocomp.button.vis.cfg.hover" + action="VIS_Menu" + x="1" y="-14" relaty="1" + tooltip="Configure Visualizer" + /> + + <button + image="config.colorthemes.button.prev.normal" + downImage="config.colorthemes.button.prev.down" + hoverImage="config.colorthemes.button.prev.hover" + action="VIS_Prev" + x="25" y="-14" relaty="1" + tooltip="Previous Visualization Preset" + /> + + <ToggleButton + id="vis.rnd" + image="infocomp.button.vis.rnd.normal" + downImage="infocomp.button.vis.rnd.down" + hoverImage="infocomp.button.vis.rnd.hover" + x="49" y="-14" relaty="1" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <button + image="config.colorthemes.button.next.normal" + downImage="config.colorthemes.button.next.down" + hoverImage="config.colorthemes.button.next.hover" + action="VIS_Next" + x="73" y="-14" relaty="1" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.rnd.active" + x="41" y="-17" h="17" w="41" relaty="1" + ActiveImage="infocomp.button.vis.rnd.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="../Big Bento/scripts/syncbutton.maki" param="vis.rnd;vis.rnd.active" /> + +</groupdef> + +<!-- Info:Component:Cover --> + +<groupdef id="info.component.Cover"> + + <AlbumArt id="winamp.albumart" fitparent="1" move="1" rectrgn="1" notfoundImage="winamp.cover.notfound.84"/> + <script file="../Big Bento/scripts/albumart.maki" param="winamp.albumart,winamp.cover.notfound.84"/> + +</groupdef> + +<groupdef id="info.component.Cover2"> + + <AlbumArt id="winamp.albumart" fitparent="1" move="1" rectrgn="1" notfoundImage="winamp.cover.notfound.xxl"/> + <script file="../Big Bento/scripts/albumart.maki" param="winamp.albumart,winamp.cover.notfound.xxl"/> + +</groupdef> + +<!-- Info:Component:EQ --> + +<groupdef id="info.component.eq.content"> + + <layer x="0" y="0" image="equalizer.background" ghost="1" /> + + <layer id="frequency.labels" x="0" y="70" image="equalizer.labels.winamp" ghost="1" /> + + <slider + id="sCrossfade" + cfgattrib="{F1239F09-8CC6-4081-8519-C2AE99FCB14C};Crossfade time" + high="20" ghost="1" visible="0" + x="3" y="3" + w="2" h="2" + /> + + <togglebutton + id="Crossfade" + x="2" y="2" + image="equalizer.button.xfade.normal" + downImage="equalizer.button.xfade.down" + hoverImage="equalizer.button.xfade.hover" + tooltip="Toggle Crossfading Between Tracks" + cfgattrib="{FC3EAF78-C66E-4ED2-A0AA-1494DFCC13FF};Enable crossfading" + /> + + <layer id="CrossfadeActive" x="1" y="1" image="equalizer.button.xfade.active" visible="0" ghost="1"/> + + <layer + image="equalizer.xfade.display" + x="39" y="2" move="0" + /> + + <button + id="CrossfadeDecrease" + image="equalizer.button.decrease.normal" + downImage="equalizer.button.decrease.down" + hoverImage="equalizer.button.decrease.hover" + x="27" y="2" + tooltip="Decrease Crossfade Time" + /> + <button + id="CrossfadeIncrease" + image="equalizer.button.increase.normal" + downImage="equalizer.button.increase.down" + hoverImage="equalizer.button.increase.hover" + x="57" y="2" + tooltip="Increase Crossfade Time" + /> + + <text + id="CFDisplay" + x="39" y="5" w="19" h="5" + align="center" + valign="top" + fontsize="5" font="player.bitmapfont.songinfo" + text="00" + /> + + <layer x="95" y="4" w="78" h="10" image="equalizer.slider.balance.background" move="0" /> + <slider + id="Balance" + action="PAN" + x="95" y="4" + w="79" h="10" + thumb="equalizer.slider.balance.normal" + downThumb="equalizer.slider.balance.down" + hoverThumb="equalizer.slider.balance.hover" + tooltip="Balance" + /> + + <layer x="4" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="preamp" + action="EQ_BAND" param="preamp" + x="4" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="Preamp" + orientation="vertical" + /> + + <layer x="29" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq1" + action="EQ_BAND" param="1" + x="29" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="70 Hz" + orientation="vertical" + /> + + <layer x="45" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq2" + action="EQ_BAND" param="2" + x="45" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="180 Hz" + orientation="vertical" + /> + + <layer x="61" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq3" + action="EQ_BAND" param="3" + x="61" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="320 Hz" + orientation="vertical" + /> + + <layer x="77" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq4" + action="EQ_BAND" param="4" + x="77" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="600 Hz" + orientation="vertical" + /> + + <layer x="93" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq5" + action="EQ_BAND" param="5" + x="93" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="1 KHz" + orientation="vertical" + /> + + <layer x="109" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq6" + action="EQ_BAND" param="6" + x="109" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="3 KHz" + orientation="vertical" + /> + + <layer x="125" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq7" + action="EQ_BAND" param="7" + x="125" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="6 KHz" + orientation="vertical" + /> + + <layer x="141" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq8" + action="EQ_BAND" param="8" + x="141" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="12 KHz" + orientation="vertical" + /> + + <layer x="157" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq9" + action="EQ_BAND" param="9" + x="157" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="14 KHz" + orientation="vertical" + /> + + <layer x="173" y="14" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq10" + action="EQ_BAND" param="10" + x="173" y="14" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="16 KHz" + orientation="vertical" + /> + + <button + id="EQ_p12" + x="16" y="19" + w="12" h="7" + rectrgn="1" + /> + + <button + id="EQ_0" + x="16" y="37" + w="12" h="7" + rectrgn="1" + /> + + <button + id="EQ_m12" + x="16" y="55" + w="12" h="7" + rectrgn="1" + /> + +</groupdef> + +<groupdef id="info.component.eq"> + + <group id="info.component.eq.content" x="0" y="0" h="92" w="188" /> + + <button + id="eqonoff" + image="equalizer.button.eqon.normal" + downImage="equalizer.button.eqon.down" + hoverImage="equalizer.button.eqon.hover" + action="EQ_TOGGLE" + x="1" y="-14" relaty="1" + tooltip="EQ on/off" + /> + <button id="eqonoffActive" x="1" y="-23" h="22" w="29" relaty="1" activeImage="equalizer.button.eqon.active" visible="1" ghost="1" action="EQ_TOGGLE"/> + + <button + id="eqauto" + image="equalizer.button.auto.normal" + downImage="equalizer.button.auto.down" + hoverImage="equalizer.button.auto.hover" + action="EQ_AUTO" + x="25" y="-14" relaty="1" + tooltip="EQ auto" + /> + + <button id="eqautoActive" x="22" y="-23" h="22" w="44" relaty="1" activeImage="equalizer.button.auto.active" visible="1" ghost="1" action="EQ_AUTO"/> + + <button + id="eqpresets" + image="equalizer.button.presets.normal" + downImage="equalizer.button.presets.down" + hoverImage="equalizer.button.presets.hover" + action="MENU" param="presets" + x="56" y="-14" relaty="1" + tooltip="Open presets" + /> + + <script file="../Big Bento/scripts/eq.maki" /> + +</groupdef> + +<!-- Info:Component:InfoDisplay --> + +<groupdef id="infodisplay.line.rating.stars" > + + <button id="rate.1" x="0" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.1" ghost="1" + x="0" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.2" x="11" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.2" ghost="1" + x="11" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.3" x="22" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.3" ghost="1" + x="22" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.4" x="33" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.4" ghost="1" + x="33" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.5" x="44" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.5" ghost="1" + x="44" y="0" visible="0" + image="infocomp.rating.hover" + /> + +</groupdef> + +<groupdef id="infodisplay.line.rating" > + + <Text + id="label" + x="0" y="0" w="0" relatw="1" h="12" + text="Rating:" + color="color.display" bold="1" fontsize="13" alpha="180" valign="bottom" antialias="0" + /> + + <group id="infodisplay.line.rating.stars" x="0" y="0" w="0" relatw="1" /> + + <button id="rate.0" x="0" y="0" h="12" w="0" rectrgn="1" tooltip="Remove Rating"/> + +</groupdef> + +<!-- +Params for <Bento:InfoLine/> +label="sometext" displayed as label +shift="someint" how much pixels text will be moved right (call before text!) +text="sometext" displayed as line text +link="sometext" displayed as hover tooltip +--> + +<groupdef id="bento.infodisplay.line" embed_xui="text" xuitag="Bento:InfoLine"> + + <Text id="label" + x="0" y="0" w="0" relatw="1" h="12" + text="Error:" + color="color.display" bold="1" fontsize="13" alpha="180" valign="bottom" antialias="0" + /> + + <Text id="text" + x="0" y="0" w="0" relatw="1" h="12" + color="color.display" bold="2" fontsize="13" valign="bottom" antialias="0" ticker="1" translate="0" alpha="253" + /> + +// <layer id="link" x="0" y="0" h="15" w="0" relatw="1" rectrgn="1" move="0" cursor="IDC_HAND"/> + <layer id="link" x="0" y="0" h="15" w="0" relatw="1" rectrgn="1" move="0"/> + + <script file="../Big Bento/scripts/infoline.maki" /> + +</groupdef> + + +<groupdef id="info.component.infodisplay"> + + <group id="infodisplay.line.rating" x="0" y="0" w="0" relatw="1" h="15" visible="0" /> + + <Bento:InfoLine id="infodisplay.line.title" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Title:"/> + + <Bento:InfoLine id="infodisplay.line.artist" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Artist:"/> + + <Bento:InfoLine id="infodisplay.line.album" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Album:"/> + + <Bento:InfoLine id="infodisplay.line.track" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Track:"/> + + <Bento:InfoLine id="infodisplay.line.year" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Year:"/> + + <Bento:InfoLine id="infodisplay.line.genre" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Genre:"/> + + <Bento:InfoLine id="infodisplay.line.publisher" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Publisher:"/> + + <Bento:InfoLine id="infodisplay.line.composer" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Composer:"/> + + <Bento:InfoLine id="infodisplay.line.format" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Decoder:"/> + + <Bento:InfoLine id="infodisplay.line.sname" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Stream:"/> + + <Bento:InfoLine id="infodisplay.line.surl" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Homepage:"/> + + <Bento:InfoLine id="infodisplay.line.albumartist" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Album Artist:"/> + + <Bento:InfoLine id="infodisplay.line.disc" x="0" y="0" w="0" relatw="1" h="15" visible="0" + shift="-2" label="Disc:"/> + + <script file="../Big Bento/scripts/fileinfo.maki" param="@HAVE_LIBRARY@,5"/> + +</groupdef> + +<!-- Info:Component:PLSideCar --> + +<groupdef id="info.component.plsidecar"> + + <PlaylistDirectory fitparent="1" antialias="0" fontsize="13"/> + +</groupdef> + +<groupdef id="info.component.coverflow"> + + <!--button id="coverflow.prev" + x="0" y="-18" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Scroll backwards in Playlist" + /> + + <button id="coverflow.next" + x="30" y="-18" relaty="1" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Scroll forwards in Playlist" + /--> + + <text id="info" nograbb="1" move="0" + x="64" y="-14" relaty="1" h="12" w="-130" relatw="1" + align="center" color="color.display" fontsize="12" valign="top" bold="2" ghost="1" + /> + + <group id="info.component.coverflow.g" x="0" y="2" h="-1" relath="1" w="315" /> + +</groupdef> + +<!-- Info:Instance --> + +<groupdef id="infocomp.visbuttons"> + + <button + id="vis.cfg" + image="infocomp.button.vis.cfg2.normal" + downImage="infocomp.button.vis.cfg2.down" + hoverImage="infocomp.button.vis.cfg2.hover" + action="VIS_Menu" + x="0" y="3" + tooltip="Configure Visualizer" + /> + + <button + id="vis.prv" + image="config.colorthemes.button.prev.normal" + downImage="config.colorthemes.button.prev.down" + hoverImage="config.colorthemes.button.prev.hover" + action="VIS_Prev" + x="24" y="3" + tooltip="Previous Visualization Preset" + /> + + <ToggleButton + id="vis.rnd" + image="infocomp.button.vis.rnd.normal" + downImage="infocomp.button.vis.rnd.down" + hoverImage="infocomp.button.vis.rnd.hover" + x="48" y="3" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <button + id="vis.nxt" + image="config.colorthemes.button.next.normal" + downImage="config.colorthemes.button.next.down" + hoverImage="config.colorthemes.button.next.hover" + action="VIS_Next" + x="72" y="3" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.rnd.active" + x="40" y="0" h="17" w="41" + ActiveImage="infocomp.button.vis.rnd.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="../Big Bento/scripts/syncbutton.maki" param="vis.rnd;vis.rnd.active" /> + <script file="../Big Bento/scripts/visbuttons.maki" /> +</groupdef> + +<groupdef id="infocomp.background.footer.over"> + + <layer move="0" ghost="1" + x="0" y="3" + image="infocomp.background.buttons.left.over" + /> + +</groupdef> + +<groupdef id="infocomp.background.footer"> + + <grid + id="footer.background.grid" move="1" + x="0" y="3" h="13" w="0" relatw="1" + middle="pledit.background.buttons.center" + right="pledit.background.buttons.right" + /> + + <group id="infocomp.background.footer.over" x="0" y="0" w="-5" relatw="1" /> + + <group x="0" y="0" h="17" w="0" relatw="1" id="infocomp.visbuttons" /> + +</groupdef> + +<groupdef id="info.component.holder"> + + <grid fitparent="1" move="1" + topleft="infocomp.background.topleft" + top="infocomp.background.top" + topright="infocomp.background.topright" + left="infocomp.background.left" + middle="infocomp.background.center" + right="infocomp.background.right" + bottomleft="infocomp.background.bottomleft" + bottom="infocomp.background.bottom" + bottomright="infocomp.background.bottomright" + /> + + <group x="6" y="-17" h="17" w="-8" relatw="1" relaty="1" id="infocomp.background.footer" /> + + <group id="info.component.cover" x="4" y="4" h="84" w="84"/> + <group id="info.component.vis" x="4" y="4" h="84" w="84"/> + <group id="info.component.vis.full" x="0" y="3" h="89" w="0" relatw="1" visible="0"/> + <group id="info.component.eq" x="0" y="0" h="92" w="0" relatw="1" visible="0"/> + <group id="info.component.config" x="2" y="1" h="91" w="-4" relatw="1" visible="0"/> + <group id="info.component.plsidecar" x="3" y="3" h="75" w="-5" relatw="1" visible="0"/> + + <layer id="branding" visible="0" move="1" ghost="1" + x="0" y="35" h="24" w="100" image="infocomp.branding" + /> + + <group id="info.component.infodisplay" x="80" y="3" h="-19" relath="1" w="-143" relatw="1" /> + + <button + id="comp.menu" + x="-27" y="-14" w="26" h="13" relatx="1" relaty="1" + image="infocomp.button.toggle.normal" + hoverImage="infocomp.button.toggle.hover" + downImage="infocomp.button.toggle.down" + tooltip="Change the content this area holds" + /> + + <button + id="sendTo" + x="-51" y="-14" w="25" h="13" relatx="1" relaty="1" + action="ML_SendTo" + image="infocomp.button.more.normal" + hoverImage="infocomp.button.more.hover" + downImage="infocomp.button.more.down" + tooltip="Send this file to..." + anchor_menu="bottomleft" + /> + +<!-- <button + id="search" + x="-74" y="-14" relatx="1" relaty="1" + image="infocomp.button.blank.normal" + hoverImage="infocomp.button.blank.hover" + downImage="infocomp.button.blank.down" + tooltip="Search the web for this artist" + anchor_menu="bottomleft" + /> + <layer id="search.icon.bg" x="-74" y="-14" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.bg" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="search;search.icon.bg"/> + <layer id="search.icon" x="-74" y="-14" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.search" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="search;search.icon"/> + + <button + id="nowplaying" + x="-97" y="-14" relatx="1" relaty="1" + image="infocomp.button.blank.normal" + hoverImage="infocomp.button.blank.hover" + downImage="infocomp.button.blank.down" + tooltip="More information about this artist" + anchor_menu="bottomleft" + /> + <layer id="nowplaying.icon.bg" x="-97" y="-14" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.bg" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="nowplaying;nowplaying.icon.bg"/> + <layer id="nowplaying.icon" x="-97" y="-14" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.nowplaying" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> +--> + <script file="../Big Bento/scripts/shadelinks.maki"/> + + <!--script file="scripts/componentregion.maki" param="comp.menu" /--> + + <!--layer id="osd.trigger" fitparent="1" rectrgn="1" ghost="0"/--> + + <script file="scripts/mcvcore.maki" param="small" /> +</groupdef> + +<groupdef id="player.component.fileinfo"> + + <group id="info.component.holder" x="0" y="0" h="92" w="0" relatw="1"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-normal-sui.xml b/Src/resources/skins/Bento/xml/player-normal-sui.xml new file mode 100644 index 00000000..cb73cc24 --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-normal-sui.xml @@ -0,0 +1,315 @@ +<!-- SUI:Component:Browser --> + +<!-- <groupdef id="wdh.browser"> + + <Winamp:Browser fitparent="1" id="sui.component.browser" /> + +</groupdef> --> + +<!-- SUI:Component:MediaLibrary --> + +<groupdef id="wdh.ml"> + + <windowholder x="3" y="4" w="-5" h="-4" relath="1" relatw="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}"/> + +</groupdef> + +<!-- SUI:Component:Video --> + +<groupdef id="wdh.video.resizable"> + + <rect color="0,0,0" fitparent="1" filled="1"/> + + <rect id="wdh.outer" x="4" y="4" w="-8" relatw="1" h="-8" relath="1" color="80,80,80"/> + + <rect id="wdh.drag" x="-5" y="-5" relatx="1" relaty="1" h="5" w="5" filled="1" color="100,100,100" cursor="IDC_SIZENWSE"/> + + <windowholder id="wdh" x="5" y="5" w="-10" relatw="1" h="-10" relath="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}"/> + + <script file="../Big Bento/scripts/videoresize.maki"/> + +</groupdef> + +<groupdef id="wdh.video"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <group id="wdh.video.resizable" x="1" y="5" w="-2" relatw="1" h="-29" relath="1" /> + + <Button action="VID_FS" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.fullscreen.normal" + hoverImage="video.button.fullscreen.hover" + downImage="video.button.fullscreen.down" + tooltip="Fullscreen" + /> + + <Button action="VID_1X" + x="29" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.1x.normal" + hoverImage="video.button.1x.hover" + downImage="video.button.1x.down" + tooltip="Normal Size" + /> + + <Button action="VID_2X" + x="54" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.2x.normal" + hoverImage="video.button.2x.hover" + downImage="video.button.2x.down" + tooltip="Double Size" + /> + + <!--<Button action="VID_TV" + x="80" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.itv.normal" + hoverImage="video.button.itv.hover" + downImage="video.button.itv.down" + tooltip="Internet TV" + />--> + + <NStatesButton nstates="2" + x="-53" relatx="1" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.pin.normal" + hoverImage="video.button.pin.hover" + downImage="video.button.pin.down" + tooltip="Enable Video in Window resizing" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Enable Video in Window resizing" + /> + + <Button action="VID_Misc" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="video.button.cfg.normal" + hoverImage="video.button.cfg.hover" + downImage="video.button.cfg.down" + tooltip="Video Options" + /> + + <text id="info" display="VID_Info" ticker="1" + x="105" y="-18" relaty="1" h="13" w="-161" relatw="1" + align="center" color="color.window.txt" + /> + +</groupdef> + +<groupdef id="wdh.pl"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <group id="playlistpro" y="3" h="-25" x="2" w="-4" relath="1" relatw="1"/> + + <Wasabi:Button action="PE_Add" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.add" + center_image="1" + tooltip="Add Files to Playlist" + /> + + <Wasabi:Button action="PE_Rem" + x="29" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.rem" + center_image="1" + tooltip="Remove Files from Playlist" + /> + + <Wasabi:Button action="PE_Sel" + x="54" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.sel" + center_image="1" + tooltip="Select Files in Playlist" + /> + + <Wasabi:Button action="PE_Misc" + x="79" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.misc" + center_image="1" + tooltip="Misc Actions" + /> + + <Wasabi:Button action="PE_List" + x="104" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.manage" + center_image="1" + tooltip="Manage Playlist" + /> + + <Wasabi:Button id="pe.move.top" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="pledit.tab.button.up" + center_image="1" + tooltip="Restore original Playlist position" + /> + + <text id="info" display="PE_Info" ticker="1" + x="131" y="-18" relaty="1" h="13" w="-161" relatw="1" + align="center" color="color.window.txt" + /> + +</groupdef> + +<!-- SUI:Component:Visualization --> + +<groupdef id="wdh.vis"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <windowholder id="wdh.vis.object" x="1" y="5" w="-2" relatw="1" h="-29" relath="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + + <Button action="VIS_FS" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.fullscreen.normal" + hoverImage="video.button.fullscreen.hover" + downImage="video.button.fullscreen.down" + tooltip="Fullscreen" + /> + + <Button action="VIS_Prev" + x="29" y="-21" h="21" w="21" relaty="1" rectrgn="1" + image="vis.button.prev.normal" + hoverImage="vis.button.prev.hover" + downImage="vis.button.prev.down" + tooltip="Previous Visualization Preset" + /> + + <Button action="VIS_Next" + x="51" y="-21" h="21" w="21" relaty="1" rectrgn="1" + image="vis.button.next.normal" + hoverImage="vis.button.next.hover" + downImage="vis.button.next.down" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.random" + x="74" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="vis.button.random.normal" + hoverImage="vis.button.random.hover" + downImage="vis.button.random.down" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <ToggleButton id="vis.random.active" + x="74" y="-21" h="21" w="24" relaty="1" rectrgn="1" + ActiveImage="vis.button.random.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="../Big Bento/scripts/syncbutton.maki" param="vis.random;vis.random.active" /> + + <Button action="VIS_Menu" + x="-52" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="vis.button.presets.normal" + hoverImage="vis.button.presets.hover" + downImage="vis.button.presets.down" + tooltip="Presets" + /> + + <Button action="VIS_Cfg" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="video.button.cfg.normal" + hoverImage="video.button.cfg.hover" + downImage="video.button.cfg.down" + tooltip="Preset Editor / Options" + /> + +</groupdef> + +<groupdef id="sui.components"> + + <group id="wdh.ml" fitparent="1" visible="0" /> + <group id="wdh.pl" fitparent="1" visible="0" /> + <group id="wdh.vis" fitparent="1" visible="0" /> + <group id="wdh.video" fitparent="1" visible="0" /> + <!-- <group id="wdh.browser" fitparent="1" visible="0" /> --> + +</groupdef> + +<!-- +Params for <Bento:TabButton/> +text="sometext" +the object itself is a button. +--> + +<groupdef id="bento.tabbutton" xuitag="Bento:TabButton" embed_xui="bento.tabbutton.mousetrap"> + + <grid id="bento.tabbutton.normal" + fitparent="1" y="1" h="-2" relath="1" visible="1" + left="sui.button.inactive.normal.left" + middle="sui.button.inactive.normal.center" + right="sui.button.inactive.normal.right" + /> + + <text id="bento.tabbutton.normal.text" x="7" y="2" w="-15" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="12" antialias="1" visible="1" color="color.tabbutton.text.inactive" shadow="1" shadowcolor="color.tabbutton.text.inactive.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.hover" + fitparent="1" y="1" h="-2" relath="1" visible="0" + left="sui.button.inactive.hover.left" + middle="sui.button.inactive.hover.center" + right="sui.button.inactive.hover.right" + /> + + <text id="bento.tabbutton.hover.text" x="7" y="2" w="-15" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="12" antialias="1" visible="0" color="color.tabbutton.text.inactive.hover" shadow="1" shadowcolor="color.tabbutton.text.inactive.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.active" + fitparent="1" y="0" h="-1" relath="1" visible="0" + left="sui.button.active.normal.left" + middle="sui.button.active.normal.center" + right="sui.button.active.normal.right" + /> + + <text id="bento.tabbutton.active.text" x="7" y="2" w="-15" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="12" antialias="1" visible="0" color="color.tabbutton.text.active" shadow="1" shadowcolor="color.tabbutton.text.active.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.footer" + x="0" y="-1" h="1" w="0" relatw="1" relaty="1" visible="0" + left="sui.button.active.footer.left" + middle="sui.button.active.footer.center" + right="sui.button.active.footer.right" + /> + + <button id="bento.tabbutton.mousetrap" fitparent="1" y="1" h="-1" relath="1" rectrgn="1" /> + + <script file="../Big Bento/scripts/tabbutton.maki" /> + +</groupdef> + +<groupdef id="sui.content" > + + <grid fitparent="1" move="1" + topleft="sui.background.topleft" + top="sui.background.top" + topright="sui.background.topright" + left="sui.background.left" + middle="sui.background.center" + right="sui.background.right" + bottomleft="sui.background.bottomleft" + bottom="sui.background.bottom" + bottomright="sui.background.bottomright" + /> + + <grid x="1" y="23" h="-24" w="-2" relath="1" relatw="1" + topleft="sui.component.topleft" + top="sui.component.top" + topright="sui.component.topright" + left="sui.component.left" + middle="sui.component.center" + right="sui.component.right" + bottomleft="sui.component.bottomleft" + bottom="sui.component.bottom" + bottomright="sui.component.bottomright" + /> + + <Bento:TabButton id="switch.ml" x="4" h="19" w="87" y="5" tabtext="Media Library"/> + <Bento:TabButton id="switch.pl" x="4" h="19" w="87" y="5" tabtext="Playlist"/> + <Bento:TabButton id="switch.video" x="92" h="19" w="47" y="5" tabtext="Video"/> + <Bento:TabButton id="switch.vis" x="140" h="19" w="84" y="5" tabtext="Visualization"/> + <!-- <Bento:TabButton id="switch.browser" x="225" h="19" w="63" y="5" tabtext="Browser"/> --> + + <script file="../Big Bento/scripts/tabcontrol.maki" param="@HAVE_LIBRARY@"/> + + <group id="sui.components" x="1" y="23" h="-26" w="-2" relatw="1" relath="1"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-normal.xml b/Src/resources/skins/Bento/xml/player-normal.xml new file mode 100644 index 00000000..de81a1fb --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-normal.xml @@ -0,0 +1,80 @@ +<include file="player-normal-group.xml"/> +<include file="player-normal-sui.xml"/> +<include file="player-normal-mcv.xml"/> + +<layout id="normal" minimum_h="492" minimum_w="633" h="600" w="800" appbar="top|bottom" > + + <!-- Background Outfit --> + + <group id="window.background.regions" fitparent="1" sysregion="1" /> + + <layer id="window.background.maximize" fitparent="1" image="window.background.maximized" sysregion="1" visible="0"/> + + <layer x="0" y="18" w="5" h="5" image="window.background.topleft" resize="left" regionop="1"/> + <layer x="5" y="18" w="-10" relatw="1" h="5" image="window.background.top" regionop="1"/> + <layer x="-5" relatx="1" y="18" w="5" h="5" image="window.background.topright" resize="right" regionop="1"/> + <layer x="0" y="23" w="5" h="-28" relath="1" image="window.background.left" resize="left" regionop="1"/> + <layer x="5" y="23" w="-10" relatw="1" h="-28" relath="1" image="window.background.center" move="0" regionop="1"/> + <layer x="-5" relatx="1" y="23" w="5" h="-28" relath="1" image="window.background.right" resize="right" regionop="1"/> + <layer x="0" y="-5" relaty="1" w="5" h="5" image="window.background.bottomleft" resize="bottomleft" id="player.resizer.bottomleft" regionop="1"/> + <layer x="5" y="-5" relaty="1" w="-79" relatw="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom" regionop="1"/> + <layer x="-74" y="-13" relaty="1" w="36" relatx="1" h="13" image="window.background.collapse" resize="bottom" id="player.resizer.collapse" regionop="1"/> + <layer x="-39" y="-5" relaty="1" w="34" relatx="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom2" regionop="1"/> + <layer x="-5" relatx="1" y="-5" relaty="1" w="5" h="5" image="window.background.bottomright" regionop="1"/> + <layer x="-20" y="-11" w="15" h="7" relaty="1" relatx="1" image="window.background.resizer" id="player.resizer.bottomright" rectrgn="1" regionop="1"/> + + <layer id="player.resizer.disable" x="0" y="18" h="-18" w="0" relath="1" relatw="1" rectrgn="1" move="0"/> + + <layer x="2" y="19" image="window.background.gradient" move="0" ghost="1"/> + + <group id="focus.dummy" x="5" w="-10" relatw="1" y="18" h="-23" relath="1" rectrgn="1" wantfocus="1" move="1"/> + + <layer x="-20" y="-11" w="20" h="11" relaty="1" relatx="1" resize="bottomright" id="player.resizer.bottomright.dummy" rectrgn="1" /> + + <group x="0" y="0" h="18" w="0" relatw="1" id="player.titlebar" sysregion="1" wantfocus="1" rectrgn="1"/> + + <Wasabi:Frame id="player.mainframe" x="4" y="21" w="-8" relath="0" h="95" from="l" relatw="1" orientation="v" maxwidth="-300" left="player.layout" right="player.dualwnd.pl.info" minwidth="226" width="226" jump="none" vgrabber="empty" vbitmap="empty"/> + + <layer id="player.mainframe.grabber" ghost="1" x="229" y="21" h="92" w="8" image="wasabi.framewnd.verticaldivider" move="1"/> + + <layer id="bolt.glow" x="191" y="83" image="player.button.bolt.glow" alpha="0" ghost="1"/> + <button + id="bolt" + action="TOGGLE" param="guid:{D6201408-476A-4308-BF1B-7BACA1124B12}" + x="191" y="83" + image="player.button.bolt.normal" + downImage="player.button.bolt.down" + hoverImage="player.button.bolt.hover" + /> + + <script file="scripts/pledit.maki" param="small"/> + + <group id="sui.content" x="4" y="119" h="-136" relath="1" w="-8" relatw="1" sysregion="1" wantfocus="1" rectrgn="1"/> + + <button + id="sui.show" regionop="1" + x="-73" w="34" y="-12" h="11" relatx="1" relaty="1" + image="window.button.expand.normal" + hoverImage="window.button.expand.hover" + downImage="window.button.expand.down" + tooltip="Expand Window" + /> + <button + id="sui.hide" regionop="1" + x="-73" w="34" y="-12" h="11" relatx="1" relaty="1" + image="window.button.collapse.normal" + hoverImage="window.button.collapse.hover" + downImage="window.button.collapse.down" + tooltip="Collapse Window" + /> + + <script file="../Big Bento/scripts/suicore.maki" param="130"/> + <!-- The main machine, + param - height of main wnd if you hide the sui + --> + + <groupdef id="playlistpro"> + <PlaylistPro id="centro.windowholder.playlist1" x="0" y="0" h="0" w="0" relath="1" relatw="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="1"/> + </groupdef> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player-shade.xml b/Src/resources/skins/Bento/xml/player-shade.xml new file mode 100644 index 00000000..f1831df4 --- /dev/null +++ b/Src/resources/skins/Bento/xml/player-shade.xml @@ -0,0 +1,341 @@ +<groupdef id="shade.cbuttons"> + + <Button id="Prev" + x="0" y="0" h="16" w="14" rectrgn="1" + image="shade.button.previous.normal" + hoverImage="shade.button.previous.hover" + downImage="shade.button.previous.down" + action="PREV" tooltip="Previous Track" + /> + + <Button id="Play" + x="14" y="0" h="16" w="12" rectrgn="1" + image="shade.button.play.normal" + hoverImage="shade.button.play.hover" + downImage="shade.button.play.down" + action="PLAY" tooltip="Play" + /> + + <Button id="Pause" + x="26" y="0" h="16" w="12" rectrgn="1" + image="shade.button.pause.normal" + hoverImage="shade.button.pause.hover" + downImage="shade.button.pause.down" + action="PAUSE" tooltip="Pause Playback" + /> + + <Button id="Stop" + x="38" y="0" h="16" w="14" rectrgn="1" + image="shade.button.stop.normal" + hoverImage="shade.button.stop.hover" + downImage="shade.button.stop.down" + action="STOP" tooltip="Stop Playback" + /> + + <Button id="Next" + x="52" y="0" h="16" w="14" rectrgn="1" + image="shade.button.next.normal" + hoverImage="shade.button.next.hover" + downImage="shade.button.next.down" + action="NEXT" tooltip="Next Track" + /> + + <Button id="Eject" + x="72" y="0" h="16" w="15" rectrgn="1" + image="shade.button.eject.normal" + hoverImage="shade.button.eject.hover" + downImage="shade.button.eject.down" + action="EJECT" tooltip="Open File(s)" + /> +</groupdef> + +<groupdef id="shade.display"> + + <grid + x="0" y="0" h="18" w="-5" relatw="1" ghost="1" + left="shade.display.left" + middle="shade.display.middle" + right="shade.display.right" + /> + + <text id="SongTime" + x="3" y="7" h="5" w="35" relatw="0" timeroffstyle="1" timecolonwidth="6" + display="time" align="left" font="player.bitmapfont.songinfo" + /> + + <SongTicker id="Songticker" nograbb="1" move="1" + x="0" y="2" h="12" w="-7" relatw="1" + display="SONGTITLE" showlen="1" ticker="1" rightpadding="-3" + rightclickaction="trackmenu" dblclickaction="trackinfo" align="right" + color="color.display" fontsize="12" valign="top" bold="2" + /> + <text id="InfoDisplay" nograbb="1" move="1" + x="0" y="2" h="12" w="-7" relatw="1" offsetx="-3" + align="right" color="color.display" fontsize="12" valign="top" bold="2" ghost="1" + /> + + <script file="../Big Bento/scripts/songticker.maki" param="3,small" /> + +</groupdef> + +<groupdef id="shade.vis"> + + <grid + x="0" y="0" h="18" w="-6" relatw="1" ghost="1" + left="shade.display.left" + middle="shade.display.middle" + right="shade.display.right" + /> + + <vis + id="main.vis" + x="4" y="4" + w="54" h="9" + colorbandpeak="162,193,204" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + gammagroup="Displaytext" + /> + + <layer id="main.vis.trigger" x="2" y="3" h="11" w="58" rectrgn="1"/> + + <script file="../Big Bento/scripts/visualizer.maki"/> + +</groupdef> + +<groupdef id="shade.volume"> + + <button id="mute" x="0" y="0" w="16" h="16" + image="shade.button.mute.normal" + hoverImage="shade.button.mute.hover" + downImage="shade.button.mute.down" + tooltip="Mute Volume" + /> + <button id="etum" x="0" y="0" w="16" h="16" + image="shade.button.demute.normal" + hoverImage="shade.button.demute.hover" + downImage="shade.button.demute.down" + tooltip="Turn Volume on" + visible="0" + /> + + <layer id="player.volume.label" x="20" y="1" image="shade.label.volume" ghost="1"/> + + <layer id="shade.volume.bg" + x="17" y="5" h="5" w="40" + image="shade.track.volume" + ghost="1" + /> + + <grid id="player.volume.fill" + x="19" y="7" h="2" w="38" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="Volume" + action="Volume" + x="16" y="4" h="10" w="42" + thumb="shade.volume.thumb.normal" + hoverThumb="shade.volume.thumb.hover" + downThumb="shade.volume.thumb.down" + tooltip="Volume" + /> + + <script file="../Big Bento/scripts/mute.maki" param="38"/> + <!-- param = max_w for volume fillbar --> + +</groupdef> + +<groupdef id="shade.seek"> + + <grid id="player.seek.bg" + x="1" y="5" h="5" w="-8" relatw="1" + left="shade.track.seek.left" + middle="shade.track.seek.middle" + right="shade.track.seek.right" + /> + + <ProgressGrid id="progressbar" + x="3" y="7" h="2" w="-10" relatw="1" + orientation="right" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="seeker" + action="SEEK" + x="0" y="4" h="10" w="-7" relatw="1" + thumb="shade.seek.thumb.normal" + hoverThumb="shade.seek.thumb.hover" + downThumb="shade.seek.thumb.down" + ghost="1" + visible="0" + tooltip="Seeker" + /> + + <Slider + id="seeker.ghost" + action="SEEK" + x="0" y="4" h="10" w="-7" relatw="1" + thumb="shade.seek.thumb.normal" + hoverThumb="shade.seek.thumb.hover" + downThumb="shade.seek.thumb.down" + tooltip="Seeker" + /> + + <script file="../Big Bento/scripts/seek.maki"/> + +</groupdef> + +<groupdef id="shade.links"> + + <rect color="0,0,0" alpha="180" x="0" y="0" w="39" h="18" filled="1"/> + + <button id="search" x="20" y="0" w="18" h="16" + image="shade.button.search.normal" + hoverImage="shade.button.search.hover" + downImage="shade.button.search.down" + tooltip="Search the web for this artist" + /> + <layer id="search.bg" ghost="1" x="20" y="0" image="shade.button.icon.bg" /> + <layer id="search.icon" ghost="1" x="20" y="0" image="shade.button.icon.search" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="search;search.bg"/> + <script file="../Big Bento/scripts/syncbutton.maki" param="search;search.icon"/> + + <button id="nowplaying" x="1" y="0" w="18" h="16" + image="shade.button.search.normal" + hoverImage="shade.button.search.hover" + downImage="shade.button.search.down" + tooltip="More information about this artist" + /> + <layer id="nowplaying.bg" ghost="1" x="1" y="0" image="shade.button.icon.bg" /> + <layer id="nowplaying.icon" ghost="1" x="1" y="0" image="shade.button.icon.nowplaying" /> + <script file="../Big Bento/scripts/syncbutton.maki" param="nowplaying;nowplaying.bg"/> + <script file="../Big Bento/scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> + + <script file="../Big Bento/scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> + + <script file="../Big Bento/scripts/shadelinks.maki"/> + +</groupdef> + +<layout id="shade" minimum_w="250" h="18" minimum_h="18" maximum_h="18" w="500" primarycomponent="guid:player" appbar="top|bottom"> + + <!-- Background --> + + <group id="window.background.regions" fitparent="1" sysregion="1" /> + + <layer id="window.background.maximize" fitparent="1" image="window.background.maximized" sysregion="1" visible="0"/> + + <grid + x="0" y="0" h="18" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + + <grid + x="0" y="0" h="18" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <layer x="27" y="6" image="window.titlebar.text.winamp" ghost="1" /> + + <guiobject fitparent="1" rectrgn="1" move="1" id="shade.mousetrap"/> + + <!-- System Buttons --> + + <button + x="5" y="2" h="13" w="15" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-79" relatx="1" y="2" h="13" w="17" + id="shade.button.minimize" + action="MINIMIZE" + image="window.titlebar.button.minimize.normal" + hoverImage="window.titlebar.button.minimize.hover" + downImage="window.titlebar.button.minimize.down" + tooltip="Minimize Winamp" + /> + + <button + x="-60" relatx="1" y="2" h="13" w="17" + id="shade.button.restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Winamp" + /> + + <button + x="-60" relatx="1" y="2" h="13" w="17" + id="shade.button.maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Winamp" + /> + + <button + x="-41" relatx="1" y="2" h="13" w="17" + action="SWITCH" param="normal" + image="window.titlebar.button.shade.normal" + hoverImage="window.titlebar.button.shade.hover" + downImage="window.titlebar.button.shade.down" + tooltip="Main Mode" + /> + + <button + x="-22" relatx="1" y="2" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Exit Winamp" + /> + + <layer x="-5" y="0" w="5" h="18" rectrgn="1" relatx="1" resize="right" image="shade.resizer.right" id="shade.resizer.right"/> + <layer x="-5" y="0" w="5" h="18" rectrgn="1" relatx="1" resize="right" id="shade.resizer.right2"/> + + <group id="shade.display" x="163" y="0" w="100" h="18" visible="0"/> + <group id="shade.cbuttons" x="77" y="1" w="96" h="16"/> + <group id="shade.volume" x="163" y="1" w="65" h="16" visible="0"/> + <group id="shade.seek" x="-144" relatx="1" y="1" w="63" h="16" visible="0"/> + <group id="shade.vis" x="79" y="0" w="67" h="16" visible="0"/> + <group id="shade.links" x="0" y="1" w="43" h="21" relatx="1" visible="0"/> + + <script file="../Big Bento/scripts/shadesize.maki" param="83" /> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/player.xml b/Src/resources/skins/Bento/xml/player.xml new file mode 100644 index 00000000..70931435 --- /dev/null +++ b/Src/resources/skins/Bento/xml/player.xml @@ -0,0 +1,65 @@ +<include file="player-elements.xml"/> +<include file="playlistpro.xml"/> + +<container id="main" name="Main Window" primarycomponent="guid:player"> + + <include file="player-normal.xml"/> + <include file="player-shade.xml"/> + +</container> +<!-- +<container id="browser.quicklink.edit.dialog2" name="Edit Quicklink" dynamic="1" default_visible="0" nomenu="1" > + + <groupdef id="browser.quicklink.content"> + + <text x="5" y="3" text="Store Quick Link in:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:Combobox id="edit.parent" x="5" y="20" w="-10" h="20" relatw="1" maxitems="5"/> + + <text x="5" y="43" text="Quick Link Name:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.name" x="5" y="60" w="-10" h="20" relatw="1"/> + + <text x="5" y="83" text="Quick Link URL:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.url" x="5" y="100" w="-10" h="20" relatw="1"/> + + <wasabi:button x="5" y="128" w="-10" h="19" relatw="1" text="OK" id="return.values"/> + + </groupdef> + + <layout id="normal" noparent="1" ontop="1" noactivation="1" minimum_h="185" minimum_w="300" maximum_h="185" maximum_w="300" lockminmax="1" nodock="1" move="0" > + + <Wasabi:StandardFrame:Static + fitparent="1" + regionop="1" + content="browser.quicklink.content" + /> + + </layout> + +</container> + +<container id="browser.submenu.edit2" name="Edit Submenu" dynamic="1" default_visible="0" nomenu="1" > + + <groupdef id="browser.submenu.content"> + + <text x="5" y="2" text="Submenu Name:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.name" x="5" y="20" w="-10" h="20" relatw="1"/> + + <wasabi:button x="5" y="48" w="-10" h="19" relatw="1" text="OK" id="return.values"/> + + </groupdef> + + <layout id="normal" noparent="1" ontop="1" noactivation="1" minimum_h="105" minimum_w="300" maximum_h="105" maximum_w="300" lockminmax="1" nodock="1" move="0" > + + <Wasabi:StandardFrame:Static + fitparent="1" + regionop="1" + content="browser.submenu.content" + /> + + </layout> + +</container>-->
\ No newline at end of file diff --git a/Src/resources/skins/Bento/xml/playlistpro.xml b/Src/resources/skins/Bento/xml/playlistpro.xml new file mode 100644 index 00000000..f765a409 --- /dev/null +++ b/Src/resources/skins/Bento/xml/playlistpro.xml @@ -0,0 +1,62 @@ +<groupdef id="PlaylistPro.list.group" minimum_h="64" background="studio.BaseTexture"> + + <grid + fitparent="1" + topleft="sui.pl.search.box.1" + top="sui.pl.search.box.2" + topright="sui.pl.search.box.3" + left="sui.pl.search.box.4" + middle="sui.pl.search.box.5" + right="sui.pl.search.box.6" + bottomleft="sui.pl.search.box.7" + bottom="sui.pl.search.box.8" + bottomright="sui.pl.search.box.9" + sysregion="1" + /> + + <list id="PlaylistPro.list" x="4" y="0" w="-6" h="-24" relatw="1" relath="1" nocolheader="1" antialias="1" font="arial" multiselect="1"/> + <text id="PlaylistPro.list.news" x="3" y="-22" w="-6" h="20" relaty="1" relatw="1" text="Results found: 22 items" font="arial" color="wasabi.list.text" align="center" antialias="1" fontsize="17"/> + <layer x="0" y="-1" relaty="1" w="0" relatw="1" h="20" resize="bottom" /> + +</groupdef> + +<container id="searchresults" name="Search Results" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1" autoclose="1"> + <layout id="normal" noparent="1" ontop="1" noactivation="1" nodock="1" move="0" autoclose="1"> + <group id="PlaylistPro.list.group" x="1" y="0" h="0" w="-12" relath="1" relatw="1"/> + <layer id="1px.patch" x="-11" y="0" w="1" relath="1" relatx="1" h="20" image="sui.pl.search.box.6" sysregion="1"/> + </layout> +</container> + + +<groupdef id="wasabi.edits" xuitag="Wasabi:EditBox2" embed_xui="wasabi.edit.box" h="24"> + <button id="pl.search.edit.rect" x="1" y="2" w="-4" h="22" relatw="1" relath="0" rectrgn="1" tooltip="Click to search the playlist (Right-Click for search history)" cursor="IDC_IBEAM"/> + <text id="pl.search.edit.searchhelp" x="1" y="2" w="-5" h="19" relatw="1" antialias="1" color="wasabi.list.text" text="Search in Playlist" ghost="1" font="arial" alpha="230" fontsize="16"/> + <edit id="wasabi.edit.box" x="1" y="0" w="-21" h="22" relatw="1" relath="0" autoselect="1" visible="0"/> + +<button id="pl.search.edit.clear.text" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.bgv" visible="0"/> +<button id="pl.search.edit.clear" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.1" hoverimage="sui.pl.search.stop.1" downimage="sui.pl.search.stop.3" cursor="IDC_HAND" tooltip="Clear Search" visible="0"/> +</groupdef> + +<groupdef id="player.component.playlist.searchbar.search" h="30"> + <grid x="0" y="0" h="31" w="0" relatw="1" + left="sui.pl.search.bgv.1" middle="sui.pl.search.bgv.2" right="sui.pl.search.bgv.3"/> + + <grid x="0" y="0" h="30" w="0" relatw="1" + left="sui.pl.search.bg.1" middle="sui.pl.search.bg.2" right="sui.pl.search.bg.3"/> + + <button id="pl.search.go" x="-26" y="4" h="19" w="20" relatx="1" image="sui.pl.search.go.1" hoverimage="sui.pl.search.go.2" downimage="sui.pl.search.go.3" tooltip="Go Search" rectrgn="1"/> + <Wasabi:EditBox2 id="pl.search.edit" x="4" y="4" relatw="1" w="-10" h="20" text=""/> +</groupdef> +<groupdef id="PlaylistPro.topbar"> + <group id="player.component.playlist.searchbar.search" x="0" y="0" w="0" relatw="1"/> +</groupdef> + +<groupdef id="PlaylistPro.xui" wantfocus="1" rectrgn="1" xuitag="PlaylistPro" embed_xui="wdh.playlist"> + <!--rect fitparent="1" filled="1" color="wasabi.window.background"/--> + + <windowholder id="wdh.playlist" h="0" x="0" w="0" relath="1" relatw="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="1" hold="guid:{45f3f7c1-a6f3-4ee6-a15e-125e92fc3f8d}"/> + +<group id="PlaylistPro.topbar" x="0" y="0" w="0" h="30" relatw="1" visible="0"/> + <script file="scripts/playlistpro.maki"/> +</groupdef> + diff --git a/Src/resources/skins/Bento/xml/standardframe.xml b/Src/resources/skins/Bento/xml/standardframe.xml new file mode 100644 index 00000000..829b4a7d --- /dev/null +++ b/Src/resources/skins/Bento/xml/standardframe.xml @@ -0,0 +1,153 @@ +<!-- ======================================================================================================= + + This group serves as a template for all the Wasabi:StandardFrame objects + +======================================================================================================== --> + +<groupdef id="wasabi.frame.layout"> + + <layer x="0" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="0" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + + <grid + x="0" y="0" h="18" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + + <layer x="0" y="0" h="18" w="0" relatw="1" move="1" /> + + <text id="componentname" x="27" y="2" w="-77" h="14" relatw="1" fontsize="11" bold="1" default=":componentname" ghost="1" color="wasabi.titlebar.color" font="Arial" align="left" forceuppercase="1"/> + + <layer x="0" y="18" w="5" h="5" image="window.background.topleft" resize="left" regionop="1"/> + <layer x="5" y="18" w="-10" relatw="1" h="5" image="window.background.top" regionop="1"/> + <layer x="-5" relatx="1" y="18" w="5" h="5" image="window.background.topright" resize="right" regionop="1"/> + <layer x="0" y="23" w="5" h="-28" relath="1" image="window.background.left" resize="left" regionop="1"/> + <layer x="5" y="23" w="-10" relatw="1" h="-28" relath="1" image="window.background.center" move="1" regionop="1"/> + <layer x="-5" relatx="1" y="23" w="5" h="-28" relath="1" image="window.background.right" resize="right" regionop="1"/> + <layer x="0" y="-5" relaty="1" w="5" h="5" image="window.background.bottomleft" resize="bottomleft" id="player.resizer.bottomleft" regionop="1"/> + <layer x="5" y="-5" relaty="1" w="-10" relatw="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom" regionop="1"/> + <layer x="-5" relatx="1" y="-5" relaty="1" w="5" h="5" image="window.background.bottomright" regionop="1"/> + <layer x="-20" y="-11" w="15" h="7" relaty="1" relatx="1" image="window.background.resizer" id="player.resizer.bottomright" rectrgn="1" regionop="1"/> + <layer x="-20" y="-11" w="20" h="11" relaty="1" relatx="1" resize="bottomright" id="player.resizer.bottomright.dummy" rectrgn="1" /> + + <layer id="window.resize.disabler" fitparent="1" move="1" visible="0"/> + + <button + x="-41" relatx="1" y="2" h="13" w="17" + id="restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Winamp" + /> + + <button + x="-41" relatx="1" y="2" h="13" w="17" + id="maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Winamp" + /> + + <button + x="5" y="2" h="13" w="15" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-22" relatx="1" y="2" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Close Window" + /> + + <grid + x="0" y="0" h="18" w="0" relatw="1" regionop="1" ghost="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <LayoutStatus id="sysmenu.status" bg="0" x="5" y="2" h="13" w="15" includeonly="{system}" /> + <hideobject target="sysmenu.status"/> + + <script file="../Big Bento/scripts/simplemaximize.maki"/> + + </groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Status /> implementation + +======================================================================================================== --> + + <groupdef id="wasabi.standardframe.statusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Status"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" relatw="1" h="0" relath="1"/> + + <LayoutStatus id="standardframe.layoutstatus" x="5" y="-33" relaty="1" w="-10" relatw="1" h="18" exclude="{system}" /> + <script id="standardframe.script" file="../Big Bento/scripts/standardframe.maki" param="5,21,-10,-54,0,0,1,1" /> + +</groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:NoStatus /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:NoStatus"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" h="0" relatw="1" relath="1"/> + + <script id="standardframe.script" file="../Big Bento/scripts/standardframe.maki" param="5,21,-10,-36,0,0,1,1" /> + +</groupdef> + + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Modal /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.modal" inherit_group="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Modal"> + <sendparams target="window.resize.disabler" visible="1" /> + <sendparams target="player.resizer.bottomright" visible="0" /> + <sendparams target="restore" visible="0" /> + <sendparams target="maximize" visible="0" /> +</groupdef> + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Static /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.static" inherit_group="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Static"> + <sendparams target="window.resize.disabler" visible="1" /> + <sendparams target="player.resizer.bottomright" visible="0" /> + <sendparams target="restore" visible="0" /> + <sendparams target="maximize" visible="0" /> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/about/about.m b/Src/resources/skins/Big Bento/about/about.m new file mode 100644 index 00000000..d75dc8aa --- /dev/null +++ b/Src/resources/skins/Big Bento/about/about.m @@ -0,0 +1,132 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: about.m +Version: 1.0 + +Type: maki +Date: 03. Jul. 2006 - 22:40 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +#include nibbles/nibbles.m + +Global Layer tgnibbles; +Global Group sg; +Global Timer change; +Global int counter; +Global Group g1, g2, g3, g4, g5, g6, g7, g8; +Function blend (guiobject in, guiobject out); + +System.onScriptLoaded () +{ + sg = getScriptGroup(); + tgnibbles = sg.getObject("toggle"); + nibbles = sg.getObject("nibbles"); + + init_nibbles(); + + g1 = sg.getObject("about.text1"); + g2 = sg.getObject("about.text2"); + g3 = sg.getObject("about.text3"); + g4 = sg.getObject("about.text4"); + g5 = sg.getObject("about.text5"); + g6 = sg.getObject("about.text6"); + g7 = sg.getObject("about.text7"); + g8 = sg.getObject("about.text8"); + + change = new Timer; + change.setDelay(3300); +} + +system.onScriptUnloading () +{ + delete change; +} + + +tgnibbles.onLeftButtonDblClk (int x, int y) +{ + if (nibbles.isVisible()) nibbles.hide(); + else if (!nibbles.isVisible()) nibbles.show(); +} + +sg.onSetVisible (Boolean onoff) +{ + if (onoff) + { + change.start(); + g1.setXmlParam("x", "400"); + g1.canceltarget(); + g1.setAlpha(255); + g1.setTargetX(25); + g1.setTargetSpeed(1.3); + g1.gotoTarget(); + } + else + { + change.stop(); + } + +} + + +change.onTimer () +{ + counter++; + if (counter > 7) counter = 0; + if (counter == 0) + { + blend(g1, g8); + } + else if (counter == 1) + { + blend(g2, g1); + } + else if (counter == 2) + { + blend(g3, g2); + } + else if (counter == 3) + { + blend(g4, g3); + } + else if (counter == 4) + { + blend(g5, g4); + } + else if (counter == 5) + { + blend(g6, g5); + } + else if (counter == 6) + { + blend(g7, g6); + } + else if (counter == 7) + { + blend(g8, g7); + } +} + +blend (guiobject in, guiobject out) +{ + out.canceltarget(); + out.setTargetA(0); + out.setTargetX(-25); + out.setTargetSpeed(2); + out.gotoTarget(); + in.canceltarget(); + in.setXmlParam("x", "400"); + in.setAlpha(255); + in.setTargetX(25); + in.setTargetA(255); + in.setTargetSpeed(1.5); + in.gotoTarget(); +} + diff --git a/Src/resources/skins/Big Bento/about/about.maki b/Src/resources/skins/Big Bento/about/about.maki Binary files differnew file mode 100644 index 00000000..98c057e0 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/about.maki diff --git a/Src/resources/skins/Big Bento/about/about.xml b/Src/resources/skins/Big Bento/about/about.xml new file mode 100644 index 00000000..7369c563 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/about.xml @@ -0,0 +1,81 @@ +<include file="nibbles/nibbles.xml"/> +<elements> + <bitmap id="about.fg" file="../Big Bento/about/about_fg.jpg" /> + <bitmap id="about.bg" file="../Big Bento/about/about_fg.jpg" y="0" h="321" x="0" w="1"/> + <color id="about.font" value="162,193,204" gammgroup="none" /> +</elements> + +<groupdef id="skin.about.group" w="0" h="0" relatw="1" relath="1" rectrgn="1"> + <rect fitparent="1" color="255,255,255" filled="1" /> + + <layer fitparent="1" image="about.bg"/> + + <layer + x="0" y="0" + w="371" + h="321" + image="about.fg" + /> + + <group id="about.text1" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text2" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text3" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text4" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text5" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text6" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text7" x="25" y="190" h="90" w="350" alpha="0"/> + <group id="about.text8" x="25" y="190" h="90" w="350" alpha="0"/> + + <group id="nibbles" fitparent="1" visible="0" /> + + <layer id="toggle" fitparent="1" rectrgn="1" /> + + <script file="../Big Bento/about/about.maki"/> + +</groupdef> + +<groupdef id="about.text1" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="The new" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="Single User Interface." alpha="60"/> +</groupdef> + +<groupdef id="about.text2" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Coding by" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="Martin Pöhlmann." alpha="70"/> + <text color="about.font" x="17" y="70" h="18" w="350" fontsize="18" font="tahoma" text="from www.skinconsortium.com" alpha="100"/> +</groupdef> + +<groupdef id="about.text3" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Graphics by" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="Taber Buhl." alpha="60"/> +</groupdef> + +<groupdef id="about.text4" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Wasabi Development by" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="Ben Allison" alpha="60"/> +<text color="about.font" x="17" y="70" h="18" w="350" fontsize="18" font="tahoma" text="and Martin Pöhlmann." alpha="100"/> +</groupdef> + +<groupdef id="about.text5" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Color Themes by" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="16" font="tahoma" text="DJ Egg, GreayStone, J_Darnley, Martin, QOAL, VooDoo`" alpha="100"/> + <text color="about.font" x="17" y="60" h="18" w="350" fontsize="16" font="tahoma" text="You are encouraged to submit new ones." alpha="60"/> +</groupdef> + +<groupdef id="about.text7" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Feel free to use this skin" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="as a reference point" alpha="60"/> + <text color="about.font" x="17" y="70" h="18" w="350" fontsize="18" font="tahoma" text="to create your own winamp skins." alpha="100"/> +</groupdef> + +<groupdef id="about.text8" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="For help visit" alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="forums.winamp.com" alpha="60"/> + <text color="about.font" x="17" y="70" h="18" w="350" fontsize="18" font="tahoma" text="or forums.skinconsortium.com" alpha="100"/> +</groupdef> + +<groupdef id="about.text6" > + <text color="about.font" x="0" y="0" h="30" w="350" fontsize="28" font="tahoma" text="Thanks go to..." alpha="110"/> + <text color="about.font" x="15" y="30" h="40" w="350" fontsize="36" font="tahoma" text="DJ Egg, SLoB and Phobos" alpha="60"/> + <text color="about.font" x="17" y="70" h="18" w="350" fontsize="18" font="tahoma" text="...for help and suggestions." alpha="100"/> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/about/about_fg.jpg b/Src/resources/skins/Big Bento/about/about_fg.jpg Binary files differnew file mode 100644 index 00000000..8985984c --- /dev/null +++ b/Src/resources/skins/Big Bento/about/about_fg.jpg diff --git a/Src/resources/skins/Big Bento/about/nibbles/fixedsys.png b/Src/resources/skins/Big Bento/about/nibbles/fixedsys.png Binary files differnew file mode 100644 index 00000000..6941ade1 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/fixedsys.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/info.png b/Src/resources/skins/Big Bento/about/nibbles/info.png Binary files differnew file mode 100644 index 00000000..dd88498d --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/info.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/info2.png b/Src/resources/skins/Big Bento/about/nibbles/info2.png Binary files differnew file mode 100644 index 00000000..145d1b90 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/info2.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level1.png b/Src/resources/skins/Big Bento/about/nibbles/level1.png Binary files differnew file mode 100644 index 00000000..59c0bb26 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level1.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level10.png b/Src/resources/skins/Big Bento/about/nibbles/level10.png Binary files differnew file mode 100644 index 00000000..192d56cd --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level10.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level2.png b/Src/resources/skins/Big Bento/about/nibbles/level2.png Binary files differnew file mode 100644 index 00000000..4a14ab10 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level2.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level3.png b/Src/resources/skins/Big Bento/about/nibbles/level3.png Binary files differnew file mode 100644 index 00000000..698aa821 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level3.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level4.png b/Src/resources/skins/Big Bento/about/nibbles/level4.png Binary files differnew file mode 100644 index 00000000..e1213f4c --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level4.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level5.png b/Src/resources/skins/Big Bento/about/nibbles/level5.png Binary files differnew file mode 100644 index 00000000..b8ca1e9f --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level5.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level6.png b/Src/resources/skins/Big Bento/about/nibbles/level6.png Binary files differnew file mode 100644 index 00000000..22a6f866 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level6.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level7.png b/Src/resources/skins/Big Bento/about/nibbles/level7.png Binary files differnew file mode 100644 index 00000000..fb7fe506 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level7.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level8.png b/Src/resources/skins/Big Bento/about/nibbles/level8.png Binary files differnew file mode 100644 index 00000000..cab2d4c8 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level8.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/level9.png b/Src/resources/skins/Big Bento/about/nibbles/level9.png Binary files differnew file mode 100644 index 00000000..a0d50871 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/level9.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/llama.png b/Src/resources/skins/Big Bento/about/nibbles/llama.png Binary files differnew file mode 100644 index 00000000..ef28a814 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/llama.png diff --git a/Src/resources/skins/Big Bento/about/nibbles/nibbles.m b/Src/resources/skins/Big Bento/about/nibbles/nibbles.m new file mode 100644 index 00000000..7f167fca --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/nibbles.m @@ -0,0 +1,828 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: nibbles.m +Version: 1.0 + +Type: maki +Date: 23. Okt. 2006 - 21:11 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#define GAME_SPEED 30 +#define MAX_H 59 +#define MAX_W 72 +#define MAX_LLAMAS 9 + +function init_nibbles(); + +Function setLlama(); +Function gotLlama(); +Function showInfo(string s); +Function showInfo2(); +Function hideInfo2(); +Function startGame(int level); +Function setPos(layer l, int x, int y); +Function checkforWalls(layer l); +Function checkforLlama(layer l); +Function checkforSammy(layer l); +Function sammyDies (); +Function addSammy(); +Function syncSammy(); +Function Layer createSammy(int num, int x, int y); + +Global group nibbles; + +Global Layer bg, llama, info, info2; +Global Text infotxt, infotxt2a, infotxt2b, infotxt2c, infotxt2d; + +Global Layer sammy0; +Global String gamestate = "startup"; +Global String direction; +Global Boolean gotkey = 0; +Global Timer move; +Global Boolean paused; + +Global map wall; + +Global int s_score, s_lives, s_level, currentllama; +Global Text t_score, t_lives, t_level; + +Global int n_sammy, expn_sammy; +Global List sammy, sammy_x, sammy_y; +Global Group sammys; + +Global int cheat, nocheat; +Global int cheat2, nocheat2; +Global int cheat3, nocheat3; +Global int evercheat; + +Global Text c1, c2, c3; + +init_nibbles() +{ + sammy = new List; + sammy_x = new List; + sammy_y = new List; + + llama = nibbles.getObject("llama"); + sammy0 = nibbles.getObject("sammy0"); + info = nibbles.getObject("info"); + infotxt = nibbles.getObject("infotxt"); + sammys = nibbles.getObject("sammys"); + bg = nibbles.getObject("bg"); + + info2 = nibbles.getObject("info2"); + infotxt2a = nibbles.getObject("infotxt2a"); + infotxt2b = nibbles.getObject("infotxt2b"); + infotxt2c = nibbles.getObject("infotxt2c"); + infotxt2d = nibbles.getObject("infotxt2d"); + + t_lives = nibbles.getObject("lives"); + t_score = nibbles.getObject("score"); + t_level = nibbles.getObject("level"); + c1 = nibbles.getObject("c1"); + c2 = nibbles.getObject("c2"); + c3 = nibbles.getObject("c3"); + gamestate = "startup"; + + n_sammy = 0; + expn_sammy = 0; + s_level = 1; + s_score = 0; + s_lives = 5; + + cheat = 0; + nocheat = 0; + cheat2 = 0; + nocheat2 = 0; + cheat3 = 0; + nocheat3 = 0; + evercheat = 0; + + move = new Timer; + move.setDelay(GAME_SPEED); +} + +System.onKeyDown (String key) +{ + if (nibbles.isVisible() && nibbles.isActive()) + { + if (!gotkey) + { + if (strsearch(key, "up") != -1 && direction != "d" && direction != "u") + { + if (move.isRunning()) + { + gotkey = 1; + direction = "u"; + complete; + return; + } + } + else if (strsearch(key, "down") != -1 && direction != "u" && direction != "d") + { + if (move.isRunning()) + { + gotkey = 1; + direction = "d"; + complete; + return; + } + } + else if (strsearch(key, "left") != -1 && direction != "r" && direction != "l") + { + if (move.isRunning()) + { + gotkey = 1; + direction = "l"; + complete; + return; + } + } + else if (strsearch(key, "right") != -1 && direction != "l" && direction != "r") + { + if (move.isRunning()) + { + gotkey = 1; + direction = "r"; + complete; + return; + } + } + } + + + /* Cheet on */ + + if (key == "n" && cheat == 0 && cheat3 != 4 && nocheat3 != 4 && cheat3 != 1 && nocheat3 != 1) + { + cheat = 1; + complete; + return; + } + else if (key == "o" && cheat == 1) + { + cheat = 2; + complete; + return; + } + else if (key == "s" && cheat == 2) + { + cheat = 3; + complete; + return; + } + else if (key == "a" && cheat == 3) + { + cheat = 4; + complete; + return; + } + else if (key == "m" && cheat == 4 && cheat != 5) + { + cheat = 5; + complete; + return; + } + else if (key == "m" && cheat == 5 && cheat != 4) + { + cheat = 6; + complete; + return; + } + else if (key == "y" && cheat == 6) + { + c1.setText("NOSAMMY"); + cheat = 7; + evercheat = 1; + complete; + return; + } + + /* Cheet off */ + + else if (key == "n" && cheat == 7 && cheat3 != 4 && nocheat3 != 4 && cheat3 != 1 && nocheat3 != 1) + { + nocheat = 1; + complete; + return; + } + else if (key == "o" && nocheat == 1) + { + nocheat = 2; + complete; + return; + } + else if (key == "s" && nocheat == 2) + { + nocheat = 3; + complete; + return; + } + else if (key == "a" && nocheat == 3) + { + nocheat = 4; + complete; + return; + } + else if (key == "m" && nocheat == 4 && nocheat != 5) + { + nocheat = 5; + complete; + return; + } + else if (key == "m" && nocheat == 5 && nocheat != 4) + { + nocheat = 6; + complete; + return; + } + else if (key == "y" && nocheat == 6 && nocheat3 != 7) + { + c1.setText(""); + cheat = 0; + nocheat = 0; + complete; + return; + } + + /* end cheat */ + + + /* Cheet2 on */ + + else if (key == "f" && cheat2 == 0 && cheat3 != 2 && nocheat3 != 2) + { + cheat2 = 1; + complete; + return; + } + else if (key == "r" && cheat2 == 1) + { + cheat2 = 2; + complete; + return; + } + else if (key == "e" && cheat2 == 2 && cheat2 != 3) + { + cheat2 = 3; + complete; + return; + } + else if (key == "e" && cheat2 == 3 && cheat2 != 2) + { + cheat2 = 4; + complete; + return; + } + else if (key == "s" && cheat2 == 4) + { + cheat2 = 5; + complete; + return; + } + else if (key == "a" && cheat2 == 5) + { + cheat2 = 6; + complete; + return; + } + else if (key == "m" && cheat2 == 6) + { + c2.setText("FREESAM"); + cheat2 = 7; + evercheat = 1; + complete; + return; + } + + /* Cheet2 off */ + + else if (key == "f" && cheat2 == 7 && cheat3 != 2 && nocheat3 != 2) + { + nocheat2 = 1; + complete; + return; + } + else if (key == "r" && nocheat2 == 1) + { + nocheat2 = 2; + complete; + return; + } + else if (key == "e" && nocheat2 == 2 && nocheat2 != 3) + { + nocheat2 = 3; + complete; + return; + } + else if (key == "e" && nocheat2 == 3 && nocheat2 != 2) + { + nocheat2 = 4; + complete; + return; + } + else if (key == "s" && nocheat2 == 4) + { + nocheat2 = 5; + complete; + return; + } + else if (key == "a" && nocheat2 == 5) + { + nocheat2 = 6; + complete; + return; + } + else if (key == "m" && nocheat2 == 6) + { + c2.setText(""); + cheat2 = 0; + nocheat2 = 0; + complete; + return; + } + + /* end cheat2 */ + + /* Cheet3 on */ + + else if (key == "i" && cheat3 == 0 && cheat3 != 3 && cheat3 != 5) + { + cheat3 = 1; + complete; + return; + } + else if (key == "n" && cheat3 == 1 && cheat3 != 4) + { + cheat3 = 2; + complete; + return; + } + else if (key == "f" && cheat3 == 2) + { + cheat3 = 3; + complete; + return; + } + else if (key == "i" && cheat3 == 3 && cheat3 != 5 && cheat3 != 0) + { + cheat3 = 4; + complete; + return; + } + else if (key == "n" && cheat3 == 4 && cheat3 != 2) + { + cheat3 = 5; + complete; + return; + } + else if (key == "i" && cheat3 == 5 && cheat3 != 3 && cheat3 != 0) + { + cheat3 = 6; + complete; + return; + } + else if (key == "t" && cheat3 == 6) + { + cheat3 = 7; + complete; + return; + } + else if (key == "y" && cheat3 == 7) + { + c3.setText("INFINITY"); + cheat3 = 8; + evercheat = 1; + complete; + return; + } + + /* Cheet3 off */ + + else if (key == "i" && cheat3 == 8 && nocheat3 != 3 && nocheat3 != 5) + { + nocheat3 = 1; + complete; + return; + } + else if (key == "n" && nocheat3 == 1 && nocheat3 != 4) + { + nocheat3 = 2; + complete; + return; + } + else if (key == "f" && nocheat3 == 2) + { + nocheat3 = 3; + complete; + return; + } + else if (key == "i" && nocheat3 == 3 && nocheat3 != 5 && nocheat3 != 0) + { + nocheat3 = 4; + complete; + return; + } + else if (key == "n" && nocheat3 == 4 && nocheat3 != 1) + { + nocheat3 = 5; + complete; + return; + } + else if (key == "i" && nocheat3 == 5 && nocheat3 != 3 && nocheat3 != 0) + { + nocheat3 = 6; + complete; + return; + } + else if (key == "t" && nocheat3 == 6) + { + nocheat3 = 7; + complete; + return; + } + else if (key == "y" && nocheat3 == 7 && nocheat != 6) + { + c3.setText(""); + cheat3 = 0; + nocheat3 = 0; + complete; + return; + } + + /* end cheat3 */ + + else if (key == "space") + { + if (gamestate == "startup" || gamestate == "New Try" || gamestate == "Next level") + { + hideInfo2(); + info.hide(); + infotxt.hide(); + gamestate = "running"; + startGame(s_level); + complete; + return; + } + if (gamestate == "Game Over") + { + info.hide(); + infotxt.hide(); + showInfo2(); + s_level = 1; + complete; + return; + } + if (gamestate == "Once Again") + { + s_level = 1; + s_score = 0; + s_lives = 5; + hideInfo2(); + info.hide(); + infotxt.hide(); + gamestate = "running"; + startGame(s_level); + complete; + return; + } + if (move.isRunning()) + { + paused = 1; + move.stop(); + showInfo("Game Paused ... Push Space"); + complete; + return; + } + if (paused == 1) + { + paused = 0; + info.hide(); + infotxt.hide(); + move.start(); + complete; + return; + } + } + else + { + complete; + return; + } + /* if (key == "up" && direction != "d") + { + if (move.isRunning()) + { + direction = "u"; + complete; + return; + } + } + if (key == "down" && direction != "u") + { + if (move.isRunning()) + { + direction = "d"; + complete; + return; + } + } + if (key == "left" && direction != "r") + { + if (move.isRunning()) + { + direction = "l"; + complete; + return; + } + } + if (key == "right" && direction != "l") + { + if (move.isRunning()) + { + direction = "r"; + complete; + return; + } + }*/ + } +} + +startGame (int level) +{ + if (level == 11) level = 10; + + if (wall) delete wall; + wall = new map; + wall.loadMap("level" + integerToString(level)); + bg.setXmlParam("image", "level" + integerToString(level)); + + int n = sammy.getNumItems(); + + for ( int i = 1; i <= n; i++ ) + { + layer newsammy = sammy.enumItem(0); + sammy.removeItem(0); + newsammy.hide(); + } + + currentllama = 0; + t_lives.setText(translate("Lives: ") + integerToString(s_lives)); + t_score.setText(translate("Score: ") + integerToString(s_score)); + t_level.setText(translate("Level: ") + integerToString(s_level) + " [" + integerToString(currentllama) + "/" + integerToString(MAX_LLAMAS) + "]"); + n_sammy = 0; + expn_sammy = 5; + gotkey = 1; + if (level != 8) direction = "r"; + else direction = "u"; + setLlama(); + sammy.removeAll(); + sammy_x.removeAll(); + sammy_y.removeAll(); + sammy0.setXmlParam("x", "180"); + sammy0.setXMLParam("y", "155"); + sammy0.show(); + move.start(); +} + +move.onTimer () +{ + if (n_sammy < expn_sammy) + { + addSammy(); + } + else + { + syncSammy(); + } + + if (direction == "r") + { + setPos(sammy0, 1, 0); + } + else if (direction == "l") + { + setPos(sammy0, -1, 0); + } + else if (direction == "u") + { + setPos(sammy0, 0, -1); + } + else if (direction == "d") + { + setPos(sammy0, 0, 1); + } + checkForWalls (sammy0); + checkForSammy (sammy0); + checkForllama (sammy0); +} + +setPos (layer l, int x, int y) +{ + l.setXMLParam("x", integerToString(l.getGuiX() + x*5)); + l.setXMLParam("y", integerToString(l.getGuiY() + y*5)); + gotkey = 0; +} + +setLlama () +{ + int lx = 5+random(MAX_W-3)*5; + int ly = 20+random(MAX_H-3)*5; + + int x = sammy0.getGuiX(); + int y = sammy0.getGuiY(); + + if ((x == lx || x == lx + 5 || x == lx + 10) && (y == ly || y == ly + 5 || y == ly + 10)) + { + setLlama (); + return; + } + + if (wall.getValue(lx, ly) == 255 || wall.getValue(lx+5, ly) == 255 || wall.getValue(lx+10, ly) == 255 || + wall.getValue(lx, ly+5) == 255 || wall.getValue(lx+5, ly+5) == 255 || wall.getValue(lx+10, ly+5) == 255 || + wall.getValue(lx, ly+10) == 255 || wall.getValue(lx+5, ly+10) == 255 || wall.getValue(lx+10, ly+10) == 255 ) + { + setLlama (); + return; + } + + int n = sammy_x.getNumItems(); + + for ( int i = 0; i < n; i++ ) + { + x = sammy_x.enumItem(i); + y = sammy_y.enumItem(i); + if ((x == lx || x == lx + 5 || x == lx + 10) && (y == ly || y == ly + 5 || y == ly + 10)) + { + setLlama (); + return; + } + } + + if ((x == lx || x == lx + 5 || x == lx + 10) && (y == ly || y == ly + 5 || y == ly + 10)) gotLlama(); + + llama.setXMLParam("x", integerToString(lx)); + llama.setXMLParam("y", integerToString(ly)); + + llama.show(); +} + +addSammy () +{ + int x = sammy0.getGuiX(); + int y = sammy0.getGuiY(); + n_sammy++; + layer newsammy = createSammy(n_sammy, x, y); + sammy.addItem(newsammy); + sammy_x.addItem(x); + sammy_y.addItem(y); + newsammy.setXMLParam("x", integerToString(x)); + newsammy.setXMLParam("y", integerToString(y)); + newsammy.show(); +} + +Layer createSammy (int num, int x, int y) +{ + layer l = new Layer; + l.setXmlParam("id", "sammy" + integerToString(num)); + l.setXmlParam("image", "sammy"); + l.setXMLParam("x", integerToString(x)); + l.setXMLParam("y", integerToString(y)); + l.init(sammys); + return l; +} + +syncSammy () +{ + layer newsammy = sammy.enumItem(0); + sammy.removeItem(0); + sammy_x.removeItem(0); + sammy_y.removeItem(0); + int x = sammy0.getGuiX(); + int y = sammy0.getGuiY(); + newsammy.setXMLParam("x", integerToString(x)); + newsammy.setXMLParam("y", integerToString(y)); + sammy.addItem(newsammy); + sammy_x.addItem(x); + sammy_y.addItem(y); +} + +showInfo (string s) +{ + infotxt.setText(s); + info.show(); + infotxt.show(); +} + +checkForWalls (layer l) +{ + if ( cheat2 == 7 ) return; + int x = l.getGuiX(); + int y = l.getGuiY(); + + if (wall.getValue(x, y) == 255) sammyDies(); +} + +checkForLlama (layer l) +{ + int x = l.getGuiX(); + int y = l.getGuiY(); + + int lx = llama.getGuiX(); + int ly = llama.getGuiY(); + + if ((x == lx || x == lx + 5 || x == lx + 10) && (y == ly || y == ly + 5 || y == ly + 10)) gotLlama(); +} + +checkForSammy (layer l) +{ + if ( cheat == 7 ) return; + int x = l.getGuiX(); + int y = l.getGuiY(); + int n = sammy_x.getNumItems(); + + for ( int i = 0; i < n; i++ ) + { + if (sammy_x.enumItem(i) == x && sammy_y.enumItem(i) == y) + { + sammyDies (); + } + } +} + +sammyDies () +{ + llama.hide(); + move.stop(); + sammy0.hide(); + s_lives--; + s_score -= 1000; + t_lives.setText(translate("Lives: ") + integerToString(s_lives)); + t_score.setText(translate("Score: ") + integerToString(s_score)); + t_level.setText(translate("Level: ") + integerToString(s_level) + " [" + integerToString(currentllama) + "/" + integerToString(MAX_LLAMAS) + "]"); + gamestate = "New Try"; + if (s_lives == 0) { + gamestate = "Game Over"; + } + showInfo ("Sammy Dies! Push Space!"); +} + +gotLlama () +{ + currentllama++; + s_score += 100 * currentllama; + t_score.setText(translate("Score: ") + integerToString(s_score)); + t_level.setText(translate("Level: ") + integerToString(s_level) + " [" + integerToString(currentllama) + "/" + integerToString(MAX_LLAMAS) + "]"); + if (currentllama >= MAX_LLAMAS && cheat3 != 8) + { + move.stop(); + s_level++; + llama.hide(); + gamestate = "Next Level"; + showInfo (translate("Level: ") + integerToString(s_level) + translate(", Push Space")); + } + else + { + expn_sammy += 12; + setLlama(); + } +} + +showInfo2 () +{ + if (evercheat == 0) + { + if (s_score > getPrivateInt("Nibbles", "Personal Best", 0)) + { + setPrivateInt("Nibbles", "Personal Best", s_score); + infotxt2d.setText("Congrats, New Highscore!"); + } + else infotxt2d.setText(translate("Highscore") +": " + integerToString(getPrivateInt("Nibbles", " ", 0))); + } + else + { + infotxt2d.setTExt("You have cheated!"); + } + if (cheat == 0 && cheat2 == 0 && cheat3 ==0) evercheat = 0; + gamestate = "Once Again"; + infotxt2b.setText(translate("Your Score") + ": " + integerToString(s_score)); + info2.show(); + infotxt2a.show(); + infotxt2d.show(); + infotxt2b.show(); + infotxt2c.show(); +} + +hideInfo2 () +{ + info2.hide(); + infotxt2a.hide(); + infotxt2b.hide(); + infotxt2c.hide(); + infotxt2d.hide(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/about/nibbles/nibbles.xml b/Src/resources/skins/Big Bento/about/nibbles/nibbles.xml new file mode 100644 index 00000000..9e0d8d5a --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/nibbles.xml @@ -0,0 +1,52 @@ +<elements> + <bitmap id="sammy" file="../Big Bento/about/nibbles/sammy.png" /> + <bitmap id="level1" file="../Big Bento/about/nibbles/level1.png" /> + <bitmap id="level2" file="../Big Bento/about/nibbles/level2.png" /> + <bitmap id="level3" file="../Big Bento/about/nibbles/level3.png" /> + <bitmap id="level4" file="../Big Bento/about/nibbles/level4.png" /> + <bitmap id="level5" file="../Big Bento/about/nibbles/level5.png" /> + <bitmap id="level6" file="../Big Bento/about/nibbles/level6.png" /> + <bitmap id="level7" file="../Big Bento/about/nibbles/level7.png" /> + <bitmap id="level8" file="../Big Bento/about/nibbles/level8.png" /> + <bitmap id="level9" file="../Big Bento/about/nibbles/level9.png" /> + <bitmap id="level10" file="../Big Bento/about/nibbles/level10.png" /> + <bitmap id="llama" file="../Big Bento/about/nibbles/llama.png" /> + <bitmap id="info" file="../Big Bento/about/nibbles/info.png" /> + <bitmap id="info2" file="../Big Bento/about/nibbles/info2.png" /> + <bitmapfont id="font" file="../Big Bento/about/nibbles/fixedsys.png" charwidth="8" charheight="14" hspacing="0" vspacing="0"/> + +</elements> + +<groupdef id="sammys"> + +</groupdef> + +<groupdef id="nibbles"> + + <rect filled="1" fitparent="1" color="0,0,128" /> + <layer x="0" y="0" h="321" w="371" id="bg" image="level1" move="0" /> + <layer x="0" y="0" id="llama" image="llama" visible="0"/> + <text id="c1" x="4" y="20" w="370" h="14" text="" font="font" align="left" visible="1" alpha="100"/> + <text id="c2" x="4" y="20" w="360" h="14" text="" font="font" align="right" visible="1" alpha="100"/> + <text id="c3" x="4" y="20" w="360" h="14" text="" font="font" align="center" visible="1" alpha="100"/> + + <layer x="0" y="0" h="5" w="5" id="sammy0" image="sammy" visible="0"/> + + <group x="0" y="0" h="321" w="371" id="sammys" move="0" /> + + <layer id="info" x="0" y="0" h="321" w="371" image="info" /> + <text id="infotxt" x="0" y="156" w="371" h="14" text="Level 1, Push Space" font="font" align="center"/> + + <layer id="info2" x="0" y="0" h="321" w="371" image="info2" visible="0" /> + <text id="infotxt2a" x="0" y="120" w="371" h="14" text="G A M E O V E R" font="font" align="center" visible="0"/> + <text id="infotxt2b" x="0" y="150" w="371" h="14" text="Your Score:" font="font" align="center" visible="0"/> + <text id="infotxt2c" x="0" y="192" w="371" h="14" text="To Play Again, Push Space" font="font" align="center" visible="0"/> + <text id="infotxt2d" x="0" y="168" w="371" h="14" text="Personal Best:" font="font" align="center" visible="0"/> + + <text id="score" x="0" y="1" w="371" h="14" text="0" font="font" align="right"/> + <text id="lives" x="0" y="0" w="371" h="14" text="Lives: 5" font="font" align="center"/> + <text id="level" x="0" y="0" w="371" h="14" text="Level 1" font="font" align="left" /> + + <text id="txt" y="130" x="5"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/about/nibbles/sammy.png b/Src/resources/skins/Big Bento/about/nibbles/sammy.png Binary files differnew file mode 100644 index 00000000..1a00a1a5 --- /dev/null +++ b/Src/resources/skins/Big Bento/about/nibbles/sammy.png diff --git a/Src/resources/skins/Big Bento/screenshot.png b/Src/resources/skins/Big Bento/screenshot.png Binary files differnew file mode 100644 index 00000000..1ac656a8 --- /dev/null +++ b/Src/resources/skins/Big Bento/screenshot.png diff --git a/Src/resources/skins/Big Bento/scripts/albumart.m b/Src/resources/skins/Big Bento/scripts/albumart.m new file mode 100644 index 00000000..f188973d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/albumart.m @@ -0,0 +1,135 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: albumart.m +Version: 1.1 + +Type: maki +Date: 20. Sep. 2007 - 16:54 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/com/songinfo.m> + +#define WEBCOVER_SHOUTCAST "winamp.cover.shoutcast" + +Function loadFileInfo(); +//Function loadPlaylistArtWork(); + +Global Int plArtRetries = 0; +Global Group scriptGroup; +Global AlbumArtLayer l_albumart; +Global String notfoundImage = "winamp.cover.notfound.xxl"; + +System.onScriptLoaded () +{ + scriptGroup = getScriptGroup(); + l_albumart = scriptGroup.findObject(getToken(getParam(), ",", 0)); + notfoundImage = getToken(getParam(), ",", 1); + loadFileInfo(); +} + +l_albumart.onRightButtonDown (int x, int y) +{ + popupmenu p = new popupmenu; + + p.addCommand("Refresh Album Art", 1, 0, 0); + String path = getPath(getPlayItemMetaDataString("filename")); + if(path != "") + { + p.addCommand("Open Folder", 2, 0, 0); + } + + int result = p.popatmouse(); + delete p; + + if (result == 1) + { + l_albumart.refresh(); + } + else if (result == 2) + { + if(path != "") + { + System.navigateUrl(path); + } + else + { + String url = getPlayItemMetaDataString("streamurl"); + if(url != "") + { + System.navigateUrl(url); + } + } + } +} + +l_albumart.onLeftButtonDblClk (int x, int y) +{ + String path = getPath(getPlayItemMetaDataString("filename")); + if(path != "") + { + System.navigateUrl(path); + } + else + { + String url = getPlayItemMetaDataString("streamurl"); + if(url != "") + { + System.navigateUrl(url); + } + } +} + +loadFileInfo () +{ + songinfo_reload(); // refresh vars + plArtRetries = 0; + l_albumart.setXMLParam("notfoundImage", notfoundImage); + + //debugInt(songinfo_isStream); + if (songinfo_isStream) + { + // setCover either from a supplied url or from in-stream artwork or default to a generic image + if (songinfo_streamAlbumArt != "") + { + l_albumart.setXMLParam("image", songinfo_streamAlbumArt); + l_albumart.setXMLParam("notfoundImage", notfoundImage); + } + + if(songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST || songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST2) + { + if(songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST2) + { + if(l_albumart.isInvalid() && plArtRetries < 5) + { + if(!plArtRetries) + { + l_albumart.setXMLParam("notfoundImage", WEBCOVER_SHOUTCAST); + } + plArtRetries += 1; + l_albumart.refresh(); + } + } + else + { + l_albumart.setXMLParam("notfoundImage", WEBCOVER_SHOUTCAST); + } + } + } +} + +// Hide branding of we start playback +System.onPlay () +{ + loadFileInfo(); +} + +System.onTitleChange (String newtitle) +{ + loadFileInfo(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/albumart.maki b/Src/resources/skins/Big Bento/scripts/albumart.maki Binary files differnew file mode 100644 index 00000000..f9248813 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/albumart.maki diff --git a/Src/resources/skins/Big Bento/scripts/attribs/gen_pageguids.m b/Src/resources/skins/Big Bento/scripts/attribs/gen_pageguids.m new file mode 100644 index 00000000..502df012 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/gen_pageguids.m @@ -0,0 +1,106 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: gen_pageguids.m +Version: 1.0 + +Type: maki/page guid definitions +Date: 03. Jul. 2006 - 18:29 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#ifndef __GEN_PAGEGUIDS_M +#define __GEN_PAGEGUIDS_M + +#include <lib/config.mi> + +Function initPages(); + +/*--NON CHANGEABLE GUIDS:--------------------------*/ + +// this is the page that maps its items to the options menu, you can add attribs or more pages (submenus) +#define CUSTOM_OPTIONSMENU_ITEMS "{1828D28F-78DD-4647-8532-EBA504B8FC04}" +Global ConfigItem optionsmenu_page; + +// this is the page that maps its items to the windows menu (aka View), you can add attribs or more pages (submenus) +#define CUSTOM_WINDOWSMENU_ITEMS "{6559CA61-7EB2-4415-A8A9-A2AEEF762B7F}" +Global ConfigItem custom_windows_page; + +// non exposed attribs page +#define CUSTOM_PAGE_NONEXPOSED "{E9C2D926-53CA-400f-9A4D-85E31755A4CF}" +Global ConfigItem custom_page_nonexposed; + + +/*--DECLARE PAGES HERE:----------------------------*/ + +initPages() +{ + +#ifndef __PAGES +#define __PAGES + + custom_page_nonexposed = Config.newItem("Hidden", CUSTOM_PAGE_NONEXPOSED); + + // load up the cfgpage in which we'll insert our custom page + optionsmenu_page = Config.getItem(CUSTOM_OPTIONSMENU_ITEMS); + + custom_windows_page = Config.getItem(CUSTOM_WINDOWSMENU_ITEMS); + +#endif + +} + +/*--GLOBAL DEFINITIONS:----------------------------*/ + +#define NOOFF if (getData()=="0") { setData("1"); return; } +Global Int attribs_mychange, attribs_mychange2; + +Global ConfigAttribute sep; +Global Int sep_count = 0; + +Function addMenuSeparator(ConfigItem cfgmenupage); + +addMenuSeparator(ConfigItem cfgmenupage) +{ +#ifdef MAIN_ATTRIBS_LOADER + + sep_count = sep_count + 1; + sep = cfgmenupage.newAttribute(getSkinName() + "seperator" + integerToString(sep_count), ""); + sep.setData("-"); + +#endif +} + +Function ConfigItem addConfigSubMenu(configitem parent, string name, string guid); + +ConfigItem addConfigSubMenu(configitem parent, string name, string guid) +{ + ConfigItem __ret = Config.newItem(name, guid); + ConfigAttribute __dret = parent.newAttribute(name, ""); + __dret.setData(guid); + return __ret; +} + + +Function toggleAttrib(ConfigAttribute attrib); + +toggleAttrib(ConfigAttribute attrib) +{ + if (attrib.getData() == "0") + { + attrib.setData("1"); + } + else + { + attrib.setData("0"); + } +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_Autoresize.m b/Src/resources/skins/Big Bento/scripts/attribs/init_Autoresize.m new file mode 100644 index 00000000..9a7bbdf8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_Autoresize.m @@ -0,0 +1,92 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_Autoresize.m +Version: 1.1 + +Type: maki/attrib definitions +Date: 23. Jan. 2008 - 20:31 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/maximize.m + scripts/videoresize.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + + +Function initAttribs_Autoresize(); + + +#define CUSTOM_PAGE_RESIZE "{E704AB5A-108E-4309-B54B-43EBA5C0C3AA}" + +Global ConfigAttribute sui_autorsize_attrib, link_w_attrib, titlebar_dblclk_max_attib, titlebar_dblclk_shade_attib, collapse_top_attrib, collapse_bottom_attrib; +Global ConfigAttribute video_inframe_attrib; + +initAttribs_Autoresize() +{ + initPages(); + + ConfigItem custom_page_autoresize = addConfigSubMenu(optionsmenu_page, "Window Sizing", CUSTOM_PAGE_RESIZE); + + sui_autorsize_attrib = custom_page_autoresize.newAttribute("Autoresize Main Window if maximized", "0"); + link_w_attrib = custom_page_autoresize.newAttribute("Link shade and player width", "1"); + addMenuSeparator(custom_page_autoresize); + video_inframe_attrib = custom_page_autoresize.newAttribute("Enable Video in Window resizing", "0"); + addMenuSeparator(custom_page_autoresize); + titlebar_dblclk_shade_attib = custom_page_autoresize.newAttribute("Switch to Shade on Titlebar Doubleclick", "1"); + titlebar_dblclk_max_attib = custom_page_autoresize.newAttribute("Maximize Window on Titlebar Doubleclick", "0"); + addMenuSeparator(custom_page_autoresize); + collapse_top_attrib = custom_page_autoresize.newAttribute("Collapse Window to Top", "1"); + collapse_bottom_attrib = custom_page_autoresize.newAttribute("Collapse Window to Bottom", "0"); +} + +#ifdef MAIN_ATTRIBS_MGR + +titlebar_dblclk_shade_attib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + if (getData() == "1") titlebar_dblclk_max_attib.setData("0"); + if (getData() == "0") titlebar_dblclk_max_attib.setData("1"); + attribs_mychange = 0; +} +titlebar_dblclk_max_attib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + if (getData() == "1") titlebar_dblclk_shade_attib.setData("0"); + if (getData() == "0") titlebar_dblclk_shade_attib.setData("1"); + attribs_mychange = 0; +} + +collapse_bottom_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + if (getData() == "1") collapse_top_attrib.setData("0"); + if (getData() == "0") collapse_top_attrib.setData("1"); + attribs_mychange = 0; +} +collapse_top_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + if (getData() == "1") collapse_bottom_attrib.setData("0"); + if (getData() == "0") collapse_bottom_attrib.setData("1"); + attribs_mychange = 0; +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_appearance.m b/Src/resources/skins/Big Bento/scripts/attribs/init_appearance.m new file mode 100644 index 00000000..29419bd9 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_appearance.m @@ -0,0 +1,63 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_appearance.m +Version: 2.2 + +Type: maki/attrib definitions +Date: 28. Jun. 2007 - 22:08 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/mainmenu.maki + scripts/visualizer.maki + scripts/beatvisualization.maki + scripts/shadesize.maki + scripts/mcvcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + +Function initAttribs_Appearance(); + +#define CUSTOM_PAGE_APPEARANCE "{F1036C9C-3919-47ac-8494-366778CF10F9}" + +Global ConfigAttribute vis_reflection_attrib; +Global ConfigAttribute timer_reflection_attrib; +Global ConfigAttribute menubar_main_attrib; +Global configAttribute beatvis_attrib; +//Global configAttribute artist_info_buttons_attrib; +Global ConfigAttribute pl_tab_attrib; +Global ConfigItem custom_page_appearance; + +initAttribs_Appearance() +{ + + initPages(); + + custom_page_appearance = addConfigSubMenu(optionsmenu_page, "Appearance", CUSTOM_PAGE_APPEARANCE); + + menubar_main_attrib = custom_page_appearance.newAttribute("Show Main Window Menu", "1"); + + addMenuSeparator(custom_page_appearance); + + vis_reflection_attrib = custom_page_appearance.newAttribute("Show Visualizer Reflection", "1"); + timer_reflection_attrib = custom_page_appearance.newAttribute("Show Timer Reflection", "1"); + + addMenuSeparator(custom_page_appearance); + + //artist_info_buttons_attrib = custom_page_appearance.newAttribute("Show Artist-Information Buttons", "0"); + pl_tab_attrib = custom_page_appearance.newAttribute("Show Playlist Tab", "0"); + + addMenuSeparator(custom_page_appearance); + + beatvis_attrib = custom_page_appearance.newAttribute("Enable Beat Visualization", "1"); + +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_browser.m b/Src/resources/skins/Big Bento/scripts/attribs/init_browser.m new file mode 100644 index 00000000..3171f64c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_browser.m @@ -0,0 +1,133 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_browser.m +Version: 1.1 + +Type: maki/attrib definitions +Date: 27. Jul. 2007 - 13:36 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/browser.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + +#define CUSTOM_PAGE_BROWSER "{0E17DBEA-9398-49e6-AE6F-3AB17D001DF3}" +#define CUSTOM_PAGE_BROWSER_WASEARCH "{180E87DF-C482-41fe-A570-8575C673E1BA}" +#define CUSTOM_PAGE_BROWSER_CONCERTSEARCH "{B8171DB3-ECF6-40c6-9332-DDEA57A8F13E}" + +Function initAttribs_browser(); + +Class ConfigAttribute SearchAttribute; +Function check (string unknown, SearchAttribute compare); + +#ifdef BROWSER_SCRIPT +Global list SearchAttributeList; +#endif +#ifndef BROWSER_SCRIPT +#define SearchAttributeList // +#endif + +Global ConfigAttribute browser_scr_show_attrib, browser_search_attrib; +Global SearchAttribute browser_search_winamp_mskins_attrib, browser_search_winamp_cskins_attrib, browser_search_winamp_plugins_attrib, + browser_search_winamp_web_attrib, browser_search_wiki_attrib, browser_c_pollstar_attrib, browser_c_bit_attrib, + browser_c_jambase_attrib; + +initAttribs_browser() +{ + initPages(); + + ConfigItem custom_page_browser = addConfigSubMenu(optionsmenu_page, "Browser", CUSTOM_PAGE_BROWSER); + + browser_search_attrib = custom_page_nonexposed.newAttribute("Onesie browser Quicksearch", "Web Search"); + + SearchAttributeList = new List; + SearchAttributeList.addItem (custom_page_browser); + + browser_search_winamp_web_attrib = custom_page_browser.newAttribute("Web Search", "1"); + SearchAttributeList.addItem (browser_search_winamp_web_attrib); + + browser_search_wiki_attrib = custom_page_browser.newAttribute("Wikipedia Search", "0"); + SearchAttributeList.addItem (browser_search_wiki_attrib); + + ConfigItem custom_page_browser_concertsearch = addConfigSubMenu(custom_page_browser, "Concert Search", CUSTOM_PAGE_BROWSER_CONCERTSEARCH); + + browser_c_jambase_attrib = custom_page_browser_concertsearch.newAttribute("JamBase", "0"); + SearchAttributeList.addItem (browser_c_jambase_attrib); + + browser_c_pollstar_attrib = custom_page_browser_concertsearch.newAttribute("Pollstar", "0"); + SearchAttributeList.addItem (browser_c_pollstar_attrib); + + browser_c_bit_attrib = custom_page_browser_concertsearch.newAttribute("Bandsintown", "0"); + SearchAttributeList.addItem (browser_c_bit_attrib); + + ConfigItem custom_page_browser_winampsearch = addConfigSubMenu(custom_page_browser, "Winamp Search", CUSTOM_PAGE_BROWSER_WASEARCH); + browser_search_winamp_mskins_attrib = custom_page_browser_winampsearch.newAttribute("Modern Skins", "0"); + SearchAttributeList.addItem (browser_search_winamp_mskins_attrib); + browser_search_winamp_cskins_attrib = custom_page_browser_winampsearch.newAttribute("Classic Skins", "0"); + SearchAttributeList.addItem (browser_search_winamp_cskins_attrib); + browser_search_winamp_plugins_attrib = custom_page_browser_winampsearch.newAttribute("Plug-ins", "0"); + SearchAttributeList.addItem (browser_search_winamp_plugins_attrib); + + addMenuSeparator(custom_page_browser); + + browser_scr_show_attrib = custom_page_browser.newAttribute("Show Media Monitor", "1"); + +} + +#ifdef MAIN_ATTRIBS_MGR + +browser_search_attrib.onDataChanged () +{ + if (attribs_mychange) return; + string dta = getData(); + if (dta == "Modern Skins") browser_search_winamp_mskins_attrib.setData("1"); + else if (dta == "Classic Skins") browser_search_winamp_plugins_attrib.setData("1"); + else if (dta == "Plug-ins") browser_search_winamp_plugins_attrib.setData("1"); + else if (dta == "Web Search with Google") browser_search_winamp_web_attrib.setData("1"); + else if (dta == "Pollstar") browser_c_pollstar_attrib.setData("1"); + else if (dta == "Bands in Town") browser_c_bit_attrib.setData("1"); + else if (dta == "JamBase") browser_c_jambase_attrib.setData("1"); + else if (dta == "Wikipedia Search") browser_search_wiki_attrib.setData("1"); +} + +SearchAttribute.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + String s = SearchAttribute.getAttributeName(); + check (s, browser_search_winamp_mskins_attrib); + check (s, browser_search_winamp_cskins_attrib); + check (s, browser_search_winamp_plugins_attrib); + check (s, browser_search_winamp_web_attrib); + check (s, browser_c_jambase_attrib); + check (s, browser_c_bit_attrib); + check (s, browser_c_pollstar_attrib); + check (s, browser_search_wiki_attrib); + + attribs_mychange = 0; +} + +check (String unknown, SearchAttribute compare) +{ + if (unknown == compare.getAttributeName()) + { + browser_search_attrib.setData(compare.getAttributeName()); + } + else + { + compare.setData("0"); + } +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_notifier.m b/Src/resources/skins/Big Bento/scripts/attribs/init_notifier.m new file mode 100644 index 00000000..82435b38 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_notifier.m @@ -0,0 +1,327 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_notifier.m + +Type: maki/attrib definitions +Version: 1.1 +Date: 12. Jul. 2006 - 16:15 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + wasabi/notifier/notifier.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + + +Function initAttribs_notifier(); + + +#define CUSTOM_PAGE_NOTIFIER "{1AB968B3-8687-4a35-BA70-FCF6D92FB57F}" + +#define CUSTOM_PAGE_NOTIFIER_AA "{7BF45B05-2B98-4de8-8778-E5CCC9639ED1}" + +#define CUSTOM_PAGE_NOTIFIER_LOC "{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97}" + +#define CUSTOM_PAGE_NOTIFIER_FDIN "{D9891A39-7A38-45d8-9D51-A08F7270C836}" + +#define CUSTOM_PAGE_NOTIFIER_FDOUT "{560EAE41-1379-4927-AC55-FB5F4D47C9B8}" + + +Global ConfigAttribute notifier_minimized_attrib; +Global ConfigAttribute notifier_always_attrib; +Global ConfigAttribute notifier_never_attrib; +Global ConfigAttribute notifier_fadeintime_attrib; +Global ConfigAttribute notifier_fadeouttime_attrib; +Global ConfigAttribute notifier_holdtime_attrib; +Global ConfigAttribute notifier_hideinfullscreen_attrib; +Global ConfigAttribute notifier_windowshade_attrib; + +//Global ConfigAttribute notifier_opennowplaying_attrib; +Global ConfigAttribute notifier_artworkinnotification_attrib; + +Global ConfigAttribute notifier_fdout_alpha; +Global ConfigAttribute notifier_fdout_hslide; +Global ConfigAttribute notifier_fdout_vslide; + +Global ConfigAttribute notifier_fdin_alpha; +Global ConfigAttribute notifier_fdin_hslide; +Global ConfigAttribute notifier_fdin_vslide; + +Global ConfigAttribute notifier_loc_br_attrib; +Global ConfigAttribute notifier_loc_bl_attrib; +Global ConfigAttribute notifier_loc_tr_attrib; +Global ConfigAttribute notifier_loc_tl_attrib; +Global ConfigAttribute notifier_loc_bc_attrib; +Global ConfigAttribute notifier_loc_tc_attrib; + +Global ConfigAttribute notifier_loc_vport_attrib; +Global ConfigAttribute notifier_loc_monitor_attrib; + + +initAttribs_notifier() +{ + initPages(); + + ConfigItem custom_page_notifier = addConfigSubMenu(optionsmenu_page, "Notifications", CUSTOM_PAGE_NOTIFIER); + + notifier_always_attrib = custom_page_notifier.newAttribute("Show always", "1"); + notifier_windowshade_attrib = custom_page_notifier.newAttribute("Show with windowshade and when minimized", "0"); + notifier_minimized_attrib = custom_page_notifier.newAttribute("Show only when minimized", "0"); + notifier_minimized_attrib = custom_page_notifier.newAttribute("Show only when minimized", "0"); + notifier_never_attrib = custom_page_notifier.newAttribute("Never show", "0"); + addMenuSeparator(custom_page_notifier); + + ConfigItem custom_page_notifier_loc = addConfigSubMenu(custom_page_notifier, "Location", CUSTOM_PAGE_NOTIFIER_LOC); + + ConfigItem custom_page_notifier_fdin = addConfigSubMenu(custom_page_notifier, "Fade In Effect", CUSTOM_PAGE_NOTIFIER_FDIN); + + ConfigItem custom_page_notifier_fdout = addConfigSubMenu(custom_page_notifier, "Fade Out Effect", CUSTOM_PAGE_NOTIFIER_FDOUT); + + addMenuSeparator(custom_page_notifier); + notifier_hideinfullscreen_attrib = custom_page_notifier.newAttribute("Disable in fullscreen", "1"); + addMenuSeparator(custom_page_notifier); + //notifier_opennowplaying_attrib = custom_page_notifier.newAttribute("Open Now Playing on Click", "1"); + sep = custom_page_notifier.newAttribute("sep333", ""); sep.setData("-"); + notifier_artworkinnotification_attrib = custom_page_notifier.newAttribute("Show Now Playing Artwork", "1"); + + notifier_fadeintime_attrib = custom_page_nonexposed.newAttribute("Notifications fade in time", "1000"); + notifier_fadeouttime_attrib = custom_page_nonexposed.newAttribute("Notifications fade out time", "5000"); + notifier_holdtime_attrib = custom_page_nonexposed.newAttribute("Notifications display time", "2000"); + + +// Notifications > Location + notifier_loc_bl_attrib = custom_page_notifier_loc.newAttribute("Bottom Left", "0"); + notifier_loc_bc_attrib = custom_page_notifier_loc.newAttribute("Bottom Center", "0"); + notifier_loc_br_attrib = custom_page_notifier_loc.newAttribute("Bottom Right", "1"); + notifier_loc_tl_attrib = custom_page_notifier_loc.newAttribute("Top Left", "0"); + notifier_loc_tc_attrib = custom_page_notifier_loc.newAttribute("Top Center", "0"); + notifier_loc_tr_attrib = custom_page_notifier_loc.newAttribute("Top Right", "0"); + addMenuSeparator(custom_page_notifier_loc); + notifier_loc_vport_attrib = custom_page_notifier_loc.newAttribute("Relative to Viewport", "1"); + notifier_loc_monitor_attrib = custom_page_notifier_loc.newAttribute("Relative to Monitor", "0"); + +// Notifications > Fade... + notifier_fdout_alpha = custom_page_notifier_fdout.newAttribute("Alpha Fade ", "1"); + notifier_fdout_vslide = custom_page_notifier_fdout.newAttribute("Vertical Slide ", "0"); + notifier_fdout_hslide = custom_page_notifier_fdout.newAttribute("Horizontal Slide ", "0"); + + // Martin> We need a additional spacer for the last 3 attribs, so we won't cross withe the 3 below in studio.xnf + + notifier_fdin_alpha = custom_page_notifier_fdin.newAttribute("Alpha Fade", "1"); + notifier_fdin_vslide = custom_page_notifier_fdin.newAttribute("Vertical Slide", "0"); + notifier_fdin_hslide = custom_page_notifier_fdin.newAttribute("Horizontal Slide", "0"); + +} + +#ifdef MAIN_ATTRIBS_MGR + +notifier_always_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_never_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_always_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_minimized_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_always_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_windowshade_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_always_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_fdout_alpha.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdout_hslide.setData("0"); + notifier_fdout_vslide.setData("0"); + attribs_mychange = 0; +} + +notifier_fdout_hslide.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdout_alpha.setData("0"); + notifier_fdout_vslide.setData("0"); + attribs_mychange = 0; +} + +notifier_fdout_vslide.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdout_hslide.setData("0"); + notifier_fdout_alpha.setData("0"); + attribs_mychange = 0; +} + +notifier_fdin_alpha.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdin_hslide.setData("0"); + notifier_fdin_vslide.setData("0"); + attribs_mychange = 0; +} + +notifier_fdin_hslide.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdin_alpha.setData("0"); + notifier_fdin_vslide.setData("0"); + attribs_mychange = 0; +} + +notifier_fdin_vslide.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_fdin_hslide.setData("0"); + notifier_fdin_alpha.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_br_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_bl_attrib.setData("0"); + notifier_loc_tr_attrib.setData("0"); + notifier_loc_tl_attrib.setData("0"); + notifier_loc_tc_attrib.setData("0"); + notifier_loc_bc_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_bl_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_br_attrib.setData("0"); + notifier_loc_tr_attrib.setData("0"); + notifier_loc_tl_attrib.setData("0"); + notifier_loc_tc_attrib.setData("0"); + notifier_loc_bc_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_tl_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_bl_attrib.setData("0"); + notifier_loc_tr_attrib.setData("0"); + notifier_loc_br_attrib.setData("0"); + notifier_loc_tc_attrib.setData("0"); + notifier_loc_bc_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_tr_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_bl_attrib.setData("0"); + notifier_loc_br_attrib.setData("0"); + notifier_loc_tl_attrib.setData("0"); + notifier_loc_tc_attrib.setData("0"); + notifier_loc_bc_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_tc_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_bl_attrib.setData("0"); + notifier_loc_br_attrib.setData("0"); + notifier_loc_tl_attrib.setData("0"); + notifier_loc_tr_attrib.setData("0"); + notifier_loc_bc_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_bc_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_bl_attrib.setData("0"); + notifier_loc_br_attrib.setData("0"); + notifier_loc_tl_attrib.setData("0"); + notifier_loc_tc_attrib.setData("0"); + notifier_loc_tr_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_vport_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_monitor_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_loc_monitor_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_loc_vport_attrib.setData("0"); + attribs_mychange = 0; +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_playlist.m b/Src/resources/skins/Big Bento/scripts/attribs/init_playlist.m new file mode 100644 index 00000000..5c8f0e4d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_playlist.m @@ -0,0 +1,39 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_playlist.m +Version: 1.0 + +Type: maki/attrib definitions +Date: 23. Okt. 2006 - 16:58 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + config/configsystem.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + +#define COSTUM_PAGE_PLAYLIST "{0167CFD9-5D35-404a-8F03-80ED5B89DEDF}" + + +Function initAttribs_playlist(); + +Global ConfigAttribute playlist_enlarge_attrib; +Global ConfigAttribute playlist_cover_attrib; + +initAttribs_Playlist() +{ + initPages(); + + ConfigItem playlist_parent = addConfigSubMenu(optionsmenu_page, "Playlist", COSTUM_PAGE_PLAYLIST); + playlist_enlarge_attrib = playlist_parent.newAttribute("Enlarge Playlist", "1"); + playlist_cover_attrib = playlist_parent.newAttribute("Show Album Art if Playlist is enlarged", "1"); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_songticker.m b/Src/resources/skins/Big Bento/scripts/attribs/init_songticker.m new file mode 100644 index 00000000..c7e96f3f --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_songticker.m @@ -0,0 +1,82 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_songticker.m +Version: 1.0 + +Type: maki/attrib definitions +Date: 01. Sep. 2007 - 01:10 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/songticker.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + +Function initAttribs_Songticker(); + +Class ConfigAttribute ScrollingAttribute; + +#define CUSTOM_PAGE_SONGTICKER "{7061FDE0-0E12-11D8-BB41-0050DA442EF4}" + + +Global ScrollingAttribute songticker_scrolling_disabled_attrib; +Global ScrollingAttribute songticker_style_modern_attrib; +Global ScrollingAttribute songticker_style_old_attrib; + + +initAttribs_Songticker() +{ + + initPages(); + + ConfigItem custom_page_songticker = addConfigSubMenu(optionsmenu_page, "Songticker", CUSTOM_PAGE_SONGTICKER); + + songticker_scrolling_disabled_attrib = custom_page_songticker.newAttribute("Disable Songticker Scrolling", "0"); + songticker_style_modern_attrib = custom_page_songticker.newAttribute("Modern Songticker Scrolling", "1"); + songticker_style_old_attrib = custom_page_songticker.newAttribute("Classic Songticker Scrolling", "0"); + +} + +#ifdef MAIN_ATTRIBS_MGR + + +songticker_scrolling_disabled_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_style_modern_attrib.setData("0"); + songticker_style_old_attrib.setData("0"); + attribs_mychange = 0; +} + + +songticker_style_old_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_style_modern_attrib.setData("0"); + songticker_scrolling_disabled_attrib.setData("0"); + attribs_mychange = 0; +} +songticker_style_modern_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_scrolling_disabled_attrib.setData("0"); + songticker_style_old_attrib.setData("0"); + attribs_mychange = 0; +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_vis.m b/Src/resources/skins/Big Bento/scripts/attribs/init_vis.m new file mode 100644 index 00000000..55aa0c61 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_vis.m @@ -0,0 +1,80 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_vis.m +Version: 1.0 + +Type: maki/attrib definitions +Date: 03. Nov. 2006 - 18:12 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + + +Function initAttribs_vis(); + +Global ConfigAttribute vis_lefttoplayer_attrib, vis_inbig_attrib, vis_lefttoplayer_full_attrib; + +#define CUSTOM_PAGE_VIS "{090B63DE-FD24-4528-ABE5-A522615E8AE9}" + + +initAttribs_vis() +{ + initPages(); + + // System.isSafeMode() is not recognized by mc.exe + // if (!System.isSafeMode()) + // { + ConfigItem vis_parent = addConfigSubMenu(optionsmenu_page, "Visualization", CUSTOM_PAGE_VIS); + + vis_inbig_attrib = vis_parent.newAttribute("Open in Big Component View", "1"); + vis_lefttoplayer_full_attrib = vis_parent.newAttribute("Open in Multi Content View (stretched)", "0"); + vis_lefttoplayer_attrib = vis_parent.newAttribute("Open in Multi Content View (mini)", "0"); + // } +} + +#ifdef MAIN_ATTRIBS_MGR + +vis_lefttoplayer_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + vis_inbig_attrib.setData("0"); + vis_lefttoplayer_full_attrib.setData("0"); + attribs_mychange = 0; +} + +vis_inbig_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + vis_lefttoplayer_attrib.setData("0"); + vis_lefttoplayer_full_attrib.setData("0"); + attribs_mychange = 0; +} + +vis_lefttoplayer_full_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + vis_lefttoplayer_attrib.setData("0"); + vis_inbig_attrib.setData("0"); + attribs_mychange = 0; +} + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/attribs/init_windowpage.m b/Src/resources/skins/Big Bento/scripts/attribs/init_windowpage.m new file mode 100644 index 00000000..17a9eb0d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/attribs/init_windowpage.m @@ -0,0 +1,309 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: init_windowpage.m +Version: 1.1 + +Type: maki/attrib definitions +Date: 08. Jul. 2006 - 17:28 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/mcvcompcore.maki + scripts/suicore.maki + scripts/browser.maki + scripts/fileinfo.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + +//#define DOHIDEMCV +//#define IC_COVERFLOW + + +#define CUSTOM_PAGE_FILEINFO "{6A619628-6A91-46e3-A3F3-5C1B2D93DF4F}" + +Function initAttribs_windowpage(); + +Global ConfigAttribute sui_browser_attrib, sui_eq_attrib, sui_config_attrib; +Global ConfigAttribute ic_fileinfo, ic_cover_fileinfo, ic_vis, ic_vis_fileinfo, ic_hidden, ic_eq, ic_config, _plsc_ic_attrib; +#ifdef IC_COVERFLOW +Global ConfigAttribute _cflow_ic_attrib; +#else +#define _cflow_ic_attrib // +#endif + +#ifdef DOHIDEMCV +Global ConfigAttribute ic_hidden; +#endif +Global ConfigItem custom_page_fileinfo; + +#ifndef DOHIDEMCV +#define ic_hidden // +#endif + +#define CUSTOM_PAGE_INFOCOMP "{8D3829F9-5790-4c8e-9C3A-C397D3602FF9}" +Class ConfigAttribute InfoLineAttribute; +Global InfoLineAttribute infocomp_show_rating, infocomp_show_genre, infocomp_show_year, infocomp_show_track, infocomp_show_publisher, infocomp_show_composer, infocomp_show_albumartist, infocomp_show_format, infocomp_show_disc; +Global ConfigAttribute infocomp_cycle, infocomp_nowplaying, infocomp_browser; + +initAttribs_windowpage() +{ + initPages(); + + sui_eq_attrib = custom_windows_page.newAttribute("Equalizer\tAlt+G", "0"); + // sui_browser_attrib = custom_windows_page.newAttribute("Web Browser\tAlt+X", "0"); + sui_config_attrib = custom_windows_page.newAttribute("Skin Settings\tAlt+C", "0"); + + custom_page_fileinfo = addConfigSubMenu(optionsmenu_page, "Multi Content View", CUSTOM_PAGE_FILEINFO); + + ic_fileinfo = custom_page_fileinfo.newAttribute("File Info", "1"); + _cflow_ic_attrib = custom_page_fileinfo.newAttribute("Cover Flow", "0"); + ic_vis = custom_page_fileinfo.newAttribute("Visualization ", "0"); + _plsc_ic_attrib = custom_page_fileinfo.newAttribute("Stored Playlists", "0"); + ic_eq = custom_page_fileinfo.newAttribute("Equalizer", sui_eq_attrib.getData()); + ic_config = custom_page_fileinfo.newAttribute("Skin Settings", sui_config_attrib.getData()); +#ifdef DOHIDEMCV + ic_hidden = custom_page_fileinfo.newAttribute("Hide Multi Content View", "0"); +#endif + addMenuSeparator(custom_page_fileinfo); + ConfigItem fileinfo_parent = addConfigSubMenu(custom_page_fileinfo, "File Info Components", CUSTOM_PAGE_INFOCOMP); + + ic_vis_fileinfo = fileinfo_parent.newAttribute("Visualization ", "0"); + ic_cover_fileinfo = fileinfo_parent.newAttribute("Album Art", "1"); + addMenuSeparator(fileinfo_parent); + infocomp_show_track = fileinfo_parent.newAttribute("Show Track #", "1"); + infocomp_show_year = fileinfo_parent.newAttribute("Show Year", "1"); + infocomp_show_genre = fileinfo_parent.newAttribute("Show Genre", "1"); + infocomp_show_disc = fileinfo_parent.newAttribute("Show Disc", "1"); + infocomp_show_albumartist = fileinfo_parent.newAttribute("Show Album Artist", "1"); + infocomp_show_composer = fileinfo_parent.newAttribute("Show Composer", "1"); + infocomp_show_publisher = fileinfo_parent.newAttribute("Show Publisher", "1"); + infocomp_show_format = fileinfo_parent.newAttribute("Show Decoder", "1"); + infocomp_show_rating = fileinfo_parent.newAttribute("Show Song Rating", "1"); + addMenuSeparator(fileinfo_parent); + infocomp_cycle = fileinfo_parent.newAttribute("Cycle File Info", "1"); + addMenuSeparator(fileinfo_parent); + //infocomp_nowplaying = fileinfo_parent.newAttribute("Open Links in Now Playing", "1"); + //infocomp_browser = fileinfo_parent.newAttribute("Open Links in Browser", "0"); +} + +#ifdef MAIN_ATTRIBS_MGR +System.onKeyDown(String key) { + if (key == "alt+x") + { + if (sui_browser_attrib.getData() == "0") sui_browser_attrib.setData("1"); + else sui_browser_attrib.setData("0"); + complete; + } + /*if (key == "alt+n") + { + if (sui_browser_attrib.getData() == "0") sui_browser_attrib.setData("1"); + else sui_browser_attrib.setData("0"); + complete; + }*/ + /*if (key == "alt+c") + { + if (sui_cover_attrib.getData() == "0") sui_cover_attrib.setData("1"); + else sui_cover_attrib.setData("0"); + complete; + }*/ + if (key == "alt+c") + { + if (sui_config_attrib.getData() == "0") sui_config_attrib.setData("1"); + else sui_config_attrib.setData("0"); + complete; + } + if (key == "alt+g") + { + if (sui_eq_attrib.getData() == "0") sui_eq_attrib.setData("1"); + else sui_eq_attrib.setData("0"); + complete; + } + /*if (key == "ctrl+f") { + navigateUrl(getPath(getPlayItemString())); + complete; + }*/ +} + +ic_fileinfo.onDataChanged() +{ + //debugString("ic_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_vis.setData("0"); + ic_eq.setData("0"); + ic_config.setData("0"); + _plsc_ic_attrib.setData("0"); + _cflow_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +ic_vis.onDataChanged() +{ + //debugString("ic_vis.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_fileinfo.setData("0"); + ic_eq.setData("0"); + ic_config.setData("0"); + _plsc_ic_attrib.setData("0"); + _cflow_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +ic_eq.onDataChanged() +{ + if (!attribs_mychange) + { + attribs_mychange = 1; + sui_eq_attrib.setData(getData()); + if (getData() == "1") sui_config_attrib.setData("0"); + attribs_mychange = 0; + } + //debugString("ic_vis_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_fileinfo.setData("0"); + ic_vis.setData("0"); + ic_config.setData("0"); + _plsc_ic_attrib.setData("0"); + _cflow_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +ic_config.onDataChanged() +{ + if (!attribs_mychange) + { + attribs_mychange = 1; + sui_config_attrib.setData(getData()); + if (getData() == "1") sui_eq_attrib.setData("0"); + attribs_mychange = 0; + } + //debugString("ic_vis_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_fileinfo.setData("0"); + ic_vis.setData("0"); + ic_eq.setData("0"); + _plsc_ic_attrib.setData("0"); + _cflow_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +_plsc_ic_attrib.onDataChanged() +{ + //debugString("ic_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_vis.setData("0"); + ic_eq.setData("0"); + ic_config.setData("0"); + ic_fileinfo.setData("0"); + _cflow_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +#ifdef IC_COVERFLOW + +_cflow_ic_attrib.onDataChanged() +{ + //debugString("ic_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_vis.setData("0"); + ic_eq.setData("0"); + ic_config.setData("0"); + ic_fileinfo.setData("0"); + _plsc_ic_attrib.setData("0"); + ic_hidden.setdata("0"); + attribs_mychange2 = 0; +} + +#endif + +#ifdef DOHIDEMCV +ic_hidden.onDataChanged() +{ + //debugString("ic_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange2) return; + NOOFF + attribs_mychange2 = 1; + ic_vis.setData("0"); + ic_eq.setData("0"); + ic_config.setData("0"); + ic_fileinfo.setData("0"); + _plsc_ic_attrib.setdata("0"); + _cflow_ic_attrib.setData("0"); + attribs_mychange2 = 0; +} +#endif + +sui_eq_attrib.onDataChanged() +{ + //debugString("ic_vis_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange) return; + attribs_mychange = 1; + if (getData() == "1") + { + ic_eq.setData("1"); + sui_config_attrib.setData("0"); + } + else ic_fileinfo.setData("1"); + attribs_mychange = 0; +} + +sui_config_attrib.onDataChanged() +{ + //debugString("ic_vis_fileinfo.setData(" + getData() + ")", 9); + if (attribs_mychange) return; + attribs_mychange = 1; + if (getData() == "1") + { + ic_config.setData("1"); + sui_eq_attrib.setData("0"); + } + else ic_fileinfo.setData("1"); + attribs_mychange = 0; +} + + +/* infocomp_nowplaying.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + infocomp_browser.setData("0"); + attribs_mychange = 0; +} + + +infocomp_browser.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + infocomp_nowplaying.setData("0"); + attribs_mychange = 0; +} +*/ +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/beatvisualization.m b/Src/resources/skins/Big Bento/scripts/beatvisualization.m new file mode 100644 index 00000000..17e72f03 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/beatvisualization.m @@ -0,0 +1,160 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: beatvisualization.m +Version: 1.0 + +Type: maki +Date: 24. Sep. 2007 - 21:11 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + + Based on Winamp Modern +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_appearance.m + +Function updateObj(int w); + +#define CENTER_VAR CONTENTGRP +Global Group contentGroup; +#include <lib/com/centerlayer.m> +#undef CENTER_VAR + +Global Group scriptGroup; +Global animatedLayer beatVisL, beatVisR; +Global int lastBeatLeft, lastBeatRight; +Global Timer refreshVis; +Global Int totalFrames; +Global GuiObject SongTicker; + +System.onScriptLoaded () +{ + initAttribs_Appearance(); + + scriptGroup = getScriptGroup(); + + contentGroup = scriptGroup.getObject("player.display.beatvis.content"); + + beatVisL = contentGroup.getObject("beatvisleft"); + beatVisR = contentGroup.getObject("beatvisright"); + + _CONTENTGRPInit(contentGroup, scriptGroup, 1, 0); + + SongTicker = contentGroup.getParent().findObject("Songticker"); + + totalFrames = beatVisR.getLength() - 1; + + lastBeatLeft = 0; + lastBeatRight = 0; + + refreshVis = new Timer; + refreshVis.setDelay(10); + + updateObj(scriptGroup.getWidth()); + vis_reflection_attrib.onDataChanged(); +} + +System.onScriptUnloading () +{ + refreshVis.stop(); + delete refreshVis; +} + +scriptGroup.onResize (int x, int y, int w, int h) +{ + updateObj(w); +} + +updateObj (int w) +{ + if (w > 98) + { + if (scriptGroup.isVisible()) return; + scriptGroup.show(); + if (beatvis_attrib.getData() == "1") refreshVis.start(); + //SongTicker.sendAction("setGuiX", "", 191,0,0,0); + + } + else + { + refreshVis.stop(); + scriptGroup.hide(); + //SongTicker.sendAction("restoreGuiX", "", 0,0,0,0); + } +} + +refreshVis.onTimer () +{ + if (beatvis_attrib.getData() == "0") + { + lastBeatLeft--; + if (lastBeatLeft<0) lastBeatLeft=0; + lastBeatRight--; + if (lastBeatRight<0) lastBeatRight=0; + + beatVisL.gotoframe(lastBeatLeft); + beatVisR.gotoframe(lastBeatRight); + + if (lastBeatLeft + lastBeatRight == 0) + { + refreshVis.stop(); + } + return; + } + + int beatLeft= System.getLeftVuMeter(); + int beatRight= System.getRightVuMeter(); + + int frameLeft=beatLeft/(totalFrames+7); + int frameRight=beatRight/(totalFrames+7); + + if (frameLeft>totalFrames) frameLeft=totalFrames; + if (frameRight>totalFrames) frameRight=totalFrames; + + if (frameLeft<lastBeatLeft) + { + frameLeft=lastBeatLeft-1; + if (frameLeft<0) frameLeft=0; + } + + if (frameRight<lastBeatRight) + { + frameRight=lastBeatRight-1; + if (frameRight<0) frameRight=0; + } + + lastBeatLeft=frameLeft; + lastBeatRight=frameRight; + + beatVisL.gotoframe(frameLeft); + beatVisR.gotoframe(frameRight); +} + +beatvis_attrib.onDataChanged () +{ + if (getData() == "1" ) + { + if (scriptGroup.isVisible()) + { + refreshVis.start(); + } + } +} + +vis_reflection_attrib.onDataChanged () +{ + if (getdata() == "1") + { + beatVisR.setXmlParam("image", "player.beatvis.right"); + beatVisL.setXmlParam("image", "player.beatvis.left"); + } + else + { + beatVisR.setXmlParam("image", "player.beatvis.right.wo"); + beatVisL.setXmlParam("image", "player.beatvis.left.wo"); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/beatvisualization.maki b/Src/resources/skins/Big Bento/scripts/beatvisualization.maki Binary files differnew file mode 100644 index 00000000..b4cda446 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/beatvisualization.maki diff --git a/Src/resources/skins/Big Bento/scripts/buildall.bat b/Src/resources/skins/Big Bento/scripts/buildall.bat new file mode 100644 index 00000000..caceb43b --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/buildall.bat @@ -0,0 +1,8 @@ +@echo off + +pushd %~dp0..\..\..\..\wasabi\ +set basedir=%cd% +popd + +for %%a in (*.m) do "%basedir%\mc.exe" %%a +pause
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/cbuttons.m b/Src/resources/skins/Big Bento/scripts/cbuttons.m new file mode 100644 index 00000000..0b662f4c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/cbuttons.m @@ -0,0 +1,293 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: cbuttons.m +Version: 1.0 + +Type: maki +Date: 03. Nov. 2006 - 17:02 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/pldir.mi> + +#define GLOW_OBJECT Prev +#include <lib/com/glow.m> +#define GLOW_OBJECT Next +#include <lib/com/glow.m> +#define GLOW_OBJECT Play +#include <lib/com/glow.m> +#define GLOW_OBJECT Pause +#include <lib/com/glow.m> +#define GLOW_OBJECT Stop +#include <lib/com/glow.m> +#define GLOW_OBJECT Eject +#include <lib/com/glow.m> +#define GLOW_OBJECT Repeat +#include <lib/com/glow.m> +#define GLOW_OBJECT Shuffle +#include <lib/com/glow.m> +#define GLOW_OBJECT Bolt +#include <lib/com/glow.m> + +Class Button InfoButton; +Class ToggleButton InfoToggleButton; + +Global InfoButton b_play, b_pause, b_eject, b_prev, b_next, b_stop, b_bolt; +Global InfoToggleButton b_repeat, b_shuffle; +Global GuiObject SongTicker; +Global Group buttongroup; +Global GuiObject shuffleActive, repeatActive, boltGlow; +Global Int shuffleActive_Y, repeatActive_Y, minW, boltX, grabbX; +Global Layer mainframe_grabber; +Global Timer beatvis; + +System.onScriptLoaded () +{ + buttongroup = getScriptGroup().findObject("player.cbuttons"); + + b_play = buttongroup.getObject("Play"); + b_pause = buttongroup.getObject("Pause"); + b_eject = buttongroup.getObject("Eject"); + b_prev = buttongroup.getObject("Prev"); + b_next = buttongroup.getObject("Next"); + b_stop = buttongroup.getObject("Stop"); + b_repeat = buttongroup.getObject("repeat"); + b_shuffle = buttongroup.getObject("shuffle"); + b_bolt = buttongroup.getParentLayout().getObject("bolt"); + boltGlow = buttongroup.getParentLayout().getObject("bolt.glow"); + shuffleActive = getScriptGroup().findObject("shuffle.active"); + shuffleActive_Y = shuffleActive.getGuiY(); + repeatActive = getScriptGroup().findObject("repeat.active"); + repeatActive_Y = repeatActive.getGuiY(); + mainframe_grabber = buttongroup.getParentLayout().getObject("player.mainframe.grabber"); + + beatvis = new Timer; + beatvis.setDelay(33); + + minW = stringToInteger(getParam()); + boltX = b_bolt.getGuiX(); + grabbX = mainframe_grabber.getGuiX(); + + b_bolt.setXmlParam("x", integerToString(boltX + buttongroup.GetWidth() - minW)); + boltGlow.setXmlParam("x", integerToString(boltX + buttongroup.GetWidth() - minW)); + mainframe_grabber.setXmlParam("x", integerToString(grabbX + buttongroup.GetWidth() - minW)); + + _Play_GlowInit (b_play, buttongroup.findObject("Play.glow"), 0.3); + _Pause_GlowInit (b_pause, buttongroup.findObject("Pause.glow"), 0.3); + _Stop_GlowInit (b_stop, buttongroup.findObject("Stop.glow"), 0.3); + _Prev_GlowInit (b_prev, buttongroup.findObject("Prev.glow"), 0.3); + _Next_GlowInit (b_next, buttongroup.findObject("Next.glow"), 0.3); + _Eject_GlowInit (b_eject, buttongroup.findObject("Eject.glow"), 0.3); + _Repeat_GlowInit (b_repeat, buttongroup.findObject("repeat.glow"), 0.3); + _Shuffle_GlowInit (b_shuffle, buttongroup.findObject("shuffle.glow"), 0.3); + _Bolt_GlowInit (b_bolt, buttongroup.getParentLayout().getObject("bolt.glow"), 0.7); + + SongTicker = buttongroup.getParentLayout().findObject("songticker"); +} + +system.onScriptUnloading () +{ + beatvis.stop(); + delete beatvis; +} + +InfoButton.onLeftButtonDown (int x, int y) +{ + if (InfoButton == b_play) + { + if (getStatus() == -1) + { + SongTicker.sendAction("showinfo", "Resume Playback", 0, 0, 0, 0); + } + else if (getStatus() == 0) + { + SongTicker.sendAction("showinfo", "Start Playback", 0, 0, 0, 0); + } + else if (getStatus() == 1) + { + SongTicker.sendAction("showinfo", "Restart Playback", 0, 0, 0, 0); + } + } + else if (InfoButton == b_pause) + { + if (getStatus() == -1) + { + SongTicker.sendAction("showinfo", "Resume Playback", 0, 0, 0, 0); + } + else if (getStatus() == 1) + { + SongTicker.sendAction("showinfo", "Pause Playback", 0, 0, 0, 0); + } + } + else if (InfoButton == b_pause) + { + if (getStatus() == 1) + { + SongTicker.sendAction("showinfo", "Pause Playback", 0, 0, 0, 0); + } + } + else + { + string info = InfoButton.getXmlParam("tooltip"); + SongTicker.sendAction("showinfo", info, 0, 0, 0, 0); + } +} + +InfoToggleButton.onLeftButtonDown (int x, int y) +{ + if (InfoToggleButton == b_shuffle) + { + if (getCurCfgVal() == 1) + { + SongTicker.sendAction("showinfo", "Shuffle: On", 0, 0, 0, 0); + } + else + { + SongTicker.sendAction("showinfo", "Shuffle: Off", 0, 0, 0, 0); + } + } + else if (InfoToggleButton == b_repeat) + { + if (getCurCfgVal() == 1) + { + SongTicker.sendAction("showinfo", "Repeat: Playlist", 0, 0, 0, 0); + } + else if (getCurCfgVal() == -1) + { + SongTicker.sendAction("showinfo", "Repeat: Track", 0, 0, 0, 0); + } + else if (getCurCfgVal() == 0) + { + SongTicker.sendAction("showinfo", "Repeat: Off", 0, 0, 0, 0); + } + } +} + +InfoToggleButton.onLeftButtonUp (int x, int y) +{ + if (InfoToggleButton == b_shuffle) + { + if (getCurCfgVal() == 1) + { + SongTicker.sendAction("showinfo", "Shuffle: On", 0, 0, 0, 0); + } + else + { + SongTicker.sendAction("showinfo", "Shuffle: Off", 0, 0, 0, 0); + } + } + else if (InfoToggleButton == b_repeat) + { + if (getCurCfgVal() == 1) + { + SongTicker.sendAction("showinfo", "Repeat: Playlist", 0, 0, 0, 0); + } + else if (getCurCfgVal() == -1) + { + SongTicker.sendAction("showinfo", "Repeat: Track", 0, 0, 0, 0); + } + else if (getCurCfgVal() == 0) + { + SongTicker.sendAction("showinfo", "Repeat: Off", 0, 0, 0, 0); + } + } +} + +Global Boolean shuffleDown, repeatDown; +b_shuffle.onLeftButtonDown (int x, int y) +{ + shuffleDown = 1; + shuffleActive.setXmlParam("y", integerToString(shuffleActive_Y+1)); +} + +b_shuffle.onLeftButtonUp (int x, int y) +{ + shuffleDown = 0; + shuffleActive.setXmlParam("y", integerToString(shuffleActive_Y)); +} + +b_shuffle.onleaveArea () +{ + shuffleActive.setXmlParam("y", integerToString(shuffleActive_Y)); +} + +b_shuffle.onEnterArea () +{ + if (shuffleDown) shuffleActive.setXmlParam("y", integerToString(shuffleActive_Y+1)); +} + +b_repeat.onLeftButtonDown (int x, int y) +{ + repeatDown = 1; + repeatActive.setXmlParam("y", integerToString(repeatActive_Y+1)); +} + +b_repeat.onLeftButtonUp (int x, int y) +{ + repeatDown = 0; + repeatActive.setXmlParam("y", integerToString(repeatActive_Y)); +} + +b_repeat.onleaveArea () +{ + repeatActive.setXmlParam("y", integerToString(repeatActive_Y)); +} + +b_repeat.onEnterArea () +{ + if (repeatDown) repeatActive.setXmlParam("y", integerToString(repeatActive_Y+1)); +} + +buttongroup.onResize (int x, int y, int w, int h) +{ + b_bolt.setXmlParam("x", integerToString(boltX + buttongroup.GetWidth() - minW)); + boltGlow.setXmlParam("x", integerToString(boltX + buttongroup.GetWidth() - minW)); + mainframe_grabber.setXmlParam("x", integerToString(grabbX + buttongroup.GetWidth() - minW)); +} + +b_bolt.onLeftButtonUp (int x, int y) +{ + if (isKeyDown(VK_ALT) && isKeyDown(VK_SHIFT) && isKeyDown(VK_CONTROL)) + { + if (beatvis.isRunning()) + { + beatvis.stop(); + } + else + { + beatvis.start(); + } + complete; + } +} + +beatvis.onTimer () +{ + int value = (getRightVuMeter() + getLeftVuMeter()) / 2; + boltGlow.setAlpha(value); +} +/* +System.onKeyDown (String key) +{ + if (key == "space") + { + PlEdit.showCurrentlyPlayingTrack(); + + complete; + } +}*/ + +System.onAccelerator (String action, String section, String key) +{ + if (strupper(action) == "SHOW_CURRENT_TRACK") + { + PlEdit.showCurrentlyPlayingTrack(); + + complete; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/cbuttons.maki b/Src/resources/skins/Big Bento/scripts/cbuttons.maki Binary files differnew file mode 100644 index 00000000..c61f2a1c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/cbuttons.maki diff --git a/Src/resources/skins/Big Bento/scripts/colorthemes.m b/Src/resources/skins/Big Bento/scripts/colorthemes.m new file mode 100644 index 00000000..1d231b98 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/colorthemes.m @@ -0,0 +1,56 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: colorthemes.m +Version: 1.0 + +Type: maki +Date: 29. Jun. 2007 - 13:06 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global Group scriptGroup; +Global GuiObject ColorthemesList, parent; +Global string sgID; + +Global Button getmore; + + +System.onScriptLoaded () +{ + scriptGroup = getScriptGroup(); + sgID = scriptGroup.getID(); + ColorthemesList = scriptGroup.getObject("colorthemes"); + parent = scriptGroup.getParent().findObject("skin.config.target"); + + getmore = scriptGroup.getObject("colorthemes.more"); +} + +scriptGroup.onTargetReached () +{ + if (getAlpha() == 0) ColorthemesList.hide(); + else ColorthemesList.show(); +} + +parent.onAction(String action, String param, int x, int y, int p1, int p2, GuiObject source) +{ + if (getToken(action,";",0) == "switchto") + { + if (getToken(action, ";", 1) == sgID) + { + ColorthemesList.show(); + } + else ColorthemesList.hide(); + } +} + +getmore.onLeftClick () +{ + group sui = scriptGroup.getParentLayout().findObject("sui.content"); + sui.sendAction ("browser_navigate", "http://forums.winamp.com/showthread.php?threadid=276371", 0, 0, 0, 0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/colorthemes.maki b/Src/resources/skins/Big Bento/scripts/colorthemes.maki Binary files differnew file mode 100644 index 00000000..a3ddb897 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/colorthemes.maki diff --git a/Src/resources/skins/Big Bento/scripts/configtarget.m b/Src/resources/skins/Big Bento/scripts/configtarget.m new file mode 100644 index 00000000..a1841046 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/configtarget.m @@ -0,0 +1,159 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: configtarget.m +Version: 2.1 + +Type: maki +Date: 04. Jan. 2007 - 22:46 +Edited by: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on configtarget.m + from Winamp Modern +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +// ------------------------------------------------------------------------------------ +Global GuiObject target; +Global ComponentBucket buck; + +Global GuiObject last, current; +// ------------------------------------------------------------------------------------ +Function turnAllOffExcept(GuiObject except); +Function turnOn(GuiObject obj); +Function turnOff(GuiObject obj); + +//Member int target.fff; + +//function fff(); +//Member button int fff(); +// ------------------------------------------------------------------------------------ + + +// ------------------------------------------------------------------------------------ +// init +// ------------------------------------------------------------------------------------ +System.onScriptLoaded() +{ + target = getScriptGroup().findObject("skin.config.target"); + buck = getScriptGroup().findObject("my.bucket"); + + last = NULL; + current = NULL; + + //debugInt(guiobject.fff);ffff + +// target.fff = 4; + + // turn off all + GuiObject o = NULL; + turnAllOffExcept(o); +} + +// ------------------------------------------------------------------------------------ +// save scroller position +// ------------------------------------------------------------------------------------ +/*System.onScriptUnloading() +{ + if (buck) + { + setPrivateInt(getSkinName(), "", buck.getScroll()); + } +}*/ + +// ------------------------------------------------------------------------------------ +// turn on last open +// ------------------------------------------------------------------------------------ +buck.onStartup() +{ + //setScroll(getPrivateInt(getSkinName(), "settings_last_pos", 0)); + Group g = buck.enumChildren(getPrivateInt(getSkinName(), "settings_last_pos", 0)); + if (!g) g = buck.enumChildren(0); + if (!g) return; + ToggleButton btn = g.getObject("btn"); + if (btn) btn.leftClick(); +} + +// ------------------------------------------------------------------------------------ +// this is called by the bucket button to switch to a new group +// ------------------------------------------------------------------------------------ +target.onAction(String action, String param, int x, int y, int p1, int p2, GuiObject source) +{ + if (getToken(action,";",0) == "switchto") + { + String grp = getToken(action, ";", 1); + String is_subpage = getToken(action, ";", 2); + + if (current != NULL) + { + last = current; + } + + target.setXmlParam("groupid", grp); + + current = getScriptGroup().findObject(grp); + + // setPrivateInt(getSkinName(), "settings_last_pos", stringToInteger(param)); + + if (is_subpage!="subpage") turnAllOffExcept(source.getParent()); // getParent because the source is the button itself, the parent is the whole group item in the bucket + } +} + +// Hack to hide last item + +last.onTargetReached () +{ + if (getAlpha() == 0) + { + hide(); + } +} + +// ------------------------------------------------------------------------------------ +// turn off all buttons except for the parameter, also save last_page param based on param item +// ------------------------------------------------------------------------------------ +turnAllOffExcept(GuiObject except) +{ + if (!buck) return; + int i=0; + // enumerate all inserted groups, turn them off if they're not our exception + while (i<buck.getNumChildren()) + { + GuiObject obj = buck.enumChildren(i); + if (obj == except) + { // otherwise record last page + setPrivateInt(getSkinName(), "settings_last_pos", i); + i++; + continue; + } + if (obj == NULL) { break; } // shoundnt happen + turnOff(obj); + i++; + } + // turn on the clicked item + if (except) turnOn(except); +} + +// ------------------------------------------------------------------------------------ +turnOn(GuiObject obj) +{ + Group gobj = obj; + + // otherwise we just need this : + ToggleButton tg = gobj.getObject("btn"); + tg.setActivated(1); +} + +// ------------------------------------------------------------------------------------ +turnOff(GuiObject obj) +{ + Group gobj = obj; + + // otherwise we just need this : + ToggleButton tg = gobj.getObject("btn"); + tg.setActivated(0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/configtarget.maki b/Src/resources/skins/Big Bento/scripts/configtarget.maki Binary files differnew file mode 100644 index 00000000..d48dcfb1 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/configtarget.maki diff --git a/Src/resources/skins/Big Bento/scripts/coverflow.m b/Src/resources/skins/Big Bento/scripts/coverflow.m new file mode 100644 index 00000000..a9ca1c7c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/coverflow.m @@ -0,0 +1,229 @@ +/********************************************************\ +** Filename: coverflow.m ** +** Version: 1.0 ** +** Date: 20. Nov. 2007 - 15:25 ** +********************************************************** +** Type: winamp.wasabi/maki ** +** Project: Cover Flow ** +********************************************************** +** Author: Martin Poehlmann aka Deimos ** +** E-Mail: martin@skinconsortium.com ** +** Internet: http://www.skinconsortium.com ** +** http://home.cs.tum.edu/~poehlman ** +\********************************************************/ + + +#include <lib/std.mi> +#include <lib/pldir.mi> + +Function update(); +Function fade (GuiObject o, int alpha, float s); + +Class GuiObject AlbumCover; +Class AlbumCover playButton; + +Global AlbumCover prev2, prev1, curr, next1, next2; +Global String sprev2, sprev1, scurr, snext1, snext2; +Global playButton bprev2, bprev1, bcurr, bnext1, bnext2; +Global text info; + +#define CENTER_VAR SGrp +Global Group sg; +#include <lib/com/centerlayer.m> +#undef CENTER_VAR + +Global PlEdit PleditListener; + +Global Timer delay; + +System.onScriptLoaded () +{ + sg = getScriptGroup(); + + PleditListener = new PlEdit; + + prev2 = sg.getObject("aa.prev2"); + prev1 = sg.getObject("aa.prev1"); + curr = sg.getObject("aa.curr"); + next1 = sg.getObject("aa.next1"); + next2 = sg.getObject("aa.next2"); + + bprev2 = sg.getObject("play.prev2"); + bprev1 = sg.getObject("play.prev1"); + bcurr = sg.getObject("play.curr"); + bnext1 = sg.getObject("play.next1"); + bnext2 = sg.getObject("play.next2"); + + info = sg.getParent().findObject("info"); + + _SGrpInit(sg, sg.getParent(), 1, 0); + + delay = new Timer; + delay.setDelay(10); + + update(); +} + +System.onScriptUnloading () +{ + delete delay; +} + +System.onTitleChange (String newtitle) +{ + update(); +} + +update () +{ + int cur = PlEdit.getCurrentIndex(); + int max = PlEdit.getNumTracks(); + + if (cur > 1) + { + prev2.setXmlParam("source", PlEdit.getFileName(cur-2)); + prev2.show(); + sprev2 = PlEdit.getTitle(cur-2); + } + else prev2.hide(); + + if (cur > 0) + { + prev1.setXmlParam("source", PlEdit.getFileName(cur-1)); + prev1.show(); + sprev1 = PlEdit.getTitle(cur-1); + } + else prev1.hide(); + + scurr = PlEdit.getTitle(cur); + + if (cur < max-2) + { + next2.setXmlParam("source", PlEdit.getFileName(cur+2)); + next2.show(); + snext2 = PlEdit.getTitle(cur+2); + } + else next2.hide(); + + if (cur < max-1) + { + next1.setXmlParam("source", PlEdit.getFileName(cur+1)); + next1.show(); + snext1 = PlEdit.getTitle(cur+1); + } + else next1.hide(); +} + +PleditListener.onPleditModified () +{ + if (delay) delay.start(); +} + +delay.onTimer () +{ + delay.stop(); + update(); +} + +AlbumCover.onRightButtonDown (int x, int y) +{ + popupmenu p = new popupmenu; + + p.addCommand("Get Album Art", 1, 0, 0); + p.addCommand("Refresh Album Art", 2, 0, 0); + p.addCommand("Open Folder", 3, 0, 0); + + int result = p.popatmouse(); + delete p; + + String pis = getXmlParam("source"); + if (pis == "") pis = system.getPlayItemString(); + + if (result == 1) + { + if (system.getAlbumArt(pis) > 0) + { + setXmlParam("notfoundimage", getXmlParam("notfoundimage")); // a nesty refresh - isn't it? + } + } + else if (result == 2) + { + setXmlParam("notfoundimage", getXmlParam("notfoundimage")); // a nesty refresh - isn't it? + } + else if (result == 3) + { + System.navigateUrl(getPath(pis)); + } +} + +AlbumCover.onLeftButtonDblClk (int x, int y) +{ + if (AlbumCover == playButton) + return; + + String pis = getXmlParam("source"); + if (pis == "") pis = system.getPlayItemString(); + System.navigateUrl(getPath(pis)); +} + +AlbumCover.onEnterArea () +{ + if (!findObject("aa." + getToken(getId(), ".", 1)).isVisible()) + { + return; + } + + int cur = PlEdit.getCurrentIndex(); + + if (AlbumCover == prev2 || AlbumCover == bprev2) + info.setText(sprev2); + else if (AlbumCover == prev1 || AlbumCover == bprev1) + info.setText(sprev1); + else if (AlbumCover == curr || AlbumCover == bcurr) + info.setText(scurr); + else if (AlbumCover == next1 || AlbumCover == bnext1) + info.setText(snext1); + else if (AlbumCover == next2 || AlbumCover == bnext2) + info.setText(snext2); + + GuiObject o = sg.findObject("play." + getToken(getId(), ".", 1)); + if (o ) + { + fade(o, 255, 0.133); + } +} + +AlbumCover.onLeaveArea () +{ + info.setText(""); + + GuiObject o = sg.findObject("play." + getToken(getId(), ".", 1)); + if (o) + { + fade(o, 0, 0.3); + } +} + +playButton.onLeftButtonUp (int x, int y) +{ + int cur = PlEdit.getCurrentIndex(); + if (playButton == bprev2) + PlEdit.playTrack(cur-2); + else if (playButton == bprev1) + PlEdit.playTrack(cur-1); + else if (playButton == bnext1) + PlEdit.playTrack(cur+1); + else if (playButton == bnext2) + PlEdit.playTrack(cur+2); + + setAlpha(0); + info.setTexT(""); +} + +fade (GuiObject o, int alpha, float s) +{ + o.cancelTarget(); + o.setTargetA(alpha); + o.setTargetSpeed(s); + o.gotoTarget(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/coverflow.maki b/Src/resources/skins/Big Bento/scripts/coverflow.maki Binary files differnew file mode 100644 index 00000000..54b59008 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/coverflow.maki diff --git a/Src/resources/skins/Big Bento/scripts/eq.m b/Src/resources/skins/Big Bento/scripts/eq.m new file mode 100644 index 00000000..f450ee45 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/eq.m @@ -0,0 +1,247 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: eq.m +Version: 2.0 + +Type: maki +Date: 25. Jun. 2007 - 11:30 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/winampconfig.mi> + +#define CENTER_VAR eqGroup +#include <lib/com/centerlayer.m> + +#define ISOBANDS "31.5 Hz,63 Hz,125 Hz,250 Hz,500 Hz,1 KHz,2 KHz,4 KHz,8 KHz,16 KHz" +#define WINAMPBANDS "70 Hz,180 Hz,320 Hz,600 Hz,1 KHz,3 KHz,6 KHz,12 KHz,14 KHz,16 KHz" + +Class Button Eqbutton; +Member int EqButton.setTo; + +Global Group frameGroup, buttongroup; +Global Slider slidercb, Balance; +Global Text fadertext; +Global Button CFIncrease, CFDecrease, eqon, eqauto; +Global ToggleButton Crossfade; +Global GuiObject CrossfadeActive, eqonActive, eqautoActive, SongTicker; +Global Int CrossfadeActive_Y, eqonActive_Y, eqautoActive_Y; +Global Eqbutton btnEQp12,btnEQ0,btnEQm12; +Global layer frequencyLabel; + +System.onScriptLoaded() +{ + buttongroup = getScriptGroup().findObject("player.cbuttons"); + WinampConfigGroup eqwcg = WinampConfig.getGroup("{72409F84-BAF1-4448-8211-D84A30A1591A}"); + + int freqmode = eqwcg.getInt("frequencies"); // returns 0 for classical winamp levels, 1 for ISO levels + + frameGroup = getScriptGroup(); + _eqGroupInit(frameGroup.findObject("info.component.eq.content"), frameGroup, 1, 0); + slidercb = frameGroup.findObject("sCrossfade"); + fadertext = frameGroup.findObject("CFDisplay"); + CFIncrease = frameGroup.findObject("CrossfadeIncrease"); + CFDecrease = frameGroup.findObject("CrossfadeDecrease"); + Crossfade = frameGroup.findObject("Crossfade"); + CrossfadeActive = frameGroup.findObject("CrossfadeActive"); + CrossfadeActive_Y = CrossfadeActive.getGuiY(); + + eqon = frameGroup.findObject("eqonoff"); + eqonActive = frameGroup.findObject("eqonoffActive"); + eqonActive_Y = eqonActive.getGuiY(); + + eqauto = frameGroup.findObject("eqauto"); + eqautoActive = frameGroup.findObject("eqautoActive"); + eqautoActive_Y = eqautoActive.getGuiY(); + + btnEQp12 = frameGroup.findObject("EQ_p12"); + btnEQp12.setTo = 127; + btnEQ0 = frameGroup.findObject("EQ_0"); + btnEQ0.setTo = 0; + btnEQm12 = frameGroup.findObject("EQ_m12"); + btnEQm12.setTo = -127; + + Balance = frameGroup.findObject("Balance"); + SongTicker = buttongroup.getParentLayout().findObject("songticker"); + + frequencyLabel = frameGroup.findObject("frequency.labels"); + + system.onEqFreqChanged(freqmode); + + slidercb.onSetPosition(slidercb.getPosition()); + + Crossfade.onToggle(Crossfade.getActivated()); +} + +Balance.onSetPosition(int newpos) +{ + string t=translate("Balance")+":"; + if (newpos==127) t+= " " + translate("Center"); + if (newpos<127) t += " " + integerToString((100-(newpos/127)*100))+"% "+translate("Left"); + if (newpos>127) t += " " + integerToString(((newpos-127)/127)*100)+"% "+translate("Right"); + + SongTicker.sendAction("showinfo", t, 0, 0, 0, 0); +} + +slidercb.onSetPosition(int val) +{ + String s = IntegerToString(val); + fadertext.setText(s); +} + +CFIncrease.onLeftClick() +{ + slidercb.SetPosition(slidercb.getPosition()+1); +} + +CFDecrease.onLeftClick() +{ + slidercb.SetPosition(slidercb.getPosition()-1); +} + +Crossfade.onToggle(boolean on) +{ + if (!on) + { + fadertext.setAlpha(150); + CFIncrease.setAlpha(150); + CFDecrease.setXmlParam("ghost" , "1"); + CFDecrease.setAlpha(150); + CFIncrease.setXmlParam("ghost" , "1"); + CrossfadeActive.hide(); + } + else + { + fadertext.setAlpha(255); + CFIncrease.setAlpha(255); + CFDecrease.setAlpha(255); + CFIncrease.setXmlParam("ghost" , "0"); + CFDecrease.setXmlParam("ghost" , "0"); + CrossfadeActive.show(); + } +} + +Global Boolean cfDown, onDown, autoDown, manual_set; +Crossfade.onLeftButtonDown (int x, int y) +{ + cfDown = 1; + CrossfadeActive.setXmlParam("y", integerToString(CrossfadeActive_Y+1)); +} + +Crossfade.onLeftButtonUp (int x, int y) +{ + cfDown = 0; + CrossfadeActive.setXmlParam("y", integerToString(CrossfadeActive_Y)); +} + +Crossfade.onleaveArea () +{ + CrossfadeActive.setXmlParam("y", integerToString(CrossfadeActive_Y)); +} + +Crossfade.onEnterArea () +{ + if (cfDown) CrossfadeActive.setXmlParam("y", integerToString(CrossfadeActive_Y+1)); +} + +eqon.onEnterArea () +{ + if (onDown) eqonActive.setXmlParam("y", integerToString(eqonActive_Y+1)); +} + +eqon.onLeftButtonDown (int x, int y) +{ + onDown = 1; + eqonActive.setXmlParam("y", integerToString(eqonActive_Y+1)); +} + +eqon.onLeftButtonUp (int x, int y) +{ + onDown = 0; + eqonActive.setXmlParam("y", integerToString(eqonActive_Y)); +} + +eqon.onleaveArea () +{ + eqonActive.setXmlParam("y", integerToString(eqonActive_Y)); +} + +eqauto.onLeftButtonDown (int x, int y) +{ + autoDown = 1; + eqautoActive.setXmlParam("y", integerToString(eqautoActive_Y+1)); +} + +eqauto.onLeftButtonUp (int x, int y) +{ + autoDown = 0; + eqautoActive.setXmlParam("y", integerToString(eqautoActive_Y)); +} + +eqauto.onleaveArea () +{ + eqautoActive.setXmlParam("y", integerToString(eqautoActive_Y)); +} + +eqauto.onEnterArea () +{ + if (autoDown) eqautoActive.setXmlParam("y", integerToString(eqautoActive_Y+1)); +} + + +EqButton.onLeftClick() +{ + manual_set = 1; + for(int i=0; i<10; i++) setEqBand(i, EqButton.setTo); + manual_set = 0; +} + +System.onEqFreqChanged (boolean isoonoff) +{ + if (isoonoff == 1) + { + frequencyLabel.setXmlParam("image", "equalizer.labels.iso"); + for(int i=0; i<10; i++) frameGroup.findObject("eq"+integerToString(i+1)).setXmlParam("tooltip", getToken(ISOBANDS,",",i)); + } + else + { + frequencyLabel.setXmlParam("image", "equalizer.labels.winamp"); + for(int i=0; i<10; i++) frameGroup.findObject("eq"+integerToString(i+1)).setXmlParam("tooltip", getToken(WINAMPBANDS,",",i)); + } +} + +system.onEqBandChanged(int band, int value) +{ + if (manual_set) return; + String t; + Float f = value; + f = f / 10.5; + WinampConfigGroup eqwcg = WinampConfig.getGroup("{72409F84-BAF1-4448-8211-D84A30A1591A}"); + if (eqwcg.getInt("frequencies") == 1) { + if (f >= 0) t = "EQ: " + translate(getToken(ISOBANDS,",",band)) + ": +" + floattostring(f, 1) + " "+ translate("dB"); + else t = "EQ: " + translate(getToken(ISOBANDS,",",band)) + ": " + floattostring(f, 1) + " "+ translate("dB"); + } + else { + if (f >= 0) t = "EQ: " + translate(getToken(WINAMPBANDS,",",band)) + ": +" + floattostring(f, 1) + " "+ translate("dB"); + else t = "EQ: " + translate(getToken(WINAMPBANDS,",",band)) + ": " + floattostring(f, 1) + " "+ translate("dB"); + } + + SongTicker.sendAction("showinfo", t, 0, 0, 0, 0); +} + +system.onEqPreampChanged(int value) +{ + slider s = getScriptGroup().findObject("preamp"); + value = s.getPosition(); // Somehow this function returns a range from [-127;125] with hotpos -3, so we take the slider instead + String t = "EQ: " + translate("Preamp:") + " "; + Float f = value; + f = f / 10.5; + if (f >= 0) t += "+"+floattostring(f, 1) + " "+ translate("dB"); + else t += floattostring(f, 1) + " "+ translate("dB"); + SongTicker.sendAction("showinfo", t, 0, 0, 0, 0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/eq.maki b/Src/resources/skins/Big Bento/scripts/eq.maki Binary files differnew file mode 100644 index 00000000..109d1b51 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/eq.maki diff --git a/Src/resources/skins/Big Bento/scripts/fileinfo.m b/Src/resources/skins/Big Bento/scripts/fileinfo.m new file mode 100644 index 00000000..b9faecb2 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/fileinfo.m @@ -0,0 +1,1277 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: fileinfo.m +Version: 3.3 +Type: maki +Date: 10. Aug. 2007 - 20:42 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_windowpage.m + +#include <lib/com/songinfo.m> + +//#define DEBUG +#define FILE_NAME "fileinfo.m" +#include <lib/com/debug.m> + +#define WEBCOVER_SHOUTCAST "winamp.cover.shoutcast" + +Function loadFileInfo(); +Function loadPlaylistArtWork(); +Class GuiObject TextObject; +Class GuiObject CycleObject; +Function refreshRating(int rating); +Class Button RatingButton; +Function showBranding(); +Class Group Infoline; +Function getTextHeight(InfoLine gn); + +Global Group scriptGroup, g_cover; +Global AlbumArtLayer l_albumart; +Global AlbumArtLayer AlbumArt; +Global InfoLine g_rating, g_title, g_album, g_artist, g_year, g_genre, g_track, g_publisher, g_sname, g_surl, g_albumartist, g_composer, g_format, g_disc; +Global InfoLine g_target; +Global Text t_title, t_album, t_artist, t_year, t_genre, t_track, t_publisher, t_sname, t_surl, t_composer, t_albumartist, t_format, t_disc, t_rating; +Global Timer cycler; +// Global String stationLink = ""; + +Global List cycle; +Global Boolean cycler_paused, quick_change, HAVE_ML = TRUE; +Global List ratingStars; + +#define CENTER_VAR Branding +Global layer l_branding; +#include <lib/com/centerlayer.m> +#undef CENTER_VAR + +Global TextObject TextArtist, TextAlbum, TextTitle, TextGenre, TextPublisher, TextSURl, TextSname; +Global CycleObject cycleGenre, cyclePublisher, cycleTrack, cycleYear, cycleComposer, cycleAlbumartist, cycleFormat, cycleDisc; + +Global RatingButton rate1, rate2, rate3, rate4, rate5, rate0; +Global Layer star1, star2, star3, star4, star5; + +Global Int startwith = 0; +Global Int artRetries = 0; +Global Int maxlines; + +Global timer delayLoad; + +System.onScriptLoaded() +{ + initAttribs_windowpage(); + + HAVE_ML = stringToInteger(getToken(getParam(), ",", 0)); + maxlines = stringToInteger(getToken(getParam(), ",", 1)); + + scriptGroup = getScriptGroup(); + + cycler = new Timer; + cycler.setDelay(4000); + + delayLoad = new Timer; + delayLoad.setDelay(10); + + //debug(getWinampVersion() + "#" + integerToString(getBuildNumber())); + + g_rating = scriptGroup.findObject("infodisplay.line.rating"); + g_title = scriptGroup.findObject("infodisplay.line.title"); + g_album = scriptGroup.findObject("infodisplay.line.album"); + g_artist = scriptGroup.findObject("infodisplay.line.artist"); + g_year = scriptGroup.findObject("infodisplay.line.year"); + g_genre = scriptGroup.findObject("infodisplay.line.genre"); + g_track = scriptGroup.findObject("infodisplay.line.track"); + g_publisher = scriptGroup.findObject("infodisplay.line.publisher"); + g_sname = scriptGroup.findObject("infodisplay.line.sname"); + g_surl = scriptGroup.findObject("infodisplay.line.surl"); + g_composer = scriptGroup.findObject("infodisplay.line.composer"); + g_albumartist = scriptGroup.findObject("infodisplay.line.albumartist"); + g_format = scriptGroup.findObject("infodisplay.line.format"); + g_disc = scriptGroup.findObject("infodisplay.line.disc"); + + t_title = g_title.findObject("text"); + t_album = g_album.findObject("text"); + t_artist = g_artist.findObject("text"); + t_year = g_year.findObject("text"); + t_genre = g_genre.findObject("text"); + t_track = g_track.findObject("text"); + t_Publisher = g_publisher.findObject("text"); + t_sname = g_sname.findObject("text"); + t_surl = g_surl.findObject("text"); + t_albumartist = g_albumartist.findObject("text"); + t_composer = g_composer.findObject("text"); + t_format = g_format.findObject("text"); + t_disc = g_disc.findObject("text"); + + textArtist = g_artist.findObject("text"); + textAlbum = g_album.findObject("text"); + textTitle = g_title.findObject("text"); + textsUrl = g_surl.findObject("text"); + textSname = g_sname.findObject("text"); + cycleGenre = g_genre.findObject("link"); + cyclePublisher = g_publisher.findObject("link"); + cycleTrack = g_track.findObject("link"); + cycleYear = g_year.findObject("link"); + cycleAlbumartist = g_albumartist.findObject("text"); + cycleComposer = g_composer.findObject("text"); + cycleFormat = g_format.findObject("link"); + cycleDisc = g_disc.findObject("link"); + + cycle = new List; + ratingStars = new List; + + group parent = scriptGroup.getParent(); + l_branding = parent.findObject("branding"); + g_cover = parent.findObject("info.component.cover"); + _BrandingInit(l_branding, parent, 1, 0); + + l_albumart = g_cover.getObjecT("winamp.albumart"); + + rate1 = g_rating.findObject("rate.1"); + rate2 = g_rating.findObject("rate.2"); + rate3 = g_rating.findObject("rate.3"); + rate4 = g_rating.findObject("rate.4"); + rate5 = g_rating.findObject("rate.5"); + rate0 = g_rating.findObject("rate.0"); + ratingStars.addItem(rate1); + ratingStars.addItem(rate2); + ratingStars.addItem(rate3); + ratingStars.addItem(rate4); + ratingStars.addItem(rate5); + + star1 = g_rating.findObject("star.1"); + star2 = g_rating.findObject("star.2"); + star3 = g_rating.findObject("star.3"); + star4 = g_rating.findObject("star.4"); + star5 = g_rating.findObject("star.5"); + + t_rating = g_rating.findObject("label"); + t_rating.onTextChanged (""); + + refreshRating(System.getCurrentTrackRating()); + loadFileInfo(); + if (ic_fileinfo.getData() == "1") + { + if (getStatus() == STATUS_STOPPED && songinfo_location == "") showBranding(); // show branding if playback is stopped and the playlist is empty + if (removePath(getPlayItemString()) == "demo.mp3") // Show branding if playing DJ Mike + { + if (getPlayitemmetadatastring("artist") == "DJ Mike Llama" && getplayitemmetadatastring("title") == "Llama Whippin' Intro") + { + showBranding(); + } + } + } +} + +System.onScriptUnloading () +{ + cycler.stop(); + delete cycler; + + delayLoad.stop(); + delete delayLoad; +} + +// Reload fileInfo if track has changed + +delayLoad.onTimer() +{ + System.onTitleChange (getPlayItemString()); + + delayLoad.stop(); +} + +System.onTitleChange (String newtitle) +{ + // Get rid of "" calls + if (newtitle == "" && getplayitemmetadatastring("title") == "" && !delayLoad.isRunning()) + { + delayLoad.start(); + } + + // Get rid of buffering during stream connection & playback + if (StrLeft(newtitle, 1) == "[") { + if (StrLeft(newtitle, 7) == "[Buffer" || StrLeft(newtitle, 4) == "[ICY") return; + } + // Show branding for DJ Mike + if (removePath(getPlayItemString()) == "demo.mp3") + { + if (getPlayitemmetadatastring("artist") == "DJ Mike Llama" && getplayitemmetadatastring("title") == "Llama Whippin' Intro") + { + showBranding(); + return; + } + } + + debugString(DEBUG_PREFIX "System.onTitleChange() -> loadFileInfo();", D_WTF); + refreshRating(System.getCurrentTrackRating()); + loadFileInfo(); +} + +// Reload fileInfo if textline attribs have changed + +InfoLineAttribute.onDataChanged () +{ + if (l_branding.isVisible()) return; + loadFileInfo (); +} + +/*l_albumart.onAlbumArtLoaded(boolean success) +{ + if(songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST2) + { + if(!l_albumart.isInvalid()) + { + l_albumart.show(); + l_webcover.hide(); + } + } +}*/ + +//---------------------------------------------------------------------------------------------------------------- +// Our main machine. +//---------------------------------------------------------------------------------------------------------------- + +loadPlaylistArtWork() +{ + Group g_cover2; + Container player; + Frame dualwnd, pl_dualwnd, mainframe; + Layout mainframe; + + player = getContainer("main"); + if(player) + { + mainframe=player.getLayout("normal"); + if(mainframe) + { + dualwnd = mainframe.findObject("player.dualwnd"); + if(dualwnd) + { + pl_dualwnd = dualwnd.findObject("playlist.dualwnd"); + if(pl_dualwnd) + { + g_cover2 = pl_dualwnd.findObject("player.component.playlist.albumart"); + if(g_cover2) + { + AlbumArt = g_cover2.findObject("winamp.albumart"); + } + } + } + } + } +} + +loadFileInfo () +{ + songinfo_reload(); // refresh vars + debugString(DEBUG_PREFIX "loadFileInfo() {", D_WTF); + debugString(DEBUG_PREFIX " songinfo_location: " + songinfo_location, D_WTF); + debugString(DEBUG_PREFIX " songinfo_displayTitle: " + songinfo_displayTitle, D_WTF); + + // cancel g_target + if (g_target) g_target.cancelTarget(); + if (g_target) g_target.setAlpha(255); + g_target = NULL; + + // hide all lines and cycle buttons + g_rating.hide(); + g_title.hide(); + g_album.hide(); + g_artist.hide(); + g_year.hide(); + g_genre.hide(); + l_branding.hide(); + g_track.hide(); + g_publisher.hide(); + g_cover.setAlpha(255); + g_surl.hide(); + g_sname.hide(); + g_albumartist.hide(); + g_composer.hide(); + g_format.hide(); + g_disc.hide(); + cycleTrack.hide(); + cycleGenre.hide(); + cyclePublisher.hide(); + cycleFormat.hide(); + cycleYear.hide(); + cycleDisc.hide(); + cycler.stop(); + cycler_paused = 0; +// stationLink = ""; + + artRetries = 0; + l_albumart.setXMLParam("notfoundImage", "winamp.cover.notfound.xxl"); + + Boolean _cycle = (infocomp_cycle.getData() == "1"); + Boolean _rating = (infocomp_show_rating.getData() == "1"); + + // empty cycle list + cycle.removeAll(); + + int pos = 1; + + if (maxlines > 5) + { + pos += 2; + } + + int n = 0; + + debugString(DEBUG_PREFIX " songinfo_streamName: " + songinfo_streamName, D_WTF); + debugString(DEBUG_PREFIX " songinfo_streamType: " + integerToString(songinfo_streamType), D_WTF); + if (songinfo_isStream) + { + debugString(DEBUG_PREFIX " -> A stream is detected!", D_WTF); + + debugString(DEBUG_PREFIX " songinfo_artist: " + songinfo_artist, D_WTF); + debugString(DEBUG_PREFIX " songinfo_title: " + songinfo_title, D_WTF); + + if (songinfo_title != "") + { + // Title + if (n > 0) pos += getTextHeight(g_title); + t_title.setText(songinfo_title); + g_title.setXmlParam("y", integerToString(pos)); + g_title.show(); + n++; + cycle.addItem(g_title); + + // Artist + if (songinfo_artist != "") + { + if (n > 0) pos += getTextHeight(g_artist); + t_artist.setText(songinfo_artist); + g_artist.setXmlParam("y", integerToString(pos)); + g_artist.show(); + n++; + cycle.addItem(g_artist); + } + } + else + { + debugString(DEBUG_PREFIX " songinfo_streamtitle: " + songinfo_streamtitle, D_WTF); + if (songinfo_streamtitle != "") + { + int v = strsearch(songinfo_streamtitle, " - "); + if (v > 0) { + string s1 = strleft (songinfo_streamtitle, v); + string s2 = strright (songinfo_streamtitle, strlen(songinfo_streamtitle) - 3 - v); + + // Title + if (n > 0) pos += getTextHeight(g_title); + t_title.setText(s2); + g_title.setXmlParam("y", integerToString(pos)); + g_title.show(); + n++; + cycle.addItem(g_title); + + // Artist + if (n > 0) pos += getTextHeight(g_artist); + if (songinfo_artist == "") t_artist.setText(s1); + else t_artist.setText(songinfo_artist); + g_artist.setXmlParam("y", integerToString(pos)); + g_artist.show(); + n++; + cycle.addItem(g_artist); + } + else + { + // Title + if (n > 0) pos += getTextHeight(g_title); + t_title.setText(songinfo_streamtitle); + g_title.setXmlParam("y", integerToString(pos)); + g_title.show(); + n++; + cycle.addItem(g_title); + + // Artist + if (songinfo_artist != "") { + if (n > 0) pos += getTextHeight(g_artist); + t_artist.setText(songinfo_artist); + g_artist.setXmlParam("y", integerToString(pos)); + g_artist.show(); + n++; + cycle.addItem(g_artist); + } + } + } + } + + // Stream Album + debugString(DEBUG_PREFIX " songinfo_album: " + songinfo_album, D_WTF); + if (songinfo_album != "") + { + if (n > 0) pos += getTextHeight(g_album); + t_album.setText(songinfo_album); + g_album.setXmlParam("y", integerToString(pos)); + g_album.show(); + n++; + cycle.addItem(g_album); + } + + // Stream Genre + String s = getPlayItemMetaDataString("streamgenre"); + debugString(DEBUG_PREFIX " System.getPlayItemMetaDataString(streamgenre): " + s, D_WTF); + if (s != "") + { + t_genre.setText(s); + cycleGenre.setXmlParam("w", "0"); + cycle.addItem(g_genre); + if (n > 0) pos += getTextHeight(g_genre); + g_genre.setXmlParam("y", integerToString(pos)); + g_genre.show(); + n++; + } + + // Set Stream Name + if (songinfo_streamName != "") + { + if (n > 0) pos += getTextHeight(g_sname); + t_sname.setText(songinfo_streamName); + g_sname.setXmlParam("y", integerToString(pos)); + g_sname.show(); + n++; + cycle.addItem(g_sname); + } + + // Stream URL (only visible if we have less than 4 lines till now) + debugString(DEBUG_PREFIX " songinfo_streamURL: " + songinfo_streamURL, D_WTF); + if (songinfo_streamURL != "") + { + if (n > 0) pos += getTextHeight(g_surl); + t_surl.setText(songinfo_streamURL); + g_surl.setXmlParam("y", integerToString(pos)); + g_surl.show(); + n++; + cycle.addItem(g_surl); + } + + // setCover either from a supplied url or from in-stream artwork or default to a generic image + if (songinfo_streamAlbumArt != "") + { + debugString(DEBUG_PREFIX " songinfo_streamAlbumArt: " + songinfo_streamAlbumArt, D_WTF); + l_albumart.setXMLParam("image", songinfo_streamAlbumArt); + l_albumart.setXMLParam("notfoundImage", "winamp.cover.notfound.xxl"); + } + + if(songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST || songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST2) + { + if(songinfo_streamType == SONGINFO_STREAMTYPE_SHOUTCAST2) + { + if(l_albumart.isInvalid() && artRetries < 3) + { + if(!artRetries) + { + l_albumart.setXMLParam("notfoundImage", WEBCOVER_SHOUTCAST); + } + artRetries += 1; + l_albumart.refresh(); + if(!AlbumArt) loadPlaylistArtWork(); + if(AlbumArt) AlbumArt.refresh(); + } + } + else + { + l_albumart.setXMLParam("notfoundImage", WEBCOVER_SHOUTCAST); + } + } + } + + // ---------- Local Info ---------- + else + { + debugString(DEBUG_PREFIX " -> No stream is detected! we do the normal procedure", D_WTF); + string s = songinfo_title; + if (s == "") songinfo_displayTitle; + if (s != "") + { + t_title.setText(s); + g_title.setXmlParam("y", integerToString(pos)); + g_title.show(); + n++; + cycle.addItem(g_title); + } + + if (songinfo_artist != "") + { + if (n > 0) pos += getTextHeight(g_artist); + t_artist.setText(songinfo_artist); + g_artist.setXmlParam("y", integerToString(pos)); + g_artist.show(); + n++; + cycle.addItem(g_artist); + } + + if (songinfo_album != "") + { + if (n > 0) pos += getTextHeight(g_album); + t_album.setText(songinfo_album); + g_album.setXmlParam("y", integerToString(pos)); + g_album.show(); + n++; + cycle.addItem(g_album); + } + + if (infocomp_show_track.getData() == "1") + { + s = getPlayitemMetaDataString("track"); + if (s != "" && s != "-1") + { + // if tracknumber is like 1/9 we display 1 of 9 + if (strsearch(s, "/") != -1) + { + s = getToken(s, "/", 0) + translate(" of ") + getToken(s, "/", 1); + } + if (n > 0) pos += getTextHeight(g_track); + t_track.setText(s); + g_track.setXmlParam("y", integerToString(pos)); + g_track.show(); + n++; + cycle.addItem(g_track); + } + } + + if (infocomp_show_year.getData() == "1") + { + s = getPlayItemMetaDataString("year"); + if (s != "") + { + t_year.setText(s); + cycle.addItem(g_year); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_year); + g_year.setXmlParam("y", integerToString(pos)); + g_year.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + cycleYear.show(); + g_year.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "year") + { + if (g_Track.getGuiY() == pos) g_track.hide(); + startwith = cycle.getNumitems() - 1; + g_year.show(); + } + } + } + } + + if (infocomp_show_genre.getData() == "1") + { + s = getPlayItemMetaDataString("genre"); + if (s != "") + { + t_genre.setText(s); + cycle.addItem(g_genre); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_genre); + g_genre.setXmlParam("y", integerToString(pos)); + g_genre.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + cycleGenre.show(); + g_genre.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "genre") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + startwith = cycle.getNumitems() - 1; + g_genre.show(); + } + } + } + } + + if (infocomp_show_disc.getData() == "1") + { + s = getPlayItemMetaDataString("disc"); + if (s != "") + { + t_disc.setText(s); + cycle.addItem(g_disc); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_disc); + g_disc.setXmlParam("y", integerToString(pos)); + g_disc.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + if (g_genre.getGuiY() == pos) cycleGenre.show(); + cycleDisc.show(); + g_disc.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "disc") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + if (g_genre.getGuiY() == pos) g_genre.hide(); + startwith = cycle.getNumitems() - 1; + g_disc.show(); + } + } + } + } + + if (infocomp_show_albumartist.getData() == "1") + { + s = getPlayItemMetaDataString("albumartist"); + if (s != "") + { + t_albumartist.setText(s); + cycle.addItem(g_albumartist); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_albumartist); + g_albumartist.setXmlParam("y", integerToString(pos)); + g_albumartist.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + if (g_genre.getGuiY() == pos) cycleGenre.show(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + cycleAlbumartist.show(); + g_albumartist.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "albumartist") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + if (g_genre.getGuiY() == pos) g_genre.hide(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + startwith = cycle.getNumitems() - 1; + g_albumartist.show(); + } + } + } + } + + if (infocomp_show_composer.getData() == "1") + { + s = getPlayItemMetaDataString("composer"); + if (s != "") + { + t_composer.setText(s); + cycle.addItem(g_composer); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_composer); + g_composer.setXmlParam("y", integerToString(pos)); + g_composer.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + if (g_genre.getGuiY() == pos) cycleGenre.show(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_albumartist.getGuiY() == pos) cycleAlbumartist.show(); + cycleComposer.show(); + g_composer.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "composer") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + if (g_genre.getGuiY() == pos) g_genre.hide(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_albumartist.getGuiY() == pos) g_albumartist.hide(); + startwith = cycle.getNumitems() - 1; + g_composer.show(); + } + } + } + } + + if (infocomp_show_publisher.getData() == "1") + { + s = getPlayItemMetaDataString("publisher"); + if (s != "") + { + t_publisher.setText(s); + cycle.addItem(g_publisher); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_publisher); + g_publisher.setXmlParam("y", integerToString(pos)); + g_publisher.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + if (g_genre.getGuiY() == pos) cycleGenre.show(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_albumartist.getGuiY() == pos) cycleAlbumartist.show(); + if (g_composer.getGuiY() == pos) cycleComposer.show(); + cyclePublisher.show(); + g_publisher.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "publisher") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + if (g_genre.getGuiY() == pos) g_genre.hide(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_albumartist.getGuiY() == pos) g_albumartist.hide(); + if (g_composer.getGuiY() == pos) g_composer.hide(); + startwith = cycle.getNumitems() - 1; + g_publisher.show(); + } + } + } + } + + if (infocomp_show_format.getData() == "1") + { + s = system.getDecoderName(system.getPlayItemString()); + if (s != "") + { + t_format.setText(s); + cycle.addItem(g_format); + if ((!_rating && n < maxlines) || (_rating && n < maxlines-1)) + { + if (n > 0) pos += getTextHeight(g_format); + g_format.setXmlParam("y", integerToString(pos)); + g_format.show(); + n++; + } + else + { + if (g_Track.getGuiY() == pos) cycleTrack.show(); + if (g_year.getGuiY() == pos) cycleYear.show(); + if (g_genre.getGuiY() == pos) cycleGenre.show(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_disc.getGuiY() == pos) cycleDisc.show(); + if (g_albumartist.getGuiY() == pos) cycleAlbumartist.show(); + if (g_composer.getGuiY() == pos) cycleComposer.show(); + if (g_publisher.getGuiY() == pos) cyclePublisher.show(); + cycleFormat.show(); + g_format.setXmlParam("y", integerToString(pos)); + if (_cycle) cycler.start(); + else if (getPrivateString (getSkinName(), "FileInfo_usersel", "") == "format") + { + if (g_Track.getGuiY() == pos) g_Track.hide(); + if (g_year.getGuiY() == pos) g_year.hide(); + if (g_genre.getGuiY() == pos) g_genre.hide(); + if (g_albumartist.getGuiY() == pos) g_albumartist.hide(); + if (g_composer.getGuiY() == pos) g_composer.hide(); + if (g_publisher.getGuiY() == pos) g_publisher.hide(); + startwith = cycle.getNumitems() - 1; + g_format.show(); + } + } + } + } + + // check the media library status as well as input plug-in support + // to help determine if we show the rating control or not for here + if (_rating) + { + if (!HAVE_ML) + { + s = getPlayitemMetaDataString("rateable"); + if (s != "" && s == "1") + { + if (n > 0) pos += getTextHeight(g_rating); + g_rating.setXmlParam("y", integerToString(pos)); + g_rating.show(); + } + } else { + if (n > 0) pos += getTextHeight(g_rating); + g_rating.setXmlParam("y", integerToString(pos)); + g_rating.show(); + } + } + } + + if (n==0) + { + showBranding(); + } + debugString(DEBUG_PREFIX "}", D_WTF); +} + +//---------------------------------------------------------------------------------------------------------------- +// Item Cycler: Only active if we have more items to display as lines +// if you click on a cycle line, this group is saved as g_target +//---------------------------------------------------------------------------------------------------------------- + +cycler.onTimer () +{ + // Important: stop the cycler if branding is visible + if (l_branding.isvisible()) cycler.stop(); + if (infocomp_cycle.getData() == "0" && !quick_change) { cycler.stop(); return; } + + // g_target is defined --> we save the currently shown line as g_target + if (!g_target) + { + // check if rating is visible... + if (infocomp_show_rating.getData() == "1") + { + // if auto-cycler is disabled, and not the default line is shown, the line number is stored in startwith. + if (startwith) + { + // resort the cycle list and set startwith to 0 + for ( int i = maxlines-2; i < startwith; i++ ) + { + g_target = cycle.enumItem(maxlines-2); + cycle.removeItem(maxlines-2); + cycle.addItem(g_target); + } + startwith = 0; + } + + // save g_target and remove from cycle + g_target = cycle.enumItem(maxlines-2); + cycle.removeItem(maxlines-2); + } + else + { + if (startwith) + { + for ( int i = maxlines-1; i < startwith; i++ ) + { + g_target = cycle.enumItem(maxlines-1); + cycle.removeItem(maxlines-1); + cycle.addItem(g_target); + } + startwith = 0; + } + g_target = cycle.enumItem(maxlines-1); + cycle.removeItem(maxlines-1); + } + // put g_target at the end of cycle + cycle.addItem(g_target); + } + + // otherwise g_target is the last item of cycle + else g_target = cycle.enumItem(cycle.getNumItems()-1); + + // TODO verify fix from pieter! + if (g_target == null) + return; + + + // fade out g_target + g_target.setTargetA(0); + g_target.setTargetY(g_target.getGuiY()); + if (!quick_change) g_target.setTargetSpeed(0.25); // fade or quick show/hide + else g_target.setTargetSpeed(0); + g_target.gotoTarget(); +} + +g_target.onTargetReached () +{ + if (g_target.getAlpha() == 0) + { + // setback g_target to default values + g_target.hide(); + g_target.setAlpha(255); + // detect if rating stars are visible and store the line tb shown in g_target + if (infocomp_show_rating.getData() == "1") + { + g_target = cycle.enumItem(maxlines-2); + cycle.removeItem(maxlines-2); + } + else + { + g_target = cycle.enumItem(maxlines-1); + cycle.removeItem(maxlines-1); + } + // better set g-target alpha to 0 and, show this line and fade in + g_target.setAlpha(0); + g_target.show(); + g_target.setTargetA(255); + g_target.setTargetY(getGuiY()); + if (!quick_change) g_target.setTargetSpeed(0.25); // fade or quick show/hide + else + { + g_target.setTargetSpeed(0); + string v = getToken(g_target.getID(), ".", 2); + setPrivateString (getSkinName(), "FileInfo_usersel", v); // save current line + } + g_target.gotoTarget(); + // add g_target to end of cycle + cycle.addItem(g_target); + if (infocomp_cycle.getData() == "1" && !cycler.isRunning()) cycler.start(); // check if we should start cycler + quick_change = 0; + } +} + +// Automatic cycling through items on/off +infocomp_cycle.onDataChanged () +{ + if (l_branding.isVisible()) return; + if (getData() == "1") + { + if (cycler_paused) cycler.start(); + else loadFileInfo(); + cycler_paused = 0; + } + else + { + if (cycler.isRunning()) cycler_paused = 1; + cycler.stop(); + if (g_track.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "track"); + else if (g_year.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "year"); + else if (g_genre.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "genre"); + else if (g_publisher.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "publisher"); + else if (g_albumartist.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "albumartist"); + else if (g_composer.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "composer"); + else if (g_format.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "format"); + else if (g_disc.isVisible()) setPrivateString (getSkinName(), "FileInfo_usersel", "disc"); + } +} + +// Visual Stuff +CycleObject.onEnterArea () +{ + CycleObject.getParent().findObject("label").setAlpha(255); +} + +CycleObject.onLeaveArea () +{ + CycleObject.getParent().findObject("label").setAlpha(180); +} + +CycleObject.onLeftButtonDown (int x, int y) +{ + CycleObject.getParent().findObject("label").setAlpha(220); +} + +CycleObject.onLeftButtonUp (int x, int y) +{ + if (getAlpha() < 255) return; + + setAlpha(255); + + if (quick_change) return; + quick_change = 1; + + cycler.onTimer (); +} + +//---------------------------------------------------------------------------------------------------------------- +// If user clicks on a link item (artist, album, title), let's start a web search +// Therefore we will send an action to the group "sui.content". This action is either "browser_navigate" or +// "browser_search". This action is then proccessed by suicore.maki (showing browser) and then (again) delivered +// to browser.maki (from suicore.maki) +//---------------------------------------------------------------------------------------------------------------- + +/* + +LinkObject.onEnterArea () +{ + LinkObject.getParent().findObject("label").setAlpha(255); +} + +LinkObject.onLeaveArea () +{ + LinkObject.getParent().findObject("label").setAlpha(180); +} + +LinkObject.onLeftButtonDown (int x, int y) +{ + LinkObject.getParent().findObject("label").setAlpha(220); +} + +LinkObject.onLeftButtonUp (int x, int y) +{ + if (getAlpha() < 255) return; + + setAlpha(255); + + // 5.56: special handling for url/streamname + if (LinkObject == linkSurl || LinkObject == linkSname) + { + String nav = t_surl.getText(); + group sui = scriptGroup.getParentLayout().findObject("sui.content"); + if (nav != "") + { + sui.sendAction ("browser_navigate", nav, 0, 0, 0, 0); + return; + } + } + + string s; + if (infocomp_browser.getData() == "1") + { + if (LinkObject == linkArtist) s = t_artist.getText(); + if (LinkObject == linkAlbum) s = t_artist.getText() + " " + t_album.getText(); + if (LinkObject == linkTitle) s = t_artist.getText() + " " + t_title.getText(); + + if (s == "") return; + + group sui = scriptGroup.getParentLayout().findObject("sui.content"); + sui.sendAction ("browser_search", s, 0, 0, 0, 0); + + return; + } + + if (stationLink != "" && ( LinkObject == linkSname || LinkObject == linkSurl)) + { + group sui = scriptGroup.getParentLayout().findObject("sui.content"); + sui.sendAction ("browser_navigate", stationLink, 0, 0, 0, 0); + + return; + } + + String icid = "fileinfotitle"; + if (LinkObject == linkArtist) icid = "fileinfoartist"; + if (LinkObject == linkAlbum) icid = "fileinfoalbum"; + + String artist = t_artist.getText(); + if (artist == "") return; + System.navigateUrlBrowser("http://client.winamp.com/nowplaying/artist/?artistName=" + artist); +} + +*/ + +//---------------------------------------------------------------------------------------------------------------- +// Rating System +//---------------------------------------------------------------------------------------------------------------- + +System.onCurrentTrackRated (int rating) +{ + refreshRating(rating); +} + +RatingButton.onLeftButtonDown (int x, int y) +{ + RatingButton.setAlpha(255); + RatingButton.getParent().findObject("label").setAlpha(220); +} + +RatingButton.onleftClick () +{ + int rating = stringToInteger(getToken(getId(), ".", 1)); + refreshRating(rating); + setCurrentTrackRating(rating); + for ( int i = 1; i <= rating; i++ ) + { + guiobject o = ratingStars.enumItem(i-1); + o.setAlpha(255); + } +} + +RatingButton.onEnterArea () +{ + RatingButton.getParent().findObject("label").setAlpha(255); + + int pos = stringToInteger(getToken(getId(), ".", 1)); + int rating = System.getCurrentTrackRating(); + + star1.hide(); + star2.hide(); + star3.hide(); + star4.hide(); + star5.hide(); + + if (pos >= 1) star1.show(); + if (pos >= 2) star2.show(); + if (pos >= 3) star3.show(); + if (pos >= 4) star4.show(); + if (pos >= 5) star5.show(); + + if (pos > rating) + { + for ( int i = 1; i <= 5; i++ ) + { + guiobject o = ratingStars.enumItem(i-1); + if ( i > pos || i <= rating) + { + o.setAlpha(255); + } + else + { + o.setAlpha(0); + } + } + } + else + { + rate1.setAlpha(255); + rate2.setAlpha(255); + rate3.setAlpha(255); + rate4.setAlpha(255); + rate5.setAlpha(255); + } +} + +RatingButton.onLeaveArea () +{ + RatingButton.getParent().findObject("label").setAlpha(180); + + star1.hide(); + star2.hide(); + star3.hide(); + star4.hide(); + star5.hide(); + rate1.setAlpha(255); + rate2.setAlpha(255); + rate3.setAlpha(255); + rate4.setAlpha(255); + rate5.setAlpha(255); +} + +refreshRating (int rating) +{ + rate1.setActivated(rating >= 1); + rate2.setActivated(rating >= 2); + rate3.setActivated(rating >= 3); + rate4.setActivated(rating >= 4); + rate5.setActivated(rating >= 5); +} + +RatingButton.onRightButtonUp (int x, int y) +{ + popupmenu rmenu = new popupmenu; + rmenu.addcommand("Remove Rating", 1, 0,0); + int result = rmenu.popAtMouse(); + if (result == 1) + { + setCurrentTrackRating(0); + refreshRating(0); + } + complete; +} + +t_rating.onTextChanged (String newtxt) +{ + int w = t_rating.getAutoWidth(); + + group g = g_rating.findObject("infodisplay.line.rating.stars"); + g.setXmlParam("x", integerToString(w)); + g.setXmlParam("w", integerToString(-w)); + rate0.setXmlParam("w", integerToString(w)); +} + +//---------------------------------------------------------------------------------------------------------------- +// Winamp Branding +//---------------------------------------------------------------------------------------------------------------- + +showBranding() +{ + // stop cycler and hide all infolines + cycler.stop(); + g_cover.setAlpha(0); + g_rating.hide(); + g_title.hide(); + g_album.hide(); + g_artist.hide(); + g_year.hide(); + g_genre.hide(); + g_track.hide(); + g_publisher.hide(); + g_composer.hide(); + g_format.hide(); + g_albumartist.hide(); + g_surl.hide(); + g_sname.hide(); + g_disc.hide(); + + if (ic_vis_fileinfo.getData() == "1") + { + _BrandingsetXSpace((g_cover.getGuiW() + 2) / 2); + _BrandingsetWSpace(-2); + } + else + { + _BrandingsetXSpace(2); + _BrandingsetWSpace(-2); + } + _BrandinghandleResize(); + l_branding.show(); +} + +_BrandingsizeError (boolean iserror) +{ + if (iserror) + { + l_branding.setAlpha(0); + } + else + { + l_branding.setAlpha(255); + } +} + +// Hide branding of we start playback +System.onPlay () +{ + if (ic_fileinfo.getData() == "1" && removePath(getPlayItemString()) == "demo.mp3") + { + if (getPlayitemmetadatastring("artist") == "DJ Mike Llama" && getplayitemmetadatastring("title") == "Llama Whippin' Intro") + { + showBranding(); + return; + } + } + refreshRating(System.getCurrentTrackRating()); + loadFileInfo(); +} + +ic_fileinfo.onDataChanged () +{ + if (getData() == "0") + { + cycler.stop(); + l_branding.hide(); + } + else if (l_branding.isVisible()) + { + showBranding(); + } + else + { + loadFileInfo(); + } +} + +ic_cover_fileinfo.onDataChanged () +{ + if (l_branding.isVisible()) + { + showBranding(); + } +} + +ic_vis_fileinfo.onDataChanged () +{ + if (l_branding.isVisible()) + { + showBranding(); + } +} + +getTextHeight (InfoLine gn) +{ + return stringToInteger(gn.getXmlParam("h")); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/fileinfo.maki b/Src/resources/skins/Big Bento/scripts/fileinfo.maki Binary files differnew file mode 100644 index 00000000..e2eaa995 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/fileinfo.maki diff --git a/Src/resources/skins/Big Bento/scripts/gen_dropbox.m b/Src/resources/skins/Big Bento/scripts/gen_dropbox.m new file mode 100644 index 00000000..c5834017 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/gen_dropbox.m @@ -0,0 +1,145 @@ +#include <lib/std.mi> + +#define GUID_DROPBOX "{E2E4AD32-D87B-4B9E-BF58-46A1336DDC8F}" +#define GUID_DROPBOX_ "{E2E4AD32-D87B-4b9e-BF58-46A1336DDC8F}" +#define USE_BIG_HACK + +Global Frame dualwnd; +Global Group sui_window; +Global Group dropbox; + +Global Timer box_tmr; +Global windowholder dropbox_wdh; + +Global Container main; + +Global int MIN_WIDTH; + +System.onScriptLoaded () +{ + dualwnd = getScriptGroup().findObject("wdh.ml.dualwnd"); + sui_window = getScriptGroup().getParentLayout().findObject("sui.content"); + dropbox = dualwnd.findObject("wdh.ml.dualwnd.dropbox"); + dropbox_wdh = dropbox.findObject("wdh"); + + main = dropbox.getParentLayout().getContainer(); + + //showWindow(GUID_DROPBOX, "", false); + + MIN_WIDTH = stringToInteger(dualwnd.getXmlParam("minwidth")); + dualwnd.setXmlParam("resizable", "0"); + dualwnd.setPosition(0); + + box_tmr = new Timer; + box_tmr.setDelay(1); +} + +System.onScriptUnloading () +{ + delete box_tmr; + + int w = dualwnd.getPosition(); + if (w >= MIN_WIDTH) + { + setPrivateInt(getSkinName(), "gen_dropbox_poppler", w); + } +} +#ifdef 0 +Global Boolean gettingclosed; + +System.onGetCancelComponent (String guid, boolean goingvisible) +{ + + if (guid != GUID_DROPBOX) + { + return FALSE; + } + + if (goingvisible && !gettingclosed) + { + box_tmr.start(); + return TRUE; + } + else + { + if (gettingclosed) + { + gettingclosed = false; + } + else + { + + /*int w = dualwnd.getPosition(); + if (w >= MIN_WIDTH) + { + setPrivateInt(getSkinName(), "gen_dropbox_poppler", w); + } + dualwnd.setXmlParam("resizable", "0"); + dualwnd.setPosition(0);*/ + } + + + } + + + RETURN FALSE; +} + +box_tmr.onTimer () +{ + box_tmr.stop(); + int w = getPrivateInt(getSkinName(), "gen_dropbox_poppler", 200); + if (w < MIN_WIDTH) + w = MIN_WIDTH; + + dualwnd.setXmlParam("resizable", "1"); + + System.showWindow("{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}", "", 0); + //sui_window.sendAction("opentab", "ml", 0,0,0,0); + + dualwnd.setPosition(w); + dropbox.hide(); + dropbox_wdh.hide(); + //dropbox_wdh.setXMLParam("hold", ""); + dropbox_wdh.show(); + //dropbox_wdh.setXMLParam("hold", "@all@"); + dropbox.show(); +} + +#ifdef USE_BIG_HACK + +sui_window.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "callback") + { + if (param == "onbeforehidesui") + { + /*//dualwnd.setPosition(0); + //dropbox.findObject("wdh").setXmlParam("relatw", "0"); + //dropbox.findObject("wdh").setXmlParam("w", "0"); + int i = dualwnd.getLeft() + dualwnd.getWidth(); + dualwnd.setShaded(dualwnd.clientToScreenX(dualwnd.getLeft() +dualwnd.getWidth()),dualwnd.clientToScreenX(dualwnd.getLeft() + dualwnd.getWidth()-dualwnd.getPosition()-4)); + debugInt(dualwnd.clientToScreenX(dualwnd.getLeft() +dualwnd.getWidth()));*/ + dropbox.hide(); +gettingclosed = true; + //dualwnd.setPosition(0); + } + else if (param == "onshowsui") + { + //dualwnd.setPosition(200); + } + } +} + +main.onBeforeSwitchToLayout (Layout oldlayout, Layout newlayout) +{ + if (newLayout.getID() == "shade") + { +dropbox.hide(); +gettingclosed = true; + } + +} + +#endif +#endif diff --git a/Src/resources/skins/Big Bento/scripts/gen_dropbox.maki b/Src/resources/skins/Big Bento/scripts/gen_dropbox.maki Binary files differnew file mode 100644 index 00000000..e7c12f31 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/gen_dropbox.maki diff --git a/Src/resources/skins/Big Bento/scripts/hoverstimulate.m b/Src/resources/skins/Big Bento/scripts/hoverstimulate.m new file mode 100644 index 00000000..5b337ef8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/hoverstimulate.m @@ -0,0 +1,83 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: hoverstimulate.m +Version: 1.0 + +Type: maki +Date: 03. Jul. 2007 - 23:09 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global Button mainButton; +Global Layer overlay; +Global Boolean mouseDown; +Global String img_normal, img_hover, img_down, img_active; + +System.onScriptLoaded () +{ + mainButton = getScriptGroup().findObject(getToken(getParam(), ";", 0)); + overlay = getScriptGroup().findObject(getToken(getParam(), ";", 1)); + img_normal = getToken(getParam(), ";", 2); + img_hover = getToken(getParam(), ";", 3); + img_down = getToken(getParam(), ";", 4); + img_active = getToken(getParam(), ";", 5); +} + +mainButton.onSetVisible (Boolean onoff) +{ + if (onoff) + { + overlay.show(); + } + else + { + overlay.hide(); + } +} + +mainButton.onLeftButtonDown (int x, int y) +{ + mouseDown = 1; + if (img_down != "NULL") overlay.setXmlParam("image", img_down); +} + +mainButton.onLeftButtonUp (int x, int y) +{ + mouseDown = 0; + if (img_hover != "NULL" && !getActivated() && isMouseOverRect()) overlay.setXmlParam("image", img_hover); +} + +mainButton.onleaveArea () +{ + if (!getActivated()) + { + if (img_normal != "NULL") overlay.setXmlParam("image", img_normal); + } + else + { + if (img_active != "NULL") overlay.setXmlParam("image", img_active); + } +} + +mainButton.onEnterArea () +{ + if (img_hover != "NULL") overlay.setXmlParam("image", img_hover); +} + +mainButton.onActivate (int activated) +{ + if (activated) + { + if (img_active != "NULL") overlay.setXmlParam("image", img_active); + } + else + { + if (img_normal != "NULL") overlay.setXmlParam("image", img_normal); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/hoverstimulate.maki b/Src/resources/skins/Big Bento/scripts/hoverstimulate.maki Binary files differnew file mode 100644 index 00000000..f66a9a1d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/hoverstimulate.maki diff --git a/Src/resources/skins/Big Bento/scripts/imagecontrol.m b/Src/resources/skins/Big Bento/scripts/imagecontrol.m new file mode 100644 index 00000000..fb12f445 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/imagecontrol.m @@ -0,0 +1,99 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: imagecontrol.m +Version: 1.0 + +Type: maki +Date: 29. Jun. 2007 - 12:28 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/config.mi> + +Function updateAttrib (); +Class ConfigAttribute ImageAttribute; + +Global ImageAttribute a1, a2, a3, a4, a5, a6; +Global String img1, img2, img3, img4, img5, img6; +Global layer Display; +Global boolean myChange; + +System.onScriptLoaded () +{ + string param = getParam(); + + string objects = getToken(param, "|", 0); + group scriptGroup = getScriptGroup(); + Display = scriptGroup.findObject(objects); + + + int n = stringToInteger(getToken(param, "|", 1)) + 1; + int i = 2; + if (i <= n) + { + objects = getToken(param, "|", i); + a1 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img1 = getToken(objects, ";", 2); + i++; + } + if (i <= n) + { + objects = getToken(param, "|", i); + a2 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img2 = getToken(objects, ";", 2); + i++; + } + if (i <= n) + { + objects = getToken(param, "|", i); + a3 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img3 = getToken(objects, ";", 2); + i++; + } + if (i <= n) + { + objects = getToken(param, "|", i); + a4 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img4 = getToken(objects, ";", 2); + i++; + } + if (i <= n) + { + objects = getToken(param, "|", i); + a5 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img5 = getToken(objects, ";", 2); + i++; + } + if (i <= n) + { + objects = getToken(param, "|", i); + a6 = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + img6 = getToken(objects, ";", 2); + i++; + } + + updateAttrib (); +} + +ImageAttribute.onDataChanged () +{ + if (myChange) return; + updateAttrib (); +} + +updateAttrib () +{ + myChange = 1; + if (a1) if (a1.getData() == "1") Display.setXmlParam("image", img1); + if (a2) if (a2.getData() == "1") Display.setXmlParam("image", img2); + if (a3) if (a3.getData() == "1") Display.setXmlParam("image", img3); + if (a4) if (a4.getData() == "1") Display.setXmlParam("image", img4); + if (a5) if (a5.getData() == "1") Display.setXmlParam("image", img5); + if (a6) if (a6.getData() == "1") Display.setXmlParam("image", img6); + myChange = 0; +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/imagecontrol.maki b/Src/resources/skins/Big Bento/scripts/imagecontrol.maki Binary files differnew file mode 100644 index 00000000..65566a4d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/imagecontrol.maki diff --git a/Src/resources/skins/Big Bento/scripts/infoline.m b/Src/resources/skins/Big Bento/scripts/infoline.m new file mode 100644 index 00000000..1719ed9a --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/infoline.m @@ -0,0 +1,44 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: infoline.m +Version: 1.0 + +Type: maki +Date: 06. Nov. 2007 - 22:40 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global Text txt; +Global Text label; +Global Layer link; +Global Group sg; +Global Int shift = 0; + +System.onScriptLoaded () +{ + sg = getScriptGroup(); + + txt = sg.getObject("text"); + label = sg.getObject("label"); + link = sg.getObject("link"); +} + +System.onSetXuiParam (String param, String value) +{ + if (strlower(param) == "shift") shift = stringToInteger(value); + if (strlower(param) == "label") label.setText(value); + if (strlower(param) == "link") link.setXmlparam("tooltip", value); +} + +label.onTextChanged (String newtxt) +{ + int w = label.getAutoWidth() + shift; + txt.setXmlParam("x", integerToString(w)); + txt.setXmlParam("w", integerToString(-w)); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/infoline.maki b/Src/resources/skins/Big Bento/scripts/infoline.maki Binary files differnew file mode 100644 index 00000000..4a1562e5 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/infoline.maki diff --git a/Src/resources/skins/Big Bento/scripts/lib/debug.m b/Src/resources/skins/Big Bento/scripts/lib/debug.m new file mode 100644 index 00000000..cca40f07 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/lib/debug.m @@ -0,0 +1,52 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: debug.m +Version: 1.2 + +Type: maki/attrib loader +Date: 29. Aug. 2006 - 23:43 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#ifndef DEBUG +#define debugString // +#endif + +#ifdef DEBUG + +#define DEBUG_PREFIX "["+ FILE_NAME +": " + getTimeStamp() + "] " + + +Function String getTimeStamp(); +String getTimeStamp() +{ + int msc = getTimeOfDay(); + int h = msc / 1000 / 3600; + msc -= h * 1000 * 3600; + int m = msc / 1000 / 60; + msc -= m * 1000 * 60; + int s = msc / 1000; + msc -= s * 1000; + string zeros = ""; + if (msc < 100) + { + zeros += "0"; + } + if (msc < 10) + { + zeros += "0"; + } + return integerToString(h)+":"+integerToString(m)+":"+integerToString(s)+"."+zeros+integerToString(msc); +} + +#define D_WTF 9 +#define D_NWTF 9 + +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/lib/glow.m b/Src/resources/skins/Big Bento/scripts/lib/glow.m new file mode 100644 index 00000000..12e0406b --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/lib/glow.m @@ -0,0 +1,111 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: glow.m +Version: 1.0 + +Type: maki/glow class +Date: 16. Jun. 2007 - 23:13 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Usage: 1: #include glow.m + 2: #define GLOW_OBJECT MyGlow + 3: call _MyGlow_GlowInit (someObj, otherObj) + to init the objects. + You can also call _MyGlow_GlowInit (NULL, otherObj) + and load a bunch of GuiObjects in _MyGlow_GlowTrigger + or load up to 5 objects via _MyGlow_addTarget(obj); + +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#ifndef GLOW_OBJECT +#error GLOW_OBJECT not defined! +#endif + +Class GuiObject _##GLOW_OBJECT##_GlowTrigger; +Global _##GLOW_OBJECT##_GlowTrigger _##GLOW_OBJECT##_trigger0, _##GLOW_OBJECT##_trigger1, _##GLOW_OBJECT##_trigger2, _##GLOW_OBJECT##_trigger3, _##GLOW_OBJECT##_trigger4, _##GLOW_OBJECT##_trigger5; +Global GuiObject _##GLOW_OBJECT##_glow; +Global float _##GLOW_OBJECT##_fdoutspeed; +Global boolean _##GLOW_OBJECT##_mouseDown; + +Function _##GLOW_OBJECT##_GlowInit (GuiObject triggerObject, GuiObject glowObject, float fdoutspeed); +Function _##GLOW_OBJECT##_addTrigger (GuiObject triggerObject); + +_##GLOW_OBJECT##_GlowInit (GuiObject triggerObject, GuiObject glowObject, float fdoutspeed) +{ + if (triggerObject) _##GLOW_OBJECT##_trigger0 = triggerObject; + if (glowObject) _##GLOW_OBJECT##_glow = glowObject; + + _##GLOW_OBJECT##_fdoutspeed = fdoutspeed; +} + +_##GLOW_OBJECT##_addTrigger(GuiObject triggerObject) +{ + if (triggerObject) + { + if (!_##GLOW_OBJECT##_trigger1) + { + _##GLOW_OBJECT##_trigger1 = triggerObject; + return; + } + if (!_##GLOW_OBJECT##_trigger2) + { + _##GLOW_OBJECT##_trigger2 = triggerObject; + return; + } + if (!_##GLOW_OBJECT##_trigger3) + { + _##GLOW_OBJECT##_trigger3 = triggerObject; + return; + } + if (!_##GLOW_OBJECT##_trigger4) + { + _##GLOW_OBJECT##_trigger4 = triggerObject; + return; + } + if (!_##GLOW_OBJECT##_trigger5) + { + _##GLOW_OBJECT##_trigger5 = triggerObject; + return; + } + } +} + +_##GLOW_OBJECT##_GlowTrigger.onEnterArea () +{ + _##GLOW_OBJECT##_glow.cancelTarget(); + _##GLOW_OBJECT##_glow.setAlpha(255); +} + +_##GLOW_OBJECT##_GlowTrigger.onLeftButtonDown (int x, int y) +{ + _##GLOW_OBJECT##_mouseDown = 1; + _##GLOW_OBJECT##_glow.cancelTarget(); + _##GLOW_OBJECT##_glow.setAlpha(0); +} + +_##GLOW_OBJECT##_GlowTrigger.onLeftButtonUp (int x, int y) +{ + _##GLOW_OBJECT##_mouseDown = 0; + _##GLOW_OBJECT##_glow.cancelTarget(); + if (_##GLOW_OBJECT##_GlowTrigger.isMouseOverRect()) _##GLOW_OBJECT##_glow.setAlpha(255); +} + +_##GLOW_OBJECT##_GlowTrigger.onLeaveArea () +{ + if (_##GLOW_OBJECT##_mouseDown) return; + _##GLOW_OBJECT##_glow.cancelTarget(); + _##GLOW_OBJECT##_glow.setTargetA(0); + _##GLOW_OBJECT##_glow.setTargetX(_##GLOW_OBJECT##_glow.getGuiX()); + _##GLOW_OBJECT##_glow.setTargetSpeed(_##GLOW_OBJECT##_fdoutspeed); + _##GLOW_OBJECT##_glow.gotoTarget(); +} + +#undef GLOW_OBJECT
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/loadattribs.m b/Src/resources/skins/Big Bento/scripts/loadattribs.m new file mode 100644 index 00000000..67f4b0e8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/loadattribs.m @@ -0,0 +1,89 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: loadattribs.m +Version: 1.2 + +Type: maki/attrib loader +Date: 29. Aug. 2006 - 23:43 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#define MAIN_ATTRIBS_MGR +#define MAIN_ATTRIBS_LOADER + +#include <lib/std.mi> + +#include attribs/init_windowpage.m +#include attribs/init_playlist.m +#include attribs/init_Autoresize.m +#include attribs/init_Vis.m +#include attribs/init_appearance.m +#include attribs/init_songticker.m +#include attribs/init_notifier.m + +Global Configattribute FontRenderer, findOpenRect; +Global String FontRenderer_default, findOpenRect_default; +Global configAttribute skin_attrib; + +System.onScriptLoaded() +{ + initAttribs_Appearance(); + initAttribs_Songticker(); + initAttribs_Autoresize(); + initAttribs_notifier(); + initAttribs_Vis(); + + //without optionsmenu entry: + initAttribs_windowpage(); + initAttribs_Playlist(); + + // Add skin switcher to Appearance menu + + addMenuSeparator(custom_page_appearance); + + if (getParam() == "big") + { + skin_attrib = custom_page_appearance.newAttribute("Switch to Bento with Small Buttons", "0"); + } + else + { + skin_attrib = custom_page_appearance.newAttribute("Switch to Bento with Big Buttons", "0"); + } + + // Turn 'find open rect' temporary off + + findOpenRect = config.getItemByGuid("{280876CF-48C0-40BC-8E86-73CE6BB462E5}").getAttribute("Find open rect"); + findOpenRect_default = findOpenRect.getData(); + findOpenRect.setData("0"); + +} + +System.onScriptUnloading () +{ + findOpenRect.setData(findOpenRect_default); +} + +findOpenRect.onDataChanged () +{ + if (getData() == "0") return; + findOpenRect.setData("0"); +} + +global boolean passtrough; + +skin_attrib.onDataChanged () +{ + if (passtrough) + { + return; + } + passtrough = TRUE; + setData("0"); + if (getParam() == "big") switchSkin("Bento"); + else switchSkin("Big Bento"); + passtrough = FALSE; +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/loadattribs.maki b/Src/resources/skins/Big Bento/scripts/loadattribs.maki Binary files differnew file mode 100644 index 00000000..e6c41c20 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/loadattribs.maki diff --git a/Src/resources/skins/Big Bento/scripts/mainmenu.m b/Src/resources/skins/Big Bento/scripts/mainmenu.m new file mode 100644 index 00000000..af51143b --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mainmenu.m @@ -0,0 +1,164 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: songinfo.m +Version: 1.0 + +Type: maki +Date: 20. Nov. 2006 - 22:47 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_appearance.m + +Class Layer LinkedLayer; + +Function initLL(linkedLayer l); +Function fadeLL(linkedLayer l, boolean in); +Function setLL(linkedLayer l, boolean in); + +Global Group MenuBar; +Global GuiObject mousetrap; +Global Int texth; + +Global LinkedLayer _play, _options, _file, _view, _help; +Global int xpos; + +Global guiObject titlebargrid; + + +System.onScriptLoaded() +{ + initAttribs_Appearance(); + MenuBar = getscriptgroup().findobject("player.mainmenu"); + xpos = 0; + + titlebargrid = getScriptGroup().findObject("titlebar.grid.right"); + + _file = MenuBar.getObject("menu.text.file"); + initLL(_file); + + _play = MenuBar.getObject("menu.text.play"); + initLL(_play); + + _options = MenuBar.getObject("menu.text.options"); + initLL(_options); + + _view = MenuBar.getObject("menu.text.view"); + initLL(_view); + + _help = MenuBar.getObject("menu.text.help"); + initLL(_help); + + mousetrap = MenuBar.findObjecT("menu.hidden.mousetrap"); + + texth = _file.getGuiH(); + + if (menubar_main_attrib.getData() == "1") + { + _options.setXmlParam("h", integerToString(texth)); + _file.setXmlParam("h", integerToString(texth)); + _help.setXmlParam("h", integerToString(texth)); + _view.setXmlParam("h", integerToString(texth)); + _play.setXmlParam("h", integerToString(texth)); + mousetrap.hide(); + } + else + { + _options.setXmlParam("h", "0"); + _file.setXmlParam("h", "0"); + _help.setXmlParam("h", "0"); + _view.setXmlParam("h", "0"); + _play.setXmlParam("h", "0"); + mousetrap.show(); + } +} + +menubar_main_attrib.onDataChanged() { + if (getData() == "1") + { + mousetrap.hide(); + fadeLL(_play, 1); + fadeLL(_view, 1); + fadeLL(_help, 1); + fadeLL(_file, 1); + fadeLL(_options, 1); + } + else + { + mousetrap.show(); + fadeLL(_play, 0); + fadeLL(_view, 0); + fadeLL(_help, 0); + fadeLL(_file, 0); + fadeLL(_options, 0); + } +} + +System.onAccelerator(String action, String section, String key) { + if (menubar_main_attrib.getData() == "0") return; + + Layout l = getScriptGroup().getParentLayout(); + if (!l.isActive()) return; + if (action == "MENUHOTKEY_FILE") + { + MenuBar.findObject("file.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_PLAY") + { + MenuBar.findObject("play.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_OPTIONS") + { + MenuBar.findObject("options.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_VIEW") + { + MenuBar.findObject("view.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_HELP") + { + MenuBar.findObject("help.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } +} + +initLL (LinkedLayer l) +{ + int w = l.getAutoWidth(); + String id = getToken(l.getId(), ".", 2); + GuiObject o = MenuBar.findObject("menu.layer." + id + ".normal"); + if (o) o.setXmlParam("w", integerToString(w)); + if (o) o.setXmlParam("x", integerToString(xpos)); + + o = MenuBar.findObject("menu.layer." + id + ".hover"); + if (o) o.setXmlParam("w", integerToString(w)); + if (o) o.setXmlParam("x", integerToString(xpos)); + + o = MenuBar.findObject("menu.layer." + id + ".down"); + if (o) o.setXmlParam("w", integerToString(w)); + if (o) o.setXmlParam("x", integerToString(xpos)); + + Menu m = MenuBar.findObject(id + ".menu"); + if (m) m.setXmlParam("w", integerToString(w)); + if (m) m.setXmlParam("x", integerToString(xpos)); + + l.setXmlParam("x", integerToString(xpos)); + xpos += w; +} + +fadeLL (linkedLayer l, boolean in) +{ + l.cancelTarget(); + l.setTargetH(texth*in); + l.setTargetSpeed(0.5); + l.gotoTarget(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mainmenu.maki b/Src/resources/skins/Big Bento/scripts/mainmenu.maki Binary files differnew file mode 100644 index 00000000..eca152f8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mainmenu.maki diff --git a/Src/resources/skins/Big Bento/scripts/maximize.m b/Src/resources/skins/Big Bento/scripts/maximize.m new file mode 100644 index 00000000..b944362b --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/maximize.m @@ -0,0 +1,648 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: maximize.m +Version: 3.4 + +Type: maki +Date: 13. Sep. 2007 - 15:05 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_Autoresize.m + +Function setImages(boolean isMaximized); +Function maximizeShade(boolean save); +Function restoreShade(); +Function maximizePlayer(boolean save); +Function restorePlayer(); +Function setWndToScreen(); + +#define SAVEPOS_SHADE 2 +#define SAVEPOS_NORMAL 1 +#define SAVEPOS_ALL 0 +Function savePos(int code); + +Class GuiObject Mousetrap; + +Global Button Maximize, MaximizeShade, Restore, RestoreShade; +Global Mousetrap noResizerTB, MousetrapTB, MousetrapShade, MousetrapMenu; +Global Layout normal, shade; +Global Boolean tgst; +Global Layer resizer, noResizer, resizerShade, resizerShade2, topResizer; +Global Container player; +Global GuiObject shadeticker, slamclose; + +Global Group regions, regionsShade; +Global Layer regionBlack, regionBlackShade; + +Global Int DEFAULT_PLAYER_H, DEFAULT_SHADE_H; +Global Int old_x, old_y, old_h, old_w; + +System.onScriptLoaded () +{ + initAttribs_Autoresize(); + + player = System.getContainer("main"); + normal = player.getLayout("normal"); + + Maximize = normal.findObject("player.titlebar.button.maximize"); + Restore = normal.findObject("player.titlebar.button.restore"); + MousetrapTB = normal.findObject("player.mousetrap.maximize"); + resizer = normal.findObject("player.resizer.bottomright"); + noResizer = normal.findObject("player.resizer.disable"); + noResizerTB = normal.findObject("titlebar.resizer.disable"); + regions = normal.findObject("window.background.regions"); + regionBlack = normal.findObject("window.background.maximize"); + topResizer = normal.findObject("titlebar.resizer.top"); + slamclose = normal.findObject("maximize.slam.close"); + MousetrapMenu = normal.findObject("menu.hidden.mousetrap"); + + shade = player.getLayout("shade"); + shadeticker = shade.findObject("Songticker"); + + MaximizeShade = shade.findObject("shade.button.maximize"); + RestoreShade = shade.findObject("shade.button.restore"); + resizerShade = shade.findObject("shade.resizer.right"); + resizerShade2 = shade.findObject("shade.resizer.right2"); + MousetrapShade = shade.findObject("shade.mousetrap"); + regionsShade = Shade.findObject("window.background.regions"); + regionBlackShade = Shade.findObject("window.background.maximize"); + + DEFAULT_PLAYER_H = stringToInteger(getToken(getParam(), "," , 0)); + DEFAULT_SHADE_H = stringToInteger(getToken(getParam(), "," , 1)); + + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizePlayer (FALSE); + maximizeShade (FALSE); + setImages (1); + } + else + { + if (getPrivateInt(getSkinName(), "First Start", 1)) setWndToScreen(); + else + { + restorePlayer (); + restoreShade (); + } + } +} + +// ------------------------------------------------------------------------------ +// Cope with viewport changes so we're happy with Windows 8.x snapping mode, etc +// ------------------------------------------------------------------------------ + +System.onViewPortChanged(int width, int height) +{ + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + if (normal == player.getCurLayout()) maximizePlayer (FALSE); + else if (shade == player.getCurLayout()) maximizeShade (FALSE); + } +} + +// ------------------------------------------------------------------------------ +// Save all our window positions on skin unloading +// ------------------------------------------------------------------------------ + +System.onScriptUnloading () +{ +// if (player.getCurLayout() == normal) savePos(SAVEPOS_NORMAL); +// else if (player.getCurLayout() == shade) savePos(SAVEPOS_SHADE); +} + +// ------------------------------------------------------------------------------ +// Prohibit autoresizing by Video if we're in maximized player (layout_normal) +// ------------------------------------------------------------------------------ + +sui_autorsize_attrib.onDataChanged () +{ + if (getData() == "1") + { + normal.setXMLParam("lockminmax", "0"); + } + else + { + double d = normal.getScale(); + if (normal.getLeft() == getViewportLeft() && normal.getTop() == getViewportTop() && normal.getWidth() == getViewPortWidthfromGuiObject(normal)/d && normal.getHeight() == getViewPortHeightfromGuiObject(normal)/d) + { + normal.setXMLParam("lockminmax", "1"); + } + } +} + +System.onKeyDown (String key) +{ + if (key == "ctrl+w" && (shade.isActive() || normal.isActive())) + { + if (shade != player.getCurLayout()) + { + player.switchToLayout("shade"); + } + else + { + player.switchToLayout("normal"); + } + complete; + } +} + +// ------------------------------------------------------------------------------ +// Button clicks +// ------------------------------------------------------------------------------ + +Maximize.onLeftClick () +{ + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizePlayer (TRUE); + } +} + +Restore.onLeftClick () +{ + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + restorePlayer (); + } +} + +MaximizeShade.onLeftClick () +{ + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + restoreShade (); + } + else + { + maximizeShade (TRUE); + } +} + +RestoreShade.onLeftClick () +{ + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + restoreShade (); + } + else + { + maximizeShade (TRUE); + } +} + +/** This will detect the second down click */ + +Mousetrap.onLeftButtonDblClk (int x, int y) +{ + tgst = true; +} + +/** Once the button gets up, we'll toggle the maximized state */ + +mousetrap.onLeftButtonUp (int x, int y) +{ + if (tgst) + { + if (shade == player.getCurLayout()) + { + if (titlebar_dblclk_max_attib.getData() == "1") + { + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizeShade (TRUE); + } + else + { + restoreShade(); + } + } + else + { + player.switchToLayout("normal"); + } + } + else + { + if (titlebar_dblclk_max_attib.getData() == "1") + { + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizePlayer (TRUE); + } + else + { + restorePlayer(); + } + } + else + { + player.switchToLayout("shade"); + } + } + } + tgst = false; +} + +topResizer.onLeftButtonDblClk (int x, int y) +{ + if (titlebar_dblclk_max_attib.getData() == "1") + { + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizePlayer (TRUE); + } + else + { + restorePlayer(); + } + } + else + { + player.switchToLayout("shade"); + } +} + +// ------------------------------------------------------------------------------ +// Detect maximized states on window resize +// ------------------------------------------------------------------------------ + +normal.onEndMove () +{ + savePos(SAVEPOS_NORMAL); +} + +normal.onResize (int x, int y, int w, int nh) +{ + //debugString("onResize("+integertoString(x)+","+integertoString(y)+","+integertoString(w)+","+integertoString(nh)+");", 9); + y = normal.getTop(); + // prohibit to set nh = 0 + if (nh == 0 || w == 0) + { + //debug("error setting player_normal w=" + integerToString(w) + " , h=" + integerToString(nh)); + normal.resize(getLeft(), getTop(), getWidth(), DEFAULT_PLAYER_H); + return; + } + + if (normal != player.getCurLayout()) return; + + if (old_x == x && old_y == y && old_h = nh && old_w == w) return; + old_x = x; old_y = y; old_h = nh; old_w = w; + + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Hidden") + { + double d = normal.getScale(); + if (w == getViewPortWidthfromGuiObject(normal)/d && x == getViewportLeft() && y == getViewportTop()) + { + //setPrivateInt(getSkinName(), "isMainWndMaximized", 1); + //setImages (1); + } + else + { + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); + } + } + else + { + double d = normal.getScale(); + if (w == getViewPortWidthfromGuiObject(normal)/d && nh == getViewPortHeightfromGuiObject(normal)/d) + { + //setPrivateInt(getSkinName(), "isMainWndMaximized", 1); + //setImages (1); + } + else + { + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); + } + } + savePos(SAVEPOS_NORMAL); +} + +shade.onEndMove () +{ + savePos(SAVEPOS_SHADE); +} + +shade.onResize (int x, int y, int w, int nh) +{ + y = shade.getTop(); + // prohibit to set nh = 0 + if (nh == 0 || w == 0) + { + debug("error setting player_shade w=" + integerToString(w) + " , h=" + integerToString(nh)); + shade.resize(getLeft(), getTop(), getWidth(), DEFAULT_SHADE_H); + return; + } + + if (shade != player.getCurLayout()) return; + + if (old_x == x && old_y == y && old_h = nh && old_w == w) return; + old_x = x; old_y = y; old_h = nh; old_w = w; + + double d = shade.getScale(); + if (w == getViewPortWidthfromGuiObject(shade)/d && y == getViewportTop() && x == getViewportLeft()) + { + //setPrivateInt(getSkinName(), "isMainWndMaximized", 1); + //setImages (1); + } + else + { + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); + } + savePos(SAVEPOS_SHADE); +} + +// ------------------------------------------------------------------------------ +// Resize our window on scale if we are maximized +// ------------------------------------------------------------------------------ + +normal.onScale (Double newscalevalue) +{ + if (normal != player.getCurLayout()) return; + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizePlayer(FALSE); + } + savePos(SAVEPOS_NORMAL); +} + +shade.onScale (Double newscalevalue) +{ + if (shade != player.getCurLayout()) return; + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + maximizeShade(FALSE); + } + savePos(SAVEPOS_SHADE); +} + +// ------------------------------------------------------------------------------ +// Before we switch between layouts, check all images and window sizes +// ------------------------------------------------------------------------------ + +player.onBeforeSwitchToLayout (Layout _layoutnow, Layout _layouttobe) +{ + if (_layoutnow == normal) savePos(SAVEPOS_NORMAL); + else if (_layoutnow == shade) savePos(SAVEPOS_SHADE); + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + if (_layouttobe == normal) maximizePlayer (FALSE); + else if (_layouttobe == shade) maximizeShade (FALSE); + setImages (1); + } + else + { + if (_layouttobe == normal) restorePlayer (); + else if (_layouttobe == shade) restoreShade (); + } +} + +// ------------------------------------------------------------------------------ +// Save wnd position before we go to collapsed state +// ------------------------------------------------------------------------------ + +normal.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "sui" && param == "tonocomp" && x == 0) + { + savePos (SAVEPOS_NORMAL); + } +} + +// ****************************************************************************** +// Our Function Handles +// ****************************************************************************** + +setImages (boolean isMaximized) +{ + if (isMaximized) + { + // Normal + Maximize.hide(); + Restore.show(); + + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Hidden") + { + MousetrapTB.setXMLparam("move", "0"); + MousetrapMenu.setXMLparam("move", "0"); + noResizerTB.setXMLparam("ghost", "0"); + } + else + { + MousetrapTB.setXMLparam("move", "0"); + MousetrapMenu.setXMLparam("move", "0"); + noResizerTB.setXMLparam("ghost", "0"); + } + + if (sui_autorsize_attrib.getData() == "0") normal.setXMLParam("lockminmax", "1"); + else normal.setXMLParam("lockminmax", "0"); + resizer.hide(); + noResizer.show(); + regions.hide(); + regionBlack.show(); + // Shade + MousetrapShade.setXMLparam("move", "0"); + shadeticker.setXmlParam("move", "0"); + MaximizeShade.hide(); + RestoreShade.show(); + resizerShade.hide(); + regionsShade.hide(); + resizerShade2.hide(); + regionBlackShade.show(); + slamclose.show(); + } + else + { + // Normal + resizer.show(); + noResizer.hide(); + MousetrapTB.setXMLparam("move", "1"); + noResizerTB.setXMLparam("ghost", "1"); + MousetrapMenu.setXMLparam("move", "1"); + normal.setXMLParam("lockminmax", "0"); + Maximize.show(); + Restore.hide(); + regions.show(); + regionBlack.hide(); + // Shade + MousetrapShade.setXMLparam("move", "1"); + shadeticker.setXmlParam("move", "1"); + resizerShade.show(); + resizerShade2.show(); + MaximizeShade.show(); + RestoreShade.hide(); + regionsShade.show(); + regionBlackShade.hide(); + slamclose.hide(); + } +} + +maximizeShade (boolean save) +{ + if (save) + { + savePos(SAVEPOS_SHADE); + + setPrivateInt(getSkinName(), "isMainWndMaximized", 1); + setImages (1); + } + double newscalevalue = shade.getScale(); + int sh = shade.getHeight(); + if (sh < 1) sh = DEFAULT_SHADE_H; + shade.resize(getViewPortLeftfromGuiObject(shade),getViewPortTopfromGuiObject(shade),getViewportWidthfromGuiObject(shade)/newscalevalue, sh); +} + +restoreShade () +{ + if (link_w_attrib.getData() == "0") + { + shade.resize( + getPrivateInt(getSkinName(), "shade_nomax_x", shade.getLeft()), + getPrivateInt(getSkinName(), "shade_nomax_y", shade.getTop()), + getPrivateInt(getSkinName(), "shade_nomax_w", 500), + DEFAULT_SHADE_H + ); + } + else + { + shade.resize( + getPrivateInt(getSkinName(), "nomax_x", shade.getLeft()), + getPrivateInt(getSkinName(), "nomax_y", shade.getTop()), + getPrivateInt(getSkinName(), "nomax_w", 700), + DEFAULT_SHADE_H + ); + } + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); +} + +maximizePlayer (boolean save) +{ + if (save) + { + savePos(SAVEPOS_NORMAL); + setPrivateInt(getSkinName(), "isMainWndMaximized", 1); + setImages (1); + } + + double newscalevalue = normal.getScale(); + int nh; + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Hidden") + { + nh = DEFAULT_PLAYER_H; + } + else + { + nh = getViewPortHeightfromGuiObject(normal)/newscalevalue; + } + if (nh < 1) nh = DEFAULT_PLAYER_H; + normal.resize(getViewPortLeftfromGuiObject(normal), getViewPortTopfromGuiObject(normal), getViewPortWidthfromGuiObject(normal)/newscalevalue, nh); +} + +restorePlayer () +{ + //messagebox("restorePlayer", "", 0, ""); + + int x, y, w, h; + x = getPrivateInt(getSkinName(), "nomax_x", normal.getLeft()); + y = getPrivateInt(getSkinName(), "nomax_y", normal.getTop()); + w = getPrivateInt(getSkinName(), "nomax_w", normal.getWidth()); + + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Hidden") + { + h = DEFAULT_PLAYER_H; + } + else + { + h = getPrivateInt(getSkinName(), "nomax_h", normal.getHeight()); + + } + // check if player_w is too small + if (w < stringToInteger(normal.getXmlParam("minimum_w"))) w = stringToInteger(normal.getXmlParam("minimum_w")); + + normal.resize(x, y, w, h); + normal.sendAction("pledit_posupdate", "", 0,0,0,0); + + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); +} + +savePos (int code) +{ + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) + { + if (code == SAVEPOS_NORMAL || code == SAVEPOS_ALL) + { + if (getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden") + { + int nnh = normal.getHeight(); + + //martin> i really dunno why i've added this code: + //if (nnh > 0 && nnh < 200) setPrivateInt(getSkinName(), "nomax_h", normal.getHeight()); + //So lets try it again w/o switch in order to fix resizing - goto shade - goback - size not remembered bug + if (nnh > 200) setPrivateInt(getSkinName(), "nomax_h", normal.getHeight()); + // ^ otherwise we save in collapsed mode + } + setPrivateInt(getSkinName(), "nomax_x", normal.getLeft()); + setPrivateInt(getSkinName(), "nomax_y", normal.getTop()); + if (normal.getWidth() > 0) setPrivateInt(getSkinName(), "nomax_w", normal.getWidth()); + //debugInt(getPrivateInt(getSkinName(), "nomax_w", normal.getWidth())); + } + if (code == SAVEPOS_SHADE || code == SAVEPOS_ALL) + { + if (link_w_attrib.getData() == "0") + { + setPrivateInt(getSkinName(), "shade_nomax_x", shade.getLeft()); + setPrivateInt(getSkinName(), "shade_nomax_y", shade.getTop()); + if (shade.getWidth() > 0) setPrivateInt(getSkinName(), "shade_nomax_w", shade.getWidth()); + } + else + { + if (shade.getWidth() > 0) setPrivateInt(getSkinName(), "nomax_w", shade.getWidth()); + setPrivateInt(getSkinName(), "nomax_x", shade.getLeft()); + setPrivateInt(getSkinName(), "nomax_y", shade.getTop()); + } + //debugInt(getPrivateInt(getSkinName(), "nomax_w", shade.getWidth())); + //debugInt(getPrivateInt(getSkinName(), "shade_nomax_w", shade.getWidth())); + } + } + if (code == SAVEPOS_NORMAL || code == SAVEPOS_ALL) + { + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Hidden") setPrivateInt(getSkinName(), "nomax_y_h", normal.getTop()); + } + //debugInt(getPrivateInt(getSkinName(), "nomax_w", shade.getWidth())); +} + +setWndToScreen () +{ + int y = getViewPortTop(); + int x = getViewPortLeft(); + int h = getViewPortHeight(); + int w = getViewPortWidth(); + + int sw = 0.8 * w; + int sh = 0.85 * h; + + int mh = stringToInteger(normal.getXmlParam("minimum_h")); + int mw = stringToInteger(normal.getXmlParam("minimum_w")); + + if (sh < mh) sh = mh; + if (sw < mw) sw = mw; + +/* int sx = x + (w-sw)/2; + int sy = y + (h-sh)/2;*/ + + normal.resize(normal.getLeft(), normal.getTop(), sw, sh); + + setPrivateInt(getSkinName(), "First Start", 0); + setPrivateInt(getSkinName(), "isMainWndMaximized", 0); + setImages (0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/maximize.maki b/Src/resources/skins/Big Bento/scripts/maximize.maki Binary files differnew file mode 100644 index 00000000..413673ca --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/maximize.maki diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore.m b/Src/resources/skins/Big Bento/scripts/mcvcore.m new file mode 100644 index 00000000..e8a12077 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore.m @@ -0,0 +1,469 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: mcvcore.m +Version: 4.5 + +Type: maki +Date: 13. Aug. 2007 - 11:22 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on drawer.m + from Winamp Modern, but extended to + 5 components presets! + Like in drawer.m I warn everybody not + to modify this script, cause it can be + harmed very fast! And you don't want + a buggy winamp skin, want you? + + Since script version 3.1 + (onesie build #022) + the script is devided into subscripts + for better debugging. +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_windowpage.m +#include attribs/init_vis.m +#include attribs/init_appearance.m + +//define DEBUG +#define FILE_NAME "infocompcore.m" +#include <lib/com/debug.m> + +#define VIS_GUID "{0000000A-000C-0010-FF7B-01014263450C}" + +#ifndef DOHIDEMCV +#define updateSaving // +#endif + +//define FIT_W2_COMP fit(sui_fi, 159, 0, 2, 0, -162, 1, 76, 0) +#define FIT_W2_COMP fit(sui_fi, 234, 0, 2, 0, -236, 1, 117, 0) +//define FIT_W_COMP fit(sui_fi, 81, 0, 2, 0, -84, 1, 76, 0) +#define FIT_W_COMP fit(sui_fi, 119, 0, 2, 0, -121, 1, 117, 0) +#define FIT_WO_COMP fit(sui_fi, 4, 0, 2, 0, -6, 1, 117, 0) + +Global Boolean bypasscancel; +Global Timer callbackTimer, tempDisable; + +#define CURR_COMP plsc +#include mcvcore/defs.m + +#ifdef IC_COVERFLOW +#undef CURR_COMP +#define CURR_COMP cflow +#include mcvcore/defs.m +#endif + +Function fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh); + +Function switchToIcOnly(); +Function switchToCover(); +Function switchToVisCover(); +Function switchToVis(); +Function switchToEQ(); +Function switchToCfg(); +Function switchToVis_Full(); +Function updateFileInfo(); + +Function hideFi(); +Function showFi(); +Function hideCover(); +Function showCover(); +Function hideVis(); +Function showVis(); +Function hideVis_Full(); +Function showVis_Full(); +Function hideEq(); +Function showEq(); +Function hideCfg(); +Function showCfg(); +Function openIC(); +Function closeIC(); +Function openLC(); +Function closeLC(); +#ifdef DOHIDEMCV +Function hideMCV(); +#endif + +Function onHideFi(); +Function onShowFi(); +Function onHideCover(); +Function onShowCover(); +Function onHideVis(); +Function onShowVis(); +Function onHideVis_Full(); +Function onShowVis_Full(); +Function onHideEq(); +Function onShowEq(); +Function onHideCfg(); +Function onShowCfg(); +Function onCloseIC(); +Function onOpenIC(); +Function onhideMCV(); + +Function dc_hideFi(); +Function dc_showFi(); +Function dc_showEq(); +Function dc_hideEq(); +Function dc_showCfg(); +Function dc_hideCfg(); +Function dc_hideCover(); +Function dc_showCover(); +Function dc_hideVis(); +Function dc_showVis(); +Function dc_hideVis_Full(); +Function dc_showVis_Full(); + +Function updateFooter(); + +Function ProcessMenuResult (int a); + +#ifdef DOHIDEMCV +function updateSaving (int l); +#endif + +Global Group sg, sui_cover, sui_vis_full, sui_vis, sui_fi, sui_eq, sui_cfg, g_footer, g_visbtns; +Global WindowHolder sui_vis_wdh, sui_vis_full_wdh; +Global Layout main; +Global Boolean callback_showing_vis, callback_hiding_vis, callback_showing_vis_full, callback_hiding_vis_full, callback_showing_cover, callback_hiding_cover, callback_showing_fi, callback_hiding_fi, callback_hiding_eq, callback_showing_eq, callback_hiding_cfg, callback_showing_cfg; +Global Boolean showing_vis, hiding_vis, showing_vis_full, hiding_vis_full, showing_cover, hiding_cover, hiding_fi, showing_fi, showing_eq, hiding_eq, showing_cfg, hiding_cfg; +Global Boolean Mychange; +Global Boolean prevent_vis = 1; +Global Frame dualwnd, mainframe; +Global GuiObject footerGrid, sendToBtn; + +Global Popupmenu compMenu; +// Global Button compChoose, nowPlayingBtn, webSearchBtn; +Global Button compChoose; +Global Boolean startup_done; +Global Int substract = 0; + +#ifdef DOHIDEMCV +Global Int last_menu_sel; +#endif + +// script loading/unloading goes here +#include mcvcore/load_handles.m + +// open / hiding components not caused by button clicks +#include mcvcore/external_handles.m + +// showing and hiding the components +#include mcvcore/show_hide.m + + +/* Switching menu */ +compChoose.onRightButtonUp(int x, int y) +{ + complete; +} + +compChoose.onRightClick () { + compChoose.onLeftClick (); +} + +compChoose.onLeftClick () +{ + compMenu = new Popupmenu; + popupmenu fiSub = new Popupmenu; + compMenu.addCommand("File Info", 1, ic_fileinfo.getData() == "1", 0); +#ifdef IC_COVERFLOW + compMenu.addCommand("Cover Flow", 7, _cflow_ic_attrib.getData() == "1", 0); +#endif + // System.isSafeMode() is not recognized by mc.exe + // if(!System.isSafeMode()) + // { + compMenu.addCommand("Visualization", 2, ic_vis.getData() == "1", 0); + // } + compMenu.addCommand("Stored Playlists", 3, _plsc_ic_attrib.getData() == "1", 0); + compMenu.addCommand("Equalizer", 4, ic_eq.getData() == "1", 0); + compMenu.addCommand("Skin Settings", 5, ic_config.getData() == "1", 0); +#ifdef DOHIDEMCV + compMenu.addCommand("Hide Multi Content View", 6, ic_hidden.getData() == "1", 0); +#endif + compMenu.addSeparator(); + compMenu.addSubmenu(fiSub, "File Info Components"); + + // System.isSafeMode() is not recognized by mc.exe + // if(!System.isSafeMode()) + // { + fiSub.addCommand("Visualization", 12, ic_vis_fileinfo.getData() == "1", 0); + // } + fiSub.addCommand("Album Art", 11, ic_cover_fileinfo.getData() == "1", 0); + fiSub.addSeparator(); + fiSub.addCommand("Show Track #", 24, infocomp_show_track.getData() == "1", 0); + fiSub.addCommand("Show Year", 21, infocomp_show_year.getData() == "1", 0); + fiSub.addCommand("Show Genre", 22, infocomp_show_genre.getData() == "1", 0); + fiSub.addCommand("Show Disc", 28, infocomp_show_disc.getData() == "1", 0); + fiSub.addCommand("Show Album Artist", 25, infocomp_show_albumartist.getData() == "1", 0); + fiSub.addCommand("Show Composer", 26, infocomp_show_composer.getData() == "1", 0); + fiSub.addCommand("Show Publisher", 23, infocomp_show_publisher.getData() == "1", 0); + fiSub.addCommand("Show Decoder", 27, infocomp_show_format.getData() == "1", 0); + fiSub.addCommand("Show Song Rating", 20, infocomp_show_rating.getData() == "1", 0); + fiSub.addSeparator(); + fiSub.addCommand("Cycle File Info", 30, infocomp_cycle.getData() == "1", 0); + fiSub.addSeparator(); + //fiSub.addCommand("Open Links in Now Playing", 40, infocomp_nowplaying.getData() == "1", 0); + //fiSub.addCommand("Open Links in Browser", 41, infocomp_browser.getData() == "1", 0); + + ProcessMenuResult (compMenu.popAtXY(clientToScreenX(compChoose.getLeft()), clientToScreenY(compChoose.getTop() + compChoose.getHeight()))); + delete compMenu; + delete fiSub; + complete; +} + +ProcessMenuResult (int a) +{ + if (a < 1) return; + if (a == 1) + { + ic_fileinfo.setData("1"); + } + else if (a == 2) + { + ic_vis.setData("1"); + } + else if (a == 3) + { + _plsc_ic_attrib.setData("1"); + } +#ifdef IC_COVERFLOW + else if (a == 7) + { + _cflow_ic_attrib.setData("1"); + } +#endif + else if (a == 4) + { + ic_eq.setData("1"); + } + else if (a == 5) + { + ic_config.setData("1"); + } +#ifdef DOHIDEMCV + else if (a == 6) + { + ic_hidden.setData("1"); + } +#endif + else if (a == 11) + { + toggleAttrib(ic_cover_fileinfo); + } + else if (a == 12) + { + toggleAttrib(ic_vis_fileinfo); + } + else if (a == 20) + { + toggleAttrib(infocomp_show_rating); + } + else if (a == 21) + { + toggleAttrib(infocomp_show_year); + } + else if (a == 22) + { + toggleAttrib(infocomp_show_genre); + } + else if (a == 23) + { + toggleAttrib(infocomp_show_publisher); + } + else if (a == 24) + { + toggleAttrib(infocomp_show_track); + } + else if (a == 25) + { + toggleAttrib(infocomp_show_albumartist); + } + else if (a == 26) + { + toggleAttrib(infocomp_show_composer); + } + else if (a == 27) + { + toggleAttrib(infocomp_show_format); + } + else if (a == 28) + { + toggleAttrib(infocomp_show_disc); + } + else if (a == 30) + { + toggleAttrib(infocomp_cycle); + } +/* else if (a == 40) + { + toggleAttrib(infocomp_nowplaying); + } + else if (a == 41) + { + toggleAttrib(infocomp_browser); + } +*/ +} + +// Hiding footer buttons (for file info view) + +/* artist_info_buttons_attrib.onDataChanged () +{ + + updateFooter (); +} +*/ +g_footer.onResize (int x, int y, int w, int h) +{ + if (substract == 1) + w += stringToInteger(dualwnd.getXmlParam("maxwidth")) + 78; + else if (substract == 2) + w += stringToInteger(dualwnd.getXmlParam("maxwidth")) + 102; + +/* if (artist_info_buttons_attrib.getData() == "1") + { + if (w < 132) footerGrid.hide(); + else footerGrid.show(); + + if (w < 125) nowPlayingBtn.hide(); + else nowPlayingBtn.show(); + + if (w < 94) webSearchBtn.hide(); + else webSearchBtn.show(); + } + else + { + if (w < 70) footerGrid.hide(); + else footerGrid.show(); + nowPlayingBtn.hide(); + webSearchBtn.hide(); + } +*/ + if (w < 63) sendToBtn.hide(); + else sendToBtn.show(); + + if (w < 32) compChoose.hide(); + else compChoose.show(); +} + +updateFooter () +{ + g_footer.onResize (0, 0, g_footer.getWidth(), 0); +} + +#ifdef DOHIDEMCV +// Switching back from no comp + +sg.onResize (int x, int y, int w, int h) +{ + + if (ic_hidden.getData() == "0" || last_menu_sel == 0 || w == 0)// && dualwnd.getXmlParam("from") == "left") + { + return; + } + ProcessMenuResult (getPrivateInt(getSkinName(), "MCV last sel", 1)); +} + +// save last pos + +updateSaving (int l) +{ + if (last_menu_sel == l) + { + return; + } + if (last_menu_sel != 0) setPrivateInt(getSkinName(), "MCV last sel", last_menu_sel); + last_menu_sel = l; +} +#endif + +/** OSD */ +/* +Global boolean mouse_is_over = FALSE; + +osd_trigger.onEnterArea () +{ + //setXmlParam("ghost", "1"); +} + +osd_trigger.onMouseMove (int x, int y) +{ + if (!isMouseOverRect() && mouse_is_over) + { + mouse_is_over = 0; + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); + c = sui_vis.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); + } + else if (isMouseOverRect() && !mouse_is_over) + { + mouse_is_over = 1; + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.button.region", 0, 0, 0, 0); + c = sui_vis.findObject("vis"); + c.sendAction("setregion", "vis.button.region", 0, 0, 0, 0); + } +} + +osd_trigger.onLeaveArea () +{ + component c = sui_vis_full.findObject("vis"); + c.sendAction("setregion", "vis.normal.region", 0, 0, 0, 0); +}*/ + +/** Calls after comp is shown */ + +onCloseIC() {} +onOpenIC() {} + +onShowCover() {} + +onHideCover() {} + +onShowFi() {} + +onHideFi() {} + +onShowEq() {} + +onHideEq() {} + +onShowCfg() {} + +onHideCfg() {} + +onShowVis() +{ + g_visbtns.show(); +} +onHideVis() +{ + g_visbtns.hide(); +} + +onShowVis_Full() {} + +onHideVis_Full() {} + +#ifdef DOHIDEMCV +onhideMCV() {} +#endif + +fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh) +{ + if (!g) return; + g.setXmlParam("x", integerToString(x)); + g.setXmlParam("y", integerToString(y)); + g.setXmlParam("w", integerToString(w)); + g.setXmlParam("h", integerToString(h)); + g.setXmlParam("relatx", integerToString(rx)); + g.setXmlParam("relaty", integerToString(ry)); + g.setXmlParam("relatw", integerToString(rw)); + g.setXmlParam("relath", integerToString(rh)); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore.maki b/Src/resources/skins/Big Bento/scripts/mcvcore.maki Binary files differnew file mode 100644 index 00000000..4a5139f2 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore.maki diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore/defs.m b/Src/resources/skins/Big Bento/scripts/mcvcore/defs.m new file mode 100644 index 00000000..eb75a680 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore/defs.m @@ -0,0 +1,98 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: defs.m +Version: 1.0 + +Type: maki +Date: 08. Jun. 2007 - 23:32 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + + +Function _##CURR_COMP##_switchTo(); +Function _##CURR_COMP##_show(); +Function _##CURR_COMP##_hide(); + +Function _##CURR_COMP##_onHide(); +Function _##CURR_COMP##_onShow(); + +Function _##CURR_COMP##_dc_show(); +Function _##CURR_COMP##_dc_hide(); + +Global Group _##CURR_COMP##_sui; +Global Boolean _##CURR_COMP##_callback_hiding, _##CURR_COMP##_callback_showing; +Global Boolean _##CURR_COMP##_showing, _##CURR_COMP##_hiding; + + + +_##CURR_COMP##_show() +{ + debugString(DEBUG_PREFIX "_##CURR_COMP##_show() {", D_WTF); + + _##CURR_COMP##_showing = 1; + GuiObject o = _##CURR_COMP##_sui; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) ##CURR_COMP## object not provided (show)", D_WTF); +#endif + _##CURR_COMP##_onShow(); + _##CURR_COMP##_showing = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +_##CURR_COMP##_hide() +{ + debugString(DEBUG_PREFIX "_##CURR_COMP##_hide() {", D_WTF); + + _##CURR_COMP##_hiding = 1; + GuiObject o = _##CURR_COMP##_sui; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) ##CURR_COMP## object not provided (hide)", D_WTF); +#endif + _##CURR_COMP##_onHide(); + _##CURR_COMP##_hiding = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +_##CURR_COMP##_dc_show () +{ + debugString(DEBUG_PREFIX "_##CURR_COMP##__dc_show();", D_WTF); + _##CURR_COMP##_callback_showing = 1; + _##CURR_COMP##_callback_hiding = 0; + callbackTimer.start(); +} + +_##CURR_COMP##_dc_hide() +{ + _##CURR_COMP##_callback_showing = 0; + _##CURR_COMP##_callback_hiding = 1; + callbackTimer.start(); +} + +_##CURR_COMP##_onShow() {} +_##CURR_COMP##_onHide() {}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore/external_handles.m b/Src/resources/skins/Big Bento/scripts/mcvcore/external_handles.m new file mode 100644 index 00000000..7d86bf6f --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore/external_handles.m @@ -0,0 +1,295 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: external_handles.m +Version: 1.0 + +Type: maki +Date: 29. Nov. 2006 - 15:57 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#ifdef DEBUG +/** has only debug aims :) */ +/* +System.onLookForComponent(String guid) { +debugString(DEBUG_PREFIX "System.onLookForComponent ( "+ guid + " )", D_WTF); +}*/ +#endif + +#ifdef IC_COVERFLOW +#define ACTIONPERFORMED showing_Fi || hiding_Fi || showing_Cover || hiding_Cover || showing_Vis || hiding_Vis || showing_Vis_Full || hiding_Vis_Full || hiding_eq || showing_eq || hiding_cfg || showing_cfg || _plsc_hiding || _plsc_showing || _cflow_hiding || _cflow_showing +#endif +#ifndef IC_COVERFLOW +#define ACTIONPERFORMED showing_Fi || hiding_Fi || showing_Cover || hiding_Cover || showing_Vis || hiding_Vis || showing_Vis_Full || hiding_Vis_Full || hiding_eq || showing_eq || hiding_cfg || showing_cfg || _plsc_hiding || _plsc_showing +#endif +/** the component switching */ + +System.onGetCancelComponent(String guid, boolean goingvisible) { + debugString(DEBUG_PREFIX "System.onGetCancelComponent ( "+ guid + " , " + integerToString(goingvisible) + " ) {", D_WTF); + + if (bypasscancel) + { + debugString(DEBUG_PREFIX " --> bypasscancel", 0); + debugString(DEBUG_PREFIX " return FALSE;", 0); + debugString(DEBUG_PREFIX "}", 0); + + return FALSE; + } + if (guid == VIS_GUID && !goingvisible && hiding_vis) + { + debugString(DEBUG_PREFIX " --> hiding_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIS_GUID && goingvisible && showing_vis) + { + debugString(DEBUG_PREFIX " --> showing_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIS_GUID && !goingvisible && hiding_vis_full) + { + debugString(DEBUG_PREFIX " --> hiding_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIS_GUID && goingvisible && showing_vis_full) + { + debugString(DEBUG_PREFIX " --> showing_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + + if (!main.isVisible()) + { + debugString(DEBUG_PREFIX " --> main layout isn't visible", 0); + debugString(DEBUG_PREFIX " return FALSE;", 0); + debugString(DEBUG_PREFIX "}", 0); + + return FALSE; + } + + if (goingvisible) { + if (guid == VIS_GUID) + { + if (vis_inbig_attrib.getData() == "1") return FALSE; + debugString(DEBUG_PREFIX " --> external showing_vis --- start Timer", D_WTF); + if (vis_lefttoplayer_attrib.getData() == "1" && !sui_vis.isVisible()) + { + sui_vis_wdh.setXmlParam("autoopen", "0"); + //showVis(); + callback_showing_vis = 1; + callback_hiding_vis = 0; + callbackTimer.onTimer(); + + sui_vis_wdh.setXmlParam("autoopen", "1"); + + debugString(DEBUG_PREFIX " --> open SMALL", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + if (vis_lefttoplayer_full_attrib.getData() == "1" && !sui_vis_full.isVisible()) + { + sui_vis_full_wdh.setXmlParam("autoopen", "0"); + //switchToVis_Full(); + callback_showing_vis_full = 1; + callback_hiding_vis_full = 0; + callbackTimer.onTimer(); + sui_vis_full_wdh.setXmlParam("autoopen", "1"); + + debugString(DEBUG_PREFIX " --> open FULL", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + debugString(DEBUG_PREFIX " return FALSE; (other handle?)", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + } + if (!goingvisible) { + if (guid == VIS_GUID && (sui_vis.isVisible() || sui_vis_full.isVisible())) { + if (vis_inbig_attrib.getData() == "1") return FALSE; + debugString(DEBUG_PREFIX " --> external hiding_vis", D_WTF); + + if (ic_vis.getdata() == "1") + { + ic_fileinfo.setdata("1"); + } + + ic_vis_fileinfo.setData("0"); + + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + } + + debugString(DEBUG_PREFIX " --> Went thru", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; +} + +ic_cover_fileinfo.onDataChanged () +{ + if (ic_fileinfo.getData() == "0") return; + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + updateFileInfo(); + mychange = 0; +} + +ic_fileinfo.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + updateFileInfo(); + } + mychange = 0; +} + +ic_eq.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + switchToEq(); + } + mychange = 0; +} + +ic_config.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + switchToCfg(); + } + mychange = 0; +} + +_plsc_ic_attrib.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + _Plsc_switchTo(); + } + mychange = 0; +} + +#ifdef IC_COVERFLOW +_cflow_ic_attrib.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + _Cflow_switchTo(); + } + mychange = 0; +} +#endif + +ic_vis.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + ic_vis_fileinfo.setData("0"); + switchToVis_Full(); + } + mychange = 0; +} + +ic_vis_fileinfo.onDataChanged () +{ + if (ic_fileinfo.getData() == "0") return; + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + updateFileInfo(); + mychange = 0; +} +#ifdef DOHIDEMCV +ic_hidden.onDataChanged () +{ + if ( ACTIONPERFORMED ) return; + if (mychange) return; + mychange = 1; + if (getData() == "1") + { + hideMCV(); + } + mychange = 0; +} +#endif +vis_lefttoplayer_attrib.onDataChanged () +{ + if (mychange) return; + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + int xg = getPrivateInt(getSkinName(), "ComponentXgive", 0); + if (getData() == "1" && (window_content == "Vis" || ic_vis.getData() == "1" || xg)) + { + if (xg) setPrivateInt(getSkinName(), "ComponentXgive", 0); + ic_vis_fileinfo.setData("1"); + ic_fileinfo.setData("0"); + } + else if (getData() == "0" && sui_vis.isVisible() && vis_lefttoplayer_full_attrib.getData() != "1") + { + setPrivateInt(getSkinName(), "ComponentXgive", 1); + ic_vis_fileinfo.setData("0"); + } +} + +vis_lefttoplayer_full_attrib.onDataChanged () +{ + if (mychange) return; + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + int xg = getPrivateInt(getSkinName(), "ComponentXgive", 0); + if (getData() == "1" && (window_content == "Vis" || ic_vis_fileinfo.getData() == "1" || xg)) + { + if (xg) setPrivateInt(getSkinName(), "ComponentXgive", 0); + switchToVis_Full(); + } + else if (getData() == "0" && sui_vis_full.isVisible() && vis_lefttoplayer_attrib.getData() != "1") + { + setPrivateInt(getSkinName(), "ComponentXgive", 1); + updateFileInfo(); + } +} diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore/load_handles.m b/Src/resources/skins/Big Bento/scripts/mcvcore/load_handles.m new file mode 100644 index 00000000..00a1f78a --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore/load_handles.m @@ -0,0 +1,138 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: load_handles.m +Version: 1.0 + +Type: maki +Date: 28. Dez. 2006 - 08:40 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +System.onScriptLoaded () +{ + initAttribs_windowpage(); + initAttribs_vis(); + initAttribs_Appearance(); + + debugString(DEBUG_PREFIX "System.onScriptLoded() {", 0); + + sg = getScriptGroup(); + main = sg.getParentLayout(); + + if (getParam() == "big") + { + mainframe = main.getObject("player.mainframe.big"); + } + else + { + mainframe = main.getObject("player.mainframe"); + } + + dualwnd = mainframe.findObject("player.dualwnd"); + + sui_cover = sg.findObject("info.component.cover"); + sui_vis = sg.findObject("info.component.vis"); + sui_vis_full = sg.findObject("info.component.vis.full"); + sui_vis_wdh = sui_vis.getObject("vis"); + sui_vis_full_wdh = sui_vis_full.getObject("vis"); + sui_fi = sg.findObject("info.component.infodisplay"); + sui_eq = sg.findObject("info.component.eq"); + sui_cfg = sg.findObject("info.component.config"); + _plsc_sui = sg.findObject("info.component.plsidecar"); +#ifdef IC_COVERFLOW + _cflow_sui = sg.findObject("info.component.coverflow"); +#endif + g_footer = sg.findObject("infocomp.background.footer"); + g_visbtns = g_footer.findObject("infocomp.visbuttons"); + footerGrid = g_footer.findObject("footer.background.grid"); + + compChoose = sg.findObject("comp.menu"); + sendToBtn = sg.findObject("sendTo"); + //nowPlayingBtn = sg.findObject("nowplaying"); + //webSearchBtn = sg.findObject("search"); +#ifdef DOHIDEMCV + last_menu_sel = getPrivateInt(getSkinName(), "MCV last sel", 1); +#endif + callbackTimer = new Timer; + callbackTimer.setDelay(1); + tempDisable = new Timer; + tempDisable.setDelay(50); + + if (ic_fileinfo.getData() == "1") + { + updateFileInfo (); + } + else if (ic_vis.getData() == "1") + { + switchToVis_Full(); + } + else if (ic_eq.getData() == "1") + { + switchToEq(); + } + else if (ic_config.getData() == "1") + { + switchToCfg(); + } + else if (_plsc_ic_attrib.getData() == "1") + { + _plsc_switchTo(); + } +#ifdef IC_COVERFLOW + else if (_cflow_ic_attrib.getData() == "1") + { + _cflow_switchTo(); + } +#endif +#ifdef DOHIDEMCV + else if (ic_hidden.getData() == "1") + { + hideMCV(); + } +#endif + startup_done = 1; + debugString(DEBUG_PREFIX "}", 0); + prevent_vis = 0; +} + +updateFileInfo () +{ + if (ic_vis_fileinfo.getData() == "1" && ic_cover_fileinfo.getData() == "1") + { + switchToVisCover(); + } + else if (ic_vis_fileinfo.getData() == "1") + { + switchToVis(); + } + else if (ic_cover_fileinfo.getData() == "1") + { + switchToCover(); + } + else + { + switchToIcOnly(); + } +} + +System.onScriptUnloading () +{ + debugString(DEBUG_PREFIX "System.onScriptUnloading() {", 0); + + delete callbackTimer; + delete tempDisable; + + debugString(DEBUG_PREFIX " delete Timers;", 0); + debugString(DEBUG_PREFIX "}", 0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mcvcore/show_hide.m b/Src/resources/skins/Big Bento/scripts/mcvcore/show_hide.m new file mode 100644 index 00000000..28a6f2f3 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mcvcore/show_hide.m @@ -0,0 +1,915 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: show_hide.m +Version: 1.0 + +Type: maki +Date: 29. Nov. 2006 - 15:57 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/infocompcore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +switchToCover () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_cover_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 0; + sui_cover.setXmlParam("x", "4"); + + dualwnd.setXmlParam("maxwidth", "-127"); + dualwnd.sendAction("set_maxwidth", "", -127, 0 , 0, 0); + + g_footer.setXmlParam("x", "117"); + g_footer.setXmlParam("w", "-118"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showCover(); + FIT_W_COMP; + updateSaving(1); +} + +switchToVisCover () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_cover_fileinfo.setData("1"); + ic_vis_fileinfo.setData("1"); + vis_lefttoplayer_attrib.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 0; + sui_cover.setXmlParam("x", "119"); + + dualwnd.setXmlParam("maxwidth", "-242"); + dualwnd.sendAction("set_maxwidth", "", -242, 0 , 0, 0); + + g_footer.setXmlParam("x", "232"); + g_footer.setXmlParam("w", "-234"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showCover(); + showVis(); + FIT_W2_COMP; + updateSaving(1); +} +switchToVis () +{ + debugString(DEBUG_PREFIX "switchToVis();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideCover(); + hideVis_Full(); + hideEq(); + hideCfg(); + openIC(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) + { + ic_vis_fileinfo.setData("1"); + vis_lefttoplayer_attrib.setData("1"); + ic_fileinfo.setData("1"); + } + mychange = 0; + substract = 1; + + dualwnd.setXmlParam("maxwidth", "-127"); + dualwnd.sendAction("set_maxwidth", "", -127, 0 , 0, 0); + + g_footer.setXmlParam("x", "117"); + g_footer.setXmlParam("w", "-118"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showVis(); + FIT_W_COMP; + updateSaving(1); +} + +switchToIcOnly () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideEq(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + if (startup_done) ic_fileinfo.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-127"); + dualwnd.sendAction("set_maxwidth", "", -127, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showFi(); + FIT_WO_COMP; + updateSaving(1); +} + +switchToEq () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + substract = 1; + ic_eq.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + + dualwnd.setXmlParam("maxwidth", "-196"); + dualwnd.sendAction("set_maxwidth", "", -196, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showEq(); + updateSaving(4); +} + +switchToCfg () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_config.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 2; + + dualwnd.setXmlParam("maxwidth", "-242"); + dualwnd.sendAction("set_maxwidth", "", -242, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + showCfg(); + updateSaving(5); +} + +_Plsc_switchTo () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + hideCfg(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + _plsc_ic_attrib.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + _Plsc_show(); + updateSaving(3); +} + +#ifdef IC_COVERFLOW +_Cflow_switchTo () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + hideVis(); + hideCover(); + hideFi(); + hideEq(); + hideCfg(); + _Plsc_hide(); + mychange = 1; + _cflow_ic_attrib.setData("1"); + //ic_vis_fileinfo.setData("0"); + //ic_vis.setData("0"); + mychange = 0; + substract = 0; + + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + + _Cflow_show(); + updateSaving(3); +} +#endif + +switchToVis_Full () +{ + debugString(DEBUG_PREFIX "switchToVis_FULL();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + closeIC(); + hideVis(); + hideCover(); + hideEq(); + //hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_vis.setData("1"); + vis_lefttoplayer_full_attrib.setData("1"); + mychange = 0; + substract = 1; + + dualwnd.setXmlParam("maxwidth", "-196"); + dualwnd.sendAction("set_maxwidth", "", -196, 0 , 0, 0); + + g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + + updateFooter(); + +#ifdef DOHIDEMCV + dualwnd.setXmlParam("from", "right"); + dualwnd.setXmlParam("minwidth", "147"); +#endif + showVis_Full(); + updateSaving(2); +} + +#ifdef DOHIDEMCV +hideMCV () +{ + debugString(DEBUG_PREFIX "hideMCV();", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis_Full(); + closeIC(); + hideVis(); + hideCover(); + hideEq(); + //hideFi(); + hideCfg(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif + mychange = 1; + ic_hidden.setData("1"); + mychange = 0; + updateSaving(0); + /*g_footer.setXmlParam("x", "6"); + g_footer.setXmlParam("w", "-7"); + dualwnd.setXmlParam("maxwidth", "-156"); + dualwnd.sendAction("set_maxwidth", "", -156, 0 , 0, 0);*/ +// dualwnd.setXmlParam("maxwidth", "-8"); +// dualwnd.sendAction("set_maxwidth", "", -8, 0 , 0, 0); + dualwnd.setXmlParam("from", "left"); + dualwnd.setXmlParam("minwidth", integerToString(8 - stringtoInteger(dualwnd.getXmlParam("maxwidth")))); + dualwnd.setXmlParam("maxwidth", "-155"); + dualwnd.sendAction("set_maxwidth", "", -155, 0 , 0, 0); + dualwnd.setPosition(0); + updateSaving(6); +} +#endif + +tempDisable.onTimer() +{ + stop(); +} + +closeLC () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideVis(); + hideCover(); + hideCfg(); + hideEq(); + hideVis_Full(); + _Plsc_hide(); +#ifdef IC_COVERFLOW + _Cflow_hide(); +#endif +} + +closeIC () +{ + debugString(DEBUG_PREFIX "closeIC() {", 0); + + hideFi(); + + onCloseIC(); + + debugString(DEBUG_PREFIX "}", 0); +} + +openIC () +{ + debugString(DEBUG_PREFIX "openIC() {", 0); + + showFi(); + + onOpenIC(); + + debugString(DEBUG_PREFIX "}", 0); +} + +showFi() +{ + debugString(DEBUG_PREFIX "showFi() {", 0); + + showing_fi = 1; + setPrivateString(getSkinName(), "Component3", "File Info"); + GuiObject o = sui_fi; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) fi object not provided (show)", 0); +#endif + onShowFi(); + showing_Fi = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +hideFi() +{ + debugString(DEBUG_PREFIX "hideFi() {", 0); + + hiding_Fi = 1; + GuiObject o = sui_fi; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) sfi object not provided (hide)", 0); +#endif + onHideFi(); + hiding_Fi = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +showVis() +{ + //if (vis_inbig_attrib.getData() == "1") return; + debugString(DEBUG_PREFIX "showVis() {", D_WTF); + showing_vis = 1; + GuiObject o = sui_vis; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) vis object not provided (show)", D_WTF); +#endif + onShowVis(); + showing_vis = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideVis() +{ + debugString(DEBUG_PREFIX "hideVis() {", D_WTF); + + hiding_vis = 1; + GuiObject o = sui_vis; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) vis object not provided (hide)", D_WTF); +#endif + onHideVis(); + hiding_vis = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showCover() +{ + debugString(DEBUG_PREFIX "showCover() {", 0); + + showing_Cover = 1; + GuiObject o = sui_Cover; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Cover object not provided (show)", 0); +#endif + onShowCover(); + showing_Cover = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +hideCover() +{ + debugString(DEBUG_PREFIX "hideCover() {", 0); + + hiding_Cover = 1; + GuiObject o = sui_Cover; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", 0); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Cover object not provided (hide)", 0); +#endif + onHideCover(); + hiding_Cover = 0; + + debugString(DEBUG_PREFIX "}", 0); +} + +showVis_Full() +{ + debugString(DEBUG_PREFIX "showVis_Full() {", D_WTF); + + showing_vis_full = 1; + GuiObject o = sui_vis_full; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (show)", D_WTF); +#endif + onShowVis_Full(); + showing_vis_full = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideVis_Full() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_vis_full = 1; + GuiObject o = sui_vis_full; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (hide)", D_WTF); +#endif + onHideVis_Full(); + hiding_vis_full = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showEq() +{ + debugString(DEBUG_PREFIX "showEq() {", D_WTF); + + showing_eq = 1; + GuiObject o = sui_eq; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Vis_Full object not provided (show)", D_WTF); +#endif + onShowEq(); + showing_eq = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideEq() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_eq = 1; + GuiObject o = sui_eq; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) Eq object not provided (hide)", D_WTF); +#endif + onHideEq(); + hiding_eq = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +showCfg() +{ + debugString(DEBUG_PREFIX "showCfg() {", D_WTF); + + showing_cfg = 1; + GuiObject o = sui_cfg; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) cfg_Full object not provided (show)", D_WTF); +#endif + onShowcfg(); + showing_cfg = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +hideCfg() +{ + debugString(DEBUG_PREFIX "hideVis_Full() {", D_WTF); + + hiding_cfg = 1; + GuiObject o = sui_cfg; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_WTF); + } +#ifdef DEBUG + else debugString(DEBUG_PREFIX " --> (!) cfg object not provided (hide)", D_WTF); +#endif + onHidecfg(); + hiding_cfg = 0; + + debugString(DEBUG_PREFIX "}", D_WTF); +} + +callbackTimer.onTimer() +{ + callbackTimer.stop(); + + debugString(DEBUG_PREFIX "callbackTimer();", D_WTF); + + int _callback_showing_vis = callback_showing_vis; + int _callback_hiding_vis = callback_hiding_vis; + int _callback_showing_fi = callback_showing_fi; + int _callback_hiding_fi = callback_hiding_fi; + int _callback_showing_cover = callback_showing_cover; + int _callback_hiding_cover = callback_hiding_cover; + int _callback_showing_vis_full = callback_showing_vis_full; + int _callback_hiding_vis_full = callback_hiding_vis_full; + int _callback_showing_eq = callback_showing_eq; + int _callback_hiding_eq = callback_hiding_eq; + int _callback_showing_cfg = callback_showing_cfg; + int _callback_hiding_cfg = callback_hiding_cfg; + int _plsc_callback_showing_temp = _plsc_callback_showing; + int _plsc_callback_hiding_temp = _plsc_callback_hiding; +#ifdef IC_COVERFLOW + int _cflow_callback_showing_temp = _cflow_callback_showing; + int _cflow_callback_hiding_temp = _cflow_callback_hiding; +#endif + + callback_showing_vis = 0; + callback_hiding_vis = 0; + callback_showing_fi = 0; + callback_hiding_fi = 0; + callback_showing_cover = 0; + callback_hiding_cover = 0; + callback_showing_vis_full = 0; + callback_hiding_vis_full = 0; + callback_showing_eq = 0; + callback_hiding_eq = 0; + callback_showing_cfg = 0; + callback_hiding_cfg = 0; + _plsc_callback_showing = 0; + _plsc_callback_hiding = 0; +#ifdef IC_COVERFLOW + _cflow_callback_showing = 0; + _cflow_callback_hiding = 0; +#endif + + if (_callback_showing_vis == 1) + { + ic_vis_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + if (_callback_hiding_vis == 1) + { + ic_vis_fileinfo.setData("0"); + } + if (_callback_showing_fi == 1) + { + showFi(); + } + if (_callback_hiding_fi == 1) + { + hideFi(); + } + if (_callback_showing_cover == 1) + { + ic_cover_fileinfo.setData("1"); + ic_fileinfo.setData("1"); + } + if (_callback_hiding_cover == 1) + { + ic_cover_fileinfo.setData("0"); + } + if (_callback_showing_vis_full == 1) + { + switchToVis_Full(); + } + if (_callback_hiding_vis_full == 1) + { + hideVis_Full(); + } + if (_callback_showing_eq == 1) + { + switchToEq(); + } + if (_callback_hiding_eq == 1) + { + hideEq(); + } + if (_callback_showing_cfg == 1) + { + switchTocfg(); + } + if (_callback_hiding_cfg == 1) + { + hidecfg(); + } + if (_plsc_callback_showing_temp == 1) + { + _Plsc_switchTo(); + } + if (_plsc_callback_hiding_temp == 1) + { + _Plsc_hide(); + } +#ifdef IC_COVERFLOW + if (_cflow_callback_showing_temp == 1) + { + _Cflow_switchTo(); + } + if (_cflow_callback_hiding_temp == 1) + { + _Cflow_hide(); + } +#endif +} + +dc_showFi () +{ + callback_showing_fi = 1; + callback_hiding_fi = 0; + callbackTimer.start(); +} + +dc_hideFi () +{ + callback_showing_fi = 0; + callback_hiding_fi = 1; + callbackTimer.start(); +} + +dc_showCover () +{ + callback_showing_cover = 1; + callback_hiding_cover = 0; + callbackTimer.start(); +} + +dc_hideCover () +{ + callback_showing_cover = 0; + callback_hiding_cover = 1; + callbackTimer.start(); +} + +dc_showVis () +{ + debugString(DEBUG_PREFIX "dc_showVis();", D_WTF); + callback_showing_vis = 1; + callback_hiding_vis = 0; + callbackTimer.start(); +} + +dc_hideVis () +{ + callback_showing_vis = 0; + callback_hiding_vis = 1; + callbackTimer.start(); +} + +dc_showVis_Full () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_vis_full = 1; + callback_hiding_vis_full = 0; + callbackTimer.start(); +} + +dc_hideVis_Full () +{ + callback_showing_vis_full = 0; + callback_hiding_vis_full = 1; + callbackTimer.start(); +} + +dc_showEq () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_eq = 1; + callback_hiding_eq = 0; + callbackTimer.start(); +} + +dc_hideEq () +{ + callback_showing_eq = 0; + callback_hiding_eq = 1; + callbackTimer.start(); +} + +dc_showCfg () +{ + debugString(DEBUG_PREFIX "dc_showVis_Full();", D_WTF); + callback_showing_Cfg = 1; + callback_hiding_Cfg = 0; + callbackTimer.start(); +} + +dc_hideCfg () +{ + callback_showing_Cfg = 0; + callback_hiding_Cfg = 1; + callbackTimer.start(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mute.m b/Src/resources/skins/Big Bento/scripts/mute.m new file mode 100644 index 00000000..6a55eb79 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mute.m @@ -0,0 +1,162 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: mute.m +Version: 1.1 + +Type: maki +Date: 13. Jun. 2007 - 12:39 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on mute.m + from Winamp Modern +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +#define GLOW_OBJECT MuteButton +#include <lib/com/glow.m> + +Class Button GlowButton; + +Global int VOLUME_FILL_MAX_W; + +Global Group frameGroup; +Global Button MuteBtn, DeMuteBtn; +Global GuiObject SongTicker; +Global Float VolumeLevel; +Global Boolean Muted,BtnPressed; +Global GuiObject fill; +Global GuiObject muteActive; +Global Int muteActive_Y; +Global Boolean demuteDown; +Global Boolean isShade; + +System.onScriptLoaded() +{ + frameGroup = system.getScriptGroup(); + isShade = (frameGroup.getParentlayout().getID() == "shade"); + + MuteBtn = frameGroup.findObject("mute"); + DeMuteBtn = frameGroup.findObject("etum"); + fill = frameGroup.findObject("player.volume.fill"); + muteActive = frameGroup.findObject("mute.active"); + SongTicker = frameGroup.findObject("songticker"); + + if (!isShade) muteActive_Y = muteActive.getGuiY(); + + if (!isShade) _MuteButton_GlowInit (MuteBtn, frameGroup.findObject("mute.glow"), 0.3); + if (!isShade) _MuteButton_addTrigger (DeMuteBtn); + + Muted = getPrivateInt("winamp5", "muted", 0); + VolumeLevel = getPrivateInt("winamp5", "old_volume", 0); + + VOLUME_FILL_MAX_W = stringToInteger(getParam()); + + fill.setXmlParam("w", integerToString(VOLUME_FILL_MAX_W*getVolume()/255)); + + if (Muted) + { + SongTicker.sendAction("showinfo", "Mute ON", 0, 0, 0, 0); + MuteBtn.hide(); + DeMuteBtn.show(); + if (!isShade) muteActive.show(); + } + else + { + MuteBtn.show(); + DeMuteBtn.hide(); + if (!isShade) muteActive.hide(); + } + + BtnPressed = 0; +} + + +System.onScriptUnloading() +{ + setPrivateInt("winamp5", "muted", Muted); + setPrivateInt("winamp5", "old_volume", VolumeLevel); +} + +MuteBtn.onLeftClick() +{ + BtnPressed = 1; + + VolumeLevel = System.getVolume(); + System.setVolume(0); + Muted = 1; + DeMuteBtn.show(); + MuteBtn.hide(); + if (!isShade) muteActive.show(); +} + +MuteBtn.onLeftButtonDown (int x, int y) +{ + SongTicker.sendAction("showinfo", "Mute: Off", 0, 0, 0, 0); +} + +DeMuteBtn.onLeftButtonDown (int x, int y) +{ + SongTicker.sendAction("showinfo", "Mute: On", 0, 0, 0, 0); + if (!isShade) demuteDown = 1; + if (!isShade) muteActive.setXmlParam("y", integerToString(muteActive_Y+1)); +} + +MuteBtn.onLeftButtonUp (int x, int y) +{ + if (Muted) SongTicker.sendAction("showinfo", "Mute: On", 0, 0, 0, 0); +} + +DeMuteBtn.onLeftButtonUp (int x, int y) +{ + if (!Muted) SongTicker.sendAction("showinfo", "Mute: Off", 0, 0, 0, 0); + if (!isShade) demuteDown = 0; + if (!isShade) muteActive.setXmlParam("y", integerToString(muteActive_Y)); +} + +DeMuteBtn.onLeftClick() +{ + BtnPressed = 1; + + System.setVolume(VolumeLevel); + Muted = 0; + DeMuteBtn.hide(); + MuteBtn.show(); + if (!isShade) muteActive.hide(); +} + +DeMuteBtn.onleaveArea () +{ + if (!isShade) muteActive.setXmlParam("y", integerToString(muteActive_Y)); +} + +DeMuteBtn.onEnterArea () +{ + if (!isShade && demuteDown) muteActive.setXmlParam("y", integerToString(muteActive_Y+1)); +} + +System.onvolumechanged(int newvol) +{ + fill.setXmlParam("w", integerToString(VOLUME_FILL_MAX_W*getVolume()/255)); + if (!BtnPressed) + { + SongTicker.sendAction + ( + "showinfo", + translate("Volume") + ": " + integerToString(newvol/2.55) + "%", + 0, 0, 0, 0 + ); + if (Muted) + { + Muted = 0; + MuteBtn.show(); + DeMuteBtn.hide(); + if (!isShade) muteActive.hide(); + } + } + BtnPressed = 0; +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/mute.maki b/Src/resources/skins/Big Bento/scripts/mute.maki Binary files differnew file mode 100644 index 00000000..254c8063 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/mute.maki diff --git a/Src/resources/skins/Big Bento/scripts/notifier.m b/Src/resources/skins/Big Bento/scripts/notifier.m new file mode 100644 index 00000000..91fd8ae0 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/notifier.m @@ -0,0 +1,827 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: notifier.m +Version: 1.3 + +Type: maki/notifier +Date: 14. Mrz. 2007 - 14:50 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: Based on notifier.m from Winamp Modern + + + +----------------------------------------------------- +// Workaround for Winamp bug by Pieter Nieuwoudt (pjn123) - pjn123@outlook.com \\ + +Temparary fix for the Winamp bug where the... +extern AlbumArtLayer.onAlbumArtLoaded(boolean success); +...event stops working. + +Please note that this workaround only kicks in if the above event stops responding. +If you want to test the workaround, just add // after the FORCE_BUG_MODE below. +Once the above event stop responding the first notifier trigger will be delayed (3 sec), +but after that there will be no delays anymore. + +To remove this fix in the future just search //BUGFIX for steps ;) + +----------------------------------------------------- +---------------------------------------------------*/ +#define FORCE_BUG_MODE + +#include <lib/std.mi> +#include attribs/init_notifier.m +#define DEBUG +#define DebugString // + +Function reset(); +Function createNotifier(boolean cancel); +Function showNotifier(Int w); +Function onNext(); +function cancelAnimation(); + +Function Int fillNextTrackInfo(String corneroverride); +Function Int fillCustomInfo(String customstring); +Function prepareAlbumArtNotifier(); + +Function checkPref(int bypassfs); + +Function getArtist(); + +Function onAlbumArt(Boolean success); + +Global Container notifier_container; +Global Layout notifier_layout; +Global Timer notifier_timer; +Global String last_autotitle, last_autopis, cur_status; + +Global Boolean b_tohide = 0; +Global boolean handleAACalback = false; + +Global AlbumArtLayer cover; + +Global Boolean triggerBug; //BUGFIX remove this +Global Timer fallbackTempFix; //BUGFIX remove this + +#define WEBCOVER_SHOUTCAST "winamp.cover.shoutcast" + +// ------------------------------------------------------------------------------ +// init +// ------------------------------------------------------------------------------ +System.onScriptLoaded() { + initAttribs_notifier(); + notifier_timer = new Timer; + fallbackTempFix = new Timer; //BUGFIX remove this + fallbackTempFix.setDelay(3000); //BUGFIX remove this / Time that onAlbumArtLoaded have to execute before bug mode is ON +} + +// ------------------------------------------------------------------------------ +// shutdown +// ------------------------------------------------------------------------------ +System.onScriptUnloading() { + delete notifier_timer; + delete fallbackTempFix; //BUGFIX remove this +} + +// ------------------------------------------------------------------------------ +// called by the system when the global hotkey for notification is pressed +// ------------------------------------------------------------------------------ +System.onShowNotification() { + //if (checkPref(1)) return; --mp: if we push the hotkey, we want to show the notifier, no matter what the pref settings are. + createNotifier(false); + if (getStatus() == STATUS_PLAYING) cur_status = "Playing"; + if (getStatus() == STATUS_PAUSED) cur_status = "Playback Paused"; + if (getStatus() == STATUS_STOPPED) cur_status = "Playback Stopped"; + prepareAlbumArtNotifier(); + complete; // prevents other scripts from getting the message + return 1; // tells anybody else that might watch the returned value that, yes, we implemented that +} + +// ------------------------------------------------------------------------------ +// called by the system when the title for the playing item changes, this could be the result of the player +// going to the next track, or of an update in the track title +// ------------------------------------------------------------------------------ +// mpdeimos> seems like we get an onTitleChange callback sometimes on pause/resume, d'oh +Global String lastUrl = 0; +System.onTitleChange(String newtitle) { + if (getPlayItemMetaDataString("streamtype") == "0" && lastUrl == getPlayItemString()) + { + return; + } + lastUrl = getPlayItemString(); + + if (StrLeft(newtitle, 1) == "[") { + if (StrLeft(newtitle, 7) == "[Buffer" || + StrLeft(newtitle, 4) == "[ICY") return; + } + //String newpis = System.getPlayItemString(); + //if (last_autotitle == newtitle && last_autopis == newpis) return; + //last_autotitle = newtitle; + //last_autopis = newpis; + DebugString("onTitleChange: "+getPlayItemString(), 9); + + onNext(); + + fallbackTempFix.stop(); //BUGFIX remove later + fallbackTempFix.start(); //BUGFIX remove later +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the next button +// ------------------------------------------------------------------------------ +onNext() { + if (checkPref(0)) return; + createNotifier(false); + cur_status = ""; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the play button +// ------------------------------------------------------------------------------ +System.onPlay() { + if (checkPref(0)) return; + createNotifier(false); + cur_status = "Playing"; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the pause button +// ------------------------------------------------------------------------------ +System.onPause() { + fallbackTempFix.stop(); + if (checkPref(0)) return; + DebugString("onPause",9); + createNotifier(true); + showNotifier(fillCustomInfo("Playback Paused")); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the pause button again +// ------------------------------------------------------------------------------ +System.onResume() { + if (checkPref(0)) return; + DebugString("onResume",9); + createNotifier(false); + cur_status = "Resuming Playback"; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the play button +// ------------------------------------------------------------------------------ +System.onStop() { + fallbackTempFix.stop(); + if (checkPref(0)) return; + createNotifier(true); + showNotifier(fillCustomInfo("End of Playback")); +} + +// ------------------------------------------------------------------------------ +// checks if we should display anything +// ------------------------------------------------------------------------------ +Int checkPref(int bypassfs) { + if (!bypassfs && notifier_hideinfullscreen_attrib.getData() == "1" && isVideoFullscreen()) return 1; + if (notifier_never_attrib.getData() == "1") return 1; + if (notifier_minimized_attrib.getData() == "1" && !isMinimized()) return 1; + if (notifier_windowshade_attrib.getData() == "1") { + if (isMinimized()) return 0; + Container c = getContainer("main"); + if (!c) return 1; + Layout l = c.getCurLayout(); + if (!l) return 1; + if (l.getId() != "shade") return 1; + } + return 0; +} + +// ------------------------------------------------------------------------------ +// fade in/out completed +// ------------------------------------------------------------------------------ +// TODO: on dual monitors the notif stays on 2nd monitor :( +notifier_layout.onTargetReached() { + if (b_tohide) { + notifier_layout.setAlpha(0); + reset(); + return; + } + int a = notifier_layout.getAlpha(); + if (a == 255 && !b_tohide) { + notifier_timer.setDelay(StringToInteger(notifier_holdtime_attrib.getData())); + notifier_timer.start(); + } + else if (a == 0) { + reset(); + } +} + +// ------------------------------------------------------------------------------ +// hold time elapsed +// ------------------------------------------------------------------------------ +notifier_timer.onTimer() { + stop(); + if (notifier_fdout_alpha.getData() == "1") { + if (notifier_layout.isTransparencySafe()) { + notifier_layout.setTargetA(0); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeouttime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + return; + } + else { + reset(); + return; + } + } + else if (notifier_fdout_vslide.getData() == "1") { + b_tohide = 1; + int sy; + int geth; + + Layout m = getContainer("main").getCurLayout(); + if (notifier_loc_vport_attrib.getData() == "1") + { + geth = getViewportHeightFromGuiObject(m); + } + else + { + geth = getMonitorHeightFromGuiObject(m); + } + if (notifier_layout.getGuiY() == 2) sy = -80; + else sy = geth + 80; + notifier_layout.setTargetY(sy); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + return; + } + else { + if (b_tohide) return; + b_tohide = 1; + int sx; + int getw; + + Layout m = getContainer("main").getCurLayout(); + if (notifier_loc_vport_attrib.getData() == "1") { + getw = getViewportWidthFromGuiObject(m); + } + else { + getw = getMonitorWidthFromGuiObject(m); + } + + if (notifier_layout.getGuiX() == 2) sx = -notifier_layout.getWidth(); + else sx = getw + notifier_layout.getWidth(); + notifier_layout.setTargetX(sx); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + return; + } +} + +// ------------------------------------------------------------------------------ +// when notifier is clicked, bring back the app from minimized state if its minimized and focus it +// ------------------------------------------------------------------------------ +notifier_layout.onLeftButtonDown(int x, int y) { + cancelAnimation(); + restoreApplication(); + activateApplication(); + /*if (notifier_opennowplaying_attrib.getData() == "1") + { + String artist = getArtist(); + if (artist == "") return; + System.navigateUrlBrowser("http://client.winamp.com/nowplaying/artist/?icid=notifierbento&artistName=" + artist); + }*/ + reset(); +} + +notifier_layout.onRightButtonUp(int x, int y) { + cancelAnimation(); + reset(); + complete; + return; +} + +//TODO merge w/ code below +String getArtist () +{ + String artist = getPlayItemMetaDataString("artist"); + if (artist == "") artist = getPlayItemMetaDataString("uvox/artist"); + if (artist == "") artist = getPlayItemMetaDataString("cbs/artist"); + if (artist == "") artist = getPlayItemMetaDataString("streamtitle"); + if (artist == "") artist = getPlayItemDisplayTitle(); + + return artist; +} + +// ------------------------------------------------------------------------------ +// close the notifier window, destroys the container automatically because it's dynamic +// ------------------------------------------------------------------------------ +reset() { + notifier_container.close(); + notifier_container = NULL; + notifier_layout = NULL; + handleAACalback = FALSE; +} + +// ------------------------------------------------------------------------------ +createNotifier(boolean cancel) { + if (notifier_container == NULL) { + notifier_container = newDynamicContainer("notifier"); + if (!notifier_container) return; // reinstall duh! + if (isDesktopAlphaAvailable()) + notifier_layout = notifier_container.getLayout("desktopalpha"); + else + notifier_layout = notifier_container.getLayout("normal"); + if (!notifier_layout) return; // reinstall twice, man + } else if (cancel) { + cancelAnimation(); + } +} + +cancelAnimation() +{ + notifier_layout.cancelTarget(); + notifier_timer.stop(); +} + +// ------------------------------------------------------------------------------ +showNotifier(int w) { + DebugString(IntegerToString(w), 0); + b_tohide = 0; + int x; int y; + int sy; int sx; + w = w + 30; + + int getx, gety, geth, getw; + + Layout m = getContainer("main").getCurLayout(); + if (notifier_loc_vport_attrib.getData() == "1") + { + getx = getViewportLeftFromGuiObject(m); + gety = getViewportTopFromGuiObject(m); + geth = getViewportHeightFromGuiObject(m); + getw = getViewportWidthFromGuiObject(m); + } + else + { + getx = getMonitorLeftFromGuiObject(m); + gety = getMonitorTopFromGuiObject(m); + geth = getMonitorHeightFromGuiObject(m); + getw = getMonitorWidthFromGuiObject(m); + } + if (notifier_loc_br_attrib.getData() == "1") { + x = getw + getx - w - 2; + y = geth + gety - 80 - 2; + } + else if (notifier_loc_bl_attrib.getData() == "1") { + x = getx + 2; + y = geth + gety - 80 - 2; + } + else if (notifier_loc_bc_attrib.getData() == "1") { + x = getx + ((getw - w) / 2); + y = geth + gety - 80 - 2; + } + else if (notifier_loc_tr_attrib.getData() == "1") { + x = getw + getx - w - 2; + y = 2; + } + else if (notifier_loc_tc_attrib.getData() == "1") { + x = getx + ((getw - w) / 2); + y = 2; + } + else { + x = getx + 2; + y = 2; + } + if (notifier_fdin_alpha.getData() == "1") { + if (!notifier_layout.isVisible()) notifier_layout.resize(x, y, w, 80); + else + { + notifier_layout.resize(notifier_layout.getguiX(), y, notifier_layout.getGuiW(), 80); + } + if (notifier_layout.isTransparencySafe()) { + notifier_layout.show(); + notifier_layout.settargetA(255); + notifier_layout.setTargetX(x); + notifier_layout.setTargetY(y); + notifier_layout.setTargetW(w); + notifier_layout.setTargetH(80); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + } else { + notifier_layout.setAlpha(255); + notifier_layout.show(); + notifier_layout.settargetA(255); + notifier_layout.setTargetX(x); + notifier_layout.setTargetY(y); + notifier_layout.setTargetW(w); + notifier_layout.setTargetH(80); + notifier_timer.setDelay(StringToInteger(notifier_holdtime_attrib.getData())); + notifier_timer.start(); + } + } + else if (notifier_fdin_vslide.getData() == "1") { + if (y == 2) sy = -80; + else sy = geth + 80; + if (!notifier_layout.isVisible()) notifier_layout.resize(x, sy, w, 80); + else + { + notifier_layout.resize(notifier_layout.getguiX(), y, notifier_layout.getGuiW(), 80); + } + notifier_layout.show(); + notifier_layout.setAlpha(255); + notifier_layout.setTargetX(x); + notifier_layout.setTargetY(y); + notifier_layout.setTargetW(w); + notifier_layout.setTargetH(80); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + } + else { + if (x < (getw + getx)/2) sx = -w; + else sx = getw + w; + if (!notifier_layout.isVisible()) { + notifier_layout.resize(sx, y, w, 80); + } + else { + notifier_layout.resize(notifier_layout.getguiX(), y, notifier_layout.getGuiW(), 80); + } + notifier_layout.show(); + notifier_layout.setAlpha(255); + notifier_layout.setTargetX(x); + notifier_layout.setTargetY(y); + notifier_layout.setTargetW(w); + notifier_layout.setTargetH(80); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + } +} +// ------------------------------------------------------------------------------ + +prepareAlbumArtNotifier() +{ + if (!notifier_layout) return; + Group g_albumart = notifier_layout.findObject("notifier.albumart"); + + DebugString("prepareAlbumArtNotifier: handleAACalback="+integerToString(handleAACalback), 9); + if (g_albumart) + { + cover = g_albumart.findObject("notifier.cover"); + DebugString("prepareAlbumArtNotifier: cover.isLoading="+integerToString(cover.isLoading()), 9); + DebugString("prepareAlbumArtNotifier: cover.isInvalid="+integerToString(cover.isInvalid()), 9); + handleAACalback = true; + cover.refresh(); + } +} + +cover.onAlbumArtLoaded(boolean success) +{ + /* + Created a seperate function for the code that was here because for some reason I couldn't force this + event (from the fallbackTempFix.onTimer) with cover.onAlbumArtLoaded(success) after the Winamp bug appears. + Weird, yes. + */ + FORCE_BUG_MODE onAlbumArt(success); +} + +// ------------------------------------------------------------------------------ +Int fillNextTrackInfo(String corneroverride) { + Int maxv = 0; + Int stream = 0; + + if (!notifier_layout) return 0; + + Group g_text = notifier_layout.findObject("notifier.text"); + Group g_albumart = notifier_layout.findObject("notifier.albumart"); + + Text plentry = g_text.findObject("plentry"); + Text nexttrack = g_text.findObject("nexttrack"); + Text _title = g_text.findObject("title"); + Text album = g_text.findObject("album"); + Text artist = g_text.findObject("artist"); + Text endofplayback = notifier_layout.findObject("endofplayback"); + Text s_plentry = g_text.findObject("plentry.shadow"); + Text s_nexttrack = g_text.findObject("nexttrack.shadow"); + Text s_title = g_text.findObject("title.shadow"); + Text s_album = g_text.findObject("album.shadow"); + Text s_artist = g_text.findObject("artist.shadow"); + Text s_endofplayback = notifier_layout.findObject("endofplayback.shadow"); + + DebugString("got callback for " + getPlayItemString(), 0); + + // Get Stream Name - if no stream returns "" + string s = getPlayItemMetaDataString("streamname"); + string stype = getPlayItemMetaDataString("streamtype"); //"streamtype" will return "2" for SHOUTcast and "5" for SHOUTcast 2 + if (stype == "2" || stype == "5") stream = 1; + + if (endofplayback) endofplayback.hide(); + if (s_endofplayback) s_endofplayback.hide(); + + if (plentry) + { + plentry.setText(integerToString(getPlaylistIndex()+1)+translate(" of ")+integerToString(getPlaylistLength())); + plentry.show(); + s_plentry.setText(integerToString(getPlaylistIndex()+1)+translate(" of ")+integerToString(getPlaylistLength())); + s_plentry.show(); + } + if (nexttrack) { + if (corneroverride == "") { + if (!stream) { + if (!isVideo()) + { + nexttrack.setText("New track"); + s_nexttrack.setText("New track"); + } + else + { + nexttrack.setText("New video"); + s_nexttrack.setText("New video"); + } + } + else + { + nexttrack.setText("On air"); + s_nexttrack.setText("On air"); + } + } + else + { + nexttrack.setText(corneroverride); + s_nexttrack.setText(corneroverride); + } + nexttrack.show(); + s_nexttrack.show(); + } + string set_artist = ""; + string set = ""; + if (_title) { + _title.setXmlParam("ticker", "0"); + _title.setXmlParam("display", ""); + s_title.setXmlParam("ticker", "0"); + s_title.setXmlParam("display", ""); + String str; + if (!stream) + { + str = getPlayitemMetaDataString("title"); + if (str == "") str = getPlayitemDisplayTitle(); + String l = getPlayItemMetaDataString("length"); + if (l != "") { + str += " (" + integerToTime(stringtointeger(l)) + ")"; + } + _title.setText(str); + s_title.setText(str); + } + else + { + if (str = getPlayItemMetaDataString("streamtitle") != "") + { + int v = strsearch(str, " - "); // We divide the string by a " - " sublimiter - no luck for old / wrong tagged stations + if (v > 0) { + set_artist = strleft (str, v); // Store artist + string str = strright (str, strlen(str) - 3 - v); + _title.setText(str); + s_title.setText(str); + } + else + { + _title.setXmlParam("ticker", "1"); // These titles can be _very_ long + s_title.setXmlParam("ticker", "1"); + _title.setText(str); + s_title.setText(str); + } + } else { + _title.setXmlParam("ticker", "1"); + _title.setXmlParam("display", "songtitle"); + _title.setText(""); + s_title.setXmlParam("ticker", "1"); + s_title.setXmlParam("display", "songtitle"); + s_title.setText(""); + } + } + _title.show(); + s_title.show(); + } + if (artist) { + if (!stream) { + if (isVideo()) + { + artist.setText(""); + s_artist.setText(""); + } + else + { + artist.setText(getPlayitemMetaDataString("artist")); + s_artist.setText(getPlayitemMetaDataString("artist")); + } + } + else + { + // Perhaps we've stored the artist before? + if (set_artist != "") + { + artist.setText(set_artist); + s_artist.setText(set_artist); + } + // Then display the station name + else if (s != "") + { + artist.setText(s); + s_artist.setText(s); + } + // So, we've had no luck - just display a static text :( + else + { + if (isVideo()) + { + artist.setText("Internet TV"); + s_artist.setText("Internet TV"); + } + else + { + artist.setText("Internet Radio"); + s_artist.setText("Internet Radio"); + } + } + } + artist.show(); + s_artist.show(); + } + if (album) { + String str; + if (!stream && !isVideo()) { + s_album.setXmlParam("display", ""); + album.setXmlParam("display", ""); + str = getPlayitemMetaDataString("album"); + String l = getPlayitemMetaDataString("track"); + if (l != "" && l != "-1") str += " (" + translate("Track ") + l + ")"; + album.setText(str); + s_album.setText(str); + } + else + { + album.setXmlParam("display", ""); + s_album.setXmlParam("display", ""); + // we have divided the songname - let's display the station name + if (set_artist != "" && s != "") + { + album.setText(s); + s_album.setText(s); + } + // no luck either... + else + { + album.setText(""); + album.setXmlParam("display", "songinfo_localise"); + s_album.setText(""); + s_album.setXmlParam("display", "songinfo_localise"); + } + } + album.show(); + s_album.show(); + } + + // Album Art Stuff + + Layer webcover; + if (g_albumart) + { + cover = g_albumart.findObject("notifier.cover"); + webcover = g_albumart.findObject("notifier.webcover"); + } + + Boolean showAlbumArt = FALSE; + + if (cover != NULL && webcover != NULL && notifier_artworkinnotification_attrib.getData() == "1") + { + if (stream) + { + if(stype == "2" || stype == "5" && cover.isInvalid()) + { + webcover.setXMLParam("image", WEBCOVER_SHOUTCAST); + cover.hide(); + webcover.show(); + showAlbumArt = TRUE; + } + else if(stype == "5" && !cover.isInvalid()) + { + webcover.hide(); + cover.show(); + showAlbumArt = TRUE; + } + } + else + { + if (cover.isInvalid()) // Check if the album art obj shows a pic + { + showAlbumArt = FALSE; + } + else + { + webcover.hide(); + cover.show(); + showAlbumArt = TRUE; + } + } + } + + if (showAlbumArt) + { + if (g_albumart) g_albumart.show(); + if (g_text) g_text.setXmlParam("x", "75"); + if (g_text) g_text.setXmlParam("w", "-95"); + } + else + { + if (g_albumart) g_albumart.hide(); + if (g_text) g_text.setXmlParam("x", "15"); + if (g_text) g_text.setXmlParam("w", "-35"); + } + + if (g_text) g_text.show(); + + maxv = artist.getAutoWidth(); + if (maxv < album.getAutoWidth()) maxv = album.getAutoWidth(); + if (maxv < _title.getAutoWidth()) maxv = _title.getAutoWidth(); + if (maxv < (plentry.getAutoWidth() + nexttrack.getAutoWidth())) maxv = (plentry.getAutoWidth() + nexttrack.getAutoWidth()); + if (maxv < 128) maxv = 128; + + int getw; + + Layout m = getContainer("main").getCurLayout(); + if (notifier_loc_vport_attrib.getData() == "1") + { + //getw = getViewportWidth(); + getw = getViewportWidthFromGuiObject(m); + } + else + { + getw = getMonitorWidthFromGuiObject(m); + } + + if (maxv > getw/4) maxv = getw/4; + + return maxv + ( showAlbumArt * 60 ) + 1; // Adds 60 extra pixels if album art is visible + +} + +// ------------------------------------------------------------------------------ +Int fillCustomInfo(String customtext) +{ + Group g_text = notifier_layout.findObject("notifier.text"); + Group g_albumart = notifier_layout.findObject("notifier.albumart"); + + Text endofplayback = notifier_layout.findObject("endofplayback"); + Text s_endofplayback = notifier_layout.findObject("endofplayback.shadow"); + + if (g_text) { g_text.hide(); } + if (g_albumart) g_albumart.hide(); + + if (endofplayback != NULL && s_endofplayback != NULL) { + endofplayback.setText(translate(customtext)+" "); + s_endofplayback.setText(translate(customtext)+" "); + int aw = endofplayback.getAutoWidth(); + endofplayback.show(); + s_endofplayback.show(); + if (aw > 128) + return aw; + } + return 128; +} + +//BUGFIX remove this timer later +fallbackTempFix.onTimer() //As soon as this timer run, bug mode is ON ;) +{ + if (checkPref(0)) return; + + if (!notifier_layout) onNext(); + + if(!triggerBug) + { + triggerBug = true; + + onAlbumArt(cover.isInvalid()); //First time we see the bug + fallbackTempFix.setDelay(30); + + DebugString("Hello Bug", 9); + } + else if(triggerBug && !cover.isLoading()) onAlbumArt(cover.isInvalid()); +} + +onAlbumArt(Boolean success){ + fallbackTempFix.stop(); //BUGFIX remove later + + DebugString("onAlbumArtLoaded: success="+integerToString(success), 9); + DebugString("onAlbumArtLoaded: handleAACalback="+integerToString(handleAACalback), 9); + DebugString("onAlbumArtLoaded: cover.isLoading="+integerToString(cover.isLoading()), 9); + DebugString("onAlbumArtLoaded: cover.isInvalid="+integerToString(cover.isInvalid()), 9); + if (!handleAACalback || !notifier_layout /*|| isLoading()*/) + { + return; + } + + handleAACalback = cover.isLoading(); + cancelAnimation(); + showNotifier(fillNextTrackInfo(cur_status)); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/notifier.maki b/Src/resources/skins/Big Bento/scripts/notifier.maki Binary files differnew file mode 100644 index 00000000..266ad93c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/notifier.maki diff --git a/Src/resources/skins/Big Bento/scripts/playlistpro.m b/Src/resources/skins/Big Bento/scripts/playlistpro.m new file mode 100644 index 00000000..7c123991 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/playlistpro.m @@ -0,0 +1,426 @@ +/* + +PlaylistPro build 005 +Originally done by pjn123 (www.skinconsortium.com) for the Classic Pro plugin + +*/ + +#include "lib/std.mi" +#include "lib/pldir.mi" +#include "attribs/init_Playlist.m" + +Function resizeResults(int items); +Function doSearch(String input); +Function setSearchBox(boolean onOff); +Function clearSearchBox(); +Function int getPlEntry(int search_item); +Function String replaceString(string baseString, string toreplace, string replacedby); + +Global Group frameGroup, topbar; +Global Edit searchBox; +Global Text helpSearch, searchNews;// fakeText; +Global GuiObject fakeSB, searchXUI, searchButtonXui; +Global Button searchButton, clearButton, clearButtonText; +Global GuiList searchResults; +Global Boolean foundsomething; +Global int tn, h_tune; +Global String temptoken; +Global Windowholder plwh; +GLobal Timer refreshActiveCheck; +Global PopupMenu search_rc; + +Global Container results_container; +Global Layout results_layout, main_layout; + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + topbar = frameGroup.findObject("PlaylistPro.topbar"); + plwh = frameGroup.findObject("wdh.playlist"); + + searchBox = frameGroup.findObject("wasabi.edit.box"); + searchXUI = frameGroup.findObject("pl.search.edit"); + searchButton = frameGroup.findObject("pl.search.go"); + searchButtonXui = frameGroup.findObject("pl.search.go"); + fakeSB = frameGroup.findObject("pl.search.edit.rect"); + clearButton = frameGroup.findObject("pl.search.edit.clear"); + clearButtonText = frameGroup.findObject("pl.search.edit.clear.text"); + helpSearch = frameGroup.findObject("pl.search.edit.searchhelp"); + //fakeText = frameGroup.findObject("pl.search.go.text.fake"); + + results_container = newDynamicContainer("searchresults"); + results_layout = results_container.getLayout("normal"); + searchResults = results_layout.findObject("PlaylistPro.list"); + searchResults.setFontSize(16); + searchNews = results_layout.findObject("PlaylistPro.list.news"); + + main_layout = getContainer("main").getLayout("normal"); + + initAttribs_Playlist(); + + //translation workaround + /*searchButtonXui.setXmlParam("text", System.translate("Search")); + searchButtonXui.setXmlParam("x", integerToString(-1*fakeText.getAutoWidth()-4)); + searchButtonXui.setXmlParam("w", integerToString(fakeText.getAutoWidth()+2)); + searchXUI.setXmlParam("w", integerToString(-1*fakeText.getAutoWidth()-9));*/ + + refreshActiveCheck = new Timer; + refreshActiveCheck.setDelay(100); +} +System.onScriptUnLoading() { + delete refreshActiveCheck; +} + +refreshActiveCheck.onTimer(){ + if((!System.isAppActive() || System.isMinimized()) && results_layout.isVisible() ) results_layout.hide(); +} + +results_layout.onSetVisible(boolean onOff){ + if(onOff){ + refreshActiveCheck.start(); + } + else{ + refreshActiveCheck.stop(); + } +} + +System.onShowLayout(Layout _layout){ + if(main_layout.isVisible()) results_layout.setXmlParam("ontop", "1"); +} + +frameGroup.onSetVisible(boolean onOff){ + if(!onOff) clearSearchBox(); +} + +searchButton.onLeftClick(){ + doSearch(searchBox.getText()); +} + +resizeResults(int items){ + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(500); + results_layout.setTargetSpeed(1); + results_layout.gotoTarget();*/ + + //items++; //temp add one extra for info... xx items found + if(items>20) items=20; + + + if(items>=1) h_tune=29; + else h_tune=25; + + //results_layout.setXmlParam("h", integerToString(20+items*18)); + + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(h_tune+items*16); + results_layout.setTargetSpeed(0.3); + results_layout.gotoTarget();*/ + results_layout.resize(results_layout.getLeft(), results_layout.getTop(), results_layout.getWidth(), h_tune+items*16); +} + +searchBox.onEnter(){ + doSearch(searchBox.getText()); +} + +doSearch(String input){ + if(input==""){ + clearSearchBox(); + return; + } + + //search history stuff + String history = getPublicString("cPro.PlaylistPro.history", ""); + history = replaceString(history, input, ""); + history = replaceString(history, ";;", ";"); + if(strleft(history, 1)==";") history = strright(history, strlen(history)-1); + if(strright(history, 1)==";") history = strleft(history, strlen(history)-1); + if(history=="") history= input; + else history= input+";"+history; + + String output = getToken(history, ";", 0); + for(int i = 1; i<15; i++){ + if(getToken(history, ";", i)=="") break; + output+=";"+getToken(history, ";", i); + } + setPublicString("cPro.PlaylistPro.history", history); + + + int itemsfound = 0; + input = strlower(input); + + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("w", integerToString(frameGroup.getWidth()-19)); + + if(!results_layout.isVisible()) results_layout.setXmlParam("h", "1"); + + searchResults.deleteAllItems(); + searchResults.scrollToItem(0); + + for(int i = 0; i<PlEdit.getNumTracks(); i++){ + foundsomething=false; + + for(tn = 0; tn<10; tn++){ + if(getToken(input, " ", tn)==""){ + break; + } + + temptoken = getToken(input, " ", tn); + if(strsearch(strlower(PlEdit.getTitle(i) + " " + PlEdit.getFileName(i)), temptoken)>=0){ + foundsomething=true; + } + else{ + foundsomething=false; + } + + if(!foundsomething){ + break; + } + } + + if(foundsomething){ + itemsfound++; + searchResults.addItem(integerToString(i+1)+". " + PlEdit.getTitle(i)); + if(itemsfound>500){ + searchNews.setText("Search result limited to 500 items"); + break; + } + } + } + + if(itemsfound==0){ + searchNews.setText("Nothing was found"); + } + else if(itemsfound<=500){ + searchNews.setText(System.translate("Items found: ") +integerToString(itemsfound)); + } + + if(!results_layout.isVisible()) results_layout.show(); + + // Fix if always on top is enabled.. it just refresh the ontop ;) + results_layout.setXmlParam("ontop", "1"); + + resizeResults(itemsfound); +} + +searchResults.onDoubleClick(Int itemnum){ + PlEdit.playTrack (getPlEntry(itemnum)); + setSearchBox(false); +} + +searchResults.onRightClick(Int itemnum){ + search_rc = new PopupMenu; + search_rc.addCommand("Move selected to top", 1, 0, 0); + search_rc.addCommand("Move selected to bottom", 2, 0, 0); + search_rc.addCommand("Move selected after current", 3, 0, 0); + search_rc.addCommand("Move selected together", 4, 0, 0); + search_rc.addSeparator(); + search_rc.addCommand("Remove selected from playlist", 5, 0, 0); + int result = search_rc.popAtMouse(); + delete search_rc; + + int lastselected = searchResults.getFirstItemSelected(); + int itemcounter = 1; + + if(result==1){ + PlEdit.moveTo (getPlEntry(lastselected), 0); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), itemcounter); + itemcounter++; + } + PlEdit.showTrack(0); + } + else if(result==2){ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getNumTracks ()-1); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected)-itemcounter, PlEdit.getNumTracks ()-1); + itemcounter++; + } + PlEdit.showTrack(PlEdit.getNumTracks ()-1); + } + else if(result==3){ + int align = 0; + int orignalPos = PlEdit.getCurrentIndex(); + int temp = getPlEntry(lastselected); + if(PlEdit.getCurrentIndex() > temp) align++; + + if(orignalPos > getPlEntry(lastselected)) PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()); + else PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+1); + + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + + if(orignalPos != getPlEntry(lastselected)){ + if(orignalPos > getPlEntry(lastselected)){ + PlEdit.moveTo (getPlEntry(lastselected)-align, PlEdit.getCurrentIndex()+itemcounter); + } + else{ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+itemcounter+1); + } + + temp = getPlEntry(lastselected); + if(orignalPos > temp) align++; + itemcounter++; + } + } + PlEdit.showCurrentlyPlayingTrack(); + } + else if(result==4){ + int startpos = getPlEntry(lastselected); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), startpos+itemcounter); + itemcounter++; + } + PlEdit.showTrack(startpos); + } + else if(result==5){ + PlEdit.removeTrack (getPlEntry(lastselected)); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.removeTrack (getPlEntry(lastselected)-itemcounter); + itemcounter++; + } + } + + else return; + + //hides the search + setSearchBox(false); +} + +int getPlEntry(int search_item){ + return stringToInteger(getToken(searchResults.getItemLabel(search_item,0), ". ", 0))-1; +} + +setSearchBox(boolean onOff){ + if(onOff){ + searchBox.show(); + clearButton.show(); + clearButtonText.show(); + helpSearch.hide(); + searchBox.setFocus(); + } + else{ + searchBox.hide(); + clearButton.hide(); + clearButtonText.hide(); + helpSearch.show(); + results_layout.hide(); + } +} + +fakeSB.onLeftButtonDown(int x, int y){ + setSearchBox(true); +} +fakeSB.onRightButtonDown(int x, int y){ + search_rc = new PopupMenu; + search_rc.addCommand("** Search history **", 0, 0, 1); + search_rc.addSeparator(); + + String history = getPublicString("cPro.PlaylistPro.history", ""); + boolean historyfound=false; + for(int i=0;i<15;i++){ + String historyitem = getToken(history, ";", i); + if(historyitem==""){ + if(i>0) historyfound=true; + break; + } + search_rc.addCommand(historyitem, i+1, 0, 0); + } + if(historyfound) search_rc.addSeparator(); + search_rc.addCommand("Clear History", 100, 0, 0); + + int result = search_rc.popAtMouse(); + delete search_rc; + + if(result>0 && result<100){ + setSearchBox(true); + searchBox.setText(getToken(history, ";", result-1)); + searchButton.leftClick(); + } + else if(result==100){ + setPublicString("cPro.PlaylistPro.history", ""); + } +} + +clearSearchBox(){ + searchBox.setText(""); + setSearchBox(false); +} + +main_layout.onMove(){ + if(results_layout.isVisible()){ + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("ontop", "1"); + } +} +main_layout.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); +} + +frameGroup.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); + + //if(playlist_search_attib.getData()=="0") return; + + if(h<102 || playlist_search_attrib.getData()=="0"){ + + if(!topbar.isVisible()) return; //Don't do the same code over and over + + topbar.hide(); + plwh.setXmlParam("y", "0"); + plwh.setXmlParam("h", "0"); + } + else{ + if(topbar.isVisible()) return; //Don't do the same code over and over + + topbar.show(); + plwh.setXmlParam("y", "30"); + plwh.setXmlParam("h", "-30"); + } +} + +clearButton.onLeftClick(){ + clearSearchBox(); +} + +playlist_search_attrib.onDataChanged(){ + frameGroup.onResize(frameGroup.getLeft(), frameGroup.getTop(), frameGroup.getWidth(), frameGroup.getHeight()); + //debug("abc " + getData()); + + if (getData() == "0"){ + topbar.hide(); + plwh.setXMLParam("y", "0"); + plwh.setXMLParam("h", "0"); + } + else if(getData() == "1"){ + + topbar.show(); + plwh.setXMLParam("y", "30"); + plwh.setXMLParam("h", "-30"); + + } +} + + + +String replaceString(string baseString, string toreplace, string replacedby){ + if (toreplace == "") return baseString; + string sf1 = strupper(baseString); + string sf2 = strupper(toreplace); + int i = strsearch(sf1, sf2); + if (i == -1) return baseString; + string left = "", right = ""; + if (i != 0) left = strleft(baseString, i); + if (strlen(basestring) - i - strlen(toreplace) != 0) { + right = strright(basestring, strlen(basestring) - i - strlen(toreplace)); + } + return left + replacedby + right; +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/playlistpro.maki b/Src/resources/skins/Big Bento/scripts/playlistpro.maki Binary files differnew file mode 100644 index 00000000..3db3ab8f --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/playlistpro.maki diff --git a/Src/resources/skins/Big Bento/scripts/pledit.m b/Src/resources/skins/Big Bento/scripts/pledit.m new file mode 100644 index 00000000..c3ed4ba3 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/pledit.m @@ -0,0 +1,619 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: pledit.m +Version: 3.1 + +Type: maki +Date: 18. Sep. 2007 - 19:42 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include "lib/std.mi" + +//#define DEBUG +#define FILE_NAME "pledit.m" +#include "lib/com/debug.m" + +#define PL_GUID "{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D}" +#define PLC_POPPLER_POS 200 + +#include "attribs/init_playlist.m" + +Function fitContent (int playlistw, int playlistx); +Function fit (group g, int x, int rx, int y, int ry, int w, int rw, int h, int rh); +Function int updatePoppler(int w); +Function int updateMainPoppler(int w); + +Global Frame dualwnd, pl_dualwnd, mainframe; + +Global Group g_playlist, g_player, g_sui, g_buttons, g_mcv, g_cover, g_upper, wdh_pl; +Global Button p_enlarge, p_small; +Global Button p_resize; +Global int down_x, down_gx, isresizing; +Global layout normal; +Global Container player; +//Global WindowHolder wdh_pl; +Global Text pl_time; + +Global Button pe_add, pe_rem, pe_sel, pe_misc, pe_manage; + +Global Boolean startup, isBig, bypass_nocomp; + +Global Timer dc_openPl, dc_closePl, dc_loadWnd; + +Global Int COMP_Y, COMP_H, SUI_Y, SUI_H, BOTTOMSPACER, MAX_PL_H; +Global Int DEF_PL_W, SIDESPACER; + +Global Int min_infowidth; + + +System.onScriptLoaded () +{ + initAttribs_Playlist(); + normal = getScriptGroup(); + player = normal.getContainer(); + + isBig = (getParam() == "big"); + if (isBig) + { + mainframe = normal.getObject("player.mainframe.big"); + } + else + { + mainframe = normal.getObject("player.mainframe"); + } + + dualwnd = mainframe.findObject("player.dualwnd"); + g_mcv = dualwnd.findObject("player.component.fileinfo"); + g_upper = dualwnd.findObject("player.component.playlist.frame"); + pl_dualwnd = dualwnd.findObject("playlist.dualwnd"); + g_playlist = pl_dualwnd.findObject("player.component.playlist"); + g_cover = pl_dualwnd.findObject("player.component.playlist.albumart"); + g_player = dualwnd.findObject("player.layout"); + g_sui = normal.getObject("sui.content"); + g_buttons = g_playlist.getObject("player.component.playlist.buttons"); + p_enlarge = g_buttons.getObject("player.playlist.enlarge"); + p_small = g_buttons.getObject("player.playlist.small"); + p_resize = g_playlist.getObject("player.resize"); + wdh_pl = g_playlist.getObject("playlistpro"); + pl_time = g_buttons.getObject("PLTime"); + + pe_add = g_buttons.getObject("player.playlist.add"); + pe_rem = g_buttons.getObject("player.playlist.rem"); + pe_sel = g_buttons.getObject("player.playlist.sel"); + pe_misc = g_buttons.getObject("player.playlist.misc"); + pe_manage = g_buttons.getObject("player.playlist.manage"); + + min_infowidth = stringtoInteger(dualwnd.getXmlParam("maxwidth")); + + dc_openPl = new Timer; + dc_openPl.setDelay(1); + + dc_closePl = new Timer; + dc_closePl.setDelay(1); + + dc_loadWnd = new Timer; + dc_loadWnd.setDelay(1); + + // Global Definitions: + + DEF_PL_W = g_playlist.getGuiW(); // (-) + SIDESPACER = g_sui.getGuiX(); // (+) + COMP_Y = mainframe.getGuiY(); // (+) + COMP_H = mainframe.getGuiH(); // (+) + SUI_Y = g_sui.getGuiY(); // (+) + SUI_H = g_sui.getGuiH(); // (-) + BOTTOMSPACER = SUI_Y + SUI_H; // (-) + MAX_PL_H = BOTTOMSPACER - COMP_Y; // (-) + + startup = 1; + + // show playlist album art if checked + playlist_cover_attrib.onDataChanged(); + + //Bento v0.8 hack + if (mainframe.getPosition() < stringToInteger(mainframe.getXmlParam("minwidth"))) + { + mainframe.setPosition(stringToInteger(mainframe.getXmlParam("minwidth"))); + } +} + +system.onScriptUnloading () +{ + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + delete dc_loadWnd; +} + +dc_loadWnd.onTimer () +{ + stop(); + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); + playlist_enlarge_attrib.onDataChanged(); + + if (dualwnd.getPosition() > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) dc_openPL.start(); + + + else wdh_pl.hide(); //hideWa2Component(PL_GUID); +} + +playlist_enlarge_attrib.onDataChanged () +{ + int pl_w = dualwnd.getPosition(); + +#ifdef DOHIDEMCV + if (dualwnd.getXmlParam("from") == "left") + { + pl_w = dualwnd.getWidth() - 8; + } +#endif + + int pl_x = 0 - ( pl_w + SIDESPACER ); // (-) + + if (getData() == "1") + { + int sui_w = pl_x - SIDESPACER; // (-) + + dualwnd.setXmlParam("relath", "1"); + dualwnd.setXmlParam("h", integerToString(0)); + mainframe.setXmlParam("relath", "1"); + mainframe.setXmlParam("h", integerToString(MAX_PL_H)); + + g_sui.setXmlParam("w", integerToString(sui_w-8)); + + int pos = getPrivateInt(getSkinName(), "playlist_cover_poppler", PLC_POPPLER_POS); + if (playlist_cover_attrib.getData() == "1" && pos > 0 && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden") + { + g_cover.show(); + pl_dualwnd.setPosition (pos); + } + else + { + pl_dualwnd.setPosition (0); + g_cover.hide(); + } + + p_enlarge.hide(); + p_small.show(); + } + else + { + int sui_w = 0 - SIDESPACER - SIDESPACER; // (-) + int pc_w = pl_x - SIDESPACER; // (-) + + g_cover.hide(); + + if (playlist_cover_attrib.getData() == "1") + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } + pl_dualwnd.setPosition (0); + + dualwnd.setXmlParam("h", integerToString(COMP_H-3)); + dualwnd.setXmlParam("relath", "0"); + mainframe.setXmlParam("h", integerToString(COMP_H)); + mainframe.setXmlParam("relath", "0"); + + g_sui.setXmlParam("w", integerToString(sui_w)); + p_enlarge.show(); + p_small.hide(); + } +} + +g_playlist.onResize (int x, int y, int w, int h) +{ + int pos = dualwnd.getPosition(); + debugString(integerToString(pos), 9); + updateMainPoppler(min_infowidth - pos - 8); + + if (pos > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) + { + //setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + if (!wdh_pl.isVisible()) + { + setPrivateString(getSkinName(), "Pledit_pos", "top"); + g_sui.sendAction("hide_comp", "pe", 0,0,0,0); + + dc_openPl.start(); + } + + if (isBig) + { + if (w > 189) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.show(); + } + else if (w <= 189 && w >158) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.hide(); + } + else if (w <= 158 && w >127) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 127 && w >96) + { + pe_add.show(); + pe_rem.show(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 96 && w >65) + { + pe_add.show(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else + { + pe_add.hide(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + } + else + { + if (w > 146) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.show(); + } + else if (w <= 146 && w >122) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.show(); + pe_manage.hide(); + } + else if (w <= 122 && w >98) + { + pe_add.show(); + pe_rem.show(); + pe_sel.show(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 98 && w >74) + { + pe_add.show(); + pe_rem.show(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else if (w <= 74 && w >50) + { + pe_add.show(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + else + { + pe_add.hide(); + pe_rem.hide(); + pe_sel.hide(); + pe_misc.hide(); + pe_manage.hide(); + } + } + } + else wdh_pl.hide(); + if (playlist_enlarge_attrib.getdata() == "1") + { + int sui_w = - g_playlist.getWidth() - (2 * SIDESPACER) - 8; + g_sui.setXmlParam("w", integerToString(sui_w)); + if (startup) + { + startup = 0; + mainframe.setXmlParam("relath", "1"); + mainframe.setXmlParam("h", integerToString(MAX_PL_H)); + dualwnd.setXmlParam("relath", "1"); + dualwnd.setXmlParam("h", integerToString(0)); + } + } +} + +normal.onSetVisible (Boolean onoff) +{ + if (onoff) + { + playlist_enlarge_attrib.onDataChanged(); + int pos = dualwnd.getPosition(); + if (pos > 0 +#ifdef DOHIDEMCV + || dualwnd.getXMlParam("from") == "left" +#endif + ) + { + updatePoppler(pos); + dc_openPL.start(); + } + else wdh_pl.hide();//hideWa2Component(PL_GUID); + } +} + +normal.onUserResize (int x, int y, int w, int h) +{ + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); +} + +/** Hide pl_time if it cannot be full displayed */ + +pl_time.onResize (int x, int y, int w, int h) +{ + if (w < getTextWidth()) + { + hide(); + } + else + { + show(); + } +} + +pl_time.onTextChanged (String newtxt) +{ + if (getWidth() < getTextWidth()) + { + hide(); + } + else + { + show(); + } +} + +/** Playlist Component Handling */ + +System.onGetCancelComponent (String guid, boolean goingvisible) +{ + if (getPrivateString(getSkinName(), "Pledit_pos", "top") == "sui") + { + return; + } + + debugString(DEBUG_PREFIX "System.onGetCancelComponent ( "+ guid + " , " + integerToString(goingvisible) + " )", D_WTF); + if (guid == PL_GUID) + { + Boolean isShade = player.getCurLayout() != normal; + if (goingvisible == TRUE && !isShade) + { + int poppler_w = getPrivateInt(getSkinName(), "pledit poppler width", 200); + if (poppler_w < 1) poppler_w = 200; + g_playlist.show(); + updatePoppler(poppler_w); + dc_openPl.start(); + return FALSE; + } + else + { + if (dualwnd.getPosition() > 0) setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + wdh_pl.hide(); + dualwnd.setPosition(0); + return FALSE; + } + } +} + +normal.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "load_comp" && strlower(param) == "pledit") + { + int poppler_w = getPrivateInt(getSkinName(), "pledit poppler width", 200); + if (dualwnd.getPosition() > 0) poppler_w = dualwnd.getPosition(); + if (dualwnd.getPosition() == 0) poppler_w = 200; + updatePoppler(poppler_w); + dc_openPl.start(); + } + if (action == "hide_comp" && strlower(param) == "pledit") + { + setPrivateInt(getSkinName(), "pledit poppler width", dualwnd.getPosition()); + wdh_pl.hide(); + dualwnd.setPosition(0); + } + if (action == "pledit_posupdate") + { + int pos = dualwnd.getPosition(); + if (pos > 0) updatePoppler(pos); + } + if (action == "sui") + { + if (param == "tonocomp") + { + if (playlist_cover_attrib.getData() == "1") + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } + bypass_nocomp = TRUE; //we need to add a bypass otherwise playlist_cover_attrib will be turned OFF + pl_dualwnd.setPosition (0); + g_cover.hide(); + bypass_nocomp = FALSE; + } + else if (param == "fromnocomp") + { + playlist_cover_attrib.onDataChanged (); + } + } +} + +dualwnd.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (action == "set_maxwidth") + { + // update poppler for playlist/infocomp + updatePoppler(dualwnd.getPosition()); + // update poppler bands for player/infocomp + min_infowidth = x; + updateMainPoppler(min_infowidth - dualwnd.getPosition() - 8); + } +} + +wdh_pl.onSetVisible (Boolean onoff) +{ + debugString("wdh_pl set visible: " + integerToString(onoff), 9); + if (onoff) + { + playlist_cover_attrib.onDataChanged(); + } + else + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + } +} + +updatePoppler(int w) +{ + if (dualwnd.getPosition() == 0 && w == 0) return; + int min_w = stringToInteger(dualwnd.getXmlParam("minwidth")); + int max_w = stringToInteger(dualwnd.getXmlParam("maxwidth")); + if (max_w < 0) max_w = dualwnd.getWidth() + max_w; + debugString("max_w: " + integerToString(max_w), 9); + boolean reset = FALSE; + reset += (w == 0); + reset += (w < min_w); + if (reset) w = min_w; + + // Prevent the playlist from overlapping the player + if (w > max_w) + { + w = max_w; + + // Resize the player to get more space + if (max_w < min_w) + { + w = min_w; + int mainframe_pos = mainframe.getPosition() - (min_w - max_w); // I need to save this in a variable first, otherwise mainframe.setPos will crash... + mainframe.setPosition(mainframe_pos); + } + } + debugString("set poppler: " + integerToString(w), 9); + dualwnd.setPosition(w); +} + +updateMainPoppler (int w) +{ + mainframe.setXmlparam("maxwidth", integerToString(w)); +} + +dc_openPl.onTimer () +{ + dc_openPl.stop(); + debugString("dc_openPl called!", 9); + wdh_pl.show(); + g_playlist.show(); + g_upper.show(); + //if (!wdh_pl.isVisible()) debugInt(g_playlist.getWidth()); +} + +dc_closePl.onTimer () +{ + dc_closePl.stop(); + wdh_pl.hide(); +} + +//---------------------------------------------------------------------------------------------------------------- +// Playlist Album Art Handles +//---------------------------------------------------------------------------------------------------------------- + +Global boolean attrib_bypass = false; + +playlist_cover_attrib.onDataChanged () +{ + if (attrib_bypass) + return; + + if (playlist_enlarge_attrib.getData() == "0") + return; + + if (getData() == "1") + { + int pos = getPrivateInt(getSkinName(), "playlist_cover_poppler", PLC_POPPLER_POS); + if (pos > 0 && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden") + { + pl_dualwnd.setPosition (pos); + g_cover.show(); + } + else + { + pl_dualwnd.setPosition (0); + g_cover.hide(); + } + } + else + { + int pos = pl_dualwnd.getPosition(); + if (pos > 0) setPrivateInt(getSkinName(), "playlist_cover_poppler", pos); + pl_dualwnd.setPosition(0); + g_cover.hide(); + } +} + +Global Boolean bypass; + +player.onBeforeSwitchToLayout (Layout oldlayout, Layout newlayout) +{ + if (oldlayout == normal) + { + bypass = 1; + } +} + +g_cover.onSetVisible (Boolean onoff) +{ + if (bypass) + { + bypass = 0; + return; + } + + if (!onoff && !bypass_nocomp && playlist_cover_attrib.getdata() == "1" && getPrivateString(getSkinName(), "Component", "Media Library") != "Hidden" && playlist_enlarge_attrib.getData() == "1" && dualwnd.getPosition() > 0) + { + playlist_cover_attrib.setdata("0"); + } + else if (onoff && !bypass_nocomp && playlist_cover_attrib.getdata() == "0" && dualwnd.getPosition() > 0) + { + attrib_bypass = true; + playlist_cover_attrib.setdata("1"); + attrib_bypass = false; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/pledit.maki b/Src/resources/skins/Big Bento/scripts/pledit.maki Binary files differnew file mode 100644 index 00000000..0e4f04a4 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/pledit.maki diff --git a/Src/resources/skins/Big Bento/scripts/seek.m b/Src/resources/skins/Big Bento/scripts/seek.m new file mode 100644 index 00000000..f5d5b348 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/seek.m @@ -0,0 +1,90 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: seek.m +Version: 1.2 + +Type: maki +Date: 23. Jul. 2007 - 22:52 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on seek.m + from Winamp Modern +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global Group frameGroup; +Global Slider Seeker, SeekerBehind; +Global Int Seeking; +Global GuiObject SongTicker; +Global GuiObject progressBar; + +System.onScriptLoaded() +{ + frameGroup = system.getScriptGroup(); + Seeker = frameGroup.findObject("seeker.ghost"); + SeekerBehind = frameGroup.findObject("seeker.ghost"); + progressBar = frameGroup.findObject("progressbar"); + SongTicker = frameGroup.getParentLayout().findObject("songticker"); + + progressBar.hide(); +progressBar.show(); + + if (getStatus() == 0 || !seeker.isvisible()) + { + progressBar.hide(); + } +} + +Seeker.onSetPosition(int p) { + if (seeking) { + Float f; + f = p; + f = f / 255 * 100; + Float len = getPlayItemLength(); + if (len != 0) { + int np = len * f / 100; + SongTicker.sendAction + ( + "showinfo", + translate("Seek") + ": " + integerToTime(np) + "/" + integerToTime(len) + " (" + integerToString(f) + "%) ", + 0, 0, 0, 0 + ); + } + } +} + +/** Hehe, this is the best trick i figured out to indicate if we have a stream */ + +Seeker.onSetVisible (Boolean onoff) +{ + if (onoff) + { + progressBar.show(); + } + else + { + progressBar.hide(); + } +} + +Seeker.onLeftButtonDown(int x, int y) { + seeking = 1; + Seeker.setAlpha(128); + SeekerBehind.show(); +} + +Seeker.onLeftButtonUp(int x, int y) { + seeking = 0; + Seeker.setAlpha(255); + SeekerBehind.hide(); + SongTicker.sendAction("cancelinfo", "", 0, 0, 0, 0); +} + +Seeker.onSetFinalPosition(int p) { + SongTicker.sendAction("cancelinfo", "", 0, 0, 0, 0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/seek.maki b/Src/resources/skins/Big Bento/scripts/seek.maki Binary files differnew file mode 100644 index 00000000..5776e63c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/seek.maki diff --git a/Src/resources/skins/Big Bento/scripts/shadelinks.m b/Src/resources/skins/Big Bento/scripts/shadelinks.m new file mode 100644 index 00000000..b4a56bcd --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/shadelinks.m @@ -0,0 +1,74 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: syncbutton.m +Version: 1.0 + +Type: maki +Date: 25. Jun. 2007 - 14:04 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/com/songinfo.m> + +//nothing to see here + +Function String getArtist (); + +/* + +Global Button search, nowplaying; +Global boolean isShade; + +System.onScriptLoaded () +{ + search = getScriptGroup().getObject("search"); + isShade = (search.getParentLayout().getId() == "shade"); + nowplaying = getScriptGroup().getObject("nowplaying"); +} + +search.onLeftClick () +{ + String artist = getArtist(); + if (artist == "") return; + + getContainer("main").switchToLayout("normal"); + group sui = getContainer("main").getLayout("normal").findObject("sui.content"); + sui.sendAction ("browser_search", artist, 0, 0, 0, 0); +} + +nowplaying.onLeftClick () +{ + String artist = getArtist(); + if (artist == "") return; + + //getContainer("main").switchToLayout("normal"); + String icid = "fileinfoicon"; + if (isShade) + { + icid = "winshadeiconbento"; + } + System.navigateUrlBrowser("http://client.winamp.com/nowplaying/artist/?icid="+ icid +"&artistName=" + artist); +} + +*/ + +String getArtist () +{ + songinfo_reload(); + if (songinfo_isStream && songinfo_artist == "") + { + int v = strsearch(songinfo_streamtitle, " - "); + if (v > 0) + { + return strleft(songinfo_streamtitle, v); + } + return songinfo_streamtitle; + } + + return songinfo_artist; +} diff --git a/Src/resources/skins/Big Bento/scripts/shadelinks.maki b/Src/resources/skins/Big Bento/scripts/shadelinks.maki Binary files differnew file mode 100644 index 00000000..f1c75302 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/shadelinks.maki diff --git a/Src/resources/skins/Big Bento/scripts/shadesize.m b/Src/resources/skins/Big Bento/scripts/shadesize.m new file mode 100644 index 00000000..a9c5176c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/shadesize.m @@ -0,0 +1,217 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: shadesize.m +Version: 2.1 +Type: maki +Date: 23. Jul. 2007 - 17:24 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_appearance.m + +Function updateObjectPosition(int w); + +Global Group scriptGroup; +//Global Group g_cbuttons, g_sysbuttons, g_display, g_volume, g_seek, g_vis, g_links; +Global Group g_cbuttons, g_sysbuttons, g_display, g_volume, g_seek, g_vis; + +//Global Int minumim_w, x_cbuttons, w_cbuttons, w_sysbuttons, w_volume, w_display, w_seek, w_vis, x_seek, w_links, w_links_, x_links, x_links_; +Global Int minumim_w, x_cbuttons, w_cbuttons, w_sysbuttons, w_volume, w_display, w_seek, w_vis, x_seek; + +System.onScriptLoaded () +{ + initAttribs_Appearance(); + + scriptGroup = getScriptGroup(); + + g_cbuttons = scriptGroup.findObject("shade.cbuttons"); + x_cbuttons = stringToInteger(g_cbuttons.getXmlParam("x")); + w_cbuttons = stringToInteger(g_cbuttons.getXmlParam("w")); + + g_seek = scriptGroup.findObject("shade.seek"); + w_seek = stringToInteger(g_seek.getXmlParam("w")); + x_seek = stringToInteger(g_seek.getXmlParam("x")); + + g_vis = scriptGroup.findObject("shade.vis"); + w_vis = stringToInteger(g_vis.getXmlParam("w")); + +/* + g_links = scriptGroup.findObject("shade.links"); + w_links_ = stringToInteger(g_links.getXmlParam("w")); + x_links_ = stringToInteger(g_links.getXmlParam("x")); +*/ + w_sysbuttons = stringToInteger(getParam()); + + g_display = scriptGroup.findObject("shade.display"); + w_display = stringToInteger(g_display.getXmlParam("w")); + g_volume = scriptGroup.findObject("shade.volume"); + w_volume = stringToInteger(g_volume.getXmlParam("w")); +} + +scriptGroup.onResize (int x, int y, int w, int h) +{ + updateObjectPosition(w); +} + +scriptGroup.onSetVisible (Boolean onoff) +{ + if (onoff) + { + updateObjectPosition(scriptGroup.getWidth()); + } +} +/* +artist_info_buttons_attrib.onDataChanged () +{ + updateObjectPosition(scriptGroup.getWidth()); +} +*/ +updateObjectPosition (int w) +{ +/* if (artist_info_buttons_attrib.getData() == "1") + { + w_links = w_links_; + x_links = x_links_; + } + else + { + w_links = x_links = 0; + } +*/ + +// if (w >= x_cbuttons + w_cbuttons + 2 * w_display + w_volume + w_sysbuttons + 3.5 * w_seek + w_vis + w_links) + if (w >= x_cbuttons + w_cbuttons + 2 * w_display + w_volume + w_sysbuttons + 3.5 * w_seek + w_vis) + { +// if(g_links != null) g_links.setXmlParam("x", integerToString(x_seek - 2*w_seek - w_links)); + g_seek.setXmlParam("x", integerToString(x_seek - 2*w_seek)); + g_seek.setXmlParam("w", integerToString(3 * w_seek)); + g_cbuttons.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis)); + g_volume.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis + w_cbuttons)); + g_display.setXmlParam("x", integerToString(2 + x_cbuttons + w_cbuttons + w_volume + w_vis)); +// g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - 3 * w_seek - w_vis - w_links)); + g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - 3 * w_seek - w_vis)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.show(); + g_vis.show(); +/* if(w_links != 0) g_links.show(); + else g_links.hide(); +*/ + } +// else if (w >= x_cbuttons + w_cbuttons + 2 * w_display + w_volume + w_sysbuttons + 2 * w_seek + w_vis + w_links) + else if (w >= x_cbuttons + w_cbuttons + 2 * w_display + w_volume + w_sysbuttons + 2 * w_seek + w_vis) + { +// if(g_links != null) g_links.setXmlParam("x", integerToString(x_seek - w_seek - w_links)); + g_seek.setXmlParam("x", integerToString(x_seek - w_seek)); + g_seek.setXmlParam("w", integerToString(2 * w_seek)); + g_cbuttons.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis)); + g_volume.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis + w_cbuttons)); + g_display.setXmlParam("x", integerToString(2 + x_cbuttons + w_cbuttons + w_volume + w_vis)); +// g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - 2 * w_seek - w_vis - w_links)); + g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - 2 * w_seek - w_vis)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.show(); + g_vis.show(); +/* if(w_links != 0) g_links.show(); + else g_links.hide(); +*/ + } +// else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons + w_seek + w_vis + w_links) + else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons + w_seek + w_vis) + { +// if(g_links != null) g_links.setXmlParam("x", integerToString(x_seek - w_links)); + g_seek.setXmlParam("x", integerToString(x_seek)); + g_seek.setXmlParam("w", integerToString(w_seek)); + g_cbuttons.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis)); + g_volume.setXmlParam("x", integerToString(2 + x_cbuttons + w_vis + w_cbuttons)); + g_display.setXmlParam("x", integerToString(2 + x_cbuttons + w_cbuttons + w_volume + w_vis)); +// g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - w_seek - w_vis - w_links)); + g_display.setXmlParam("w", integerToString(0 - 1 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - w_seek - w_vis)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.show(); + g_vis.show(); +/* if(w_links != 0) g_links.show(); + else g_links.hide(); +*/ + } +// else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons + w_seek + w_links) + else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons + w_seek) + { +// if(g_links != null) g_links.setXmlParam("x", integerToString(x_seek - w_links)); + g_seek.setXmlParam("x", integerToString(x_seek)); + g_seek.setXmlParam("w", integerToString(w_seek)); + g_volume.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons)); + g_cbuttons.setXmlParam("x", integerToString(x_cbuttons)); + g_display.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons + w_volume)); +// g_display.setXmlParam("w", integerToString(0 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - w_seek - w_links)); + g_display.setXmlParam("w", integerToString(0 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - w_seek)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.show(); + g_vis.hide(); +/* if(w_links != 0) g_links.show(); + else g_links.hide(); +*/ + } + else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons + w_seek) + { + g_seek.setXmlParam("x", integerToString(x_seek)); + g_seek.setXmlParam("w", integerToString(w_seek)); + g_volume.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons)); + g_cbuttons.setXmlParam("x", integerToString(x_cbuttons)); + g_display.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons + w_volume)); + g_display.setXmlParam("w", integerToString(0 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume - w_seek)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.show(); + g_vis.hide(); +// g_links.hide(); + } + else if (w >= x_cbuttons + w_cbuttons + w_display + w_volume + w_sysbuttons) + { + g_cbuttons.setXmlParam("x", integerToString(x_cbuttons)); + g_volume.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons)); + g_display.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons + w_volume)); + g_display.setXmlParam("w", integerToString(0 - x_cbuttons - w_cbuttons - w_sysbuttons - w_volume)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.show(); + g_seek.hide(); + g_vis.hide(); +// g_links.hide(); + } + else if (w >= x_cbuttons + w_cbuttons + w_display + w_sysbuttons) + { + g_cbuttons.setXmlParam("x", integerToString(x_cbuttons)); + g_volume.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons)); + g_display.setXmlParam("x", integerToString(x_cbuttons + w_cbuttons)); + g_display.setXmlParam("w", integerToString(0 - x_cbuttons - w_cbuttons - w_sysbuttons)); + g_display.setXmlParam("relatw", "1"); + g_display.show(); + g_volume.hide(); + g_seek.hide(); + g_vis.hide(); +// g_links.hide(); + } + else + { + g_cbuttons.setXmlParam("x", integerToString(x_cbuttons)); + g_volume.hide(); + g_display.hide(); + g_seek.hide(); + g_vis.hide(); +// g_links.hide(); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/shadesize.maki b/Src/resources/skins/Big Bento/scripts/shadesize.maki Binary files differnew file mode 100644 index 00000000..61534de0 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/shadesize.maki diff --git a/Src/resources/skins/Big Bento/scripts/simplemaximize.m b/Src/resources/skins/Big Bento/scripts/simplemaximize.m new file mode 100644 index 00000000..cc255edd --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/simplemaximize.m @@ -0,0 +1,72 @@ +/** + * simlple maximize script + * + * doesn't require a registry store, so ideal for standardframes + * required objects: maximize & restore as buttons + * + * @author mpdeimos + * @version 0.1 + */ + +#include <lib/std.mi> + +Global Button restore, maximize; +Global Layout parent; + +Global Int lx, ly, lw, lh; + +System.onScriptLoaded () +{ + restore = getScriptGroup().findObject("restore"); + maximize = getScriptGroup().findObject("maximize"); + parent = getScriptGroup().getParentLayout(); + + lx = -1; + ly = -1; + lh = -1; + lw = -1; +} + +parent.onResize (int x, int y, int w, int h) +{ + double d = getScale(); + if (getLeft() == getViewPortLeftfromGuiObject(parent) && getTop() == getViewPortTopfromGuiObject(parent) && getWidth() == getViewPortWidthfromGuiObject(parent)/d && getHeight() == getViewPortHeightfromGuiObject(parent)/d) + { + restore.show(); + maximize.hide(); + } + else + { + restore.hide(); + maximize.show(); + } +} + +maximize.onLeftClick () +{ + lx = parent.getLeft(); + ly = parent.getTop(); + lw = parent.getWidth(); + lh = parent.getHeight(); + + double d = parent.getScale(); + parent.resize(getViewPortLeftfromGuiObject(parent), getViewPortTopfromGuiObject(parent), getViewPortWidthfromGuiObject(parent)/d, getViewPortHeightfromGuiObject(parent)/d); +} + + +restore.onLeftClick () +{ + if (lx == -1) + lx = parent.getLeft() - 75; + if (ly == -1) + ly = parent.getTop() - 75; + if (lw == -1) + lw = parent.getWidth() - 150; + if (lh == -1) + lh = parent.getHeight() - 150; + + parent.resize(lx,ly,lw,lh); +} + + +// TODO (mpdeimos) add scale recognizing diff --git a/Src/resources/skins/Big Bento/scripts/simplemaximize.maki b/Src/resources/skins/Big Bento/scripts/simplemaximize.maki Binary files differnew file mode 100644 index 00000000..75649cb2 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/simplemaximize.maki diff --git a/Src/resources/skins/Big Bento/scripts/songinfo.m b/Src/resources/skins/Big Bento/scripts/songinfo.m new file mode 100644 index 00000000..2805f95c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/songinfo.m @@ -0,0 +1,214 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: songinfo.m +Version: 1.0 + +Type: maki +Date: 20. Nov. 2006 - 22:47 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Function int getChannels (); // returning 1 for mono, 2 for stereo, more for multichannel (e.g. 6), -1 for no info available +Function string getBitrate(); +Function string getFrequency(); + +Global layer monster; +Global timer delayload, songInfoTimer; + +Global Text Bitrate, Frequency; +Global Layer l_Bitrate, l_Frequency; +Global int tempwidth; +Global boolean param; + +System.onScriptLoaded() +{ + group PlayerDisplay = getScriptgroup(); + + param = (getParam() == "big"); + + monster = PlayerDisplay.findObject("monster"); + + Bitrate = PlayerDisplay.findObject("Bitrate"); + Frequency = PlayerDisplay.findObject("Frequency"); + l_Bitrate = PlayerDisplay.findObject("Bitrate.label"); + l_Frequency = PlayerDisplay.findObject("Frequency.label"); + + delayload = new Timer; + delayload.setDelay(100); + + songInfoTimer = new Timer; + songInfoTimer.setDelay(1000); + + Int PlayerStatus = System.getStatus(); + + if ( PlayerStatus != 0 ) + { + delayload.start(); + bitrate.setText(getBitrate()); + Frequency.setText(getFrequency()); + if (PlayerStatus == 1) + { + songInfoTimer.start(); + } + } +} + +system.onScriptUnloading () +{ + songinfotimer.stop(); + delete songinfotimer; + delayload.stop(); + delete delayload; +} + +System.onResume() +{ + delayload.start(); + songInfoTimer.start(); +} + +System.onPlay() +{ + delayload.start(); + songInfoTimer.start(); +} + +System.onStop () +{ + monster.setXmlParam("image", "player.songinfo.na"); + songInfoTimer.stop(); +} + +system.onPause () +{ + songInfoTimer.stop(); +} + +System.onTitleChange(String newtitle) +{ + delayload.start(); + bitrate.setText(getBitrate()); +} + +delayload.onTimer () +{ + delayload.stop(); + int c = getChannels(); + if (c == -1) monster.setXmlParam("image", "player.songinfo.na"); + else if (c == 1) monster.setXmlParam("image", "player.songinfo.mono"); + else if (c == 2 || c == 3) monster.setXmlParam("image", "player.songinfo.stereo"); + else + { + if (tempwidth > 23) monster.setXmlParam("image", "player.songinfo.multi2"); + else monster.setXmlParam("image", "player.songinfo.multi"); + } + //ensure to display bitrate & frequency + bitrate.setText(getBitrate()); + Frequency.setText(getFrequency()); +} + +Int getChannels () +{ + if (strsearch(getSongInfoText(), "tereo") != -1) + { + return 2; + } + else if (strsearch(getSongInfoText(), "ono") != -1) + { + return 1; + } + else if (strsearch(getSongInfoText(), "annels") != -1) + { + int pos = strsearch(getSongInfoText(), "annels"); + return stringToInteger(strmid(getSongInfoText(), pos - 4, 1)); + } + else + { + return -1; + } +} + +songInfoTimer.onTimer () +{ + bitrate.setText(getBitrate()); +} + +string getBitrate () +{ + string sit = strlower(getSongInfoText()); + if (sit != "") + { + string rtn; + int searchresult; + for (int i = 0; i < 5; i++) { + rtn = getToken(sit, " ", i); + searchResult = strsearch(rtn, "kbps"); + if (searchResult>0) return StrMid(rtn, 0, searchResult); + } + return ""; + } + else + { + return ""; + } +} + +string getFrequency () +{ + string sit = strlower(getSongInfoText()); + if (sit != "") + { + string rtn; + int searchresult; + for (int i = 0; i < 5; i++) { + rtn = getToken(sit, " ", i); + searchResult = strsearch(strlower(rtn), "khz"); + if (searchResult>0) + { + rtn = StrMid(rtn, 0, searchResult); + searchResult = strsearch(strlower(rtn), "."); + if (searchResult>0) + { + rtn = getToken(rtn, ".", 0); + } + return rtn; + } + } + return ""; + } + else + { + return ""; + } +} + +Bitrate.onTextChanged (String newtxt) +{ + if (param) return; + if (Bitrate.getTextWidth() == tempwidth) return; + tempwidth = getTextWidth(); + if (getTextWidth() > 23) + { + monster.setXmlParam("x", "-39"); + Frequency.setXmlParam("x", "-75"); + l_Bitrate.setXmlParam("x", "-91"); + l_Frequency.setXmlParam("x", "-58"); + Bitrate.setXmlParam("w", "26"); + if (getChannels() > 3) monster.setXmlParam("image", "player.songinfo.multi2"); + } + else + { + monster.setXmlParam("x", "-45"); + Frequency.setXmlParam("x", "-80"); + l_Bitrate.setXmlParam("x", "-96"); + l_Frequency.setXmlParam("x", "-63"); + Bitrate.setXmlParam("w", "20"); + if (getChannels() > 3) monster.setXmlParam("image", "player.songinfo.multi"); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/songinfo.maki b/Src/resources/skins/Big Bento/scripts/songinfo.maki Binary files differnew file mode 100644 index 00000000..1d37b984 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/songinfo.maki diff --git a/Src/resources/skins/Big Bento/scripts/songticker.m b/Src/resources/skins/Big Bento/scripts/songticker.m new file mode 100644 index 00000000..6620dac6 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/songticker.m @@ -0,0 +1,190 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: songticker.m +Version: 1.0 + +Type: maki +Date: 18. Nov. 2006 - 16:08 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_songticker.m + +Function setTextW(); +Function updateTickerScrolling(); + +Global Timer SongTickerTimer; +Global GuiObject SongTicker; +Global Text SongTime, InfoDisplay; +Global int SongTicker_x, SongTicker_w, total_w; +Global int SongTime_x, SongTime_w, offset_x; + +Global Boolean isShade, byPassTimer; + +System.onScriptLoaded () +{ + initAttribs_Songticker(); + + group sg = getScriptGroup(); + + if (sg.getParentLayout().getID() == "shade") isShade = TRUE; + + SongTicker = sg.findObject("songticker"); + InfoDisplay = sg.findObject("InfoDisplay"); + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(666); + + SongTime = sg.findObject("SongTime"); + + SongTicker_x = SongTicker.getGuiX(); + SongTicker_w = SongTicker.getGuiW(); + + total_w = SongTicker_x + SongTicker_w; + + SongTime_x = SongTime.getGuiX(); + SongTime_w = SongTime.getTextWidth(); + + offset_x = stringToInteger(getParam()); + + setTextW(); + + updateTickerScrolling(); + +} + +System.onScriptUnloading () +{ + SongTickerTimer.stop(); + delete SongTickerTimer; +} + +SongTicker.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (strlower(action) == "showinfo") + { + InfoDisplay.cancelTarget(); + Songticker.cancelTarget(); + SongTickerTimer.stop(); + SongTickerTimer.start(); + InfoDisplay.setText(param); + InfoDisplay.setAlpha(255); + SongTicker.setAlpha(0); + } + else if (strlower(action) == "cancelinfo") + { + SongTickerTimer.onTimer (); + } + else if (strlower(action) == "setguix") + { + byPassTimer = TRUE; + SongTicker_X = x; + SongTicker_W = total_w - SongTicker_X; + SongTicker.setXmlParam("x", integerToString(SongTicker_X)); + InfoDisplay.setXmlParam("x", integerToString(SongTicker_X)); + SongTicker.setXmlParam("w", integerToString(SongTicker_W)); + InfoDisplay.setXmlParam("w", integerToString(SongTicker_W)); + } + else if (strlower(action) == "restoreguix") + { + byPassTimer = FALSE; + setTextW (); + } +} + +SongTickerTimer.onTimer () +{ + SongTickerTimer.stop(); + InfoDisplay.cancelTarget(); + InfoDisplay.setTargetA(0); + InfoDisplay.setTargetSpeed(0.3); + InfoDisplay.gotoTarget(); +} + +InfoDisplay.onTargetReached () +{ + if (InfoDisplay.getAlpha() == 0) + { + setTextW (); + Songticker.cancelTarget(); + Songticker.setTargetA(255); + Songticker.setTargetX(Songticker.getGuiX()); + Songticker.setTargetW(Songticker.getGuiW()); + Songticker.setTargetSpeed(0.3); + Songticker.gotoTarget(); + } +} + +/* Changing TickerScrolling via Config Attrib */ + +ScrollingAttribute.onDataChanged () +{ + setTextW (); + updateTickerScrolling(); +} + +updateTickerScrolling () +{ + if (Songticker == NULL) + { + return; + } + + if (songticker_scrolling_disabled_attrib.getData() == "1") SongTicker.setXMLParam("ticker", "off"); + if (songticker_style_modern_attrib.getData() == "1") SongTicker.setXMLParam("ticker", "bounce"); + if (songticker_style_old_attrib.getData() == "1") SongTicker.setXMLParam("ticker", "scroll"); +} + +/* set Songticker Position */ + +setTextW () +{ + if (byPassTimer) return; + + if (Songticker == NULL || InfoDisplay == NULL) + { + return; + } + + SongTicker_X = SongTime_X + SongTime_w + offset_x; + SongTicker_W = total_w - SongTicker_X; + + /*if (!isShade) + { + if (SongTime_w > 89) + { + SongTime.setXmlParam("x", "0"); + SongTicker_X = SongTime_X + SongTime_w + offset_x - 11; + SongTicker_W = total_w - SongTicker_X + 11; + } + else + { + SongTime.setXmlParam("x", "10"); + } + }*/ + + // debugString(system.getScriptGroup().getParentLayout().getID() + " -- x: " + integerToString(SongTicker_X) + " -- w: " + integerToString(SongTicker_W), 9); + + Songticker.setXmlParam("x", integerToString(SongTicker_X)); + Songticker.setXmlParam("w", integerToString(SongTicker_W)); + InfoDisplay.setXmlParam("x", integerToString(SongTicker_X)); + InfoDisplay.setXmlParam("w", integerToString(SongTicker_W)); +} + +SongTime.onTextChanged (String newtxt) +{ + int temp_w = SongTime.getTextWidth(); + if (SongTime_w == temp_w) return; + + SongTime_w = temp_w; + setTextW (); +} + +songticker.onTargetReached () +{ + setTextW (); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/songticker.maki b/Src/resources/skins/Big Bento/scripts/songticker.maki Binary files differnew file mode 100644 index 00000000..30d3e76f --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/songticker.maki diff --git a/Src/resources/skins/Big Bento/scripts/standardframe.m b/Src/resources/skins/Big Bento/scripts/standardframe.m new file mode 100644 index 00000000..acb87f8b --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/standardframe.m @@ -0,0 +1,68 @@ +#include <lib/std.mi> + +Global Group frameGroup, content;//, titlebar; +Global String x, y, w, h, rx, ry, rw, rh; +//Global Layer mouselayer; +Global Button Sysmenu; + +Function setNewGroup(String groupid); + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + String param = getParam(); + x = getToken(param, ",", 0); + y = getToken(param, ",", 1); + w = getToken(param, ",", 2); + h = getToken(param, ",", 3); + rx = getToken(param, ",", 4); + ry = getToken(param, ",", 5); + rw = getToken(param, ",", 6); + rh = getToken(param, ",", 7); + sysmenu = frameGroup.findObject("sysmenu"); +} + +System.onSetXuiParam(String param, String value) { + if (param == "content") { + setNewGroup(value); + //titlebar = frameGroup.findObject("wasabi.titlebar"); + //mouselayer = titlebar.findObject("mousetrap"); + } + /*if (param == "padtitleright" || param == "padtitleleft") { + if (titlebar != NULL) titlebar.setXmlParam(param, value); + } + if (param == "shade") { + if (mouselayer != NULL) mouselayer.setXmlParam("dblclickaction", "switch;"+value); + else messagebox("Cannot set shade parameter for StandardFrame object, no mousetrap found", "Skin Error", 0, ""); + }*/ +} + +// backward compatibility for prerelease notify trick +frameGroup.onNotify(String cmd, String param, int a, int b) { + String _command = getToken(cmd, ",", 0); + String _param = getToken(cmd, ",", 1); + if (_command == "content" || _command == "padtitleright" || _command == "padtitleleft" || _command == "shade") { + onSetXuiParam(_command, _param); + } +} + +setNewGroup(String groupid) { + content = newGroup(groupid); + if (content == NULL) { + messagebox("group \"" + groupid + "\" not found", "ButtonGroup", 0, ""); + return; + } + content.setXmlParam("x", x); + content.setXmlParam("y", y); + content.setXmlParam("w", w); + content.setXmlParam("h", h); + content.setXmlParam("relatx", rx); + content.setXmlParam("relaty", ry); + content.setXmlParam("relatw", rw); + content.setXmlParam("relath", rh); + content.init(frameGroup); +} + +Sysmenu.onLeftClick() { + LayoutStatus _status = frameGroup.findObject("sysmenu.status"); + _status.callme("{system}"); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/standardframe.maki b/Src/resources/skins/Big Bento/scripts/standardframe.maki Binary files differnew file mode 100644 index 00000000..daf4476d --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/standardframe.maki diff --git a/Src/resources/skins/Big Bento/scripts/suicore.m b/Src/resources/skins/Big Bento/scripts/suicore.m new file mode 100644 index 00000000..0d7fdc93 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore.m @@ -0,0 +1,410 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: suicore.m +Version: 4.4 + +Type: maki +Date: 02. Sep. 2007 - 17:35 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script is based on drawer.m + from Winamp Modern, but extended to + 4 components that can be closed! + Like in drawer.m I warn everybody not + to modify this script, cause it can be + harmed very fast! And you don't want + a buggy winamp skin, want you? + + Since script version 3.1 + (onesie build #022) + the script is devided into subscripts + for better debugging. +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/config.mi> +#include <lib/winampconfig.mi> + +#include attribs/init_windowpage.m +#include attribs/init_Autoresize.m +#include attribs/init_vis.m +#include attribs/init_appearance.m + +// #define DEBUG +#define FILE_NAME "suicore.m" +#include <lib/com/debug.m> + +#define ML_GUID "{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}" +#define VIS_GUID "{0000000A-000C-0010-FF7B-01014263450C}" +#define VIDEO_GUID "{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" +#define PL_GUID "{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D}" + +Function switchToMl(); +Function switchToPl(); +Function switchToVideo(); +Function switchToVis(); +//--Function switchToBrw(); +//--Function switchToExp(); +//--Function switchToCfg(); +Function switchToNoComp(); +Function switchFromNoComp(); + +Function hideMl(); +Function showMl(); +Function hidePl(); +Function showPl(); +Function hideVis(); +Function showVis(); +Function showVideo(); +Function hideVideo(); +//--Function hideExp(); +//--Function showExp(); +//--Function hideBrw(); +//--Function showBrw(); +//--Function hideCfg(); +//--Function showCfg(); + +Function onShowMl(); +Function onHideMl(); +Function onShowPl(); +Function onHidePl(); +Function onShowVis(); +Function onHideVis(); +Function onShowVideo(); +Function onHideVideo(); +//--Function onShowExp(); +//--Function onHideExp(); +//--Function onShowBrw(); +//--Function onHideBrw(); +//--Function onShowCfg(); +//--Function onHideCfg(); +Function onShowSUI(); +Function onHideSUI(); +Function onBeforeHideSUI(); + +Function dc_showMl(); +Function dc_hideMl(); +Function dc_showPl(); +Function dc_hidePl(); +Function dc_showVis(); +Function dc_showVideo(); +Function dc_hideVis(); +Function dc_hideVideo(); +//--Function dc_showExp(); +//--Function dc_hideExp(); +//--Function dc_showBrw(); +//--Function dc_hideBrw(); +//--Function dc_showCfg(); +//--Function dc_hideCfg(); + +Function dc_showSUI(); +Function dc_closeSUI(); + +Global GuiObject sui_window; +Global Group sui_components; +Global Group sui_vis, sui_video, sui_ml, sui_pl /*--, sui_brw, sui_exp, sui_cfg--*/; +Global WindowHolder sui_vis_wdh; +Global Button switch_ml, switch_pl, switch_video, switch_vis /*--, switch_exp, switch_brw, switch_cfg--*/; +Global Button hide_sui, show_sui; +Global Boolean bypasscancel; +Global Boolean showing_vis, hiding_vis, showing_video, hiding_video, showing_ml, hiding_ml, showing_pl, hiding_pl; +/*--Global Boolean showing_exp, hiding_exp, showing_brw, hiding_brw, showing_cfg, hiding_cfg;--*/ +Global Int play_auto_fs_video; + +Global Boolean callback_showing_vis, callback_hiding_vis, callback_showing_video, callback_hiding_video, callback_showing_ml, callback_hiding_ml, callback_showing_pl, callback_hiding_pl; +/*--Global Boolean callback_showing_exp, callback_hiding_exp, callback_showing_brw, callback_hiding_brw, callback_showing_cfg, callback_hiding_cfg;--*/ +Global Boolean callback_closing_sui, callback_showing_sui; +Global Layout normal; +Global Container player; +Global Boolean Mychange; +Global Boolean startup; +Global layer normal_resizer, normal_resizer2, normal_resizer3, normal_resizer4, normal_TBresizer, normal_TBresizer2, normal_TBresizer3; + +Global string h; + +Global Timer callbackTimer, tempDisable; + +Global button pe_move_top; + +//Global Button b_maximize, b_minimize, b_shade; + +// init special handles for video +#include suicore/video_handles.m + +// script loading/unloading goes here +#include suicore/load_handles.m + +// open / hiding components not caused by button clicks +#include suicore/external_handles.m + +// showing and hiding the components +#include suicore/show_hide.m + + +/** Button Clicks */ + +switch_video.onLeftClick () +{ + debugString("switch_video.Clicked()", D_WTF); + switchToVideo(); +} + +switch_vis.onLeftClick () +{ + debugString("switch_vis.Clicked()", D_WTF); + vis_inbig_attrib.setData("1"); + switchToVis(); +} + +switch_ml.onLeftClick () +{ + debugString("switch_ml.Clicked()", D_WTF); + switchToMl(); +} + +switch_pl.onLeftClick () +{ + debugString("switch_pl.Clicked()", D_WTF); + switchToPl(); +} +/*-- +switch_brw.onLeftClick () +{ + debugString("switch_brw.Clicked()", D_WTF); + switchToBrw(); +} +--*/ +/*-- +switch_exp.onLeftClick () +{ + debugString("switch_exp.Clicked()", D_WTF); + switchToExp(); +} +--*/ +/*--switch_cfg.onLeftClick () +{ + debugString("switch_cfg.Clicked()", D_WTF); + switchToCfg(); +}--*/ + +show_sui.onLeftClick () +{ + debugString("show_sui.Clicked()", D_WTF); + switchFromNoComp(); +} + +hide_sui.onLeftClick () +{ + debugString("hide_sui.Clicked()", D_WTF); + switchToNoComp(); + +} + +/** Calls after comp is shown */ + +onShowMl() +{ + switch_ml.setActivated(1); + switch_pl.setActivated(0); + switch_vis.setActivated(0); + switch_video.setActivated(0); + //--switch_brw.setActivated(0); + //--switch_exp.setActivated(0); + switch_ml.setXmlParam("ghost", "1"); + switch_pl.setXmlParam("ghost", "0"); + switch_video.setXmlParam("ghost", "0"); + switch_vis.setXmlParam("ghost", "0"); + //--switch_brw.setXmlParam("ghost", "0"); + //--switch_Cfg.setActivated(0); +} +onHideMl() { + //switch_ml.setXmlParam("ghost", "0"); +} + +onShowPl() +{ + switch_ml.setActivated(0); + switch_pl.setActivated(1); + switch_vis.setActivated(0); + switch_video.setActivated(0); + //--switch_brw.setActivated(0); + //--switch_exp.setActivated(0); + switch_ml.setXmlParam("ghost", "0"); + switch_pl.setXmlParam("ghost", "1"); + switch_video.setXmlParam("ghost", "0"); + switch_vis.setXmlParam("ghost", "0"); + //--switch_brw.setXmlParam("ghost", "0"); + //--switch_Cfg.setActivated(0); +} +onHidePl() { + //switch_ml.setXmlParam("ghost", "0"); +} + +onShowVis() +{ + switch_ml.setActivated(0); + switch_pl.setActivated(0); + switch_vis.setActivated(1); + switch_video.setActivated(0); + //--switch_brw.setActivated(0); + //--switch_exp.setActivated(0); + switch_vis.setXmlParam("ghost", "1"); + switch_video.setXmlParam("ghost", "0"); + switch_ml.setXmlParam("ghost", "0"); + switch_pl.setXmlParam("ghost", "0"); + //--switch_brw.setXmlParam("ghost", "0"); + //hideNamedWindow(ML_GUID); + //--switch_Cfg.setActivated(0); +} + +onHideVis() { + //switch_vis.setXmlParam("ghost", "0"); +} + +onShowVideo() +{ + switch_ml.setActivated(0); + switch_pl.setActivated(0); + switch_vis.setActivated(0); + switch_video.setActivated(1); + //--switch_brw.setActivated(0); + //--switch_exp.setActivated(0); + switch_video.setXmlParam("ghost", "1"); + switch_vis.setXmlParam("ghost", "0"); + switch_ml.setXmlParam("ghost", "0"); + switch_pl.setXmlParam("ghost", "0"); + //--switch_brw.setXmlParam("ghost", "0"); + //hideNamedWindow(ML_GUID); + //--switch_Cfg.setActivated(0); +} +onHideVideo() { + //switch_video.setXmlParam("ghost", "0"); +} + +/*-- +onShowBrw() +{ + switch_ml.setActivated(0); + switch_pl.setActivated(0); + switch_vis.setActivated(0); + switch_video.setActivated(0); + switch_brw.setActivated(1); + switch_exp.setActivated(0); + switch_brw.setXmlParam("ghost", "1"); + switch_vis.setXmlParam("ghost", "0"); + switch_ml.setXmlParam("ghost", "0"); + switch_pl.setXmlParam("ghost", "0"); + switch_video.setXmlParam("ghost", "0"); + hideNamedWindow(ML_GUID); + switch_Cfg.setActivated(0); +} +onHideBrw() { + switch_brw.setXmlParam("ghost", "0"); +} +--*/ +/*-- +onShowExp() +{ + switch_ml.setActivated(0); + switch_vis.setActivated(0); + switch_video.setActivated(0); + switch_brw.setActivated(0); + //--switch_exp.setActivated(1); + //--switch_exp.setXmlParam("ghost", "1"); + + //hideNamedWindow(ML_GUID); + //--switch_Cfg.setActivated(0); +} +onHideExp() { + switch_exp.setXmlParam("ghost", "0"); +} +--*/ +/*--onShowCfg() +{ + switch_ml.setActivated(0); + switch_vis.setActivated(0); + switch_video.setActivated(0); + switch_brw.setActivated(0); + switch_exp.setActivated(0); + //--switch_Cfg.setActivated(1); +} +onHideCfg() {}--*/ + +onShowSUI () +{ + /*string x = b_shade.getXmlParam("x"); + b_shade.setXmlParam("x", b_minimize.getXmlParam("x")); + b_minimize.setXmlParam("x", b_maximize.getXmlParam("x")); + b_maximize.setXmlParam("x", x); + b_maximize.show();*/ + sui_window.sendAction("callback", "onshowsui", 0,0,0,0); + +} + +onHideSUI () +{ + //hideNamedWindow(ML_GUID); + /*string x = b_minimize.getXmlParam("x"); + debugInt(b_shade.getGuiX()); + b_minimize.setXmlParam("x", b_shade.getXmlParam("x")); + b_shade.setXmlParam("x", b_maximize.getXmlParam("x")); + b_maximize.setXmlParam("x", x); + b_maximize.hide();*/ +// sui_window.sendAction("callback", "onhidesui", 0,0,0,0); +} + +onBeforeHideSUI () +{ + //hideNamedWindow(ML_GUID); + /*string x = b_minimize.getXmlParam("x"); + debugInt(b_shade.getGuiX()); + b_minimize.setXmlParam("x", b_shade.getXmlParam("x")); + b_shade.setXmlParam("x", b_maximize.getXmlParam("x")); + b_maximize.setXmlParam("x", x); + b_maximize.hide();*/ + sui_window.sendAction("callback", "onbeforehidesui", 0,0,0,0); +} + +pe_move_top.onLeftClick () +{ + normal.sendAction("load_comp", "pledit", 0,0,0,0); +} + + +#ifdef DEBUG + +/** Debug Stuff */ + +sui_ml.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_ml.setVisible(" +integerToString(onoff)+ ");", D_WTF); +} +sui_vis.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_vis.setVisible(" +integerToString(onoff)+ ");", D_WTF); +} +sui_video.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_video.setVisible(" +integerToString(onoff)+ ");", D_WTF); +} +/*-- +sui_brw.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_brw.setVisible(" +integerToString(onoff)+ ");", D_WTF); +} +--*/ +/*-- +sui_exp.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_exp.setVisible(" +integerToString(onoff)+ ");", D_WTF); +}--*/ +/*--sui_cfg.onSetVisible (Boolean onoff) +{ + debugString(DEBUG_PREFIX "sui_cfg.setVisible(" +integerToString(onoff)+ ");", D_WTF); +}--*/ + +#endif diff --git a/Src/resources/skins/Big Bento/scripts/suicore.maki b/Src/resources/skins/Big Bento/scripts/suicore.maki Binary files differnew file mode 100644 index 00000000..b28c20f8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore.maki diff --git a/Src/resources/skins/Big Bento/scripts/suicore/external_handles.m b/Src/resources/skins/Big Bento/scripts/suicore/external_handles.m new file mode 100644 index 00000000..5f64abae --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore/external_handles.m @@ -0,0 +1,767 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: external_handles.m + +Type: maki +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + + +//---------------------------------------------------------------------------------------------------------------- +// The main component switching as triggered by user menus, keyboard shortcuts, etc +//---------------------------------------------------------------------------------------------------------------- + +System.onGetCancelComponent(String guid, boolean goingvisible) { + debugString(DEBUG_PREFIX "System.onGetCancelComponent ( "+ guid + " , " + integerToString(goingvisible) + " ) {", D_WTF); + debugString(DEBUG_PREFIX " [Last Content: " + getPrivateString(getSkinName(), "Component", "Media Library") + " ]", D_WTF); + + Boolean isShade = (player.getCurLayout() != normal); + + // isVideo() hasn't been set yet in System.onPlay and System.onTitleChange, so we check it here instead. + if (play_auto_fs_video && !isVideo()) play_auto_fs_video = 0; + + // Do Playlist Stuff First (is unlinked from SUI) + + if (guid == PL_GUID) + { + if (goingvisible && isShade && (getPrivateString(getSkinName(), "Pledit_pos", "top") == "top" || pl_tab_attrib.getData() == "0")) + { + debugString(DEBUG_PREFIX " --> opening pl --- return from shade!", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + switchToNoComp(); + player.switchToLayout("normal"); + normal.sendAction("load_comp", "pledit", 0,0,0,0); + return TRUE; + } + } + + // Now we detect if suicore is already performing an action - if so we will return. + + if (bypasscancel) + { + debugString(DEBUG_PREFIX " --> bypasscancel", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == ML_GUID && !goingvisible && hiding_ml) + { + debugString(DEBUG_PREFIX " --> hiding_ml", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIDEO_GUID && !goingvisible && hiding_video) + { + debugString(DEBUG_PREFIX " --> hiding_video", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIS_GUID && !goingvisible && hiding_vis) + { + debugString(DEBUG_PREFIX " --> hiding_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == PL_GUID && !goingvisible && hiding_pl) + { + debugString(DEBUG_PREFIX " --> hiding_pl", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == ML_GUID && goingvisible && showing_ml) + { + debugString(DEBUG_PREFIX " --> showing_ml", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIDEO_GUID && goingvisible && showing_video) + { + debugString(DEBUG_PREFIX " --> showing_video", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == VIS_GUID && goingvisible && showing_vis) + { + debugString(DEBUG_PREFIX " --> showing_vis", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + if (guid == PL_GUID && goingvisible && showing_pl) + { + debugString(DEBUG_PREFIX " --> showing_pl", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; + } + + // Let's get our current Content + + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + + // If a window wants to hide but we are still in collapsed mode - return + if (!goingvisible && window_content == "Hidden") + { + debugString(DEBUG_PREFIX " --> SUI isn't visible", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + + // All comps that want to be shown + if (goingvisible) { + if (guid == VIDEO_GUID && (window_content != "Video" || isShade)) { + debugString(DEBUG_PREFIX " --> external showing_video --- start Timer", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + if (isShade) + { + sui_video.hide(); + player.switchToLayout("normal"); + } + + //setPrivateString(getSkinName(), "Component", "Video"); + + //--hideExp(); + //--hideBrw(); + hideVis(); + hideMl(); + hidePL(); + //--hideCfg(); + + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Video"); + dc_showSUI (); + return TRUE; + } + + dc_showVideo(); + + return TRUE; + } else if (guid == VIS_GUID && (window_content != "Vis" || isShade)) { + + if (vis_inbig_attrib.getData() == "0") + { + debugString(DEBUG_PREFIX " --> vis shouldn't be shown in big sui!", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + + debugString(DEBUG_PREFIX " --> external showing_vis --- start Timer", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + if (isShade) + { + sui_vis.hide(); + player.switchToLayout("normal"); + } + + //setPrivateString(getSkinName(), "Component", "Vis"); + + disablePSOVC(); + hideVideo(); + hideMl(); + //--hideExp(); + //--hideBrw(); + hidePL(); + //--hideCfg(); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Vis"); + dc_showSUI (); + return TRUE; + } + sui_vis_wdh.setXmlParam("autoopen", "0"); + showVis(); + sui_vis_wdh.setXmlParam("autoopen", "1"); + return FALSE; + } else if (guid == ML_GUID && (window_content != "Media Library" || isShade)) { + debugString(DEBUG_PREFIX " --> external showing_ml --- start Timer", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + if (isShade) + { + sui_ml.hide(); + player.switchToLayout("normal"); + } + + //setPrivateString(getSkinName(), "Component", "Media Library"); + + disablePSOVC(); + hideVideo(); + hideVis(); + hidePL(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Media Library"); + dc_showSUI (); + return TRUE; + } + dc_showMl(); + + return TRUE; + } else if (guid == PL_GUID && (window_content != "Pledit" || isShade) && pl_tab_attrib.getData() == "1") { + if (getPrivateString(getSkinName(), "Pledit_pos", "top") != "sui") + { + debugString(DEBUG_PREFIX " suicore won't handle this!", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + + debugString(DEBUG_PREFIX " --> external showing_pl --- start Timer", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + if (isShade) + { + sui_pl.hide(); + player.switchToLayout("normal"); + } + + //setPrivateString(getSkinName(), "Component", "Media Library"); + + disablePSOVC(); + hideVideo(); + hideVis(); + //--hideExp(); + //--hideBrw(); + hideML(); + //--hideCfg(); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Pledit"); + dc_showSUI (); + return TRUE; + } + dc_showPl(); + + return TRUE; + } + } + + // All comps that want to be hidden + if (!goingvisible) { + if (guid == VIDEO_GUID && window_content == "Video") { + debugString(DEBUG_PREFIX " --> external hiding_video", D_WTF); + + if (getStatus() != 0 && isVideo() && cfg_Video.getBool("autoopen") && cfg_Video.getBool("autoclose")) + { + debugString(DEBUG_PREFIX " --> video is playing", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return true; + } + else + { + disablePSOVC(); + hideVideo(); + hideVis(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + dc_showMl(); // normal Component + debugString(DEBUG_PREFIX " --> no video is playing", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return false; + } + } + if (guid == PL_GUID && window_content == "Pledit" && pl_tab_attrib.getData() == "1") { + debugString(DEBUG_PREFIX " --> external hiding_pl", D_WTF); + + if (getStatus() != STATUS_STOPPED && system.isVideo()) + { + debugString(DEBUG_PREFIX " --> video is playing", D_WTF); + debugString(DEBUG_PREFIX " return TRUE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + disablePSOVC(); + hideML(); + hideVis(); + //--hideExp(); + //--hideBrw(); + hidePL(); + //--hideCfg(); + dc_showVideo(); // normal Component + + return false; + + } + else + { + disablePSOVC(); + hideVideo(); + hideVis(); + //--hideExp(); + //--hideBrw(); + hidePL(); + //--hideCfg(); + dc_showMl(); // normal Component + debugString(DEBUG_PREFIX " --> no video is playing", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return false; + } + } + if (guid == VIS_GUID && window_content == "Vis") { + if (vis_inbig_attrib.getData() == "0") + { + debugString(DEBUG_PREFIX " --> vis shouldn't be closed in big sui!", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + if (getStatus() != STATUS_STOPPED && system.isVideo()) + { + debugString(DEBUG_PREFIX " --> external hiding_vis --- open Video", D_WTF); + hideMl(); + hideVis(); + hidePL(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + dc_showVideo(); + } + else + { + debugString(DEBUG_PREFIX " --> external hiding_video --- hide Video", D_WTF); + hideVideo(); + hideVis(); + //--hideExp(); + //--hideBrw(); + hidePL(); + //--hideCfg(); + dc_showMl(); // normal Component + } + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + return FALSE; + } + if (guid == ML_GUID && window_content == "Media Library") { + if ((getStatus() == STATUS_PLAYING || getStatus() == STATUS_PAUSED) && isVideo()) + { + debugString(DEBUG_PREFIX " --> external hiding_ml --- open Video", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + hideMl(); + hideVis(); + hidePL(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + dc_showVideo(); + return FALSE; + } + else + { + debugString(DEBUG_PREFIX " --> external hiding_ml --- switch to vis", D_WTF); + debugString(DEBUG_PREFIX " return flase;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + hideMl(); + hideVis(); + //--hideBrw(); + hidePL(); + //--hideCfg(); + hideVideo(); + //--hideExp(); + dc_closeSUI(); + return false; + } + + } + } + + debugString(DEBUG_PREFIX " --> Went thru", D_WTF); + debugString(DEBUG_PREFIX " return FALSE;", D_WTF); + debugString(DEBUG_PREFIX "}", D_WTF); + + return FALSE; +} + + +Player.onSwitchToLayout (Layout _layout) +{ + if (_layout.getId() != "normal") + { + mychange = 1; + //--sui_explorer_attrib.setData("0"); + //--sui_browser_attrib.setData("0"); + //--sui_config_attrib.setData("0"); + mychange = 0; + } +} + +//---------------------------------------------------------------------------------------------------------------- +// Windows that aren't registered with winamp will be handled here, the visibility state is linked to cfgattribs +//---------------------------------------------------------------------------------------------------------------- + +/*--sui_browser_attrib.onDataChanged () +{ + if (mychange) return; + mychange = 1; + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + if (getData() == "1") + { + if (player.getCurLayout() != normal) + { + player.switchToLayout("normal"); + hideMl(); + hideVis(); + //--hideCfg(); + hideVideo(); + //--hideExp(); + dc_showBrw(); + return; + } + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Browser"); + switchFromNoComp (); + return; + } + switchToBrw(); + } + else + { + if ((getStatus() == STATUS_PLAYING || getStatus() == STATUS_PAUSED) && isVideo()) + { + hideBrw(); + dc_showVideo(); + } + else + { + hideBrw(); + dc_showml(); + } + } + mychange = 0; +} +--*/ + +/*--sui_config_attrib.onDataChanged () +{ + if (mychange) return; + mychange = 1; + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + if (getData() == "1") + { + if (player.getCurLayout() != "normal") + { + player.switchToLayout("normal"); + hideMl(); + hideVis(); + hideBrw(); + hideCfg(); + hideVideo(); + hideExp(); + dc_showCfg(); + return; + } + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Config"); + switchFromNoComp (); + return; + } + switchToCfg(); + } + else + { + if ((getStatus() == STATUS_PLAYING || getStatus() == STATUS_PAUSED) && isVideo()) + { + hideCfg(); + dc_showVideo(); + } + else + { + hideCfg(); + dc_showml(); + } + } + mychange = 0; +} + + +sui_explorer_attrib.onDataChanged () +{ + if (mychange) return; + mychange = 1; + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + if (getData() == "1") + { + if (player.getCurLayout() != normal) + { + player.switchToLayout("normal"); + hideMl(); + hideVis(); + hideBrw(); + //--hideCfg(); + hideVideo(); + dc_showExp(); + return; + } + if (window_content == "Hidden" ) + { + setPrivateString(getSkinName(), "Hidden Component", "Explorer"); + switchFromNoComp (); + return; + } + switchToExp(); + } + else + { + if ((getStatus() == STATUS_PLAYING || getStatus() == STATUS_PAUSED) && isVideo()) + { + hideExp(); + dc_showVideo(); + } + else + { + hideExp(); + dc_showml(); + } + } + mychange = 0; +} +--*/ + + +//---------------------------------------------------------------------------------------------------------------- +// If a link is clicked within winamp this function *should* be called by wasabi core. +// returning 1 prevents winamp to open the url in an external browser +//---------------------------------------------------------------------------------------------------------------- + +System.onOpenUrl(string url) +{ + // If winamp is in shade mode + if (player.getCurLayout() != normal) + { + string comp = getPrivateString(getSkinName(), "Component", "Media Library"); // Get the current sui component + + // Can also happen, winamp is in shade - and normal wnd is collapsed + if (comp == "Hidden") + { + player.switchToLayout("normal"); + setPrivateString(getSkinName(), "Hidden Component", "Browser"); + setPrivateString(getSkinName(), "UrlXgive", url); + switchFromNoComp(); + return 0; + } + + // The other case - sade & normal is not collapsed + setPrivateString(getSkinName(), "UrlXgive", url); + player.switchToLayout("normal"); + hideMl(); + hideVis(); + //--hideCfg(); + hideVideo(); + //--hideExp(); + //--dc_showBrw(); + return 0; + } + + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + + // just deliver the url since the browser is already visible + if (window_content == "Browser") + /* + { + browser brw = sui_brw.findObject("webbrowser"); + if (brw != NULL) + { + brw.sendAction ("openurl", url, 0, 0, 0, 0); + } + } + // Some other component is visible - so we store the url and show the browser + else + { + setPrivateString(getSkinName(), "UrlXgive", url); + debugString("System.onOpenUrl( "+url+" ); --> opening Browser", D_WTF); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Browser"); + switchFromNoComp (); + return 0; + } + switchToBrw(); + } + */ + return 0; + +} + + +//---------------------------------------------------------------------------------------------------------------- +// the sui window can recieve messages from other scripts (mainly: fileinfo.maki) - we handle this here +//---------------------------------------------------------------------------------------------------------------- + +/*sui_window.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + // Perform a search in the browser + if (strlower(action) == "browser_search") + { + browser brw = sui_brw.findObject("webbrowser"); + //if (player.getCurLayout() != normal) // unlikely to happen! + { + //setPrivateString(getSkinName(), "UrlXgive", url); + player.switchToLayout("normal"); + hideMl(); + hideVis(); + //--hideCfg(); + hideVideo(); + //--hideExp(); + dc_showBrw(); + brw.sendAction ("search", param, 0, 0, 0, 0); + return 0; + } + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + if (window_content == "Browser") + { + if (brw != NULL) + { + brw.sendAction ("search", param, 0, 0, 0, 0); + } + } + else + { + //setPrivateString(getSkinName(), "UrlXgive", url); + debugString("System.onOpenUrl( "+url+" ); --> opening Browser", D_WTF); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Browser"); + switchFromNoComp (); + brw.sendAction ("search", param, 0, 0, 0, 0); + return 0; + } + switchToBrw(); + brw.sendAction ("search", param, 0, 0, 0, 0); + } + return 0; + } + // Just navigate to a site + else if (strlower(action) == "browser_navigate") + { + browser brw = sui_brw.findObject("webbrowser"); + if (player.getCurLayout() != normal) + { + //setPrivateString(getSkinName(), "UrlXgive", url); + player.switchToLayout("normal"); + hideMl(); + hideVis(); + //--hideCfg(); + hideVideo(); + //--hideExp(); + //--dc_showBrw(); + brw.sendAction ("openurl", param, 0, 0, 0, 0); + return 0; + } + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + if (window_content == "Browser") + { + if (brw != NULL) + { + brw.sendAction ("openurl", param, 0, 0, 0, 0); + } + } + else + { + //setPrivateString(getSkinName(), "UrlXgive", url); + debugString("System.onOpenUrl( "+url+" ); --> opening Browser", D_WTF); + if (window_content == "Hidden") + { + setPrivateString(getSkinName(), "Hidden Component", "Browser"); + brw.sendAction ("openurl", param, 0, 0, 0, 0); + switchFromNoComp (); + return 0; + } + switchToBrw(); + brw.sendAction ("openurl", param, 0, 0, 0, 0); + } + return 0; + } + else if (strlower(action) == "opentab") + { + if (strlower(param) == "ml") + { + switchToMl(); + } + } + else if (action == "hide_comp" && param == "pe") + { + if (getPrivateString(getSkinName(), "Component", "Media Library") == "Pledit") + { + switchToMl(); + } + } + +}*/ + + +//---------------------------------------------------------------------------------------------------------------- +// Switching Vis Plugin between MCV and SUI +//---------------------------------------------------------------------------------------------------------------- + +vis_inbig_attrib.onDataChanged () +{ + if (mychange) return; + String window_content2 = getPrivateString(getSkinName(), "Component", "Cover"); + String window_content = getPrivateString(getSkinName(), "Component2", "Media Library"); + int xg = getPrivateInt(getSkinName(), "ComponentXgive", 0); + if (getData() == "1" && (ic_vis.getData() == "1" || ic_vis_fileinfo.getData() == "1" || xg)) + { + if (xg) setPrivateInt(getSkinName(), "ComponentXgive", 0); + switchToVis(); + } + else if (getData() == "0" && sui_Vis.isVisible()) + { + setPrivateInt(getSkinName(), "ComponentXgive", 1); + hideVis(); + switchToMl(); + } +} + +//---------------------------------------------------------------------------------------------------------------- +// this one has only debug aims :) +//---------------------------------------------------------------------------------------------------------------- + +#ifdef DEBUG +System.onLookForComponent(String guid) +{ + debugString(DEBUG_PREFIX "System.onLookForComponent ( "+ guid + " )", D_WTF); +} +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/suicore/load_handles.m b/Src/resources/skins/Big Bento/scripts/suicore/load_handles.m new file mode 100644 index 00000000..72c55977 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore/load_handles.m @@ -0,0 +1,221 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: load_handles.m + +Type: maki +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +Function loadSUI (string content); +Function collectComponents(); + +Global timer tmr_collect; + +System.onScriptLoaded () +{ + startup = 1; + initAttribs_windowpage(); + initAttribs_vis(); + initAttribs_Autoresize(); + initAttribs_Appearance(); + initVideo(); + debugString(DEBUG_PREFIX "-------------------------", D_WTF); + debugString(DEBUG_PREFIX "System.onScriptLoded() {", D_WTF); + + /*debugString(integerToString(isNamedWindowVisible(ML_GUID)),9); + showWindow(ML_GUID, "", 0); + debugString(integerToString(isNamedWindowVisible(ML_GUID)),9);*/ + + player = getContainer("main"); + normal = player.getLayout("normal"); + sui_window = normal.findObject("sui.content"); + sui_components = sui_window.findObject("sui.components"); + + h = getToken(getParam(),",",0); + + sui_vis = sui_components.findObject("wdh.vis"); + sui_vis_wdh = sui_components.findObject("wdh.vis.object"); + sui_video = sui_components.findObject("wdh.video"); + sui_ml = sui_components.findObject("wdh.ml"); + sui_pl = sui_components.findObject("wdh.pl"); + //--sui_brw = sui_components.findObject("wdh.browser"); + //--sui_exp = sui_components.findObject("wdh.explorer"); + //--sui_cfg = sui_components.findObject("wdh.config"); + + switch_video = sui_window.findObject("switch.video"); + switch_vis = sui_window.findObject("switch.vis"); + switch_ml = sui_window.findObject("switch.ml"); + switch_pl = sui_window.findObject("switch.pl"); + //--switch_exp = sui_window.findObject("switch.explorer"); + //--switch_brw = sui_window.findObject("switch.browser"); + //--switch_cfg = sui_window.findObject("switch.config"); + + hide_sui = normal.getObject("sui.hide"); + show_sui = normal.getObject("sui.show"); + + pe_move_top = sui_pl.findObject("pe.move.top"); +/* + b_maximize = normal.findObject("player.button.maximize"); + b_minimize = normal.findObject("player.button.minimize"); + b_shade = normal.findObject("player.button.shade"); +*/ + normal_resizer = normal.getObject("player.resizer.bottomright.dummy"); + normal_resizer2 = normal.getObject("player.resizer.bottomleft"); + normal_resizer3 = normal.getObject("player.resizer.bottom"); + normal_resizer4 = normal.getObject("player.resizer.bottom2"); + + normal_TBresizer = normal.findObject("titlebar.resizer.topright"); + normal_TBresizer2 = normal.findObject("titlebar.resizer.topleft"); + normal_TBresizer3 = normal.findObject("titlebar.resizer.top"); + + callbackTimer = new Timer; + callbackTimer.setDelay(1); + tempDisable = new Timer; + tempDisable.setDelay(100); + + tmr_collect = new timer; + tmr_collect.setDelay(2000); + //tmr_collect.start(); + + //collectComponents(); + + String window_content = getPrivateString(getSkinName(), "Component", "Media Library"); + + debugString(DEBUG_PREFIX "window_content = " + window_content, D_WTF); + + loadSUI(window_content); + + debugString(DEBUG_PREFIX "}", D_WTF); + startup = 0; +} + +System.onScriptUnloading () +{ + debugString(DEBUG_PREFIX "System.onScriptUnloading() {", D_NWTF); + + delete callbackTimer; + delete PSOVCTimer; + delete tempDisable; + delete tmr_collect; + + debugString(DEBUG_PREFIX " delete Timers;", D_NWTF); + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +loadSUI (string content) +{ + if (content == "Vis") + { + debugString(DEBUG_PREFIX "if(Vis) performed", D_WTF); + Mychange = 1; + vis_inbig_attrib.setData("1"); + Mychange = 0; + switchToVis(); + } + else if (content == "Video") + { + debugString(DEBUG_PREFIX "if(Video) performed", D_WTF); + switchToVideo(); + } + else if (content == "Media Library") + { + debugString(DEBUG_PREFIX "if(ML) performed", D_WTF); + switchToMl(); + } + else if (content == "Pledit") + { + debugString(DEBUG_PREFIX "if(PL) performed", D_WTF); + switchToPl(); + }/*-- + else if (content == "Browser") + { + debugString(DEBUG_PREFIX "if(Browser) performed", D_WTF); + switchToBrw(); + }--*/ + /*-- + else if (content == "Explorer") + { + debugString(DEBUG_PREFIX "if(Explorer) performed", D_WTF); + switchToExp(); + }--*/ + /*--else if (content == "Config") + { + debugString(DEBUG_PREFIX "if(Config) performed", D_WTF); + switchToCfg(); + }--*/ + else if (content == "Hidden") + { + debugString(DEBUG_PREFIX "if(Hidden) performed", D_WTF); + switchToNoComp(); + } + else + { + debugString(DEBUG_PREFIX "[!] oops no component to perform", D_WTF); + } +} +/* +collectComponents() +{ + for ( int i = 0; i < getNumRegisteredWindows(); i++ ) + { + debug((getRegisteredWindowName(i))); + } + +} +*/ +/* +collectComponents () +{ + int i = 0; + string s; + while (s = enumEmbedGUID(i) != "") + { + debug (s); + i++; + } + if (i == 0 && !tmr_collect.isRunning()) + { + tmr_collect.start(); + //} +}*/ +/* +tmr_collect.onTimer () +{ + tmr_collect.stop(); + debug(getRegisteredWindowName(0)); + + collectComponents(); +} +*/ +/* +player.onAddContent(GuiObject wnd, String id, String guid) +{ + debug(wnd.getName()); + debug(id); +// debug(guid); +}*/ +/* +sui_ml.onsetVisible(int v) +{ + windowholder w = findObject("wdh"); + debug(w.getGUID()); + GuiObject o = w.getContent(); + debug(o.getId()); + debug(o.getName()); +}*/ +/* +System.onCreateLayout (Layout _layout) +{ + debug(_layout.getId()); +}*/ diff --git a/Src/resources/skins/Big Bento/scripts/suicore/show_hide.m b/Src/resources/skins/Big Bento/scripts/suicore/show_hide.m new file mode 100644 index 00000000..5ac7856e --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore/show_hide.m @@ -0,0 +1,870 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: show_hide.m + +Type: maki +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +switchToMl() +{ + debugString(DEBUG_PREFIX "switchToMl() {", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideVis(); + hideVideo(); + hidePL(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + //prohibit a closing bug + if (!startup) showMl(); + else + { + dc_showMl(); + onshowMl(); + } + debugString(DEBUG_PREFIX "}", D_WTF); + + hide_sui.show(); + show_sui.hide(); +} + +switchToPl() +{ + debugString(DEBUG_PREFIX "switchToPl() {", D_WTF); + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideVis(); + hideVideo(); + hideML(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + //prohibit a closing bug + if (!startup) showPl(); + else + { + dc_showPl(); + onshowPl(); + } + debugString(DEBUG_PREFIX "}", D_WTF); + + hide_sui.show(); + show_sui.hide(); +} + +switchToVideo() +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + hideMl(); + hidePL(); + hideVis(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + showVideo(); + + hide_sui.show(); + show_sui.hide(); +} + +switchToVis() +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideMl(); + hidePL(); + hideVideo(); + //--hideExp(); + //--hideBrw(); + //--hideCfg(); + showVis(); + + hide_sui.show(); + show_sui.hide(); +} + +/*--switchToBrw() +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideVis(); + hidePL(); + hideVideo(); + //--hideExp(); + hideMl(); + //--hideCfg(); + //--showBrw(); + + hide_sui.show(); + show_sui.hide(); +} + +switchToExp() +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideVis(); + hideVideo(); + hideMl(); + //--hideBrw(); + //--hideCfg(); + showExp(); + + hide_sui.show(); + show_sui.hide(); +} +--*/ +/*--switchToCfg() +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + hideVis(); + hideVideo(); + hideMl(); + hideBrw(); + hideExp(); + showCfg(); + + hide_sui.show(); + show_sui.hide(); +}--*/ + +switchToNoComp () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + tempDisable.start(); + disablePSOVC(); + + onBeforeHideSUI(); + + hideVis(); + hideVideo(); + hideMl(); + hidePL(); + //--hideBrw(); + //--hideExp(); + //--hideCfg(); + + string comp = getPrivateString(getSkinName(), "Component", "Media Library"); + if (comp != "Hidden") + { + normal.sendAction("sui", "tonocomp", 0,0,0,0); + setPrivateString(getSkinName(), "Hidden Component", comp); + setPrivateString(getSkinName(), "Component", "Hidden"); + if (!getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) setPrivateInt(getSkinName(), "nomax_h", normal.getHeight()); + } + else normal.sendAction("sui", "tonocomp", 1,0,0,0); + + normal_resizer.setXmlParam("resize", "right"); + normal_resizer2.setXmlParam("resize", "left"); + normal_resizer3.setXmlParam("resize", ""); + normal_resizer4.setXmlParam("resize", ""); + normal_TBresizer.setXmlParam("resize", "right"); + normal_TBresizer2.setXmlParam("resize", "left"); + normal_TBresizer3.hide(); + normal.setXmlParam("minimum_h" , h); + + int sy = normal.getGuiY() + normal.getGuiH() - stringtointeger(h); + normal.setXmlParam("h" , h); + if (collapse_bottom_attrib.getdata() == "1") normal.setXmlParam("y" , integerToString(sy)); + + hide_sui.hide(); + show_sui.show(); + + onHideSUI(); +} + +switchFromNoComp () +{ + if (callbackTimer.isRunning()) return; + if (tempDisable.isRunning()) return; + + string comp = getPrivateString(getSkinName(), "Hidden Component", "Media Library"); + setPrivateString(getSkinName(), "Component", comp); + + int sh = getPrivateInt(getSkinName(), "nomax_h", 600); + if (sh < 492) sh = 492; + + normal.sendAction("sui", "fromnocomp", 0,0,0,0); + normal_resizer.setXmlParam("resize", "bottomright"); + normal_resizer2.setXmlParam("resize", "bottomleft"); + normal_resizer3.setXmlParam("resize", "bottom"); + normal_resizer4.setXmlParam("resize", "bottom"); + normal_TBresizer.setXmlParam("resize", "topright"); + normal_TBresizer2.setXmlParam("resize", "topleft"); + normal_TBresizer3.show(); + normal.setXmlParam("minimum_h" , "492"); + double d_scale = normal.getScale(); + normal.beforeRedock(); + if (getPrivateInt(getSkinName(), "isMainWndMaximized", 0)) normal.resize(getViewPortLeft(),getViewPortTop(),getViewPortWidth()/d_scale, getViewPortHeight()/d_scale); + else + { + if (collapse_bottom_attrib.getdata() == "1") + { + int sy = normal.getGuiY() + normal.getGuiH() - sh; + if (sy < 0) sy = 0; + normal.setXmlParam("y" , integerToString(sy)); + } + normal.setXmlParam("h" , integerToString(sh)); + } + normal.redock(); + loadSUI (comp); + + onShowSUI(); +} + +tempDisable.onTimer() +{ + tempDisable.stop(); +} + +showMl() +{ + debugString(DEBUG_PREFIX "showMl() {", D_NWTF); + + showing_ml = 1; + setPrivateString(getSkinName(), "Component", "Media Library"); + GuiObject o = sui_ml; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) ml object not provided (show)", D_NWTF); + } +#endif + onShowMl(); + showing_ml = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hideMl() +{ + debugString(DEBUG_PREFIX "hideMl() {", D_NWTF); + + callback_showing_ml = 0; + + hiding_ml = 1; + GuiObject o = sui_ml; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) ml object not provided (hide)", D_NWTF); + } +#endif + onHideMl(); + hiding_ml = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +showPl() +{ + debugString(DEBUG_PREFIX "showPl() {", D_NWTF); + + showing_pl = 1; + setPrivateString(getSkinName(), "Component", "Pledit"); + setPrivateString(getSkinName(), "Pledit_pos", "sui"); + normal.sendAction("hide_comp", "pledit", 0,0,0,0); + GuiObject o = sui_pl; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) pl object not provided (show)", D_NWTF); + } +#endif + onShowPl(); + showing_pl = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hidePl() +{ + debugString(DEBUG_PREFIX "hidePl() {", D_NWTF); + + callback_showing_pl = 0; + + hiding_pl = 1; + GuiObject o = sui_pl; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) pl object not provided (hide)", D_NWTF); + } +#endif + onHidePl(); + hiding_pl = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +showVis() +{ + debugString(DEBUG_PREFIX "vis_inbig_attrib = " + vis_inbig_attrib.getData(), D_NWTF); + if (vis_inbig_attrib.getData() == "1") + { + debugString(DEBUG_PREFIX "showVis() {", D_NWTF); + + + showing_vis = 1; + setPrivateString(getSkinName(), "Component", "Vis"); + GuiObject o = sui_vis; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) vis object not provided (show)", D_NWTF); + } +#endif + onShowVis(); + showing_vis = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); + } +} + +hideVis() +{ + debugString(DEBUG_PREFIX "vis_inbig_attrib = " + vis_inbig_attrib.getData(), D_NWTF); + debugString(DEBUG_PREFIX "hideVis() {", D_NWTF); + + callback_showing_vis = 0; + + hiding_vis = 1; + GuiObject o = sui_vis; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) vis object not provided (hide)", D_NWTF); + } +#endif + onHideVis(); + hiding_vis = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +showVideo() +{ + debugString(DEBUG_PREFIX "showVideo() {", D_NWTF); + + showing_video = 1; + setPrivateString(getSkinName(), "Component", "Video"); + GuiObject o = sui_video; + if (o != NULL) + { + bypasscancel = 1; + if (o) { + // hack to fix bug for auto fullscreen on play + if (play_auto_fs_video) setVideoFullscreen(false); + + o.show(); + + // hack to fix bug for auto fullscreen on play + if (play_auto_fs_video) setVideoFullscreen(true); + } + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) video object not provided (show)", D_NWTF); + } + #endif + onShowVideo(); + play_auto_fs_video = 0; + showing_video = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hideVideo() +{ + debugString(DEBUG_PREFIX "hideVideo() {", D_NWTF); + + //callback_showing_video = 0; + + hiding_video = 1; + GuiObject o = sui_video; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) video object not provided (hide)", D_NWTF); + } +#endif + onHideVideo(); + hiding_video = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +/*--showBrw() +{ + debugString(DEBUG_PREFIX "showBrw() {", D_NWTF); + + showing_brw = 1; + setPrivateString(getSkinName(), "Component", "Browser"); + GuiObject o = sui_brw; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) brw object not provided (show)", D_NWTF); + } +#endif + onShowBrw(); + + mychange = 1; + sui_browser_attrib.setData("1"); + mychange = 0; + + showing_brw = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hideBrw() +{ + debugString(DEBUG_PREFIX "hideBrw() {", D_NWTF); + + callback_showing_brw = 0; + + hiding_brw = 1; + GuiObject o = sui_brw; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) brw object not provided (hide)", D_NWTF); + } +#endif + onHideBrw(); + hiding_brw = 0; + + mychange = 1; + sui_browser_attrib.setData("0"); + mychange = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +}--*/ +/*-- +showExp() +{ + debugString(DEBUG_PREFIX "showExp() {", D_NWTF); + + showing_exp = 1; + setPrivateString(getSkinName(), "Component", "Explorer"); + GuiObject o = sui_exp; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) exp object not provided (show)", D_NWTF); + } +#endif + onShowExp(); + showing_exp = 0; + + mychange = 1; + sui_explorer_attrib.setData("1"); + mychange = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hideExp() +{ + debugString(DEBUG_PREFIX "hideExp() {", D_NWTF); + + callback_showing_exp = 0; + + hiding_exp = 1; + GuiObject o = sui_exp; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) exp object not provided (hide)", D_NWTF); + } +#endif + onHideExp(); + hiding_exp = 0; + + mychange = 1; + sui_explorer_attrib.setData("0"); + mychange = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +}--*/ +/*-- +showCfg() +{ + debugString(DEBUG_PREFIX "showCfg() {", D_NWTF); + + showing_Cfg = 1; + setPrivateString(getSkinName(), "Component", "Config"); + GuiObject o = sui_Cfg; + if (o != NULL) + { + bypasscancel = 1; + if (o) o.show(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) Cfg object not provided (show)", D_NWTF); + } +#endif + onShowCfg(); + showing_Cfg = 0; + + mychange = 1; + sui_Config_attrib.setData("1"); + mychange = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} + +hideCfg() +{ + debugString(DEBUG_PREFIX "hideCfg() {", D_NWTF); + + callback_showing_cfg = 0; + + hiding_Cfg = 1; + GuiObject o = sui_Cfg; + if (o != NULL) { + bypasscancel = 1; + if (o) o.hide(); + bypasscancel = 0; + debugString(DEBUG_PREFIX " --> ok", D_NWTF); + } +#ifdef DEBUG + else + { + debugString(DEBUG_PREFIX " --> (!) Cfg object not provided (hide)", D_NWTF); + } +#endif + onHideCfg(); + hiding_Cfg = 0; + + mychange = 1; + sui_config_attrib.setData("0"); + mychange = 0; + + debugString(DEBUG_PREFIX "}", D_NWTF); +} +--*/ +callbackTimer.onTimer() +{ + callbackTimer.stop(); + + int _callback_showing_vis = callback_showing_vis; + int _callback_hiding_vis = callback_hiding_vis; + int _callback_showing_video = callback_showing_video; + int _callback_hiding_video = callback_hiding_video; + int _callback_showing_ml = callback_showing_ml; + int _callback_hiding_ml = callback_hiding_ml; + int _callback_showing_pl = callback_showing_pl; + int _callback_hiding_pl = callback_hiding_pl; + //--int _callback_showing_exp = callback_showing_exp; + //--int _callback_hiding_exp = callback_hiding_exp; + //--int _callback_showing_brw = callback_showing_brw; + //--int _callback_hiding_brw = callback_hiding_brw; + //--int _callback_showing_cfg = callback_showing_cfg; + //--int _callback_hiding_cfg = callback_hiding_cfg; + int _callback_showing_sui = callback_showing_sui; + int _callback_closing_sui = callback_closing_sui; + + callback_showing_vis = 0; + callback_hiding_vis = 0; + callback_showing_video = 0; + callback_hiding_video = 0; + callback_showing_ml = 0; + callback_hiding_ml = 0; + callback_showing_pl = 0; + callback_hiding_pl = 0; + //--callback_showing_exp = 0; + //--callback_hiding_exp = 0; + //--callback_showing_brw = 0; + //--callback_hiding_brw = 0; + //--callback_showing_cfg = 0; + //--callback_hiding_cfg = 0; + + callback_showing_sui = 0; + callback_closing_sui = 0; + + if (_callback_showing_ml == 1) + { + showMl(); + } + if (_callback_hiding_ml == 1) + { + hideMl(); + } + if (_callback_showing_pl == 1) + { + showPl(); + } + if (_callback_hiding_pl == 1) + { + hidePl(); + } + if (_callback_showing_video == 1) + { + showVideo(); + } + if (_callback_showing_vis == 1) + { + showVis(); + } + if (_callback_hiding_vis == 1) + { + hideVis(); + } + if (_callback_hiding_video == 1) + { + hideVideo(); + }/*-- + if (_callback_showing_exp == 1) + { + showExp(); + } + if (_callback_hiding_exp == 1) + { + hideExp(); + } + if (_callback_showing_brw == 1) + { + showBrw(); + } + if (_callback_hiding_brw == 1) + { + hideBrw(); + }--*/ + /*--if (_callback_showing_cfg == 1) + { + showCfg(); + } + if (_callback_hiding_cfg == 1) + { + hideCfg(); + }--*/ + if (_callback_showing_SUI == 1) + { + switchFromNoComp(); + } + if (_callback_closing_SUI == 1) + { + switchToNoComp(); + } +} + +dc_showMl() +{ + callback_showing_ml = 1; + callback_hiding_ml = 0; + callbackTimer.start(); +} + +dc_hideMl() +{ + callback_showing_ml = 0; + callback_hiding_ml = 1; + callbackTimer.start(); +} + +dc_showPl() +{ + callback_showing_pl = 1; + callback_hiding_pl = 0; + callbackTimer.start(); +} + +dc_hidePl() +{ + callback_showing_pl = 0; + callback_hiding_pl = 1; + callbackTimer.start(); +} + +dc_showVideo() +{ + callback_showing_video = 1; + callback_hiding_video = 0; + callbackTimer.start(); +} + +dc_showVis() +{ + callback_showing_vis = 1; + callback_hiding_vis = 0; + callbackTimer.start(); +} + +dc_hideVideo() +{ + callback_showing_video = 0; + callback_hiding_video = 1; + callbackTimer.start(); +} + +dc_hideVis() +{ + callback_showing_vis = 0; + callback_hiding_vis = 1; + callbackTimer.start(); +} +/*-- +dc_showBrw() +{ + callback_showing_brw = 1; + callback_hiding_brw = 0; + callbackTimer.start(); +} + +dc_hideBrw() +{ + callback_showing_brw = 0; + callback_hiding_brw = 1; + callbackTimer.start(); +}--*/ +/*-- +dc_showExp() +{ + callback_showing_exp = 1; + callback_hiding_exp = 0; + callbackTimer.start(); +} + +dc_hideExp() +{ + callback_showing_exp = 0; + callback_hiding_exp = 1; + callbackTimer.start(); +} +--*/ +/*--dc_showCfg() +{ + callback_showing_cfg = 1; + callback_hiding_cfg = 0; + callbackTimer.start(); +} + +dc_hideCfg() +{ + callback_showing_cfg = 0; + callback_hiding_cfg = 1; + callbackTimer.start(); +}--*/ + +dc_showSUI() +{ + callback_showing_sui = 1; + callback_closing_sui = 0; + callbackTimer.start(); +} + +dc_closeSUI() +{ + callback_showing_sui = 0; + callback_closing_sui = 1; + callbackTimer.start(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/suicore/video_handles.m b/Src/resources/skins/Big Bento/scripts/suicore/video_handles.m new file mode 100644 index 00000000..38e7b360 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/suicore/video_handles.m @@ -0,0 +1,146 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: video_handles.m +Version: 2.0 + +Type: maki +Date: 28. Okt. 2006 - 16:30 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +Depending Files: + scripts/suicore.maki +----------------------------------------------------- +---------------------------------------------------*/ + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#define SKINTWEAKS_CFGPAGE "{0542AFA4-48D9-4c9f-8900-5739D52C114F}" +#define VIDEO_CONFIG_GROUP "{2135E318-6919-4bcf-99D2-62BE3FCA8FA6}" + +Function initVideo(); +Function disablePSOVC(); +Function enablePSOVC(); + +Global Timer PSOVCTimer; +Global string psovc_save; + +Global WinampConfigGroup cfg_Video; + +Global Boolean lastWasVideo; + +initVideo () +{ + play_auto_fs_video = 0; + + PSOVCTimer = new Timer; + PSOVCTimer.setDelay(1000); + + cfg_Video = WinampConfig.getGroup(VIDEO_CONFIG_GROUP); +} + +/** Prevent video playback to stop after the wnd is hidden */ + +disablePSOVC() +{ + debugString("[suicore.m] " + "--> disabling stop on video close",0 ); + ConfigItem item = Config.getItem(SKINTWEAKS_CFGPAGE); + if (item) + { + ConfigAttribute attr = item.getAttribute("Prevent video playback Stop on video window Close"); + if (attr) psovc_save = attr.getData(); + if (attr) attr.setData("1"); + } + PSOVCTimer.start(); + debugString("[suicore.m] " + "--> PSOVCTimer.started();",0 ); +} + +enablePSOVC() +{ + debugString("[suicore.m] " + "--> enabling stop on video close",0 ); + PSOVCTimer.stop(); + ConfigItem item = Config.getItem(SKINTWEAKS_CFGPAGE); + if (item) + { + ConfigAttribute attr = item.getAttribute("Prevent video playback Stop on video window Close"); + if (attr) attr.setData(psovc_save); + } + debugString("[suicore.m] " + "--> PSOVCTimer.stopped();",0 ); +} + +PSOVCTimer.onTimer() +{ + enablePSOVC(); +} + +System.onPlay() +{ + // needed to handle video auto fullscreen on play + boolean auto_fs = cfg_Video.getBool("auto_fs"); + if (auto_fs) play_auto_fs_video = 1; + else play_auto_fs_video = 0; + + // removed for debugging aims + // if (isVideo() && cfg_Video.getBool("autoopen") && !sui_video.isVisible()) dc_showVideo(); +} + +System.onPause() +{ + play_auto_fs_video = 0; +} + +System.onResume() +{ + play_auto_fs_video = 0; + + // removed for debugging aims + // if (isVideo() && cfg_Video.getBool("autoopen") && !sui_video.isVisible()) dc_showVideo(); +} + +System.onStop() +{ + play_auto_fs_video = 0; +} + +System.onTitleChange(String newtitle) +{ + // needed to handle video auto fullscreen on play + boolean auto_fs = cfg_Video.getBool("auto_fs"); + if (auto_fs) play_auto_fs_video = 1; + else play_auto_fs_video = 0; + + /* removed for debugging aims + if (startup) + { + lastWasVideo = isVideo(); + return; + } + + if (isVideo() && cfg_Video.getBool("autoopen") && !sui_video.isVisible() && getStatus() != 0) dc_showVideo(); + else if (!isVideo() && cfg_Video.getBool("autoclose") && sui_video.isVisible() && lastWasVideo) showML(); + lastWasVideo = isVideo(); + */ +} + +//S/ystem.onTitleChange (String newtitle) +//{ + /*if (startup) + { + lastWasVideo = isVideo(); + return; + }*/ + + /*if (!startup && isVideo() && cfg_Video.getBool("autoopen") && !sui_video.isVisible() && getStatus() != 0) + { + callbackTimer.stop(); + tempDisable.stop(); + switchToVideo(); + debug(""); + }*/ + //else if (!isVideo() && cfg_Video.getBool("autoclose") && sui_video.isVisible() && lastWasVideo) showML(); + //lastWasVideo = isVideo(); +//}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/syncbutton.m b/Src/resources/skins/Big Bento/scripts/syncbutton.m new file mode 100644 index 00000000..9769a083 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/syncbutton.m @@ -0,0 +1,55 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: syncbutton.m +Version: 1.0 + +Type: maki +Date: 25. Jun. 2007 - 14:04 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global GuiObject mainButton, activeOverlay; +Global Boolean mouseDown; +Global Int activeOverlay_Y; + +System.onScriptLoaded () +{ + mainButton = getScriptGroup().findObject(getToken(getParam(), ";", 0)); + activeOverlay = getScriptGroup().findObject(getToken(getParam(), ";", 1)); + activeOverlay_Y = activeOverlay.getGuiY(); + mainButton.onsetvisible(mainButton.isvIsible()); +} + +mainButton.onLeftButtonDown (int x, int y) +{ + mouseDown = 1; + activeOverlay.setXmlParam("y", integerToString(activeOverlay_Y+1)); +} + +mainButton.onLeftButtonUp (int x, int y) +{ + mouseDown = 0; + activeOverlay.setXmlParam("y", integerToString(activeOverlay_Y)); +} + +mainButton.onleaveArea () +{ + activeOverlay.setXmlParam("y", integerToString(activeOverlay_Y)); +} + +mainButton.onEnterArea () +{ + if (mouseDown) activeOverlay.setXmlParam("y", integerToString(activeOverlay_Y+1)); +} + +mainButton.onSetVisible (Boolean onoff) +{ + if (onoff) activeOverlay.show(); + else activeOverlay.hide(); +} diff --git a/Src/resources/skins/Big Bento/scripts/syncbutton.maki b/Src/resources/skins/Big Bento/scripts/syncbutton.maki Binary files differnew file mode 100644 index 00000000..a11e0aff --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/syncbutton.maki diff --git a/Src/resources/skins/Big Bento/scripts/tabbutton.m b/Src/resources/skins/Big Bento/scripts/tabbutton.m new file mode 100644 index 00000000..1662ab98 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/tabbutton.m @@ -0,0 +1,87 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: tabbutton.m +Version: 1.0 + +Type: maki +Date: 28. Sep. 2007 - 13:12 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Global GuiObject normalGrid, hoverGrid, activeGrid, footerGrid; +Global Button mousetrap; +Global Text normalText, hoverText, activeText; +Global Boolean mouseDown; + +System.onScriptLoaded () +{ + group sg = getScriptGroup(); + + normalGrid = sg.getObject("bento.tabbutton.normal"); + hoverGrid = sg.getObject("bento.tabbutton.hover"); + activeGrid = sg.getObject("bento.tabbutton.active"); + normalText = sg.getObject("bento.tabbutton.normal.text"); + hoverText = sg.getObject("bento.tabbutton.hover.text"); + activeText = sg.getObject("bento.tabbutton.active.text"); + footerGrid = sg.getObject("bento.tabbutton.footer"); + + mousetrap = sg.getObject("bento.tabbutton.mousetrap"); +} + +System.onSetXuiParam (String stringParam, String value) +{ + if ( strlower(stringParam) == "tabtext" ) + { + normalText.setText(value); + hoverText.setText(value); + activeText.setText(value); + } +} + +mousetrap.onLeftButtonDown (int x, int y) +{ + mouseDown = 1; + normalGrid.show(); + hoverGrid.hide(); + normalText.show(); + hoverText.hide(); +} + +mousetrap.onLeftButtonUp (int x, int y) +{ + mouseDown = 0; + if (!getActivated() && isMouseOverRect()) { normalGrid.hide(); hoverGrid.show(); normalText.hide(); hoverText.show(); } +} + +mousetrap.onleaveArea () +{ + normalGrid.show(); + hoverGrid.hide(); + normalText.show(); + hoverText.hide(); +} + +mousetrap.onEnterArea () +{ + normalGrid.hide(); hoverGrid.show(); normalText.hide(); hoverText.show(); +} + +mousetrap.onActivate (int activated) +{ + if (activated) + { + normalGrid.hide(); hoverGrid.hide(); normalText.hide(); hoverText.hide(); + activeGrid.show(); footerGrid.show(); activeText.show(); + } + else + { + normalGrid.show(); hoverGrid.hide(); normalText.show(); hoverText.hide(); + activeGrid.hide(); footerGrid.hide(); activeText.hide(); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/tabbutton.maki b/Src/resources/skins/Big Bento/scripts/tabbutton.maki Binary files differnew file mode 100644 index 00000000..a10513b9 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/tabbutton.maki diff --git a/Src/resources/skins/Big Bento/scripts/tabcontrol.m b/Src/resources/skins/Big Bento/scripts/tabcontrol.m new file mode 100644 index 00000000..b8c37104 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/tabcontrol.m @@ -0,0 +1,122 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: tabcontrol.m +Version: 1.0 + +Type: maki +Date: 30. Okt. 2007 - 17:40 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_appearance.m + +Function updateTabPos(); +Function setAutoWidth(guiobject tab); + +Class Text WatchText; + +Global Boolean HAVE_ML = TRUE; + +Global GuiObject tabMl, tabVideo, tabVis, tabPl; +Global WatchText txtMl, txtVideo, txtVis, txtPL; +Global int startX, curX; +Global Button btnMl, btnPl; + +System.onScriptLoaded () +{ + initAttribs_Appearance(); + HAVE_ML = stringToInteger(getParam()); + + group sg = getScriptGroup(); + + tabML = sg.findObject("switch.ml"); + btnMl = sg.findObject("switch.ml"); + txtMl = tabMl.findObject("bento.tabbutton.normal.text"); + tabPL = sg.findObject("switch.pl"); + btnPl = sg.findObject("switch.pl"); + txtPl = tabPl.findObject("bento.tabbutton.normal.text"); + tabVis = sg.findObject("switch.vis"); + txtVis = tabMl.findObject("bento.tabbutton.normal.text"); + tabVideo = sg.findObject("switch.video"); + txtVideo = tabMl.findObject("bento.tabbutton.normal.text"); + + startX = tabMl.getGuiX(); + + updateTabPos(); +} + +updateTabPos () +{ + curX = startX; + if (!HAVE_ML) + { + tabMl.hide(); + } + else + { + curX += setAutoWidth(tabMl) + 1; + } + + if (pl_tab_attrib.getData() == "1") + { + tabPL.setXmlParam("x", integerToString(curX)); + curX += setAutoWidth(tabPL) + 1; + tabPL.show(); + } + else + { + tabPL.hide(); + } + + if (System.hasVideoSupport()) + { + tabVideo.setXmlParam("x", integerToString(curX)); + curX += setAutoWidth(tabVideo) + 1; + } + else + { + tabVideo.hide(); + } + + // commented out because System.isSafeMode() is not recognized by mc.exe + // if (!System.isSafeMode()) + // { + tabVis.setXmlParam("x", integerToString(curX)); + curX += setAutoWidth(tabVis) + 1; + // } + // else + // { + // tabVis.hide(); + // } +} + +int setAutoWidth (guiObject tab) +{ + text source = tab.findObject("bento.tabbutton.normal.text"); + int x = stringToInteger(source.getXmlparam("x")); + int w = source.getAutoWidth(); + + tab.setXmlParam("w", integerToString(2*x+w)); + + return 2*x + w; +} + +pl_tab_attrib.onDataChanged () +{ + if (pl_tab_attrib.getData() == "0") + { + setPrivateString(getSkinName(), "Pledit_pos", "top"); + if (btnPl.getActivated()) + { + btnMl.leftClick(); + btnMl.getParentLayout().sendAction("load_comp", "pledit", 0,0,0,0); + } + } + + updateTabPos(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/tabcontrol.maki b/Src/resources/skins/Big Bento/scripts/tabcontrol.maki Binary files differnew file mode 100644 index 00000000..8795e36a --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/tabcontrol.maki diff --git a/Src/resources/skins/Big Bento/scripts/timecontrol.m b/Src/resources/skins/Big Bento/scripts/timecontrol.m new file mode 100644 index 00000000..f801e233 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/timecontrol.m @@ -0,0 +1,89 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: timecontrol.m +Version: 1.0 + +Type: maki +Date: 29. Jun. 2007 - 00:13 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include <lib/config.mi> +#include <lib/com/AutoRepeatButton.m> + +Function updateAttrib (int val); + +Global ConfigAttribute timeAttrib; +Global text Display; +Global AutoRepeatButton Increase, Decrease; +Global float multiplier; +Global int maxvalue, step; +Global string suffix; +Global boolean myChange; + +System.onScriptLoaded () +{ + AutoRepeat_Load(); + string param = getParam(); + + string objects = getToken(param, "|", 0); + group scriptGroup = getScriptGroup(); + Display = scriptGroup.findObject(getToken(objects, ";", 0)); + Decrease = scriptGroup.findObject(getToken(objects, ";", 1)); + Increase = scriptGroup.findObject(getToken(objects, ";", 2)); + + objects = getToken(param, "|", 1); + timeAttrib = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1)); + + step = stringToInteger(getToken(param, "|", 2)); + maxvalue = stringToInteger(getToken(param, "|", 3)); + multiplier = stringToFloat(getToken(param, "|", 4)); + suffix = getToken(param, "|", 5); + + AutoRepeat_SetInitalDelay(250); + AutoRepeat_SetRepeatDelay(125); + + updateAttrib (0); +} + +System.onScriptUnloading () +{ + AutoRepeat_Unload(); +} + +Increase.onLeftClick () +{ + if (!AutoRepeat_ClickType) return; + updateAttrib (step); +} + +Decrease.onLeftClick () +{ + if (!AutoRepeat_ClickType) return; + updateAttrib (-step); +} + +timeAttrib.onDataChanged () +{ + if (myChange) return; + updateAttrib (0); +} + +updateAttrib (int val) +{ + float i = stringToInteger(timeAttrib.getData()); + i += val; + if (i < 0 || i > maxvalue) return; + myChange = 1; + string s = integerToString(i); + if (timeAttrib) timeAttrib.setData(s); + i *= multiplier; + s = floatToString(i,1); + Display.setText(s + suffix); + myChange = 0; +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/timecontrol.maki b/Src/resources/skins/Big Bento/scripts/timecontrol.maki Binary files differnew file mode 100644 index 00000000..cdd75712 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/timecontrol.maki diff --git a/Src/resources/skins/Big Bento/scripts/videoresize.m b/Src/resources/skins/Big Bento/scripts/videoresize.m new file mode 100644 index 00000000..4dede7c9 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/videoresize.m @@ -0,0 +1,196 @@ +/********************************************************\ +** Filename: videoresize.m ** +** Version: 1.0 ** +** Date: 23. Jan. 2008 - 11:23 ** +********************************************************** +** Type: winamp.wasabi/maki ** +** Project: Bento ** +********************************************************** +** Author: Martin Poehlmann aka Deimos ** +** E-Mail: martin@skinconsortium.com ** +** Internet: http://www.skinconsortium.com ** +** http://home.cs.tum.edu/~poehlman ** +\********************************************************/ + + +#include <lib/std.mi> +#include attribs/init_Autoresize.m + +Function adjust(int x, int y); +Function fade(GuiObject o, int a); + +Class GuiObject Mousetrap; + +Global Mousetrap resizer; +Global Mousetrap wdh, outer, bg; +Global Group sg; + +Global Int sx, sy, ox, oy, dx, dy; +Global Boolean move; + +Global Timer refresh; + +System.onScriptLoaded () +{ + initAttribs_Autoresize(); + + sg = getScriptGroup(); + wdh = sg.getObject("wdh"); + resizer = sg.getObject("wdh.drag"); + outer = sg.getObject("wdh.outer"); + bg = sg.getObject("bg"); + + refresh = new Timer; + refresh.setDelay(133); + + video_inframe_attrib.onDataChanged (); +} + +System.onScriptUnloading () +{ + refresh.stop(); + delete refresh; +} + +resizer.onLeftButtonDown (int x, int y) +{ + move = true; + sx = x; + sy = y; + ox = wdh.getGuiX(); + oy = wdh.getGuiY(); + refresh.start(); +} + +resizer.onLeftButtonUp (int x, int y) +{ + move = false; + refresh.stop(); +} + +resizer.onMouseMove (int x, int y) +{ + if (!move) return; + + dx = sx - x; + dy = sy - y; +} + +// handle the resizing with a timer in order to prevent jittering +refresh.onTimer () +{ + adjust(dx, dy); +} + +adjust (int x, int y) +{ + int nx = ox + x; + int ny = oy + y; + + // Ensure we don't get out of the bounds + if (nx < 5) + { + nx = 5; + } + + if (ny < 5) + { + ny = 5; + } + + // Minimum h/w: aligned with Nullsoft Video Symbol + if (sg.getHeight() - 2*ny < 64) + { + ny = (64 - sg.getHeight())/(-2); + } + + if (sg.getWidth() - 2*nx < 100) + { + nx = (100 - sg.getWidth())/(-2); + } + + outer.setXmlParam("x", integerToString(nx-1)); + outer.setXmlParam("w", integerToString(-2*(nx-1))); + outer.setXmlParam("y", integerToString(ny-1)); + outer.setXmlParam("h", integerToString(-2*(ny-1))); + + wdh.setXmlParam("x", integerToString(nx)); + wdh.setXmlParam("w", integerToString(-(2*nx))); + wdh.setXmlParam("y", integerToString(ny)); + wdh.setXmlParam("h", integerToString(-(2*ny))); + + resizer.setXmlParam("x", integerToString(-nx)); + resizer.setXmlParam("y", integerToString(-ny)); +} + +video_inframe_attrib.onDataChanged () +{ + if (getData() == "1") + { + outer.show(); + resizer.show(); + + outer.setXmlParam("x", integerToString(4)); + outer.setXmlParam("w", integerToString(-8)); + outer.setXmlParam("y", integerToString(4)); + outer.setXmlParam("h", integerToString(-8)); + + wdh.setXmlParam("x", integerToString(5)); + wdh.setXmlParam("w", integerToString(-10)); + wdh.setXmlParam("y", integerToString(5)); + wdh.setXmlParam("h", integerToString(-10)); + + resizer.setXmlParam("x", integerToString(-5)); + resizer.setXmlParam("y", integerToString(-5)); + + } + else + { + outer.hide(); + resizer.hide(); + + wdh.setXmlParam("x", integerToString(0)); + wdh.setXmlParam("w", integerToString(0)); + wdh.setXmlParam("y", integerToString(0)); + wdh.setXmlParam("h", integerToString(0)); + } +} + +/* +Mousetrap.onEnterArea () +{ + if (outer.getAlpha() == 255) return; + if (video_inframe_attrib.getData() == "1") + { + fade(outer, 255); + fade(resizer, 255); + } +} + +Mousetrap.onLeaveArea () +{ + if (move) return; + + for ( int i = 0; i < sg.getNumObjects(); i++ ) + { + if (sg.enumObject(i).isMouseOver(getMousePosX(), getMousePosY())) return; + } + + if (video_inframe_attrib.getData() == "1") + { + fade(outer, 0); + fade(resizer, 0); + } +} + +fade (GuiObject o, int a) +{ + o.cancelTarget(); + o.setTargetX(o.getGuiX()); + o.setTargetY(o.getGuiY()); + o.setTargetH(o.getGuiH()); + o.setTargetW(o.getGuiW()); + o.setTargetA(a); + o.setTargetSpeed(0.3); + o.gotoTarget(); +}*/
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/videoresize.maki b/Src/resources/skins/Big Bento/scripts/videoresize.maki Binary files differnew file mode 100644 index 00000000..58b403f2 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/videoresize.maki diff --git a/Src/resources/skins/Big Bento/scripts/visbuttons.m b/Src/resources/skins/Big Bento/scripts/visbuttons.m new file mode 100644 index 00000000..f322d400 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/visbuttons.m @@ -0,0 +1,148 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: visbuttons.m +Version: 1.0 +Type: maki +Date: 16. Aug. 2007 - 23:54 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> +#include attribs/init_appearance.m + +Function updateObjectPosition(int w); + +Global Group scriptGroup; +Global Button cfg, prv, nxt, rnd, rnda; +Global Boolean isBig; + +System.onScriptLoaded () +{ + initAttribs_Appearance(); + + scriptGroup = getScriptGroup(); + + cfg = scriptGroup.findObject("vis.cfg"); + prv = scriptGroup.findObject("vis.prv"); + nxt = scriptGroup.findObject("vis.nxt"); + rnd = scriptGroup.findObject("vis.rnd"); + rnda = scriptGroup.findObject("vis.rnd.active"); + + isBig = (prv.getGuiX() == 31); +} + +scriptGroup.onResize (int x, int y, int w, int h) +{ + updateObjectPosition(w); +} + +/* + +artist_info_buttons_attrib.onDataChanged () +{ + updateObjectPosition(scriptGroup.getWidth()); +} + +updateObjectPosition (int w) +{ + if (isBig) + { + if (artist_info_buttons_attrib.getData() != "1") + { + w += 62; + } + + if (w >= 248) + { + cfg.show(); + prv.show(); + rnd.show(); + rnda.show(); + nxt.show(); + } + else if (w >= 217) + { + cfg.show(); + prv.show(); + rnd.show(); + rnda.show(); + nxt.hide(); + } + else if (w >= 186) + { + cfg.show(); + prv.show(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + else if (w >= 155) + { + cfg.show(); + prv.hide(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + else + { + cfg.hide(); + prv.hide(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + return; + } + + if (artist_info_buttons_attrib.getData() != "1") + { + w += 46; + } + + if (w >= 192) + { + cfg.show(); + prv.show(); + rnd.show(); + rnda.show(); + nxt.show(); + } + else if (w >= 168) + { + cfg.show(); + prv.show(); + rnd.show(); + rnda.show(); + nxt.hide(); + } + else if (w >= 144) + { + cfg.show(); + prv.show(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + else if (w >= 120) + { + cfg.show(); + prv.hide(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + else + { + cfg.hide(); + prv.hide(); + rnd.hide(); + rnda.hide(); + nxt.hide(); + } + +}*/
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/visbuttons.maki b/Src/resources/skins/Big Bento/scripts/visbuttons.maki Binary files differnew file mode 100644 index 00000000..4d0e1d3c --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/visbuttons.maki diff --git a/Src/resources/skins/Big Bento/scripts/visualizer.m b/Src/resources/skins/Big Bento/scripts/visualizer.m new file mode 100644 index 00000000..c2d69898 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/visualizer.m @@ -0,0 +1,356 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: visualizer.m +Version: 1.4 + +Type: maki +Date: 07. Okt. 2007 - 19:56 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script handles also the timer reflection +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +#include attribs/init_appearance.m + +Function refreshVisSettings(); +Function setVis (int mode); +Function ProcessMenuResult (int a); + +Global Group scriptGroup; +Global Vis visualizer, visualizer_m; +Global Text tmr; + +Global PopUpMenu visMenu; +Global PopUpMenu specmenu; +Global PopUpMenu oscmenu; +Global PopUpMenu pksmenu; +Global PopUpMenu anamenu; +Global PopUpMenu stylemenu; + +Global Int currentMode, a_falloffspeed, p_falloffspeed, a_coloring; +Global Boolean show_peaks, isShade; +Global layer trigger; + +Global Layout thislayout; +Global Container main; + +System.onScriptLoaded() +{ + initAttribs_Appearance(); // init appearance attribs + + scriptGroup = getScriptGroup(); + thislayout = scriptGroup.getParentLayout(); + main = thislayout.getContainer(); + + // this script runs in shade and normal layout, we store this bool to prevent some actions to recieve the shade vis. + isShade = (scriptGroup.getParentlayout().getID() == "shade"); + + visualizer = scriptGroup.findObject("main.vis"); + + trigger = scriptGroup.findObject("main.vis.trigger"); + + if (!isShade) + { + visualizer_m = scriptGroup.findObject("main.vis.mirror"); + vis_reflection_attrib.onDataChanged(); + + tmr = scriptGroup.findObject("SongTime"); + timer_reflection_attrib.onDataChanged(); + } + + + + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + + refreshVisSettings (); +} + +refreshVisSettings () +{ + currentMode = getPrivateInt(getSkinName(), "Visualizer Mode", 1); + show_peaks = getPrivateInt(getSkinName(), "Visualizer show Peaks", 1); + a_falloffspeed = getPrivateInt(getSkinName(), "Visualizer analyzer falloff", 3); + p_falloffspeed = getPrivateInt(getSkinName(), "Visualizer peaks falloff", 2); + a_coloring = getPrivateInt(getSkinName(), "Visualizer analyzer coloring", 0); + + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + + if (a_coloring == 0) + { + visualizer.setXmlParam("coloring", "Normal"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 1) + { + visualizer.setXmlParam("coloring", "Normal"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 2) + { + visualizer.setXmlParam("coloring", "Fire"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Fire"); + } + else if (a_coloring == 3) + { + visualizer.setXmlParam("coloring", "Line"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Line"); + } + + if (!isShade) + { + visualizer_m.setXmlParam("peaks", integerToString(show_peaks)); + visualizer_m.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + visualizer_m.setXmlParam("falloff", integerToString(a_falloffspeed)); + } + + setVis (currentMode); +} + +trigger.onLeftButtonDown (int x, int y) +{ + if (isKeyDown(VK_ALT) && isKeyDown(VK_SHIFT) && isKeyDown(VK_CONTROL)) + { + if (visualizer.getXmlParam("fliph") == "1") + { + visualizer.setXmlParam("fliph", "0"); + visualizer_m.setXmlParam("fliph", "0"); + } + else + { + visualizer.setXmlParam("fliph", "1"); + visualizer_m.setXmlParam("fliph", "1"); + } + return; + } + + currentMode++; + + if (currentMode == 6) + { + currentMode = 0; + } + + setVis (currentMode); + complete; +} + +trigger.onRightButtonUp (int x, int y) +{ + visMenu = new PopUpMenu; + specmenu = new PopUpMenu; + oscmenu = new PopUpMenu; + pksmenu = new PopUpMenu; + anamenu = new PopUpMenu; + stylemenu = new PopUpMenu; + + visMenu.addCommand("Presets:", 999, 0, 1); + visMenu.addCommand("No Visualization", 100, currentMode == 0, 0); + specmenu.addCommand("Thick Bands", 1, currentMode == 1, 0); + specmenu.addCommand("Thin Bands", 2, currentMode == 2, 0); + visMenu.addSubMenu(specmenu, "Spectrum Analyzer"); + + oscmenu.addCommand("Solid", 3, currentMode == 3, 0); + oscmenu.addCommand("Dots", 4, currentMode == 4, 0); + oscmenu.addCommand("Lines", 5, currentMode == 5, 0); + visMenu.addSubMenu(oscmenu, "Oscilloscope"); + + visMenu.addSeparator(); + visMenu.addCommand("Options:", 102, 0, 1); + visMenu.addCommand("Show Peaks", 101, show_peaks == 1, 0); + pksmenu.addCommand("Slower", 200, p_falloffspeed == 0, 0); + pksmenu.addCommand("Slow", 201, p_falloffspeed == 1, 0); + pksmenu.addCommand("Moderate", 202, p_falloffspeed == 2, 0); + pksmenu.addCommand("Fast", 203, p_falloffspeed == 3, 0); + pksmenu.addCommand("Faster", 204, p_falloffspeed == 4, 0); + visMenu.addSubMenu(pksmenu, "Peak Falloff Speed"); + anamenu.addCommand("Slower", 300, a_falloffspeed == 0, 0); + anamenu.addCommand("Slow", 301, a_falloffspeed == 1, 0); + anamenu.addCommand("Moderate", 302, a_falloffspeed == 2, 0); + anamenu.addCommand("Fast", 303, a_falloffspeed == 3, 0); + anamenu.addCommand("Faster", 304, a_falloffspeed == 4, 0); + visMenu.addSubMenu(anamenu, "Analyzer Falloff Speed"); + stylemenu.addCommand("Normal", 400, a_coloring == 0, 0); + stylemenu.addCommand("Fire", 402, a_coloring == 2, 0); + stylemenu.addCommand("Line", 403, a_coloring == 3, 0); + visMenu.addSubMenu(stylemenu, "Analyzer Coloring"); + + ProcessMenuResult (visMenu.popAtMouse()); + + delete visMenu; + delete specmenu; + delete oscmenu; + delete pksmenu; + delete anamenu; + delete stylemenu; + + complete; +} + +ProcessMenuResult (int a) +{ + if (a < 1) return; + + if (a > 0 && a <= 6 || a == 100) + { + if (a == 100) a = 0; + setVis(a); + } + + else if (a == 101) + { + show_peaks = (show_peaks - 1) * (-1); + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + if (!isShade) visualizer_m.setXmlParam("peaks", integerToString(show_peaks)); + setPrivateInt(getSkinName(), "Visualizer show Peaks", show_peaks); + } + + else if (a >= 200 && a <= 204) + { + p_falloffspeed = a - 200; + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + if (!isShade) visualizer_m.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + setPrivateInt(getSkinName(), "Visualizer peaks falloff", p_falloffspeed); + } + + else if (a >= 300 && a <= 304) + { + a_falloffspeed = a - 300; + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + if (!isShade) visualizer_m.setXmlParam("falloff", integerToString(a_falloffspeed)); + setPrivateInt(getSkinName(), "Visualizer analyzer falloff", a_falloffspeed); + } + + else if (a >= 400 && a <= 403) + { + a_coloring = a - 400; + if (a_coloring == 0) + { + visualizer.setXmlParam("coloring", "Normal"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 1) + { + visualizer.setXmlParam("coloring", "Normal"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 2) + { + visualizer.setXmlParam("coloring", "Fire"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Fire"); + } + else if (a_coloring == 3) + { + visualizer.setXmlParam("coloring", "Line"); + if (!isShade) visualizer_m.setXmlParam("coloring", "Line"); + } + setPrivateInt(getSkinName(), "Visualizer analyzer coloring", a_coloring); + } +} + +setVis (int mode) +{ + setPrivateInt(getSkinName(), "Visualizer Mode", mode); + if (mode == 0) + { + visualizer.setMode(0); + if (!isShade) visualizer_m.setMode(0); + } + else if (mode == 1) + { + visualizer.setXmlParam("bandwidth", "wide"); + visualizer.setMode(1); + if (!isShade) visualizer_m.setXmlParam("bandwidth", "wide"); + if (!isShade) visualizer_m.setMode(1); + } + else if (mode == 2) + { + visualizer.setXmlParam("bandwidth", "thin"); + visualizer.setMode(1); + if (!isShade) visualizer_m.setXmlParam("bandwidth", "thin"); + if (!isShade) visualizer_m.setMode(1); + } + else if (mode == 3) + { + visualizer.setXmlParam("oscstyle", "solid"); + visualizer.setMode(2); + if (!isShade) visualizer_m.setXmlParam("oscstyle", "solid"); + if (!isShade) visualizer_m.setMode(2); + } + else if (mode == 4) + { + visualizer.setXmlParam("oscstyle", "dots"); + visualizer.setMode(2); + if (!isShade) visualizer_m.setXmlParam("oscstyle", "dots"); + if (!isShade) visualizer_m.setMode(2); + } + else if (mode == 5) + { + visualizer.setXmlParam("oscstyle", "lines"); + visualizer.setMode(2); + if (!isShade) visualizer_m.setXmlParam("oscstyle", "lines"); + if (!isShade) visualizer_m.setMode(2); + } + currentMode = mode; +} + +// Set Vis reflection on/off + +vis_reflection_attrib.onDataChanged () +{ + if (isShade) + { + // shade visualizer doesn't have a reflection + return; + } + + if (getdata() == "1") + { + visualizer_m.show(); + } + else + { + visualizer_m.hide(); + } +} + +// Set Timer reflection on/off + +timer_reflection_attrib.onDataChanged () +{ + if (isShade) + { + // shade visualizer doesn't have a reflection + return; + } + + if (getdata() == "1") + { + tmr.setXmlParam("font", "player.bitmapfont.nums"); + } + else + { + tmr.setXmlParam("font", "player.bitmapfont.nums.noreflect"); + } +} + +// Sync Normal and Shade Layout + +main.onBeforeSwitchToLayout(Layout oldlayout, Layout newlayout) +{ + if (newlayout != thislayout) + { + return; + } + + refreshVisSettings(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/scripts/visualizer.maki b/Src/resources/skins/Big Bento/scripts/visualizer.maki Binary files differnew file mode 100644 index 00000000..1bfe10c8 --- /dev/null +++ b/Src/resources/skins/Big Bento/scripts/visualizer.maki diff --git a/Src/resources/skins/Big Bento/skin.xml b/Src/resources/skins/Big Bento/skin.xml new file mode 100644 index 00000000..5fe50a19 --- /dev/null +++ b/Src/resources/skins/Big Bento/skin.xml @@ -0,0 +1,43 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> + +<WinampAbstractionLayer version="1.35"> + <skininfo> + <version>1.2.4</version> + <name>Big Bento</name> + <author>Martin Pöhlmann, Taber Buhl</author> + <comment>Graphics by Taber Buhl - Wasabi Development by Ben Allison and Martin Poehlmann</comment> + <email>martin@skinconsortium.com</email> + <screenshot>screenshot.png</screenshot> + <homepage>http://www.skinconsortium.com/</homepage> + </skininfo> + + <accelerators section="general"> + <accelerator bind="Alt+F" action="MENUHOTKEY_FILE" /> + <accelerator bind="Alt+P" action="MENUHOTKEY_PLAY" /> + <accelerator bind="Alt+O" action="MENUHOTKEY_OPTIONS" /> + <accelerator bind="Alt+I" action="MENUHOTKEY_VIEW" /> + <accelerator bind="Alt+H" action="MENUHOTKEY_HELP" /> + </accelerators> + + <accelerators section="normal"> + <accelerator bind="space" action="SHOW_CURRENT_TRACK" /> + </accelerators> + + <scripts> + <script file="scripts/loadattribs.maki" param="big"/> <!-- Must be loaded at first --> + </scripts> + + <include file="xml/color-presets.xml"/> + <include file="xml/system-colors.xml"/> + <include file="xml/system-elements.xml"/> + <include file="xml/standardframe.xml" /> + <include file="xml/window-overrides.xml"/> + <include file="xml/player.xml"/> + <include file="xml/notifier.xml"/> + <include file="about/about.xml"/> + + <scripts> + <script file="scripts/maximize.maki" param="166,23"/> + </scripts> + +</WinampAbstractionLayer>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/window/Scrollgrips.png b/Src/resources/skins/Big Bento/window/Scrollgrips.png Binary files differnew file mode 100644 index 00000000..781dd0b4 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/Scrollgrips.png diff --git a/Src/resources/skins/Big Bento/window/aol_radio_alb_art.jpg b/Src/resources/skins/Big Bento/window/aol_radio_alb_art.jpg Binary files differnew file mode 100644 index 00000000..cdf7662b --- /dev/null +++ b/Src/resources/skins/Big Bento/window/aol_radio_alb_art.jpg diff --git a/Src/resources/skins/Big Bento/window/beatvis.png b/Src/resources/skins/Big Bento/window/beatvis.png Binary files differnew file mode 100644 index 00000000..9bf28e68 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/beatvis.png diff --git a/Src/resources/skins/Big Bento/window/branding.png b/Src/resources/skins/Big Bento/window/branding.png Binary files differnew file mode 100644 index 00000000..93ffbc94 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/branding.png diff --git a/Src/resources/skins/Big Bento/window/compcontrols.png b/Src/resources/skins/Big Bento/window/compcontrols.png Binary files differnew file mode 100644 index 00000000..a0d2bc55 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/compcontrols.png diff --git a/Src/resources/skins/Big Bento/window/componentcontrols.png b/Src/resources/skins/Big Bento/window/componentcontrols.png Binary files differnew file mode 100644 index 00000000..e19d3876 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/componentcontrols.png diff --git a/Src/resources/skins/Big Bento/window/config.png b/Src/resources/skins/Big Bento/window/config.png Binary files differnew file mode 100644 index 00000000..63c5ec98 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/config.png diff --git a/Src/resources/skins/Big Bento/window/equalizer.png b/Src/resources/skins/Big Bento/window/equalizer.png Binary files differnew file mode 100644 index 00000000..41edba12 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/equalizer.png diff --git a/Src/resources/skins/Big Bento/window/menu_file.png b/Src/resources/skins/Big Bento/window/menu_file.png Binary files differnew file mode 100644 index 00000000..0d59ef50 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/menu_file.png diff --git a/Src/resources/skins/Big Bento/window/menu_help.png b/Src/resources/skins/Big Bento/window/menu_help.png Binary files differnew file mode 100644 index 00000000..47c946f0 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/menu_help.png diff --git a/Src/resources/skins/Big Bento/window/menu_options.png b/Src/resources/skins/Big Bento/window/menu_options.png Binary files differnew file mode 100644 index 00000000..fd4039bd --- /dev/null +++ b/Src/resources/skins/Big Bento/window/menu_options.png diff --git a/Src/resources/skins/Big Bento/window/menu_play.png b/Src/resources/skins/Big Bento/window/menu_play.png Binary files differnew file mode 100644 index 00000000..d1be3113 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/menu_play.png diff --git a/Src/resources/skins/Big Bento/window/menu_view.png b/Src/resources/skins/Big Bento/window/menu_view.png Binary files differnew file mode 100644 index 00000000..92b441f5 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/menu_view.png diff --git a/Src/resources/skins/Big Bento/window/no_alb_art_big.png b/Src/resources/skins/Big Bento/window/no_alb_art_big.png Binary files differnew file mode 100644 index 00000000..e950334f --- /dev/null +++ b/Src/resources/skins/Big Bento/window/no_alb_art_big.png diff --git a/Src/resources/skins/Big Bento/window/notfound.png b/Src/resources/skins/Big Bento/window/notfound.png Binary files differnew file mode 100644 index 00000000..0861d23a --- /dev/null +++ b/Src/resources/skins/Big Bento/window/notfound.png diff --git a/Src/resources/skins/Big Bento/window/notfoundXXL.png b/Src/resources/skins/Big Bento/window/notfoundXXL.png Binary files differnew file mode 100644 index 00000000..b839ffed --- /dev/null +++ b/Src/resources/skins/Big Bento/window/notfoundXXL.png diff --git a/Src/resources/skins/Big Bento/window/notifier.png b/Src/resources/skins/Big Bento/window/notifier.png Binary files differnew file mode 100644 index 00000000..f41ccfa7 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/notifier.png diff --git a/Src/resources/skins/Big Bento/window/numfont.png b/Src/resources/skins/Big Bento/window/numfont.png Binary files differnew file mode 100644 index 00000000..09d0b6fd --- /dev/null +++ b/Src/resources/skins/Big Bento/window/numfont.png diff --git a/Src/resources/skins/Big Bento/window/pl_btn_icons.png b/Src/resources/skins/Big Bento/window/pl_btn_icons.png Binary files differnew file mode 100644 index 00000000..1983c8dd --- /dev/null +++ b/Src/resources/skins/Big Bento/window/pl_btn_icons.png diff --git a/Src/resources/skins/Big Bento/window/player.png b/Src/resources/skins/Big Bento/window/player.png Binary files differnew file mode 100644 index 00000000..87e8cd50 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/player.png diff --git a/Src/resources/skins/Big Bento/window/rating.png b/Src/resources/skins/Big Bento/window/rating.png Binary files differnew file mode 100644 index 00000000..ff3ccbc1 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/rating.png diff --git a/Src/resources/skins/Big Bento/window/sc_alb_art.jpg b/Src/resources/skins/Big Bento/window/sc_alb_art.jpg Binary files differnew file mode 100644 index 00000000..64752759 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/sc_alb_art.jpg diff --git a/Src/resources/skins/Big Bento/window/scrollbars.png b/Src/resources/skins/Big Bento/window/scrollbars.png Binary files differnew file mode 100644 index 00000000..b75e3959 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/scrollbars.png diff --git a/Src/resources/skins/Big Bento/window/shade.png b/Src/resources/skins/Big Bento/window/shade.png Binary files differnew file mode 100644 index 00000000..8b5220a0 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/shade.png diff --git a/Src/resources/skins/Big Bento/window/songinfo.png b/Src/resources/skins/Big Bento/window/songinfo.png Binary files differnew file mode 100644 index 00000000..34085c1a --- /dev/null +++ b/Src/resources/skins/Big Bento/window/songinfo.png diff --git a/Src/resources/skins/Big Bento/window/sui.png b/Src/resources/skins/Big Bento/window/sui.png Binary files differnew file mode 100644 index 00000000..5f0e3872 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/sui.png diff --git a/Src/resources/skins/Big Bento/window/window-elements.png b/Src/resources/skins/Big Bento/window/window-elements.png Binary files differnew file mode 100644 index 00000000..4809baf8 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/window-elements.png diff --git a/Src/resources/skins/Big Bento/window/window-gradient.png b/Src/resources/skins/Big Bento/window/window-gradient.png Binary files differnew file mode 100644 index 00000000..e62c30d0 --- /dev/null +++ b/Src/resources/skins/Big Bento/window/window-gradient.png diff --git a/Src/resources/skins/Big Bento/window/window.png b/Src/resources/skins/Big Bento/window/window.png Binary files differnew file mode 100644 index 00000000..cc6bc08e --- /dev/null +++ b/Src/resources/skins/Big Bento/window/window.png diff --git a/Src/resources/skins/Big Bento/xml/color-presets.xml b/Src/resources/skins/Big Bento/xml/color-presets.xml new file mode 100644 index 00000000..e69ec03d --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/color-presets.xml @@ -0,0 +1,1414 @@ +<gammaset id="*Default"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Green"> + <gammagroup id="Titlebar" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-1082,336,-1685" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="-1082,301,-1685" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Yellow"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Red"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="2748,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Sky"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-621,656,1400" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,443,1578" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Orange"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="4096,904,-2075" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="*Default | Purple"> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="208,-3788,1843" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="1149,-3834,3833" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="1149,-3834,3833" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="1149,-3834,3833" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="686,-4050,686" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,-934,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="-702,-1551,-702" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-209,-4050,1180" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-749,-4096,1118" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Default | Flat (blueish)"> + <gammagroup id="Titlebar" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="-471,-471,-243" gray="2" boost="1" /> + <gammagroup id="TitleButtonGrey" value="-671,-671,-443" gray="2" boost="1" /> + <gammagroup id="WindowBackground" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="-329,-329,-329" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-2441,-2270,-1899" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="-843,-843,-643" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-2013,-1870,-1585" gray="0" boost="1" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="PlayerButtonGlow" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1585,-1442,-1186" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-2755,-2612,-2327" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-1042,-1042,-1042" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-1042,-1042,-1042" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="-1014,-871,-586" gray="2" boost="1" /> + <gammagroup id="Column" value="-2355,-2212,-1927" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="1669,1669,1669" gray="0" boost="1" /> + <gammagroup id="NotifierTextShadow" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="-2698,-2555,-2270" gray="0" boost="1" /> + <gammagroup id="NotifierUpperText" value="2554,2554,2554" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="-2385,-2242,-1842" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Default | Flat (greyish)"> + <gammagroup id="Titlebar" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="-186,43,128" gray="2" boost="1" /> + <gammagroup id="TitleButtonGrey" value="-300,-71,14" gray="0" boost="1" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-2470,-2241,-2156" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-2441,-2212,-2127" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-2612,-2383,-2298" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="-757,-700,-586" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-1271,-1156,-1071" gray="0" boost="1" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-2527,-2298,-2213" gray="0" boost="1" /> + <gammagroup id="PlayerButtonGlow" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1014,-785,-700" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-2783,-2554,-2469" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="-785,-785,-785" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-3297,-2897,-2812" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-3297,-2897,-2812" gray="0" boost="1" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="-2412,-2183,-2098" gray="0" boost="1" /> + <gammagroup id="NotifierUpperText" value="2982,2982,2982" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="-2412,-2183,-2098" gray="0" boost="1" /> +</gammaset> + + +<gammaset id="Winamp Modern"> + <gammagroup id="Titlebar" value="-1081,-825,-313" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="1704,1704,1704" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="2464,2464,2429" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="4096,4096,4096" gray="1" boost="0" /> + <gammagroup id="WindowBackground" value="1211,1211,1211" gray="0" boost="1" /> + <gammagroup id="WindowText" value="1581,1581,1581" gray="0" boost="1" /> + <gammagroup id="Column Text" value="-2909,-2909,-2909" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="131,131,131" gray="1" boost="1" /> + <gammagroup id="ScrollbarTrack" value="2121,2121,2121" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-3291,-2261,-269" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-3458,-2855,-1862" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-484,-285,-143" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="1542,1684,2039" gray="2" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="1542,1684,2039" gray="2" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3103,3670,4096" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="2180,2180,2216" gray="0" boost="1" /> + <gammagroup id="PlayerButtonActive" value="-1508,0,1507" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-657,407,1613" gray="2" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-2111,-1756,-1472" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-302,0,407" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="327,1792,4096" gray="1" boost="0" /> + <gammagroup id="CompButtonActive" value="1949,2604,4028" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-598,-541,-427" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="111,111,111" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-1558,-589,981" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-1767,-1181,-348" gray="0" boost="1" /> + <gammagroup id="Selection" value="-511,222,3546" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="1137,1137,1137" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="2996,3032,3067" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-3813,-3529,-3174" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="3173,3209,3280" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="NotifierUpperText" value="-3813,-3529,-3174" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="2247,2247,2247" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Brighter"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="165,1288,3687" gray="2" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Sky"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-621,656,1400" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-2252,656,1719" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-621,656,1400" gray="2" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Green"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,230,-231" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,230,-231" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-1082,-657,-1685" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,230,-231" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,230,-231" gray="2" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Orange"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="2251,230,-2075" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Purple"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-471,-3649,2028" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1057,-4035,3463" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="1056,-4096,1874" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="1056,-4096,1874" gray="0" boost="0" /> + <gammagroup id="Selection" value="-980,-1705,-980" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="223,-3989,2599" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-378,-4004,1612" gray="2" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Red"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="336,-3529,-3423" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="254,-3529,-3526" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="254,-3529,-3526" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,-3423,-3711" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Brighter | Yellow"> + <gammagroup id="Titlebar" value="1901,1926,1977" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2947,2973,2947" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-3433,-3433,-3433" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="726,301,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Rust"> + <gammagroup id="Titlebar" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-217,-702,-1136" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,-881,-1264" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-1650,-2643,-2891" gray="0" boost="1" /> + <gammagroup id="WindowText" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="Column Text" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="762,-550,-1259" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="975,0,-763" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="975,-702,-2004" gray="2" boost="0" /> + <gammagroup id="PlayerButtonActive" value="975,-702,-2004" gray="2" boost="0" /> + <gammagroup id="PlayerSliderLight" value="975,-702,-2004" gray="2" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="1492,-753,-1978" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="2181,0,-1034" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-217,-702,-1136" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="1033,-881,-1264" gray="2" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="1033,-881,-1264" gray="2" boost="0" /> + <gammagroup id="Selection" value="0,-881,-1264" gray="2" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="165,-1340,-2565" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="829,-192,-804" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-243,-1213,-2029" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="650,0,-905" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="2180,1790,939" gray="0" boost="1" /> + <gammagroup id="PlayerShadeSlider" value="829,-192,-804" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-798,-1650,-2288" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Winamp Classic"> + <gammagroup id="Titlebar" value="-1792,-1792,-1195" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="TitleButtonOrange" value="762,0,-2359" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,-162,-1273" gray="2" boost="0" /> + <gammagroup id="WindowBackground" value="-1196,-1366,347" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="686,686,686" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-4096,1400,-4096" gray="2" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-3016,-3101,-2304" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="-1224,-1827,726" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="426,0,2332" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="762,1507,2074" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="762,1507,2074" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="762,1507,2074" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="-4096,1400,-4096" gray="2" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-4096,2110,-4096" gray="2" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-3316,-3352,-2359" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-976,-940,-834" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="-256,-569,1024" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="-171,-598,967" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-512,-512,-512" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-4096,0,-4096" gray="2" boost="0" /> + <gammagroup id="SelectionBg" value="-3973,-3773,362" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-3140,-2214,4096" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-143,-456,2360" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,-231,-2926" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-3788,-3788,-3788" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-4019,717,-4035" gray="2" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-2183,-1921,-2183" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-3788,-3788,-3788" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="1411,1411,1411" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="-1138,-1381,0" gray="2" boost="1" /> +</gammaset> + +<gammaset id="Blue Invasion"> + <gammagroup id="Titlebar" value="-2465,-444,1932" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="-2465,0,833" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-3387,-869,1436" gray="2" boost="1" /> + <gammagroup id="TitleButtonOrange" value="-3387,-869,3386" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-3387,-869,3067" gray="2" boost="0" /> + <gammagroup id="WindowBackground" value="-2465,-444,1932" gray="0" boost="0" /> + <gammagroup id="WindowText" value="-2465,0,833" gray="0" boost="0" /> + <gammagroup id="Column Text" value="-2465,0,833" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-1756,-763,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-2040,407,3422" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="-2040,407,3422" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="-3104,-1295,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-3104,-1295,0" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,797,1790" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-3919,-1472,833" gray="2" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-3104,1152,2996" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="-3104,1152,2996" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-3104,-1295,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-2607,0,4096" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-2643,-798,975" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="0,797,1790" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="-3104,-1295,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-1437,-869,-196" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-1437,-869,-196" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-2465,0,833" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-2465,0,833" gray="0" boost="0" /> + <gammagroup id="Selection" value="-1862,0,4096" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="1046,1329,1790" gray="2" boost="0" /> + <gammagroup id="Column" value="-1295,0,1790" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="-3387,-869,1436" gray="2" boost="0" /> + <gammagroup id="NotifierBackground" value="-3990,-2784,-1118" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-3104,-657,2996" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-4096,-4061,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-3104,-657,2996" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="-4096,-4061,-4096" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-3529,-2288,-1295" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Mint"> + <gammagroup id="Titlebar" value="-834,904,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,797,0" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="0,1507,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="-2997,620,-337" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,1507,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,1507,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-2997,0,-1118" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="-2997,1790,-1118" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-2997,1790,-1118" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="0,762,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,762,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,762,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,1507,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,2464,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="0,2216,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="0,762,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-3671,-2820,-337" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-2997,1790,-1118" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="-2997,1790,-1118" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="1507,3847,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="-2997,1719,-2146" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,1507,0" gray="2" boost="0" /> + <gammagroup id="Column" value="0,1507,0" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-2997,620,-337" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-2997,620,-337" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-2997,1719,-2146" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="-2997,620,-337" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + + +<!-- Community Presets --> + +<!-- Theme(s) by QOAL: --> + +<gammaset id="Evil Red"> + <gammagroup id="Titlebar" value="-3072,-3072,-3072" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-512,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-512,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="-512,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-2048,-2048,-2048" gray="2" boost="0" /> + <gammagroup id="WindowBackground" value="-3328,-3328,-3328" gray="2" boost="0" /> + <gammagroup id="WindowText" value="-512,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Column Text" value="-1024,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-2048,-2048,-2048" gray="2" boost="0" /> + <gammagroup id="PlayerDisplay" value="-4096,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="-4096,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="ComponentFrame" value="-3072,-3072,-3072" gray="2" boost="0" /> + <gammagroup id="PlayerButton" value="-2560,-2560,-2560" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-2560,-2560,-2560" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-3072,-3072,-3072" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="512,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="0,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-3072,-3072,-3072" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-3328,-3328,-3328" gray="2" boost="0" /> + <gammagroup id="CompButtonInactive" value="-3072,-3072,-3072" gray="2" boost="0" /> + <gammagroup id="CompButtonActive" value="-3072,-3072,-3072" gray="2" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-1024,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-512,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="1024,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="1024,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="Selection" value="0,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="Column" value="-3328,-3328,-3328" gray="2" boost="0" /> + <gammagroup id="ShadeButton" value="0,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-3328,-3328,-3328" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-2048,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,-4096,-4065" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="-4096,-4096,-4096" gray="2" boost="0" /> +</gammaset> + +<!-- Themes by J_Darnley --> + +<gammaset id="Winamp Modern | City Night"> + <gammagroup id="Titlebar" value="-1024,-1024,-1024" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="2" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="2" boost="1" /> + <gammagroup id="TitleButtonOrange" value="2048,2048,2048" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="2048,2048,2048" gray="2" boost="0" /> + <gammagroup id="WindowBackground" value="-1536,-1536,-1536" gray="2" boost="0" /> + <gammagroup id="WindowText" value="1024,1024,1024" gray="2" boost="0" /> + <gammagroup id="Column Text" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="1024,1024,1024" gray="2" boost="0" /> + <gammagroup id="ScrollbarTrack" value="1024,1024,1024" gray="2" boost="1" /> + <gammagroup id="PlayerDisplay" value="-2560,-2560,-2560" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-2048,-2048,-2048" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="1024,1024,1024" gray="2" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="1536,1536,1536" gray="2" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="1024,1024,1024" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,-511,-2260" gray="2" boost="1" /> + <gammagroup id="PlayerButtonActive" value="0,-511,-2260" gray="2" boost="1" /> + <gammagroup id="PlayerSliderLight" value="1559,451,-2318" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="1559,451,-2318" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-4096,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="CompButtonInactive" value="2048,2048,1536" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="2048,2048,1536" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-512,-512,-512" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,-511,-2260" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-3072,-3072,-3072" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-3072,-3072,-3072" gray="0" boost="1" /> + <gammagroup id="Selection" value="860,0,-3264" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-2048,-2048,-2048" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="2048,2048,2048" gray="2" boost="0" /> + <gammagroup id="NotifierBackground" value="-1024,-1024,-1024" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="NotifierTextShadow" value="-4096,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="-4096,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="NotifierUpperText" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="1024,1024,1024" gray="0" boost="1" /> +</gammaset> + +<!-- Theme(s) by VooDoo` --> + +<gammaset id="Blue Steel"> + <gammagroup id="Titlebar" value="886,1354,1755" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-485,-452,-418" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-485,-452,-418" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="250,-1254,-385" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="886,1354,1755" gray="1" boost="0" /> + <gammagroup id="WindowBackground" value="2624,2524,2624" gray="0" boost="0" /> + <gammagroup id="WindowText" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="Column Text" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="251,663,2457" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-3753,-3273,-2701" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-3433,-2907,-2266" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-1254,-519,1019" gray="1" boost="0" /> + <gammagroup id="PlayerButton" value="886,1354,1822" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="886,1354,1822" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-552,-552,-552" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-418,652,2457" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="3020,3020,3020" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-418,652,2457" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-418,652,2457" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="2624,2524,2624" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1254,-519,1019" gray="1" boost="0" /> + <gammagroup id="CompButtonActive" value="-1254,-519,1019" gray="1" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-2525,-1923,-1221" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-1555,-318,2562" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="1053,1716,2591" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-664,297,892" gray="0" boost="0" /> + <gammagroup id="Selection" value="1788,2491,4096" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="886,1354,1822" gray="0" boost="0" /> + <gammagroup id="Column" value="-519,0,718" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="886,1354,1822" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-318,0,451" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="251,663,2457" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-4096,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-2586,-2174,-1282" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Winamp Modern | Varsity"> + <gammagroup id="Titlebar" value="-653,-653,-1121" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-653,-653,-1121" gray="1" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-653,-653,-1121" gray="1" boost="0" /> + <gammagroup id="TitleButtonOrange" value="-653,-653,-1121" gray="1" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-653,-653,-1121" gray="1" boost="0" /> + <gammagroup id="WindowBackground" value="2591,-3294,-3127" gray="1" boost="0" /> + <gammagroup id="WindowText" value="4096,4096,778" gray="0" boost="0" /> + <gammagroup id="Column Text" value="-550,-3845,-3845" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="4096,3193,778" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="3523,3203,2837" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-984,-1053,-1488" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-847,-3707,-3639" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="297,137,-138" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="919,886,919" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="919,886,919" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-151,-920,-820" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="2539,2105,1739" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="4096,0,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="819,819,819" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="1554,-3090,-2907" gray="1" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-987,-3562,-3528" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="2791,-2266,-2426" gray="1" boost="0" /> + <gammagroup id="CompButtonActive" value="297,137,-138" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="-1555,-2458,-2458" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-2266,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="366,205,-527" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-1168,-1259,-1740" gray="0" boost="1" /> + <gammagroup id="Selection" value="4096,0,-4096" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="919,886,919" gray="0" boost="0" /> + <gammagroup id="Column" value="1521,1287,1019" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="919,886,919" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="919,886,919" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="919,919,919" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="-504,-3456,-3387" gray="0" boost="1" /> + <gammagroup id="Frame_Borders" value="-962,-1030,-1488" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Winamp Modern | City Night 2"> + <gammagroup id="Titlebar" value="-1522,-1522,-1522" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-1522,-1522,-1522" gray="1" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-1522,-1522,-1522" gray="1" boost="0" /> + <gammagroup id="TitleButtonOrange" value="284,284,284" gray="2" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-1522,-1522,-1522" gray="1" boost="0" /> + <gammagroup id="WindowBackground" value="886,1120,1454" gray="1" boost="0" /> + <gammagroup id="WindowText" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="Column Text" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-352,-218,0" gray="1" boost="0" /> + <gammagroup id="ScrollbarTrack" value="852,852,852" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-3327,-3327,-3327" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-3729,-3762,-3829" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="2758,2557,3260" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="50,50,50" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="50,50,50" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-552,-452,-385" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="4096,2457,-1522" gray="1" boost="0" /> + <gammagroup id="PlayerButtonActive" value="4096,2457,-1522" gray="2" boost="0" /> + <gammagroup id="PlayerSliderLight" value="3494,1253,-1990" gray="1" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-2960,-2859,-2792" gray="1" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="886,1120,1454" gray="1" boost="0" /> + <gammagroup id="CompButtonInactive" value="0,-184,250" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="2758,2557,3260" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-1656,-1555,-1254" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="986,0,-2859" gray="1" boost="0" /> + <gammagroup id="SelectionBg" value="-2659,-2659,-2759" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-3127,-3093,-3194" gray="0" boost="1" /> + <gammagroup id="Selection" value="4096,-65,-2458" gray="1" boost="1" /> + <gammagroup id="LightningBolt" value="852,852,852" gray="0" boost="0" /> + <gammagroup id="Column" value="-653,-653,-485" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="50,50,50" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-619,-619,-619" gray="1" boost="0" /> + <gammagroup id="NotifierText" value="-352,-218,0" gray="1" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="4096,2457,-1522" gray="1" boost="1" /> + <gammagroup id="Frame_Borders" value="-1656,-1555,-1254" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Royal Blue"> + <gammagroup id="Titlebar" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="-1488,-753,1721" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-1488,-753,1721" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="250,-1254,-385" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="WindowText" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="Column Text" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-481,0,2585" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-1221,-452,986" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-1756,-719,986" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1254,-519,1019" gray="1" boost="0" /> + <gammagroup id="CompButtonActive" value="-1254,-519,1019" gray="1" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-2090,-552,2022" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="-1282,0,2562" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-664,297,892" gray="0" boost="0" /> + <gammagroup id="Selection" value="411,1716,4096" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="Column" value="-887,0,1755" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-385,551,2624" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-151,919,2123" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="411,1716,4096" gray="0" boost="1" /> + <gammagroup id="NotifierUpperText" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-2586,-2174,-1282" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Royal Black"> + <gammagroup id="Titlebar" value="-1488,-1488,-1488" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-1288,-1288,-1288" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="-1288,-1288,-1288" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="250,-1254,-385" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-1488,-1488,-1488" gray="2" boost="0" /> + <gammagroup id="WindowBackground" value="1601,1601,1601" gray="0" boost="0" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-920,-920,-920" gray="0" boost="0" /> + <gammagroup id="PlayerButton" value="-619,-251,351" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-619,-251,351" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-1221,-1221,-1221" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="1601,2256,2825" gray="2" boost="0" /> + <gammagroup id="PlayerSliderLight" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderBackground" value="-953,-953,-987" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="518,518,551" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1388,-1388,-1388" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="-920,-920,-920" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="-1522,-1522,-1522" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Selection" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="-619,-251,351" gray="0" boost="0" /> + <gammagroup id="Column" value="-1154,-1154,-1121" gray="0" boost="0" /> + <gammagroup id="ShadeButton" value="-619,-251,351" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-619,-251,351" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="-151,-151,-151" gray="0" boost="1" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,-804" gray="0" boost="0" /> +</gammaset> + +<!-- Theme(s) by GreayStone --> + +<gammaset id="Purplelicious"> + <gammagroup id="Titlebar" value="417,-4096,1118" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="2225,-753,-2225" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="2225,-753,-2225" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="-953,-4096,-485" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="-1087,-2257,-1088" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="752,-3461,1118" gray="0" boost="0" /> + <gammagroup id="WindowText" value="2225,-753,-2225" gray="0" boost="0" /> + <gammagroup id="Column Text" value="2225,-753,-2225" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="2225,-753,-2225" gray="2" boost="1" /> + <gammagroup id="ScrollbarTrack" value="-2124,-4096,-2124" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerDisplayGradient" value="-3528,-3495,-3528" gray="2" boost="1" /> + <gammagroup id="ComponentFrame" value="819,-3896,1287" gray="2" boost="0" /> + <gammagroup id="PlayerButton" value="-1221,-2926,-1221" gray="2" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="-1388,-2324,-1388" gray="2" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="-385,-2592,-385" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="-385,-2592,-385" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1522,-3963,-1656" gray="2" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="WindowBackgroundGradient" value="669,-3788,1843" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-887,-1656,-887" gray="0" boost="0" /> + <gammagroup id="CompButtonActive" value="-1388,-2324,-1388" gray="0" boost="0" /> + <gammagroup id="CompButtonInactiveText" value="2225,-753,-2225" gray="2" boost="1" /> + <gammagroup id="CompButtonActiveText" value="2225,-753,-2225" gray="2" boost="0" /> + <gammagroup id="SelectionBg" value="819,-3788,1287" gray="2" boost="0" /> + <gammagroup id="SelectionBg Inactive" value="-1087,-2893,-1154" gray="2" boost="0" /> + <gammagroup id="Selection" value="2225,-753,-2225" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="484,-452,-251" gray="0" boost="0" /> + <gammagroup id="Column" value="819,-4096,1287" gray="2" boost="0" /> + <gammagroup id="ShadeButton" value="-887,-2358,-887" gray="2" boost="1" /> + <gammagroup id="NotifierBackground" value="-749,-4096,1118" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="2225,-753,-2225" gray="2" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="819,-1522,1287" gray="2" boost="0" /> + <gammagroup id="NotifierUpperText" value="919,-1522,1287" gray="2" boost="0" /> + <gammagroup id="Frame_Borders" value="829,-192,819" gray="0" boost="0" /> +</gammaset> + +<!-- Themes by DJ Egg --> + +<gammaset id="Lighten Up | Orange"> + <gammagroup id="Titlebar" value="1630,-1328,-3812" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="246,246,246" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="777,777,777" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="2161,701,-930" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="1042,1042,1042" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="682,0,-569" gray="0" boost="1" /> + <gammagroup id="WindowText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column Text" value="436,436,417" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-626,-2598,-4096" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="1801,-1461,-3850" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="4096,1668,-512" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="2104,-1499,-3983" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="701,-456,-1821" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="2996,-1328,-3148" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="1498,-1783,-3547" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="701,-456,-1821" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="1991,-1328,-3566" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="227,227,227" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="417,417,417" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="1232,0,-1290" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="1877,682,-607" gray="0" boost="1" /> + <gammagroup id="Selection" value="4096,-2124,-4096" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="1630,-1271,-3319" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="2730,-1518,-3717" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="2597,-1271,-3509" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Lighten Up | Green"> + <gammagroup id="Titlebar" value="-3205,-949,-3641" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="246,246,246" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="777,777,777" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="1251,-342,-1252" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="1042,2048,1042" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="-550,0,-930" gray="0" boost="1" /> + <gammagroup id="WindowText" value="3015,3811,3015" gray="0" boost="0" /> + <gammagroup id="Column Text" value="455,455,455" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-3376,-2276,-4096" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-3395,-1385,-3736" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="986,3147,-209" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-3110,0,-3566" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-1593,-456,-1821" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1916,1744,-3148" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-2997,-1385,-3547" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1480,-456,-1821" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-3224,-645,-3736" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="227,227,227" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="417,417,417" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-2371,796,-2940" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-190,1099,-873" gray="0" boost="1" /> + <gammagroup id="Selection" value="-3755,-1555,-3945" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-2940,-550,-3224" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-3186,-1138,-3717" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-3622,-835,-3509" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Lighten Up | Blue"> + <gammagroup id="Titlebar" value="-3433,-1328,1061" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="246,246,246" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="777,777,777" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="1251,-342,-1252" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="1042,2048,1042" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="-892,0,625" gray="0" boost="1" /> + <gammagroup id="WindowText" value="3015,2560,3356" gray="0" boost="0" /> + <gammagroup id="Column Text" value="455,455,455" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-3603,-3016,-1480" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-3528,-2048,-418" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="1137,2616,3849" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-3452,-1290,1024" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-1859,-456,853" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="-1916,265,2066" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-2997,-2030,-911" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1859,-456,853" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-3414,-1366,1232" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="227,227,227" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="417,417,417" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-2693,-247,2085" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-475,663,1858" gray="0" boost="1" /> + <gammagroup id="Selection" value="-3755,-2466,-873" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-3072,-1081,1384" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-3186,-1783,0" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-3622,-2333,-835" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Lighten Up | Mono Light"> + <gammagroup id="Titlebar" value="-2447,-2447,-2447" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="246,246,246" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="777,777,777" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="1251,-342,-1252" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="1042,2048,1042" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="WindowText" value="-3926,-3926,-3926" gray="0" boost="0" /> + <gammagroup id="Column Text" value="455,455,455" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="-3888,-3888,-3888" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-2048,-2048,-2048" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="3337,3337,3337" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="-1555,-1555,-1555" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="-456,-456,-456" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="1953,1953,1953" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-3262,-3262,-3262" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-456,-456,-456" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-2542,-2542,-2542" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="227,227,227" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="417,417,417" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-911,-911,-911" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="Selection" value="-911,-911,-911" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-2200,-2200,-2200" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="3773,3773,3773" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Orange Burst"> + <gammagroup id="Titlebar" value="2560,1991,1384" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitlebarMenuText" value="0,0,0" gray="0" boost="1" /> + <gammagroup id="TitleButtonOrange" value="1536,982,417" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="625,132,-342" gray="0" boost="1" /> + <gammagroup id="WindowText" value="512,512,512" gray="0" boost="0" /> + <gammagroup id="Column Text" value="303,303,303" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="872,872,872" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="1365,-2086,-3793" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="3318,-607,-4096" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="1365,-1992,-4040" gray="0" boost="1" /> + <gammagroup id="ComponentFrame" value="815,189,-437" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="3687,3687,3687" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="854,982,1135" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="3015,-1593,-3812" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="1441,-2086,-3793" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="-1933,-1330,-727" gray="0" boost="1" /> + <gammagroup id="CompButtonInactive" value="1061,-1764,-3888" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="1744,-1897,-3641" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="-247,-247,-247" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="0,-494,-1024" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="455,0,-418" gray="0" boost="1" /> + <gammagroup id="Selection" value="1194,246,-759" gray="0" boost="0" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="0,-399,-892" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="2825,-1631,-3869" gray="2" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="2560,-2143,-3622" gray="0" boost="1" /> +</gammaset> + +<gammaset id="XP Noir"> + <gammagroup id="Titlebar" value="-2902,-2674,-2428" gray="0" boost="1" /> + <gammagroup id="TitlebarText" value="246,246,246" gray="0" boost="0" /> + <gammagroup id="TitlebarMenuText" value="777,777,777" gray="0" boost="0" /> + <gammagroup id="TitleButtonOrange" value="1251,-342,-1252" gray="0" boost="0" /> + <gammagroup id="TitleButtonGrey" value="967,1194,1422" gray="0" boost="0" /> + <gammagroup id="WindowBackground" value="-1745,-1650,-1328" gray="0" boost="1" /> + <gammagroup id="WindowText" value="-209,0,208" gray="0" boost="1" /> + <gammagroup id="Column Text" value="455,455,455" gray="0" boost="0" /> + <gammagroup id="DisplayText" value="2275,2275,2275" gray="0" boost="0" /> + <gammagroup id="ScrollbarTrack" value="-3205,-2921,-2636" gray="0" boost="1" /> + <gammagroup id="PlayerDisplay" value="-2504,-2238,-1783" gray="0" boost="1" /> + <gammagroup id="PlayerDisplayGradient" value="2066,2313,2578" gray="0" boost="0" /> + <gammagroup id="ComponentFrame" value="-1309,-1214,-873" gray="0" boost="1" /> + <gammagroup id="PlayerButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerShadeSlider" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonPlaceHolder" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerButtonActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="PlayerSliderLight" value="170,398,625" gray="0" boost="1" /> + <gammagroup id="PlayerSliderBackground" value="-3262,-3091,-2864" gray="0" boost="1" /> + <gammagroup id="WindowBackgroundGradient" value="493,587,948" gray="0" boost="0" /> + <gammagroup id="CompButtonInactive" value="-1252,-1138,-835" gray="0" boost="1" /> + <gammagroup id="CompButtonActive" value="-1897,-1764,-1404" gray="0" boost="1" /> + <gammagroup id="CompButtonInactiveText" value="227,227,227" gray="0" boost="0" /> + <gammagroup id="CompButtonActiveText" value="417,417,417" gray="0" boost="0" /> + <gammagroup id="SelectionBg" value="-1157,-854,-569" gray="0" boost="1" /> + <gammagroup id="SelectionBg Inactive" value="-1555,-1252,-892" gray="0" boost="1" /> + <gammagroup id="Selection" value="-854,-854,-854" gray="0" boost="1" /> + <gammagroup id="LightningBolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Column" value="-2276,-2048,-1802" gray="0" boost="1" /> + <gammagroup id="ShadeButton" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierBackground" value="-2579,-2276,-1802" gray="0" boost="1" /> + <gammagroup id="NotifierText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierTextShadow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="NotifierUpperTextShadow" value="-1536,-1536,-1536" gray="0" boost="0" /> + <gammagroup id="NotifierUpperText" value="-1536,-1536,-1536" gray="0" boost="0" /> + <gammagroup id="Frame_Borders" value="-3755,-3471,-3205" gray="0" boost="1" /> +</gammaset> + diff --git a/Src/resources/skins/Big Bento/xml/config.xml b/Src/resources/skins/Big Bento/xml/config.xml new file mode 100644 index 00000000..ce8f37c9 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/config.xml @@ -0,0 +1,626 @@ +<groupdef id="info.component.config"> + + <!-- config page target --> + <GroupXFade speed="0.5" x="0" y="1" w="0" h="0" relatw="1" relath="1" id="skin.config.target" move="1"/> + + <!-- config menu --> + <componentbucket id="my.bucket" x="1" y="1" w="72" h="100" spacing="0" leftmargin="0" rightmargin="0" vertical="1" wndtype="skin.config" /> + <layer x="74" y="0" image="config.vdivider" move="0"/> + + <script file="scripts/configtarget.maki" /> +</groupdef> + +<!-- config menu items --> + +<groupdef id="bucket.entry.0" windowtype="skin.config" w="102" h="16"> + <togglebutton + id="btn" + action="switchto;optionsgroup.appearance" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.appearance" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.1" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.songticker" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.songticker" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.2" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.autoresize" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.windowsizing" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.3" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.notifier" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.notifier" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.4" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.visualization" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.visualization" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.5" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.playlist" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.playlist" ghost="1"/> +</groupdef> + +<groupdef id="bucket.entry.6" windowtype="skin.config" w="128" h="20"> + <togglebutton + id="btn" + action="switchto;optionsgroup.cthemes" action_target="skin.config.target" + fitparent="1" rectrgn="1" + hoverImage="config.button.hover" + downImage="config.button.selected" + activeImage="config.button.selected" + /> + <layer x="0" y="0" image="config.button.text.colorthemes" ghost="1"/> +</groupdef> + + +<!-- config menu pages --> + +<groupdef id="optionsgroup.autoresize"> + + <togglebutton x="102" y="14" h="12" w="238" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{0542AFA4-48D9-4c9f-8900-5739D52C114F};Prevent video resize" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{0542AFA4-48D9-4c9f-8900-5739D52C114F};Prevent video resize" /> + + <togglebutton x="102" y="0" h="12" w="238" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Autoresize Main Window if maximized" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Autoresize Main Window if maximized" /> + + <togglebutton x="102" y="28" h="12" w="238" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Link shade and player width" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Link shade and player width" /> + + <layer x="106" y="45" image="config.windowsizing.titlebar.text" ghost="1" /> + + <togglebutton x="102" y="59" h="12" w="89" rectrgn="1" + hoverImage="config.windowsizing.titlebar.maximize.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Maximize Window on Titlebar Doubleclick" + /> + <togglebutton x="106" y="59" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Maximize Window on Titlebar Doubleclick" /> + + <togglebutton x="171" y="59" h="12" w="138" rectrgn="1" + hoverImage="config.windowsizing.titlebar.shade.hover" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Switch to Shade on Titlebar Doubleclick" + /> + <togglebutton x="175" y="59" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Switch to Shade on Titlebar Doubleclick" /> + + <layer x="106" y="0" image="config.windowsizing.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.songticker"> + + <togglebutton x="103" y="0" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Disable Songticker Scrolling" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Disable Songticker Scrolling" /> + + <togglebutton x="103" y="14" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Modern Songticker Scrolling" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Modern Songticker Scrolling" /> + + <togglebutton x="103" y="28" h="12" w="214" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Classic Songticker Scrolling" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF4};Classic Songticker Scrolling" /> + + <layer x="106" y="0" image="config.songticker.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.cthemes" > + + <ColorThemes:List + id="colorthemes" + x="75" y="0" + w="-76" h="99" relatw="1" + nohscroll="1" + nocolheader="1" + visible="0" + antialias="0" + fontsize="13" + /> + + <button id="colorthemes.prev" + action="colorthemes_previous" + action_target="colorthemes" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Color Theme" + /> + + <button id="colorthemes.switch" + action="colorthemes_switch" + action_target="colorthemes" + x="30" y="-19" relaty="1" + image="config.colorthemes.button.set.normal" + hoverImage="config.colorthemes.button.set.hover" + downImage="config.colorthemes.button.set.down" + tooltip="Switch to selected Color Theme" + /> + + <button id="colorthemes.next" + action="colorthemes_next" + action_target="colorthemes" + x="61" y="-19" relaty="1" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next Color Theme" + /> + + <button id="colorthemes.more" + x="92" y="-19" relaty="1" + image="config.colorthemes.button.more.normal" + hoverImage="config.colorthemes.button.more.hover" + downImage="config.colorthemes.button.more.down" + tooltip="Download more Color Themes" + /> + + <script file="scripts/colorthemes.maki" /> + +</groupdef> + +<groupdef id="optionsgroup.appearance" > + + <togglebutton x="103" y="0" h="12" w="204" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Main Window Menu" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Main Window Menu" /> + + <togglebutton x="103" y="18" h="12" w="204" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Visualizer Reflection" + /> + <togglebutton x="106" y="18" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Visualizer Reflection" /> + + <togglebutton x="103" y="32" h="12" w="204" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Timer Reflection" + /> + <togglebutton x="106" y="32" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Timer Reflection" /> + + <togglebutton x="103" y="50" h="12" w="204" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" + /> + <togglebutton x="106" y="50" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" /> + + <togglebutton x="103" y="68" h="12" w="204" rectrgn="1" + hoverImage="config.notifier.sub.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Switch to Bento with Small Buttons" + /> + + <button + action="switchto;optionsgroup.appearance.2;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <button + action="switchto;optionsgroup.appearance.2;subpage" action_target="skin.config.target" + x="30" y="-19" relaty="1" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next Configpage" + /> + + <layer x="106" y="0" image="config.appearance.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.appearance.2" > + +<!-- <togglebutton x="106" y="0" h="12" w="144" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Artist-Information Buttons" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Artist-Information Buttons" /> +--> + <togglebutton x="106" y="14" h="12" w="144" rectrgn="1" + hoverImage="config.songticker.scroll.hover" + cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Playlist Tab" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Show Playlist Tab" /> + + <button + action="switchto;optionsgroup.appearance;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <button + action="switchto;optionsgroup.appearance;subpage" action_target="skin.config.target" + x="30" y="-19" relaty="1" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Next Configpage" + /> + + <layer x="106" y="0" image="config.appearance.2.text" ghost="1" /> + +</groupdef> + + +<groupdef id="optionsgroup.notifier" > + + <button id="holdtime.decrease" + x="167" y="42" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="holdtime.text" + x="172" y="42" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="holdtime.increase" + x="214" y="42" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="scripts/timecontrol.maki" param="holdtime.text;holdtime.decrease;holdtime.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications display time|100|10000|0.001|a"/> + + <button + action="switchto;optionsgroup.notifier.show;subpage" action_target="skin.config.target" + x="107" y="0" h="12" w="178" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.show" x="177" y="0" image="config.notifier.text.always" ghost="1"/> + <script file="scripts/imagecontrol.maki" param="notifier.show|4|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always;config.notifier.text.always|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized;config.notifier.text.shade_minimized|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized;config.notifier.text.minimized|{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show;config.notifier.text.never" /> + + <button + action="switchto;optionsgroup.notifier.location;subpage" action_target="skin.config.target" + x="107" y="14" h="12" w="178" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.location" x="153" y="14" image="config.notifier.text.bottomright" ghost="1"/> + <script file="scripts/imagecontrol.maki" param="notifier.location|6|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left;config.notifier.text.topleft|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center;config.notifier.text.topcenter|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right;config.notifier.text.topright|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left;config.notifier.text.bottomleft|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center;config.notifier.text.bottomcenter|{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right;config.notifier.text.bottomright" /> + + <button + action="switchto;optionsgroup.notifier.animation.fadein;subpage" action_target="skin.config.target" + x="107" y="28" h="12" w="178" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.fadein" x="195" y="28" image="config.notifier.text.alphafade" ghost="1"/> + <script file="scripts/imagecontrol.maki" param="notifier.fadein|3|{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade;config.notifier.text.alphafade|{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide;config.notifier.text.vslide|{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide;config.notifier.text.hslide" /> + + <button + action="switchto;optionsgroup.notifier.animation.fadeout;subpage" action_target="skin.config.target" + x="107" y="56" h="12" w="178" rectrgn="1" + hoverImage="config.notifier.sub.hover" + /> + <layer id="notifier.fadeout" x="204" y="56" image="config.notifier.text.alphafade" ghost="1"/> + <script file="scripts/imagecontrol.maki" param="notifier.fadeout|3|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade ;config.notifier.text.alphafade|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide ;config.notifier.text.vslide|{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide ;config.notifier.text.hslide" /> + + <layer x="106" y="0" image="config.notifier.text" ghost="1" /> +</groupdef> + +<!-- notifier --> + +<groupdef id="optionsgroup.notifier.show" > + + <togglebutton x="103" y="0" h="12" w="179" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always" /> + + <togglebutton x="103" y="14" h="12" w="179" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized" /> + + <togglebutton x="103" y="28" h="12" w="179" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized" /> + + <togglebutton x="103" y="42" h="12" w="179" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show" + /> + <togglebutton x="106" y="42" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show" /> + + <togglebutton x="103" y="60" h="12" w="179" rectrgn="1" + hoverImage="config.notifier.show.hover" + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Disable in fullscreen" + /> + <togglebutton x="106" y="60" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Disable in fullscreen" /> + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <layer x="106" y="0" image="config.notifier.show.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.location" > + + <togglebutton x="103" y="0" h="12" w="86" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Left" /> + + <togglebutton x="103" y="14" h="12" w="86" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Center" /> + + <togglebutton x="103" y="28" h="12" w="86" rectrgn="1" + hoverImage="config.notifier.location.top.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Top Right" /> + + + <togglebutton x="180" y="0" h="12" w="101" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left" + /> + <togglebutton x="182" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Left" /> + + <togglebutton x="180" y="14" h="12" w="111" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center" + /> + <togglebutton x="182" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Center" /> + + <togglebutton x="180" y="28" h="12" w="101" rectrgn="1" + hoverImage="config.notifier.location.bottom.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right" + /> + <togglebutton x="182" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Bottom Right" /> + + + <togglebutton x="103" y="46" h="12" w="146" rectrgn="1" + hoverImage="config.notifier.location.relative.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Viewport" + /> + <togglebutton x="106" y="46" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Viewport" /> + + <togglebutton x="103" y="60" h="12" w="146" rectrgn="1" + hoverImage="config.notifier.location.relative.hover" + cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Monitor" + /> + <togglebutton x="106" y="60" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{715B2C0D-1DF0-4bb2-9D74-0FACAE27CE97};Relative to Monitor" /> + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <layer x="106" y="0" image="config.notifier.location.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.animation.fadein" > + + <togglebutton x="100" y="0" h="12" w="153" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Alpha Fade" /> + + <togglebutton x="100" y="14" h="12" w="153" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Vertical Slide" /> + + <togglebutton x="100" y="28" h="12" w="163" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{D9891A39-7A38-45d8-9D51-A08F7270C836};Horizontal Slide" /> + + <button id="fdin.decrease" + x="206" y="46" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="fdin.text" + x="211" y="46" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="fdin.increase" + x="253" y="46" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="scripts/timecontrol.maki" param="fdin.text;fdin.decrease;fdin.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade in time|100|10000|0.001|a"/> + + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <layer x="106" y="0" image="config.notifier.animation.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.notifier.animation.fadeout" > + + <togglebutton x="106" y="0" h="12" w="83" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade " + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Alpha Fade " /> + + <togglebutton x="106" y="14" h="12" w="83" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide " + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Vertical Slide " /> + + <togglebutton x="106" y="28" h="12" w="83" rectrgn="1" + hoverImage="config.notifier.animation.hover" + cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide " + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{560EAE41-1379-4927-AC55-FB5F4D47C9B8};Horizontal Slide " /> + + <button id="fdout.decrease" + x="186" y="46" h="12" w="8" rectrgn="1" + image="config.button.left.normal" + hoverImage="config.button.left.hover" + downImage="config.button.left.down" + /> + <text id="fdout.text" + x="191" y="46" w="40" h="12" + text="" + font="config.bitmapfont" + align="center" + /> + <button id="fdout.increase" + x="233" y="46" h="12" w="8" rectrgn="1" + image="config.button.right.normal" + hoverImage="config.button.right.hover" + downImage="config.button.right.down" + /> + <script file="scripts/timecontrol.maki" param="fdout.text;fdout.decrease;fdout.increase|{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade out time|100|10000|0.001|a"/> + + + <button + action="switchto;optionsgroup.notifier;subpage" action_target="skin.config.target" + x="0" y="-19" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Previous Configpage" + /> + + <layer x="106" y="0" image="config.notifier.animation.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.visualization" > + + <togglebutton x="103" y="14" h="12" w="218" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Big Component View" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Big Component View" /> + + <togglebutton x="103" y="28" h="12" w="218" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (stretched)" + /> + <togglebutton x="106" y="28" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (stretched)" /> + + <togglebutton x="103" y="42" h="12" w="218" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (mini)" + /> + <togglebutton x="106" y="42" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{090B63DE-FD24-4528-ABE5-A522615E8AE9};Open in Multi Content View (mini)" /> + + <layer x="106" y="0" image="config.visualization.text" ghost="1" /> + +</groupdef> + +<groupdef id="optionsgroup.playlist" > + + <togglebutton x="103" y="0" h="12" w="218" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" + /> + <togglebutton x="106" y="0" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" /> + + <togglebutton x="103" y="14" h="12" w="218" rectrgn="1" + hoverImage="config.windowsizing.autoresize.hover" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Show Album Art if Playlist is enlarged" + /> + <togglebutton x="106" y="14" image="config.checkbox.inactive" activeImage="config.checkbox.active" ghost="1" cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Show Album Art if Playlist is enlarged" /> + + <layer x="106" y="0" image="config.playlist.text" ghost="1" /> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/notifier-elements.xml b/Src/resources/skins/Big Bento/xml/notifier-elements.xml new file mode 100644 index 00000000..12fc1e99 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/notifier-elements.xml @@ -0,0 +1,22 @@ +<elements> + + <bitmap id="notifier.bg.left" file="window/notifier.png" x="0" y="0" w="13" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.center" file="window/notifier.png" x="13" y="0" w="133" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.right" file="window/notifier.png" x="146" y="0" w="13" h="80" gammagroup="NotifierBackground"/> + + <bitmap id="notifier.bg.left.da" file="window/notifier.png" x="0" y="80" w="13" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.center.da" file="window/notifier.png" x="13" y="80" w="133" h="80" gammagroup="NotifierBackground"/> + <bitmap id="notifier.bg.right.da" file="window/notifier.png" x="146" y="80" w="13" h="80" gammagroup="NotifierBackground"/> + + <bitmap id="notifier.bg.cover" file="window/notifier.png" x="0" y="160" w="78" h="80" gammagroup="NotifierBackground"/> + + + <color id="notifier.dark" value="35,35,35" gammagroup="NotifierTextShadow" /> + <color id="notifier.bright" value="255,255,255" gammagroup="NotifierText" /> + + <color id="notifier.dark.upper" value="35,35,35" gammagroup="NotifierUpperText" /> + <color id="notifier.bright.upper" value="255,255,255" gammagroup="NotifierUpperTextShadow" /> + + +</elements> + diff --git a/Src/resources/skins/Big Bento/xml/notifier-normal.xml b/Src/resources/skins/Big Bento/xml/notifier-normal.xml new file mode 100644 index 00000000..c662dac7 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/notifier-normal.xml @@ -0,0 +1,51 @@ +<groupdef id="notifier.albumart" sysregion="1" ghost="1" > + + <layer id="notifier.cover.bg" x="0" y="0" image="notifier.bg.cover" move="0"/> + <AlbumArt id="notifier.cover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" notfoundImage="winamp.cover.notfound.50" noAutoRefresh="1"/> + <layer id="notifier.webcover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" visible="0"/> + +</groupdef> + +<groupdef id="notifier.text" sysregion = "1" ghost="1"> + + <!-- mp: I know this is an unusual way to get text shadow - but it creates a much better effect than the shadow params --> + + <text id="plentry.shadow" x="0" y="13" default="2/15" w="100" color="notifier.bright.upper" font="Arial" fontsize="12" bold="1" ghost="1" alpha="128"/> + <text id="plentry" x="0" y="12" default="2/15" w="100" color="notifier.dark.upper" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="nexttrack.shadow" x="-102" y="13" w="102" relatw="1" align="right" default="Next track" color="notifier.bright.upper" font="Arial" fontsize="12" bold="1" ghost="1" alpha="128"/> + <text id="nexttrack" x="-102" y="12" w="102" relatw="1" align="right" default="Next track" color="notifier.dark.upper" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="title.shadow" x="0" y="28" w="0" relatw="1" default="Nothing" color="notifier.dark" font="Arial" fontsize="17" ghost="1" alpha="128" bold="1" translate="0"/> + <text id="title" x="0" y="27" w="0" relatw="1" default="Nothing" color="notifier.bright" font="Arial" fontsize="17" ghost="1" bold="1" translate="0"/> + + <text id="artist.shadow" x="0" y="42" w="0" h="18" relatw="1" default="Nithin Sawhney" color="notifier.dark" font="Arial" fontsize="13" ghost="1" alpha="128" translate="0"/> + <text id="artist" x="0" y="41" w="0" h="18" relatw="1" default="Nithin Sawhney" color="notifier.bright" font="Arial" fontsize="13" ghost="1" alpha="235" translate="0"/> + + <text id="album.shadow" x="0" y="55" w="0" h="14" relatw="1" default="Prophesy" color="notifier.dark" font="Arial" fontsize="13" ghost="1" alpha="128" translate="0"/> + <text id="album" x="0" y="54" w="0" h="14" relatw="1" default="Prophesy" color="notifier.bright" font="Arial" fontsize="13" ghost="1" alpha="235" translate="0"/> + +</groupdef> + + +<layout id="normal" noparent="1" ontop="1" h="80" w="128" forcealpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left" middle="notifier.bg.center" right="notifier.bg.right" fitparent="1" sysregion="1" ghost="1" rectrgn="0" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback.shadow" x="15" y="32" w="-35" relatw="1" align="center" default="End of playback" color="notifier.dark" font="Arial" fontsize="20" visible="0" ghost="1"/> + <text id="endofplayback" x="15" y="31" w="-35" relatw="1" align="center" default="End of playback" color="notifier.bright" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout> + +<layout id="desktopalpha" noparent="1" ontop="1" h="80" w="128" desktopalpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left.da" middle="notifier.bg.center.da" right="notifier.bg.right.da" fitparent="1" ghost="1" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback.shadow" x="15" y="32" w="-35" relatw="1" align="center" default="End of playback" color="notifier.dark" font="Arial" fontsize="20" visible="0" ghost="1"/> + <text id="endofplayback" x="15" y="31" w="-35" relatw="1" align="center" default="End of playback" color="notifier.bright" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/notifier.xml b/Src/resources/skins/Big Bento/xml/notifier.xml new file mode 100644 index 00000000..47a002ff --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/notifier.xml @@ -0,0 +1,10 @@ +<include file="notifier-elements.xml"/> +<container id="notifier" name="Notifier" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1"> + + <include file="notifier-normal.xml"/> + +</container> + +<!-- this script runs independent --> +<script file="@SKINSPATH@\Big Bento\scripts\notifier.maki"/> +<!--script file="scripts\notifier.maki"/-->
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-elements.xml b/Src/resources/skins/Big Bento/xml/player-elements.xml new file mode 100644 index 00000000..f7806421 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-elements.xml @@ -0,0 +1,635 @@ +<elements> + + <!-- SUI Playlist Search --> + <bitmap id="sui.pl.search.box.1" file="window/sui.png" x="180" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.2" file="window/sui.png" x="187" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.3" file="window/sui.png" x="194" y="39" w="6" h="1" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.4" file="window/sui.png" x="180" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.5" file="window/sui.png" x="187" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.6" file="window/sui.png" x="194" y="41" w="6" h="6" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.7" file="window/sui.png" x="180" y="48" w="6" h="24" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.8" file="window/sui.png" x="187" y="48" w="6" h="24" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.box.9" file="window/sui.png" x="194" y="48" w="6" h="24" gammagroup="WindowBackground"/> + + <bitmap id="sui.pl.search.bg.1" file="window/sui.png" x="81" y="31" w="18" h="30" gammagroup="PlayerDisplay"/> + <bitmap id="sui.pl.search.bg.2" file="window/sui.png" x="100" y="31" w="20" h="30" gammagroup="PlayerDisplay"/> + <bitmap id="sui.pl.search.bg.3" file="window/sui.png" x="121" y="31" w="18" h="30" gammagroup="PlayerDisplay"/> + + <bitmap id="sui.pl.search.bgv.1" file="window/sui.png" x="0" y="31" w="30" h="30" gammagroup="ComponentFrame"/> + <bitmap id="sui.pl.search.bgv.2" file="window/sui.png" x="31" y="31" w="20" h="30" gammagroup="ComponentFrame"/> + <bitmap id="sui.pl.search.bgv.3" file="window/sui.png" x="50" y="31" w="30" h="30" gammagroup="ComponentFrame"/> + + <bitmap id="sui.pl.search.go.bgv" file="window/sui.png" x="225" y="0" w="20" h="19" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.go.1" file="window/sui.png" x="225" y="20" w="20" h="19" gammagroup="PlayerButton"/> + <bitmap id="sui.pl.search.go.2" file="window/sui.png" x="225" y="40" w="20" h="19" gammagroup="PlayerButton"/> + <bitmap id="sui.pl.search.go.3" file="window/sui.png" x="225" y="60" w="20" h="19" gammagroup="PlayerButton"/> + + <bitmap id="sui.pl.search.stop.bgv" file="window/sui.png" x="201" y="0" w="20" h="19" gammagroup="WindowBackground"/> + <bitmap id="sui.pl.search.stop.1" file="window/sui.png" x="201" y="20" w="20" h="19" gammagroup="Column"/> + <bitmap id="sui.pl.search.stop.2" file="window/sui.png" x="201" y="40" w="20" h="19" gammagroup="Column"/> + <bitmap id="sui.pl.search.stop.3" file="window/sui.png" x="201" y="60" w="20" h="19" gammagroup="Column"/> + + <!-- TitleBar --> + + <bitmap id="window.titlebar.grid.left" file="window/window.png" x="100" y="0" h="23" w="5" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.middle" file="window/window.png" x="105" y="0" h="23" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.right" file="window/window.png" x="115" y="0" h="23" w="5" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.grid.over.left" file="window/window.png" x="120" y="0" h="23" w="5" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.over.middle" file="window/window.png" x="125" y="0" h="23" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.grid.over.right" file="window/window.png" x="135" y="0" h="23" w="5" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.text.winamp" file="window/window.png" x="120" y="30" h="9" w="48" gammagroup="TitlebarText"/> + + <bitmap id="window.titlebar.menu.normal" file="window/window.png" x="125" y="1" h="21" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.menu.hover" file="window/window.png" x="140" y="1" h="21" w="10" gammagroup="Titlebar"/> + <bitmap id="window.titlebar.menu.down" file="window/window.png" x="150" y="1" h="21" w="10" gammagroup="Titlebar"/> + + <bitmap id="window.titlebar.menu.text.file" file="window/menu_file.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.play" file="window/menu_play.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.options" file="window/menu_options.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.view" file="window/menu_view.png" gammagroup="TitlebarMenuText"/> + <bitmap id="window.titlebar.menu.text.help" file="window/menu_help.png" gammagroup="TitlebarMenuText"/> + + <bitmap id="window.titlebar.button.sysmenu.normal" file="window/window.png" x="0" y="0" h="13" w="15" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.sysmenu.hover" file="window/window.png" x="0" y="13" h="13" w="15" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.sysmenu.down" file="window/window.png" x="0" y="26" h="13" w="15" gammagroup="TitleButtonOrange"/> + + <bitmap id="window.titlebar.button.minimize.normal" file="window/window.png" x="15" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.minimize.hover" file="window/window.png" x="15" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.minimize.down" file="window/window.png" x="15" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.maximize.normal" file="window/window.png" x="32" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.maximize.hover" file="window/window.png" x="32" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.maximize.down" file="window/window.png" x="32" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.restore.normal" file="window/window.png" x="49" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.restore.hover" file="window/window.png" x="49" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.restore.down" file="window/window.png" x="49" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.shade.normal" file="window/window.png" x="66" y="0" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.shade.hover" file="window/window.png" x="66" y="13" h="13" w="17" gammagroup="TitleButtonGrey"/> + <bitmap id="window.titlebar.button.shade.down" file="window/window.png" x="66" y="26" h="13" w="17" gammagroup="TitleButtonGrey"/> + + <bitmap id="window.titlebar.button.close.normal" file="window/window.png" x="83" y="0" h="13" w="17" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.close.hover" file="window/window.png" x="83" y="13" h="13" w="17" gammagroup="TitleButtonOrange"/> + <bitmap id="window.titlebar.button.close.down" file="window/window.png" x="83" y="26" h="13" w="17" gammagroup="TitleButtonOrange"/> + + <!-- Window Elements --> + + <bitmap id="window.background.maximized" file="$solid" h="64" w="64" color="0,0,0" gammagroup="WindowBackground"/> + + <bitmap id="window.background.gradient" file="window/window-gradient.png" gammagroup="WindowBackgroundGradient"/> + + <bitmap id="window.background.topleft" file="window/window.png" x="100" y="23" h="5" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.top" file="window/window.png" x="105" y="23" h="5" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.topright" file="window/window.png" x="115" y="23" h="5" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.left" file="window/window.png" x="100" y="28" h="6" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.center" file="window/window.png" x="105" y="28" h="6" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.right" file="window/window.png" x="115" y="28" h="6" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.bottomleft" file="window/window.png" x="100" y="34" h="5" w="5" gammagroup="WindowBackground"/> + <bitmap id="window.background.bottom" file="window/window.png" x="105" y="34" h="5" w="10" gammagroup="WindowBackground"/> + <bitmap id="window.background.bottomright" file="window/window.png" x="115" y="34" h="5" w="5" gammagroup="WindowBackground"/> + + <bitmap id="window.background.resizer" file="window/window.png" x="168" y="29" h="10" w="19" gammagroup="WindowBackground"/> + + <bitmap id="window.background.region" file="$solid" h="1" w="1" color="0,0,0"/> + + <bitmap id="window.button.collapse.normal" file="window/window.png" x="0" y="49" h="15" w="44" gammagroup="PlayerButton"/> + <bitmap id="window.button.collapse.hover" file="window/window.png" x="44" y="49" h="15" w="44" gammagroup="PlayerButton"/> + <bitmap id="window.button.collapse.down" file="window/window.png" x="88" y="49" h="15" w="44" gammagroup="PlayerButton"/> + + <bitmap id="window.button.expand.normal" file="window/window.png" x="0" y="64" h="15" w="44" gammagroup="PlayerButton"/> + <bitmap id="window.button.expand.hover" file="window/window.png" x="44" y="64" h="15" w="44" gammagroup="PlayerButton"/> + <bitmap id="window.button.expand.down" file="window/window.png" x="88" y="64" h="15" w="44" gammagroup="PlayerButton"/> + + <bitmap id="window.background.collapse" file="window/window.png" x="132" y="49" h="15" w="44" gammagroup="WindowBackground"/> + + + <!-- Player --> + + <bitmap id="player.display.background.left" file="window/player.png" x="0" y="0" h="69" w="60" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.left" file="window/player.png" x="0" y="69" h="69" w="60" gammagroup="WindowBackground"/> + <bitmap id="player.display.background.center" file="window/player.png" x="60" y="0" h="69" w="40" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.center" file="window/player.png" x="60" y="69" h="69" w="40" gammagroup="WindowBackground"/> + <bitmap id="player.display.background.right" file="window/player.png" x="120" y="0" h="69" w="166" gammagroup="PlayerDisplay"/> + <bitmap id="player.display.foreground.right" file="window/player.png" x="120" y="69" h="69" w="166" gammagroup="WindowBackground"/> + + <bitmap id="player.songinfo.bitrate" file="window/songinfo.png" x="0" y="15" h="5" w="14" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.frequency" file="window/songinfo.png" x="15" y="15" h="5" w="11" gammagroup="DisplayText"/> + + <bitmap id="player.songinfo.mono" file="window/songinfo.png" x="0" y="21" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.stereo" file="window/songinfo.png" x="0" y="27" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.multi" file="window/songinfo.png" x="0" y="33" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.multi2" file="window/songinfo.png" x="41" y="33" h="5" w="40" gammagroup="DisplayText"/> + <bitmap id="player.songinfo.na" file="window/songinfo.png" x="0" y="0" h="5" w="40" gammagroup="DisplayText"/> + + <bitmap id="empty" file="$polygon" x="0" y="0" h="48" w="8" gammagroup="none"/> + + <bitmap id="player.beatvis.left" file="window/beatvis.png" x="0" y="0" w="43" h="280" gammagroup="DisplayText"/> + <bitmap id="player.beatvis.right" file="window/beatvis.png" x="43" y="0" w="43" h="280" gammagroup="DisplayText"/> + + <bitmap id="player.beatvis.left.wo" file="window/beatvis.png" x="86" y="0" w="43" h="280" gammagroup="DisplayText"/> + <bitmap id="player.beatvis.right.wo" file="window/beatvis.png" x="129" y="0" w="43" h="280" gammagroup="DisplayText"/> + + <bitmap id="player.bitmapfont.songinfo.source" file="window/songinfo.png" x="0" y="0" h="15" w="110" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.songinfo" file="player.bitmapfont.songinfo.source" charwidth="5" charheight="5" hspacing="0" vspacing="0" /> + + <bitmap id="player.bitmapfont.nums.source" file="window/numfont.png" x="0" y="0" h="93" w="240" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.nums" file="player.bitmapfont.nums.source" charwidth="15" charheight="31" hspacing="0" vspacing="-2"/> + + <bitmap id="player.bitmapfont.nums.noreflect.source" file="window/numfont.png" x="0" y="93" h="93" w="240" gammagroup="DisplayText"/> + <bitmapfont id="player.bitmapfont.nums.noreflect" file="player.bitmapfont.nums.noreflect.source" charwidth="15" charheight="31" hspacing="0" vspacing="-2"/> + + <bitmap id="player.display.status.playing" file="window/songinfo.png" x="0" y="39" h="6" w="5" gammagroup="DisplayText"/> + <bitmap id="player.display.status.paused" file="window/songinfo.png" x="6" y="39" h="6" w="5" gammagroup="DisplayText"/> + <bitmap id="player.display.status.stopped" file="window/songinfo.png" x="12" y="39" h="6" w="5" gammagroup="DisplayText"/> + + <bitmap id="player.button.mute.normal" file="window/player.png" x="33" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.hover" file="window/player.png" x="66" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.down" file="window/player.png" x="99" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.normal" file="window/player.png" x="132" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.hover" file="window/player.png" x="165" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.demute.down" file="window/player.png" x="198" y="151" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.mute.placeholder" file="window/player.png" x="0" y="151" h="18" w="33" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.mute.glow" file="window/player.png" x="231" y="150" h="20" w="33" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.mute.active" file="window/player.png" x="132" y="351" h="30" w="30" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.slider.background.left" file="window/player.png" x="0" y="138" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="player.slider.background.center" file="window/player.png" x="5" y="138" h="5" w="15" gammagroup="PlayerSliderBackground"/> + <bitmap id="player.slider.background.right" file="window/player.png" x="20" y="138" h="5" w="5" gammagroup="PlayerSliderBackground"/> + + <bitmap id="player.slider.light.left" file="window/player.png" x="0" y="143" h="2" w="4" gammagroup="PlayerSliderLight"/> + <bitmap id="player.slider.light.center" file="window/player.png" x="4" y="143" h="2" w="8" gammagroup="PlayerSliderLight"/> + <bitmap id="player.slider.light.right" file="window/player.png" x="12" y="143" h="2" w="4" gammagroup="PlayerSliderLight"/> + + <bitmap id="player.label.volume" file="window/player.png" x="25" y="138" h="8" w="91" gammagroup="WindowText"/> + + <bitmap id="player.volume.thumb.normal" file="window/player.png" x="116" y="138" h="12" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.volume.thumb.hover" file="window/player.png" x="138" y="138" h="12" w="22" gammagroup="PlayerButton"/> + <bitmap id="player.volume.thumb.down" file="window/player.png" x="160" y="138" h="12" w="22" gammagroup="PlayerButton"/> + + <bitmap id="player.posbar.thumb.normal" file="window/player.png" x="182" y="138" h="12" w="40" gammagroup="PlayerButton"/> + <bitmap id="player.posbar.thumb.hover" file="window/player.png" x="222" y="138" h="12" w="40" gammagroup="PlayerButton"/> + <bitmap id="player.posbar.thumb.down" file="window/player.png" x="182" y="138" h="12" w="40" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.placeholder" file="window/player.png" x="0" y="259" h="26" w="138" gammagroup="PlayerButtonPlaceHolder"/> + + <bitmap id="player.button.previous.normal" file="window/player.png" x="0" y="285" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.normal" file="window/player.png" x="27" y="285" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.normal" file="window/player.png" x="54" y="285" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.normal" file="window/player.png" x="81" y="285" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.normal" file="window/player.png" x="108" y="285" h="22" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.hover" file="window/player.png" x="0" y="307" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.hover" file="window/player.png" x="27" y="307" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.hover" file="window/player.png" x="54" y="307" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.hover" file="window/player.png" x="81" y="307" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.hover" file="window/player.png" x="108" y="307" h="22" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.previous.glow" file="window/player.png" x="0" y="230" h="29" w="32" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.pps.glow" file="window/player.png" x="32" y="230" h="29" w="29" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.next.glow" file="window/player.png" x="123" y="230" h="29" w="32" gammagroup="PlayerButtonGlow"/> + + <bitmap id="player.button.previous.down" file="window/player.png" x="0" y="329" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.play.down" file="window/player.png" x="27" y="329" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.pause.down" file="window/player.png" x="54" y="329" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.stop.down" file="window/player.png" x="81" y="329" h="22" w="26" gammagroup="PlayerButton"/> + <bitmap id="player.button.next.down" file="window/player.png" x="108" y="329" h="22" w="26" gammagroup="PlayerButton"/> + + <bitmap id="player.button.eject.normal" file="window/player.png" x="33" y="171" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.eject.hover" file="window/player.png" x="66" y="171" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.eject.down" file="window/player.png" x="99" y="171" h="18" w="33" gammagroup="PlayerButton"/> + + <bitmap id="player.button.shuffle.placeholder" file="window/player.png" x="0" y="191" h="18" w="71" gammagroup="PlayerButtonPlaceHolder"/> + <bitmap id="player.button.shuffle.normal0" file="window/player.png" x="71" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.hover0" file="window/player.png" x="143" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.down0" file="window/player.png" x="215" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.normal1" file="window/player.png" x="71" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.hover1" file="window/player.png" x="143" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.down1" file="window/player.png" x="215" y="191" h="18" w="39" gammagroup="PlayerButton"/> + <bitmap id="player.button.shuffle.glow" file="window/player.png" x="0" y="210" h="20" w="39" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.shuffle.active0" file="$polygon" h="31" w="34" /> + <bitmap id="player.button.shuffle.active1" file="window/player.png" x="28" y="351" h="31" w="34" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.button.repeat.normal0" file="window/player.png" x="110" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover0" file="window/player.png" x="182" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down0" file="window/player.png" x="254" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.normal1" file="window/player.png" x="110" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover1" file="window/player.png" x="182" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down1" file="window/player.png" x="254" y="211" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.normal2" file="window/player.png" x="110" y="191" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.hover2" file="window/player.png" x="182" y="191" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.down2" file="window/player.png" x="254" y="191" h="18" w="33" gammagroup="PlayerButton"/> + <bitmap id="player.button.repeat.glow" file="window/player.png" x="39" y="210" h="20" w="33" gammagroup="PlayerButtonGlow"/> + <bitmap id="player.button.repeat.active0" file="$polygon" h="30" w="35" /> + <bitmap id="player.button.repeat.active1" file="window/player.png" x="62" y="351" h="30" w="35" gammagroup="PlayerButtonActive"/> + <bitmap id="player.button.repeat.active2" file="window/player.png" x="97" y="351" h="30" w="35" gammagroup="PlayerButtonActive"/> + + <bitmap id="player.button.bolt.glow" file="window/player.png" x="160" y="264" h="44" w="51" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.normal" file="window/player.png" x="221" y="234" h="37" w="51" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.hover" file="window/player.png" x="221" y="271" h="37" w="51" gammagroup="LightningBolt"/> + <bitmap id="player.button.bolt.down" file="window/player.png" x="221" y="308" h="37" w="51" gammagroup="LightningBolt"/> + + + <!-- SUI Background --> + + <bitmap id="sui.background.topleft" file="window/window.png" x="160" y="0" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.top" file="window/window.png" x="165" y="0" h="5" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.topright" file="window/window.png" x="175" y="0" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.left" file="window/window.png" x="160" y="5" h="10" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.center" file="window/window.png" x="165" y="5" h="10" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.right" file="window/window.png" x="175" y="5" h="10" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottomleft" file="window/window.png" x="160" y="15" h="5" w="5" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottom" file="window/window.png" x="165" y="15" h="5" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="sui.background.bottomright" file="window/window.png" x="175" y="15" h="5" w="5" gammagroup="PlayerDisplay"/> + + <bitmap id="sui.component.topleft" file="window/window.png" x="200" y="0" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.top" file="window/window.png" x="205" y="0" h="5" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.top2" file="window/window.png" x="205" y="0" h="1" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.topright" file="window/window.png" x="215" y="0" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.left" file="window/window.png" x="200" y="5" h="10" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.center" file="window/window.png" x="205" y="5" h="10" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.right" file="window/window.png" x="215" y="5" h="10" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottomleft" file="window/window.png" x="200" y="15" h="5" w="5" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottom" file="window/window.png" x="205" y="15" h="5" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottom2" file="window/window.png" x="205" y="19" h="1" w="10" gammagroup="ComponentFrame"/> + <bitmap id="sui.component.bottomright" file="window/window.png" x="215" y="15" h="5" w="5" gammagroup="ComponentFrame"/> + + <!-- SUI Component Buttons --> + + <bitmap id="sui.button.active.normal.left" file="window/window.png" x="176" y="49" h="22" w="6" gammagroup="CompButtonActive" /> + <bitmap id="sui.button.active.normal.center" file="window/window.png" x="182" y="49" h="22" w="10" gammagroup="CompButtonActive" /> + <bitmap id="sui.button.active.normal.right" file="window/window.png" x="192" y="49" h="22" w="6" gammagroup="CompButtonActive" /> + + <bitmap id="sui.button.active.footer.left" file="window/window.png" x="176" y="71" h="1" w="6" gammagroup="ComponentFrame" /> + <bitmap id="sui.button.active.footer.center" file="window/window.png" x="182" y="71" h="1" w="10" gammagroup="ComponentFrame" /> + <bitmap id="sui.button.active.footer.right" file="window/window.png" x="192" y="71" h="1" w="6" gammagroup="ComponentFrame" /> + + <bitmap id="sui.button.inactive.normal.left" file="window/window.png" x="198" y="49" h="22" w="6" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.normal.center" file="window/window.png" x="204" y="49" h="22" w="10" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.normal.right" file="window/window.png" x="214" y="49" h="22" w="6" gammagroup="CompButtonInactive" /> + + <bitmap id="sui.button.inactive.hover.left" file="window/window.png" x="220" y="49" h="22" w="6" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.hover.center" file="window/window.png" x="226" y="49" h="22" w="10" gammagroup="CompButtonInactive" /> + <bitmap id="sui.button.inactive.hover.right" file="window/window.png" x="236" y="49" h="22" w="6" gammagroup="CompButtonInactive" /> + + <!-- Info Component --> + + <bitmap id="infocomp.background.topleft" file="window/window.png" x="180" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.top" file="window/window.png" x="187" y="0" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.topright" file="window/window.png" x="193" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.left" file="window/window.png" x="180" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.center" file="window/window.png" x="187" y="7" h="6" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.right" file="window/window.png" x="193" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottomleft" file="window/window.png" x="180" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottom" file="window/window.png" x="187" y="13" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="infocomp.background.bottomright" file="window/window.png" x="193" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + + <bitmap id="infocomp.background.buttons.left.over" file="window/window.png" x="0" y="79" h="17" w="130" gammagroup="PlayerDisplay"/> + + <bitmap id="infocomp.button.more.normal" file="window/componentcontrols.png" x="0" y="119" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.more.hover" file="window/componentcontrols.png" x="32" y="119" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.more.down" file="window/componentcontrols.png" x="64" y="119" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.blank.normal" file="window/componentcontrols.png" x="0" y="272" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.blank.hover" file="window/componentcontrols.png" x="32" y="272" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.blank.down" file="window/componentcontrols.png" x="64" y="272" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.icon.search" file="window/componentcontrols.png" x="32" y="289" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.icon.nowplaying" file="window/componentcontrols.png" x="64" y="289" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.toggle.normal" file="window/componentcontrols.png" x="0" y="102" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.toggle.hover" file="window/componentcontrols.png" x="32" y="102" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.toggle.down" file="window/componentcontrols.png" x="64" y="102" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.vis.cfg.normal" file="window/componentcontrols.png" x="0" y="136" h="17" w="31" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg.hover" file="window/componentcontrols.png" x="32" y="136" h="17" w="31" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg.down" file="window/componentcontrols.png" x="64" y="136" h="17" w="31" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.button.vis.rnd.normal" file="window/componentcontrols.png" x="0" y="204" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.hover" file="window/componentcontrols.png" x="32" y="204" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.down" file="window/componentcontrols.png" x="64" y="204" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.rnd.active" file="window/componentcontrols.png" x="96" y="0" h="25" w="41" gammagroup="PlayerButtonGlow"/> + + <bitmap id="infocomp.button.vis.cfg2.normal" file="window/componentcontrols.png" x="0" y="153" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg2.hover" file="window/componentcontrols.png" x="32" y="153" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="infocomp.button.vis.cfg2.down" file="window/componentcontrols.png" x="64" y="153" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="infocomp.rating.empty" file="window/rating.png" x="22" y="0" h="12" w="11" gammagroup="DisplayText"/> + <bitmap id="infocomp.rating.hover" file="window/rating.png" x="11" y="0" h="12" w="11" gammagroup="DisplayText"/> + <bitmap id="infocomp.rating.star" file="window/rating.png" x="0" y="0" h="12" w="11" gammagroup="DisplayText"/> + + <bitmap id="infocomp.branding" file="window/branding.png" x="0" y="0" h="53" w="129"/> + + <bitmap id="winamp.cover.notfound" file="xml/winamp/cover/notfound.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.60" file="xml/winamp/cover/notfound60.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.90" file="xml/winamp/cover/notfound90.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.84x84" file="window/no_alb_art_big.png" x="0" y="0" h="111" w="111" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.50" file="window/notfound.png" x="0" y="158" h="50" w="50" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.70" file="window/notfound.png" x="0" y="84" h="70" w="70" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.notfound.xxl" file="window/notfoundXXL.png" gammagroup="DisplayText"/> + <bitmap id="winamp.cover.shoutcast" file="window/sc_alb_art.jpg" x="0" y="0" h="111" w="111" /> + + <bitmap id="coverflow.button.play.normal" file="window/compcontrols.png" x="256" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="coverflow.button.play.hover" file="window/compcontrols.png" x="256" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="coverflow.button.play.down" file="window/compcontrols.png" x="256" y="42" h="21" w="24" gammagroup="WindowText"/> + + <!-- Playlist Editor --> + + <bitmap id="pledit.background.topleft" file="window/window.png" x="220" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.top" file="window/window.png" x="227" y="0" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.topright" file="window/window.png" x="233" y="0" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.left" file="window/window.png" x="220" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.center" file="window/window.png" x="227" y="7" h="6" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.right" file="window/window.png" x="233" y="7" h="6" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottomleft" file="window/window.png" x="220" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottom" file="window/window.png" x="227" y="13" h="7" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="pledit.background.bottomright" file="window/window.png" x="233" y="13" h="7" w="7" gammagroup="PlayerDisplay"/> + + <bitmap id="pledit.background.buttons.center" file="window/window.png" x="221" y="20" h="17" w="11" gammagroup="PlayerDisplayGradient"/> + <bitmap id="pledit.background.buttons.right" file="window/window.png" x="232" y="20" h="17" w="7" gammagroup="PlayerDisplayGradient"/> + + <bitmap id="pledit.button.toggle.normal" file="window/componentcontrols.png" x="0" y="0" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.toggle.hover" file="window/componentcontrols.png" x="32" y="0" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.toggle.down" file="window/componentcontrols.png" x="64" y="0" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.manage.normal" file="window/componentcontrols.png" x="0" y="17" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.manage.hover" file="window/componentcontrols.png" x="32" y="17" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.manage.down" file="window/componentcontrols.png" x="64" y="17" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.misc.normal" file="window/componentcontrols.png" x="0" y="34" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.misc.hover" file="window/componentcontrols.png" x="32" y="34" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.misc.down" file="window/componentcontrols.png" x="64" y="34" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.sel.normal" file="window/componentcontrols.png" x="0" y="51" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.sel.hover" file="window/componentcontrols.png" x="32" y="51" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.sel.down" file="window/componentcontrols.png" x="64" y="51" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.rem.normal" file="window/componentcontrols.png" x="0" y="68" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.rem.hover" file="window/componentcontrols.png" x="32" y="68" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.rem.down" file="window/componentcontrols.png" x="64" y="68" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="pledit.button.add.normal" file="window/componentcontrols.png" x="0" y="85" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.add.hover" file="window/componentcontrols.png" x="32" y="85" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="pledit.button.add.down" file="window/componentcontrols.png" x="64" y="85" h="17" w="32" gammagroup="PlayerButton"/> + + <!-- Playlist Editor Tab --> + + <bitmap id="pledit.tab.button.add" file="window/pl_btn_icons.png" x="0" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.rem" file="window/pl_btn_icons.png" x="25" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.sel" file="window/pl_btn_icons.png" x="50" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.misc" file="window/pl_btn_icons.png" x="75" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.manage" file="window/pl_btn_icons.png" x="100" y="0" h="21" w="24" gammagroup="PlayerButton"/> + <bitmap id="pledit.tab.button.up" file="window/pl_btn_icons.png" x="125" y="0" h="21" w="24" gammagroup="PlayerButton"/> + + <!-- Video --> + + <bitmap id="video.button.fullscreen.normal" file="window/compcontrols.png" x="0" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.fullscreen.hover" file="window/compcontrols.png" x="0" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.fullscreen.down" file="window/compcontrols.png" x="0" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.1x.normal" file="window/compcontrols.png" x="24" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.1x.hover" file="window/compcontrols.png" x="24" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.1x.down" file="window/compcontrols.png" x="24" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.2x.normal" file="window/compcontrols.png" x="48" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.2x.hover" file="window/compcontrols.png" x="48" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.2x.down" file="window/compcontrols.png" x="48" y="42" h="21" w="24" gammagroup="WindowText"/> + + <!--<bitmap id="video.button.itv.normal" file="window/compcontrols.png" x="72" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.itv.hover" file="window/compcontrols.png" x="72" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.itv.down" file="window/compcontrols.png" x="72" y="42" h="21" w="24" gammagroup="WindowText"/>--> + + <bitmap id="video.button.cfg.normal" file="window/compcontrols.png" x="96" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.cfg.hover" file="window/compcontrols.png" x="96" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.cfg.down" file="window/compcontrols.png" x="96" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.pin.normal1" file="window/compcontrols.png" x="208" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.hover1" file="window/compcontrols.png" x="208" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.down1" file="window/compcontrols.png" x="208" y="42" h="21" w="24" gammagroup="WindowText"/> + + <bitmap id="video.button.pin.normal0" file="window/compcontrols.png" x="232" y="0" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.hover0" file="window/compcontrols.png" x="232" y="21" h="21" w="24" gammagroup="WindowText"/> + <bitmap id="video.button.pin.down0" file="window/compcontrols.png" x="232" y="42" h="21" w="24" gammagroup="WindowText"/> + + <!-- Visualizer --> + + <bitmap id="vis.button.prev.normal" file="window/compcontrols.png" x="120" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.prev.hover" file="window/compcontrols.png" x="120" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.prev.down" file="window/compcontrols.png" x="120" y="42" h="21" w="21" gammagroup="WindowText"/> + + <bitmap id="vis.button.next.normal" file="window/compcontrols.png" x="141" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.next.hover" file="window/compcontrols.png" x="141" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.next.down" file="window/compcontrols.png" x="141" y="42" h="21" w="21" gammagroup="WindowText"/> + + <bitmap id="vis.button.random.normal" file="window/compcontrols.png" x="162" y="0" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.hover" file="window/compcontrols.png" x="162" y="21" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.down" file="window/compcontrols.png" x="162" y="42" h="21" w="25" gammagroup="WindowText"/> + <bitmap id="vis.button.random.active" file="window/compcontrols.png" x="162" y="63" h="21" w="25" gammagroup="PlayerButtonActive"/> + + <bitmap id="vis.button.presets.normal" file="window/compcontrols.png" x="187" y="0" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.presets.hover" file="window/compcontrols.png" x="187" y="21" h="21" w="21" gammagroup="WindowText"/> + <bitmap id="vis.button.presets.down" file="window/compcontrols.png" x="187" y="42" h="21" w="21" gammagroup="WindowText"/> + + + <!-- Equalizer --> + + <bitmap id="equalizer.background" file="window/equalizer.png" x="0" y="0" h="92" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.labels.winamp" file="window/equalizer.png" x="0" y="195" h="5" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.labels.iso" file="window/equalizer.png" x="0" y="189" h="5" w="188" gammagroup="WindowText" /> + <bitmap id="equalizer.button.xfade.normal" file="window/equalizer.png" x="0" y="92" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.hover" file="window/equalizer.png" x="0" y="104" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.down" file="window/equalizer.png" x="0" y="116" h="12" w="25" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.xfade.active" file="window/equalizer.png" x="51" y="105" h="23" w="33" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.decrease.normal" file="window/equalizer.png" x="25" y="92" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.decrease.hover" file="window/equalizer.png" x="25" y="104" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.decrease.down" file="window/equalizer.png" x="25" y="116" h="12" w="13" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.button.increase.normal" file="window/equalizer.png" x="38" y="92" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.increase.hover" file="window/equalizer.png" x="38" y="104" h="12" w="13" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.increase.down" file="window/equalizer.png" x="38" y="116" h="12" w="13" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.xfade.display" file="window/equalizer.png" x="51" y="92" h="12" w="19" gammagroup="PlayerDisplay" /> + + <bitmap id="equalizer.button.eqon.normal" file="window/equalizer.png" x="168" y="106" h="17" w="31" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.hover" file="window/equalizer.png" x="168" y="123" h="17" w="31" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.down" file="window/equalizer.png" x="168" y="140" h="17" w="31" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.eqon.active" file="window/equalizer.png" x="104" y="166" h="23" w="33" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.auto.normal" file="window/equalizer.png" x="9" y="128" h="17" w="40" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.hover" file="window/equalizer.png" x="9" y="145" h="17" w="40" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.down" file="window/equalizer.png" x="9" y="162" h="17" w="40" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.auto.active" file="window/equalizer.png" x="137" y="166" h="23" w="44" gammagroup="PlayerButtonActive" /> + + <bitmap id="equalizer.button.presets.normal" file="window/equalizer.png" x="49" y="128" h="17" w="55" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.presets.hover" file="window/equalizer.png" x="49" y="145" h="17" w="55" gammagroup="PlayerButton" /> + <bitmap id="equalizer.button.presets.down" file="window/equalizer.png" x="49" y="162" h="17" w="57" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.slider.balance.background" file="window/equalizer.png" x="70" y="92" h="10" w="78" gammagroup="PlayerSliderBackground" /> + <bitmap id="equalizer.slider.balance.normal" file="window/equalizer.png" x="148" y="92" h="10" w="17" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.balance.hover" file="window/equalizer.png" x="165" y="92" h="10" w="17" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.balance.down" file="window/equalizer.png" x="182" y="92" h="10" w="17" gammagroup="PlayerButton" /> + + <bitmap id="equalizer.slider.eqband.background" file="window/equalizer.png" x="104" y="102" h="55" w="11" gammagroup="PlayerSliderBackground" /> + <bitmap id="equalizer.slider.eqband.normal" file="window/equalizer.png" x="115" y="102" h="19" w="11" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.eqband.hover" file="window/equalizer.png" x="115" y="121" h="19" w="11" gammagroup="PlayerButton" /> + <bitmap id="equalizer.slider.eqband.down" file="window/equalizer.png" x="115" y="140" h="19" w="11" gammagroup="PlayerButton" /> + + + <!-- Config --> + + <bitmap id="config.button.text.windowsizing" file="window/config.png" x="0" y="0" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.visualization" file="window/config.png" x="72" y="0" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.songticker" file="window/config.png" x="0" y="14" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.colorthemes" file="window/config.png" x="0" y="28" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.notifier" file="window/config.png" x="0" y="42" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.appearance" file="window/config.png" x="0" y="56" h="14" w="72" gammagroup="DisplayText"/> + <bitmap id="config.button.text.playlist" file="window/config.png" x="72" y="14" h="14" w="72" gammagroup="DisplayText"/> + + <bitmap id="config.button.selected" file="$solid" h="14" w="72" color="49,53,64" gammagroup="SelectionBg"/> + <bitmap id="config.button.hover" file="$solid" h="14" w="72" color="31,35,44" gammagroup="SelectionBg"/> + + <bitmap id="config.vdivider" file="$solid" h="100" w="1" color="17,18,19" gammagroup="PlayerDisplayGradient"/> + + <bitmap id="config.checkbox.active" file="window/config.png" x="158" y="84" h="12" w="12" gammagroup="DisplayText"/> + <bitmap id="config.checkbox.inactive" file="window/config.png" x="170" y="84" h="12" w="12" gammagroup="DisplayText"/> + + <bitmap id="config.windowsizing.text" file="window/config.png" x="0" y="70" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.windowsizing.autoresize.hover" file="window/config.png" x="158" y="70" h="12" w="158" gammagroup="SelectionBg"/> + <bitmap id="config.windowsizing.titlebar.maximize.hover" file="window/config.png" x="158" y="70" h="12" w="54" gammagroup="SelectionBg"/> + <bitmap id="config.windowsizing.titlebar.shade.hover" file="window/config.png" x="158" y="70" h="12" w="89" gammagroup="SelectionBg"/> + + <bitmap id="config.appearance.text" file="window/config.png" x="0" y="144" h="84" w="158" gammagroup="DisplayText"/> + + <bitmap id="config.colorthemes.button.prev.normal" file="window/componentcontrols.png" x="0" y="170" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev.hover" file="window/componentcontrols.png" x="32" y="170" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev.down" file="window/componentcontrols.png" x="64" y="170" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.prev2.normal" file="window/componentcontrols.png" x="0" y="221" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev2.hover" file="window/componentcontrols.png" x="32" y="221" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.prev2.down" file="window/componentcontrols.png" x="64" y="221" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.next.normal" file="window/componentcontrols.png" x="0" y="187" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.next.hover" file="window/componentcontrols.png" x="32" y="187" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.next.down" file="window/componentcontrols.png" x="64" y="187" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.set.normal" file="window/componentcontrols.png" x="0" y="238" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.set.hover" file="window/componentcontrols.png" x="32" y="238" h="17" w="32" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.set.down" file="window/componentcontrols.png" x="64" y="238" h="17" w="32" gammagroup="PlayerButton"/> + + <bitmap id="config.colorthemes.button.more.normal" file="window/componentcontrols.png" x="0" y="255" h="17" w="54" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.more.hover" file="window/componentcontrols.png" x="54" y="255" h="17" w="54" gammagroup="PlayerButton"/> + <bitmap id="config.colorthemes.button.more.down" file="window/componentcontrols.png" x="108" y="255" h="17" w="54" gammagroup="PlayerButton"/> + + <bitmap id="config.songticker.text" file="window/config.png" x="0" y="228" h="64" w="158" gammagroup="DisplayText"/> + <bitmap id="config.songticker.scroll.hover" file="window/config.png" x="158" y="70" h="12" w="144" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.text" file="window/config.png" x="158" y="144" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.show.text" file="window/config.png" x="158" y="218" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.location.text" file="window/config.png" x="158" y="292" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.notifier.animation.text" file="window/config.png" x="0" y="292" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.visualization.text" file="window/config.png" x="0" y="366" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.appearance.2.text" file="window/config.png" x="0" y="440" h="74" w="158" gammagroup="DisplayText"/> + <bitmap id="config.playlist.text" file="window/config.png" x="158" y="366" h="74" w="158" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.sub.hover" file="window/config.png" x="158" y="112" h="12" w="158" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.show.hover" file="window/config.png" x="158" y="70" h="12" w="139" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.top.hover" file="window/config.png" x="158" y="70" h="12" w="66" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.bottom.hover" file="window/config.png" x="158" y="70" h="12" w="81" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.location.relative.hover" file="window/config.png" x="158" y="70" h="12" w="106" gammagroup="SelectionBg"/> + <bitmap id="config.notifier.animation.hover" file="window/config.png" x="158" y="70" h="12" w="83" gammagroup="SelectionBg"/> + + <bitmap id="config.bitmapfont.source" file="window/config.png" x="158" y="0" h="42" w="158" gammagroup="DisplayText"/> + <bitmapfont id="config.bitmapfont" file="config.bitmapfont.source" charwidth="7" charheight="14" hspacing="0" vspacing="0"/> + + <bitmap id="config.button.left.normal" file="window/config.png" x="183" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.normal" file="window/config.png" x="191" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.button.left.hover" file="window/config.png" x="199" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.hover" file="window/config.png" x="207" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.button.left.down" file="window/config.png" x="215" y="98" h="12" w="8" gammagroup="DisplayText"/> + <bitmap id="config.button.right.down" file="window/config.png" x="223" y="98" h="12" w="8" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.always" file="window/config.png" x="171" y="218" h="12" w="48" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.shade_minimized" file="window/config.png" x="158" y="28" h="12" w="80" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.minimized" file="window/config.png" x="196" y="28" h="12" w="42" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.never" file="window/config.png" x="171" y="260" h="12" w="58" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.topleft" file="window/config.png" x="171" y="292" h="12" w="50" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.topcenter" file="window/config.png" x="171" y="306" h="12" w="50" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.topright" file="window/config.png" x="171" y="320" h="12" w="50" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.bottomleft" file="window/config.png" x="248" y="292" h="12" w="65" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.bottomcenter" file="window/config.png" x="248" y="306" h="12" w="65" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.bottomright" file="window/config.png" x="248" y="320" h="12" w="65" gammagroup="DisplayText"/> + + <bitmap id="config.notifier.text.alphafade" file="window/config.png" x="13" y="292" h="12" w="68" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.vslide" file="window/config.png" x="158" y="56" h="12" w="68" gammagroup="DisplayText"/> + <bitmap id="config.notifier.text.hslide" file="window/config.png" x="158" y="42" h="12" w="68" gammagroup="DisplayText"/> + + <bitmap id="config.background.over" file="window/songinfo-gradient.png" x="0" y="13" h="13" w="74" gammagroup="PlayerDisplay"/> + + + <!-- Shade --> + + <bitmap id="shade.resizer.right" file="window/shade.png" x="0" y="48" h="18" w="5" gammagroup="Titlebar"/> + + <bitmap id="shade.button.previous.normal" file="window/shade.png" x="0" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.normal" file="window/shade.png" x="14" y="0" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.normal" file="window/shade.png" x="26" y="0" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.normal" file="window/shade.png" x="38" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.normal" file="window/shade.png" x="52" y="0" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.normal" file="window/shade.png" x="66" y="0" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.previous.hover" file="window/shade.png" x="0" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.hover" file="window/shade.png" x="14" y="16" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.hover" file="window/shade.png" x="26" y="16" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.hover" file="window/shade.png" x="38" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.hover" file="window/shade.png" x="52" y="16" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.hover" file="window/shade.png" x="66" y="16" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.previous.down" file="window/shade.png" x="0" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.play.down" file="window/shade.png" x="14" y="32" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.pause.down" file="window/shade.png" x="26" y="32" h="16" w="12" gammagroup="ShadeButton"/> + <bitmap id="shade.button.stop.down" file="window/shade.png" x="38" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.next.down" file="window/shade.png" x="52" y="32" h="16" w="14" gammagroup="ShadeButton"/> + <bitmap id="shade.button.eject.down" file="window/shade.png" x="66" y="32" h="16" w="15" gammagroup="ShadeButton"/> + + <bitmap id="shade.button.mute.normal" file="window/shade.png" x="81" y="0" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.mute.hover" file="window/shade.png" x="81" y="16" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.mute.down" file="window/shade.png" x="81" y="32" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.normal" file="window/shade.png" x="96" y="0" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.hover" file="window/shade.png" x="96" y="16" h="16" w="16" gammagroup="ShadeButton"/> + <bitmap id="shade.button.demute.down" file="window/shade.png" x="96" y="32" h="16" w="16" gammagroup="ShadeButton"/> + + <bitmap id="shade.display.left" file="window/shade.png" x="5" y="48" h="18" w="2" gammagroup="PlayerDisplay"/> + <bitmap id="shade.display.middle" file="window/shade.png" x="7" y="48" h="18" w="6" gammagroup="PlayerDisplay"/> + <bitmap id="shade.display.right" file="window/shade.png" x="13" y="48" h="18" w="2" gammagroup="PlayerDisplay"/> + + <bitmap id="shade.label.volume" file="window/shade.png" x="15" y="48" h="4" w="35" gammagroup="WindowText"/> + <bitmap id="shade.track.volume" file="window/shade.png" x="50" y="48" h="5" w="40" gammagroup="WindowBackground"/> + + <bitmap id="shade.track.seek.left" file="window/shade.png" x="50" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="shade.track.seek.middle" file="window/shade.png" x="55" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + <bitmap id="shade.track.seek.right" file="window/shade.png" x="85" y="48" h="5" w="5" gammagroup="PlayerSliderBackground"/> + + <bitmap id="shade.volume.thumb.normal" file="window/shade.png" x="15" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.volume.thumb.hover" file="window/shade.png" x="25" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.volume.thumb.down" file="window/shade.png" x="35" y="53" h="10" w="10" gammagroup="PlayerShadeSlider"/> + + <bitmap id="shade.seek.thumb.normal" file="window/shade.png" x="45" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.seek.thumb.hover" file="window/shade.png" x="61" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + <bitmap id="shade.seek.thumb.down" file="window/shade.png" x="77" y="53" h="10" w="16" gammagroup="PlayerShadeSlider"/> + + <bitmap id="shade.button.search.normal" file="window/shade.png" x="116" y="0" h="21" w="22" gammagroup="WindowBackground"/> + <bitmap id="shade.button.search.hover" file="window/shade.png" x="116" y="21" h="21" w="22" gammagroup="WindowBackground"/> + <bitmap id="shade.button.search.down" file="window/shade.png" x="116" y="42" h="21" w="22" gammagroup="WindowBackground"/> + + <bitmap id="shade.button.icon.nowplaying" file="window/shade.png" x="138" y="21" h="21" w="32" gammagroup="PlayerButton"/> + <bitmap id="shade.button.icon.search" file="window/shade.png" x="138" y="42" h="21" w="32" gammagroup="PlayerButton"/> + +</elements>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-normal-group.xml b/Src/resources/skins/Big Bento/xml/player-normal-group.xml new file mode 100644 index 00000000..5af18c02 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-normal-group.xml @@ -0,0 +1,482 @@ +<!-- Player:Component:Player --> + +<groupdef id="player.display.beatvis.content"> + + <animatedlayer id="beatvisleft" x="0" y="0" h="28" w="43" image="player.beatvis.left" move="0" autoplay="0" autoreplay="0" ghost="1" /> + <animatedlayer id="beatvisright" x="44" y="0" h="28" w="43" image="player.beatvis.right" move="0" autoplay="0" autoreplay="0" ghost="1" /> + + <togglebutton fitparent="1" rectrgn="1" cfgattrib="{F1036C9C-3919-47ac-8494-366778CF10F9};Enable Beat Visualization" tooltip="Toggle Beat Visualization"/> + +</groupdef> + +<groupdef id="player.display.beatvis"> + + <group id="player.display.beatvis.content" x="0" y="0" w="87" h="28" /> + + <script file="scripts/beatvisualization.maki"/> + +</groupdef> + +<groupdef id="player.display"> + + <grid x="0" y="0" h="69" w="0" relatw="1" left="player.display.background.left" middle="player.display.background.center" right="player.display.background.right" move="1"/> + <grid x="0" y="0" h="69" w="0" relatw="1" left="player.display.foreground.left" middle="player.display.foreground.center" right="player.display.foreground.right" move="1"/> + + <status + id="status" w="5" h="6" + x="-156" y="26.9" relatx="1" move="1" + stopBitmap="player.display.status.stopped" + playBitmap="player.display.status.playing" + pauseBitmap="player.display.status.paused" + /> + + <text id="SongTime" + x="7" y="8" h="31" w="102" + font="player.bitmapfont.nums" timecolonwidth="6" + display="time" align="left" alpha="220" + /> + + <SongTicker id="Songticker" + x="70" y="6" h="20" w="-72" relatw="1" + showlen="1" rightpadding="-3" + rightclickaction="trackmenu" dblclickaction="trackinfo" align="right" + color="color.display" size="13" valign="top" antialias="0" fontsize="16" + /> + <Text id="InfoDisplay" + x="70" y="6" h="20" w="-72" relatw="1" alpha="0" + display="SONGTITLE" showlen="1" offsetx="-3" align="right" + color="color.display" size="13" valign="top" antialias="0" ghost="1" + /> + + <script file="scripts/songticker.maki" param="-7,big"/> + + <!-- Bitrate --> + <layer id="Bitrate.label" x="-119" relatx="1" y="26.9" image="player.songinfo.bitrate" move="1"/> + <text + id="Bitrate" move="1" + x="-151" y="26.9" w="30" h="5" relatx="1" fontsize="5" font="player.bitmapfont.songinfo" align="right" + /> + + <!-- Frequency --> + <layer id="Frequency.label" x="-78" y="26.9" relatx="1" image="player.songinfo.frequency" move="1"/> + <text + id="Frequency" move="1" + display="SONGSAMPLERATE" textrefreshrate="500" + x="-105" y="26.9" w="25" h="5" relatx="1" fontsize="5" font="player.bitmapfont.songinfo" align="right" + /> + + <layer id="monster" x="-52" y="26.9" h="5" w="40" relatx="1" image="player.songinfo.na" move="1" rectrgn="1" dblclickaction="WA5:Prefs" dblclickparam="42" /> + + <script file="scripts/songinfo.maki" param="big"/> + + <vis + id="main.vis" + x="11" y="43.9" + w="108" h="16" + colorbandpeak="162,193,204" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + gammagroup="DisplayText" + /> + + <vis + id="main.vis.mirror" + x="11" y="60.9" + w="108" h="16" + colorbandpeak="83,97,104" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + ghost="1" + alpha="100" + flipv="1" + mode="1" + gammagroup="DisplayText" + /> + + <layer id="main.vis.trigger" x="11" y="42" h="28" w="108" rectrgn="1"/> + + <group id="player.display.beatvis" x="121" y="40.9" w="-281" h="28" relatw="1"/> + + <script file="scripts/visualizer.maki" /> + +</groupdef> + +<groupdef id="player.cbuttons"> + + <layer x="3" y="1" image="player.button.previous.placeholder" move="0"/> + <Button id="Prev" + x="5" y="3" + image="player.button.previous.normal" + hoverImage="player.button.previous.hover" + downImage="player.button.previous.down" + action="PREV" tooltip="Previous Track" + /> + <layer id="Prev.glow" x="0" y="0" image="player.button.previous.glow" alpha="0" ghost="1"/> + + <Button id="Play" + x="32" y="3" + image="player.button.play.normal" + hoverImage="player.button.play.hover" + downImage="player.button.play.down" + action="PLAY" tooltip="Play" + /> + <layer id="Play.glow" x="29" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <Button id="Pause" + x="59" y="3" + image="player.button.pause.normal" + hoverImage="player.button.pause.hover" + downImage="player.button.pause.down" + action="PAUSE" tooltip="Pause Playback" + /> + <layer id="Pause.glow" x="56" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <Button id="Stop" + x="86" y="3" + image="player.button.stop.normal" + hoverImage="player.button.stop.hover" + downImage="player.button.stop.down" + action="STOP" tooltip="Stop Playback" + /> + <layer id="Stop.glow" x="83" y="0" image="player.button.pps.glow" alpha="0" ghost="1"/> + + <Button id="Next" + x="113" y="3" + image="player.button.next.normal" + hoverImage="player.button.next.hover" + downImage="player.button.next.down" + action="NEXT" tooltip="Next Track" + /> + <layer id="Next.glow" x="112" y="0" image="player.button.next.glow" alpha="0" ghost="1"/> + + <layer x="-144" y="5" relatx="1" image="player.button.mute.placeholder" move="0"/> + <Button id="Eject" + x="-144" y="5" h="18" w="33" relatx="1" + image="player.button.eject.normal" + hoverImage="player.button.eject.hover" + downImage="player.button.eject.down" + action="EJECT" tooltip="Open File(s)" + /> + <layer id="Eject.glow" x="-144" y="4" relatx="1" image="player.button.mute.glow" alpha="0" ghost="1"/> + + <layer x="-106" y="5" relatx="1" image="player.button.shuffle.placeholder" move="0"/> + <NStatesButton + id="shuffle" + x="-106" y="5" relatx="1" + image="player.button.shuffle.normal" + hoverimage="player.button.shuffle.hover" + downimage="player.button.shuffle.down" + rectrgn="1" nstates="2" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + /> + <layer id="shuffle.glow" x="-106" y="4" relatx="1" image="player.button.shuffle.glow" alpha="0" ghost="1"/> + + <NStatesButton + id="repeat" + x="-68" y="5" relatx="1" + image="player.button.repeat.normal" + hoverimage="player.button.repeat.hover" + downimage="player.button.repeat.down" + rectrgn="1" nstates="3" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + /> + <layer id="repeat.glow" x="-68" y="4" relatx="1" image="player.button.repeat.glow" alpha="0" ghost="1"/> + +</groupdef> + +<groupdef id="player.layout" wantfocus="1" rectrgn="1" move="0"> + + <group id="player.display" x="3" w="-4" relatw="1" h="69" y="0"/> + + <!-- Volume --> + + <layer id="player.placeholder.mute" x="-144" y="52" relatx="1" image="player.button.mute.placeholder" move="0"/> + + <button id="mute" x="-144" y="52" w="33" h="18" relatx="1" + image="player.button.mute.normal" + hoverImage="player.button.mute.hover" + downImage="player.button.mute.down" + tooltip="Mute Volume" + /> + <button id="etum" x="-144" y="52" w="33" h="18" relatx="1" + image="player.button.demute.normal" + hoverImage="player.button.demute.hover" + downImage="player.button.demute.down" + tooltip="Turn Volume On" + visible="0" + /> + + <layer id="mute.glow" x="-144" y="51" relatx="1" image="player.button.mute.glow" alpha="0" ghost="1"/> + <layer id="mute.active" x="-145" y="46" relatx="1" image="player.button.mute.active" visible="0" ghost="1"/> + + <layer id="player.volume.label" x="-97" y="47" relatx="1" image="player.label.volume" move="1"/> + + <grid id="player.volume.bg" + x="-101" y="59" h="5" w="97" relatx="1" + left="player.slider.background.left" + middle="player.slider.background.center" + right="player.slider.background.right" + /> + + <grid id="player.volume.fill" + x="-99" y="61" h="2" w="95" relatx="1" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="Volume" + action="Volume" + x="-102" y="57" h="12" w="99" relatx="1" + thumb="player.volume.thumb.normal" + hoverThumb="player.volume.thumb.hover" + downThumb="player.volume.thumb.down" + tooltip="Volume" + /> + + <script file="scripts/mute.maki" param="95"/> + <!-- param = max_w for volume fillbar --> + + <!-- Seek --> + + <grid id="player.seek.bg" + x="4" y="79" h="5" w="-8" relatw="1" + left="player.slider.background.left" + middle="player.slider.background.center" + right="player.slider.background.right" + /> + + <ProgressGrid id="progressbar" + x="6" y="81" h="2" w="-10" relatw="1" + orientation="right" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + interval="100" + /> + + <Slider + id="seeker" + action="SEEK" + x="3" y="77" h="12" w="-6" relatw="1" + thumb="player.posbar.thumb.normal" + hoverThumb="player.posbar.thumb.hover" + downThumb="player.posbar.thumb.down" + ghost="1" + visible="0" + tooltip="Seeker" + interval="100" + /> + + <Slider + id="seeker.ghost" + action="SEEK" + x="3" y="77" h="12" w="-6" relatw="1" + thumb="player.posbar.thumb.normal" + hoverThumb="player.posbar.thumb.hover" + downThumb="player.posbar.thumb.down" + tooltip="Seeker" + interval="100" + /> + + <script file="scripts/seek.maki"/> + + <group id="player.cbuttons" x="0" y="93" h="32" w="0" relatw="1"/> + <NStatesButton id="shuffle.active" x="-103" y="91" image="player.button.shuffle.active" ghost="1" relatx="1" cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" nstates="2"/> + <NStatesButton id="repeat.active" x="-69" y="92" image="player.button.repeat.active" ghost="1" relatx="1" cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" cfgvals="0;1;-1" nstates="3"/> + + <script file="scripts/cbuttons.maki" param="290"/> + <!-- Param defines the min_w of the cbuttons group --> + +</groupdef> + +<!-- Player:Titlebar --> + +<groupdef id="player.mainmenu" rectregn="1" rectrgn="1"> + + <!-- Note: Most of the items in this group will be placed by script, so don't waste your time --> + + <layer id="menu.text.file" x="0" y="6" h="10" image="window.titlebar.menu.text.file" /> + <layer id="menu.layer.file.normal" x="0" y="0" h="21" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.file.hover" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.file.down" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.play" x="0" y="6" h="10" image="window.titlebar.menu.text.play" /> + <layer id="menu.layer.play.normal" x="0" y="0" h="21" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.play.hover" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.play.down" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.options" x="0" y="6" h="10" image="window.titlebar.menu.text.options" /> + <layer id="menu.layer.options.normal" x="0" y="0" h="21" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.options.hover" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.options.down" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.view" x="0" y="6" h="10" image="window.titlebar.menu.text.view" /> + <layer id="menu.layer.view.normal" x="0" y="0" h="21" w="21" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.view.hover" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.view.down" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + + <layer id="menu.text.help" x="0" y="6" h="10" image="window.titlebar.menu.text.help" /> + <layer id="menu.layer.help.normal" x="0" y="0" h="21" w="0" image="window.titlebar.menu.normal" visible="1" /> + <layer id="menu.layer.help.hover" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + <layer id="menu.layer.help.down" x="0" y="0" h="21" w="0" image="window.titlebar.menu.down" visible="0" /> + + <Menu id="file.menu" menugroup="main" next="Play.menu" prev="Help.menu" x="0" y="0" h="21" w="0" menu="WA5:File" normal="menu.layer.file.normal" hover="menu.layer.file.hover" down="menu.layer.file.down" /> + <Menu id="play.menu" menugroup="main" next="Options.menu" prev="File.menu" x="0" y="0" h="21" w="0" menu="WA5:Play" normal="menu.layer.play.normal" hover="menu.layer.play.hover" down="menu.layer.play.down" /> + <Menu id="options.menu" menugroup="main" next="View.menu" prev="Play.menu" x="0" y="0" h="21" w="0" menu="WA5:Options" normal="menu.layer.options.normal" hover="menu.layer.options.hover" down="menu.layer.options.down" /> + <Menu id="view.menu" menugroup="main" next="Help.menu" prev="Options.menu" x="0" y="0" h="21" w="0" menu="WA5:Windows" normal="menu.layer.view.normal" hover="menu.layer.view.hover" down="menu.layer.view.down" /> + <Menu id="help.menu" menugroup="main" next="File.menu" prev="view.menu" x="0" y="0" h="21" w="0" menu="WA5:Help" normal="menu.layer.help.normal" hover="menu.layer.help.hover" down="menu.layer.help.down" /> + + <guiObject fitparent="1" id="menu.hidden.mousetrap" visible="0" move="1"/> + +</groupdef> + +<groupdef id="player.titlebar"> + + <grid + x="0" y="0" h="23" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + + <layer x="35" y="7" image="window.titlebar.text.winamp" ghost="1" /> + + <guiobject fitparent="1" rectrgn="1" move="1" id="player.mousetrap.maximize"/> + + <layer id="titlebar.resizer.topleft" x="0" y="0" h="3" w="5" rectrgn="1" resize="topleft" /> + <layer id="titlebar.resizer.top" x="5" y="0" h="3" w="-10" relatw="1" rectrgn="1" resize="top" /> + <layer id="titlebar.resizer.topright" x="-5" y="0" h="3" w="5" relatx="1" rectrgn="1" resize="topright" /> + <layer x="0" y="3" h="15" w="5" rectrgn="1" resize="left" /> + <layer x="-5" y="3" h="15" w="5" relatx="1" rectrgn="1" resize="right" /> + <layer id="titlebar.resizer.disable" x="0" y="0" h="23" w="0" relatw="1" rectrgn="1" ghost="1" move="0"/> + + <grid + x="0" y="0" h="23" w="97" relatw="0" regionop="1" ghost="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + /> + + <grid + id="titlebar.grid.right" + x="295" y="0" h="23" w="-295" relatw="1" regionop="1" ghost="1" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <group id="player.mainmenu" x="97" y="1" w="388" h="21" ghost="1" /> + + <button + x="7" y="5" h="13" w="20" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-84" relatx="1" y="5" h="13" w="17" + id="player.button.minimize" + action="MINIMIZE" + image="window.titlebar.button.minimize.normal" + hoverImage="window.titlebar.button.minimize.hover" + downImage="window.titlebar.button.minimize.down" + tooltip="Minimize Winamp" + /> + + <button + x="-64" relatx="1" y="5" h="13" w="17" + id="player.titlebar.button.restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Winamp" + /> + + <button + x="-64" relatx="1" y="5" h="13" w="17" + id="player.titlebar.button.maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Winamp" + /> + + <button + x="-44" relatx="1" y="5" h="13" w="17" + action="SWITCH" param="shade" + image="window.titlebar.button.shade.normal" + hoverImage="window.titlebar.button.shade.hover" + downImage="window.titlebar.button.shade.down" + tooltip="Windowshade Mode" + /> + + <button + id="maximize.slam.close" visible="1" + x="-24" relatx="1" y="0" h="18" w="24" + rectrgn="1" + action="CLOSE" + tooltip="Exit Winamp" + /> + <button + x="-24" relatx="1" y="5" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Exit Winamp" + /> + + <script file="scripts/mainmenu.maki" /> + +</groupdef> + +<groupdef id="window.background.regions"> + <layer x="0" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="0" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-normal-mcv.xml b/Src/resources/skins/Big Bento/xml/player-normal-mcv.xml new file mode 100644 index 00000000..d4695fa5 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-normal-mcv.xml @@ -0,0 +1,842 @@ +<include file="config.xml"/> + +<groupdef id="player.dualwnd.pl.info" wantfocus="1" rectrgn="1"> + + <Wasabi:Frame id="player.dualwnd" x="0" y="0" w="0" relath="0" h="119" from="r" relatw="1" orientation="v" maxwidth="-141" left="player.component.fileinfo" right="player.component.playlist.frame" minwidth="35" width="200" jump="right" /> + +</groupdef> + +<!-- Player:Component:PlayList --> + +<groupdef id="player.component.playlist.frame" wantfocus="1" rectrgn="1"> + + <Wasabi:Frame id="playlist.dualwnd" fitparent="1" from="bottom" orientation="h" maxheight="null" bottom="player.component.playlist.albumart" top="player.component.playlist" minheight="55" height="100" jump="0"/> + +</groupdef> + +<groupdef id="player.component.playlist.albumart" wantfocus="1" rectrgn="1"> + + <grid fitparent="1" x="1" w="-1" relaw="1" + topleft="sui.background.topleft" + top="sui.background.top" + topright="sui.background.topright" + left="sui.background.left" + middle="sui.background.center" + right="sui.background.right" + bottomleft="sui.background.bottomleft" + bottom="sui.background.bottom" + bottomright="sui.background.bottomright" + /> + + <group fitparent="-2" x="3" w="-5" relaw="1" id="info.component.cover2" /> + +</groupdef> + +<groupdef id="player.component.playlist" wantfocus="1" rectrgn="1"> + + <grid fitparent="1" x="1" w="-1" relaw="1" + topleft="pledit.background.topleft" + top="pledit.background.top" + topright="pledit.background.topright" + left="pledit.background.left" + middle="pledit.background.center" + right="pledit.background.right" + bottomleft="pledit.background.bottomleft" + bottom="pledit.background.bottom" + bottomright="pledit.background.bottomright" + /> + + <group id="playlistpro" y="1" h="-19" x="2" w="-3" relath="1" relatw="1"/> + + <group id="player.component.playlist.buttons" x="2" y="-18" w="-3" relatw="1" relaty="1" /> + +</groupdef> + +<groupdef id="player.component.playlist.buttons"> + + <grid + x="0" y="0" h="17" w="0" relatw="1" move="1" + middle="pledit.background.buttons.center" + right="pledit.background.buttons.right" + /> + + <button id="player.playlist.add" + x="0" y="0" + image="pledit.button.add.normal" + hoverImage="pledit.button.add.hover" + downImage="pledit.button.add.down" + action="PE_Add" tooltip="Add Files to Playlist" + /> + <button id="player.playlist.rem" + x="31" y="0" + image="pledit.button.rem.normal" + hoverImage="pledit.button.rem.hover" + downImage="pledit.button.rem.down" + action="PE_Rem" tooltip="Remove Files from Playlist" + /> + <button id="player.playlist.sel" + x="62" y="0" + image="pledit.button.sel.normal" + hoverImage="pledit.button.sel.hover" + downImage="pledit.button.sel.down" + action="PE_Sel" tooltip="Select Files in Playlist" + /> + <button id="player.playlist.misc" + x="93" y="0" + image="pledit.button.misc.normal" + hoverImage="pledit.button.misc.hover" + downImage="pledit.button.misc.down" + action="PE_Misc" tooltip="Misc Actions" + /> + <button id="player.playlist.manage" + x="124" y="0" + image="pledit.button.manage.normal" + hoverImage="pledit.button.manage.hover" + downImage="pledit.button.manage.down" + action="PE_List" tooltip="Manage Playlist" + /> + <togglebutton id="player.playlist.small" + x="-32" y="0" relatx="1" + image="pledit.button.toggle.normal" + hoverImage="pledit.button.toggle.hover" + downImage="pledit.button.toggle.down" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" + tooltip="Collapse Playlist" + /> + <togglebutton id="player.playlist.enlarge" + x="-32" y="0" relatx="1" + image="pledit.button.toggle.normal" + hoverImage="pledit.button.toggle.hover" + downImage="pledit.button.toggle.down" + cfgattrib="{0167CFD9-5D35-404a-8F03-80ED5B89DEDF};Enlarge Playlist" + tooltip="Enlarge Playlist" + /> + + <text id="PLTime" ticker="1" display="PE_Info" + x="157" y="1" h="13" w="-191" relatw="1" + align="center" color="color.display" + bold="1" fontsize="13" antialias="0" move="1" + /> + +</groupdef> + +<!-- Info:Component:Vis --> + +<groupdef id="info.component.vis"> + + <component id="vis" fitparent="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="0" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + +</groupdef> + +<groupdef id="info.component.vis.full"> + + <component id="vis" x="3" w="-6" y="0" h="96" relatw="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="0" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + + <button + image="infocomp.button.vis.cfg.normal" + downImage="infocomp.button.vis.cfg.down" + hoverImage="infocomp.button.vis.cfg.hover" + action="VIS_Menu" + x="1" y="-18" relaty="1" + tooltip="Configure Visualizer" + /> + + <button + image="config.colorthemes.button.prev.normal" + downImage="config.colorthemes.button.prev.down" + hoverImage="config.colorthemes.button.prev.hover" + action="VIS_Prev" + x="31" y="-18" relaty="1" + tooltip="Previous Visualization Preset" + /> + + <ToggleButton + id="vis.rnd" + image="infocomp.button.vis.rnd.normal" + downImage="infocomp.button.vis.rnd.down" + hoverImage="infocomp.button.vis.rnd.hover" + x="62" y="-18" relaty="1" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <button + image="config.colorthemes.button.next.normal" + downImage="config.colorthemes.button.next.down" + hoverImage="config.colorthemes.button.next.hover" + action="VIS_Next" + x="93" y="-18" relaty="1" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.rnd.active" + x="58" y="-25" h="25" w="41" relaty="1" + ActiveImage="infocomp.button.vis.rnd.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="scripts/syncbutton.maki" param="vis.rnd;vis.rnd.active" /> + +</groupdef> + +<!-- Info:Component:Cover --> + +<groupdef id="info.component.Cover"> + + <AlbumArt id="winamp.albumart" fitparent="1" move="1" rectrgn="1" notfoundImage="winamp.cover.notfound.84x84"/> + <script file="scripts/albumart.maki" param="winamp.albumart,winamp.cover.notfound.84x84"/> + +</groupdef> + +<groupdef id="info.component.Cover2"> + + <AlbumArt id="winamp.albumart" fitparent="1" move="1" rectrgn="1" notfoundImage="winamp.cover.notfound.xxl"/> + <script file="scripts/albumart.maki" param="winamp.albumart,winamp.cover.notfound.xxl"/> + +</groupdef> + +<!-- Info:Component:EQ --> + +<groupdef id="info.component.eq.content"> + + <layer x="0" y="0" image="equalizer.background" ghost="1" /> + + <layer id="frequency.labels" x="0" y="85" image="equalizer.labels.winamp" ghost="1" /> + + <slider + id="sCrossfade" + cfgattrib="{F1239F09-8CC6-4081-8519-C2AE99FCB14C};Crossfade time" + high="20" ghost="1" visible="0" + x="3" y="3" + w="2" h="2" + /> + + <togglebutton + id="Crossfade" + x="4" y="4" + image="equalizer.button.xfade.normal" + downImage="equalizer.button.xfade.down" + hoverImage="equalizer.button.xfade.hover" + tooltip="Toggle Crossfading Between Tracks" + cfgattrib="{FC3EAF78-C66E-4ED2-A0AA-1494DFCC13FF};Enable crossfading" + /> + + <layer id="CrossfadeActive" x="1" y="1" image="equalizer.button.xfade.active" visible="0" ghost="1"/> + + <layer + image="equalizer.xfade.display" + x="41" y="4" move="0" + /> + + <button + id="CrossfadeDecrease" + image="equalizer.button.decrease.normal" + downImage="equalizer.button.decrease.down" + hoverImage="equalizer.button.decrease.hover" + x="29" y="4" + tooltip="Decrease Crossfade Time" + /> + <button + id="CrossfadeIncrease" + image="equalizer.button.increase.normal" + downImage="equalizer.button.increase.down" + hoverImage="equalizer.button.increase.hover" + x="59" y="4" + tooltip="Increase Crossfade Time" + /> + + <text + id="CFDisplay" + x="41" y="7" w="19" h="5" + align="center" + valign="top" + fontsize="5" font="player.bitmapfont.songinfo" + text="00" + /> + + <layer x="95" y="6" w="78" h="10" image="equalizer.slider.balance.background" move="0" /> + <slider + id="Balance" + action="PAN" + x="95" y="6" + w="79" h="10" + thumb="equalizer.slider.balance.normal" + downThumb="equalizer.slider.balance.down" + hoverThumb="equalizer.slider.balance.hover" + tooltip="Balance" + /> + + <layer x="4" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="preamp" + action="EQ_BAND" param="preamp" + x="4" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="Preamp" + orientation="vertical" + /> + + <layer x="29" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq1" + action="EQ_BAND" param="1" + x="29" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="70 Hz" + orientation="vertical" + /> + + <layer x="45" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq2" + action="EQ_BAND" param="2" + x="45" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="180 Hz" + orientation="vertical" + /> + + <layer x="61" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq3" + action="EQ_BAND" param="3" + x="61" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="320 Hz" + orientation="vertical" + /> + + <layer x="77" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq4" + action="EQ_BAND" param="4" + x="77" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="600 Hz" + orientation="vertical" + /> + + <layer x="93" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq5" + action="EQ_BAND" param="5" + x="93" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="1 KHz" + orientation="vertical" + /> + + <layer x="109" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq6" + action="EQ_BAND" param="6" + x="109" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="3 KHz" + orientation="vertical" + /> + + <layer x="125" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq7" + action="EQ_BAND" param="7" + x="125" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="6 KHz" + orientation="vertical" + /> + + <layer x="141" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq8" + action="EQ_BAND" param="8" + x="141" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="12 KHz" + orientation="vertical" + /> + + <layer x="157" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq9" + action="EQ_BAND" param="9" + x="157" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="14 KHz" + orientation="vertical" + /> + + <layer x="173" y="26" w="11" h="55" image="equalizer.slider.eqband.background" move="0" /> + <slider + id="eq10" + action="EQ_BAND" param="10" + x="173" y="26" + w="11" h="55" + thumb="equalizer.slider.eqband.normal" + downThumb="equalizer.slider.eqband.down" + hoverThumb="equalizer.slider.eqband.hover" + tooltip="16 KHz" + orientation="vertical" + /> + + <button + id="EQ_p12" + x="16" y="31" + w="12" h="7" + rectrgn="1" + /> + + <button + id="EQ_0" + x="16" y="49" + w="12" h="7" + rectrgn="1" + /> + + <button + id="EQ_m12" + x="16" y="67" + w="12" h="7" + rectrgn="1" + /> + +</groupdef> + +<groupdef id="info.component.eq"> + + <group id="info.component.eq.content" x="0" y="0" h="92" w="188" /> + + <button + id="eqonoff" + image="equalizer.button.eqon.normal" + downImage="equalizer.button.eqon.down" + hoverImage="equalizer.button.eqon.hover" + action="EQ_TOGGLE" + x="1" y="-18" relaty="1" + tooltip="EQ on/off" + /> + <button id="eqonoffActive" x="0" y="-24" h="23" w="33" relaty="1" activeImage="equalizer.button.eqon.active" visible="1" ghost="1" action="EQ_TOGGLE"/> + + <button + id="eqauto" + image="equalizer.button.auto.normal" + downImage="equalizer.button.auto.down" + hoverImage="equalizer.button.auto.hover" + action="EQ_AUTO" + x="31" y="-18" relaty="1" + tooltip="EQ auto" + /> + + <button id="eqautoActive" x="29" y="-24" h="23" w="44" relaty="1" activeImage="equalizer.button.auto.active" visible="1" ghost="1" action="EQ_AUTO"/> + + <button + id="eqpresets" + image="equalizer.button.presets.normal" + downImage="equalizer.button.presets.down" + hoverImage="equalizer.button.presets.hover" + action="MENU" param="presets" + x="70" y="-18" relaty="1" + tooltip="Open presets" + /> + + <script file="scripts/eq.maki" /> + +</groupdef> + +<!-- Info:Component:InfoDisplay --> + +<groupdef id="infodisplay.line.rating.stars" > + + <button id="rate.1" x="0" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.1" ghost="1" + x="0" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.2" x="11" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.2" ghost="1" + x="11" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.3" x="22" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.3" ghost="1" + x="22" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.4" x="33" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.4" ghost="1" + x="33" y="0" visible="0" + image="infocomp.rating.hover" + /> + + <button id="rate.5" x="44" y="0" rectrgn="1" + image="infocomp.rating.empty" + activeimage="infocomp.rating.star" + downimage="infocomp.rating.star" + /> + <layer id="star.5" ghost="1" + x="44" y="0" visible="0" + image="infocomp.rating.hover" + /> + +</groupdef> + +<groupdef id="infodisplay.line.rating" > + + <Text + id="label" + x="0" y="-2" w="0" relatw="1" h="20" + text="Rating:" + color="color.display" bold="1" fontsize="16" alpha="180" valign="bottom" antialias="1" + /> + + <group id="infodisplay.line.rating.stars" x="0" y="2" w="0" relatw="1" /> + + <button id="rate.0" x="0" y="0" h="20" w="0" rectrgn="1" tooltip="Remove Rating"/> + +</groupdef> + +<!-- +Params for <Bento:InfoLine/> +label="sometext" displayed as label +shift="someint" how much pixels text will be moved right (call before text!) +text="sometext" displayed as line text +link="sometext" displayed as hover tooltip +--> + +<groupdef id="bento.infodisplay.line" embed_xui="text" xuitag="Bento:InfoLine"> + + <Text id="label" + x="0" y="-2" w="0" relatw="1" h="20" + text="Error:" + color="color.display" bold="1" fontsize="16" alpha="180" valign="bottom" antialias="1" + /> + + <Text id="text" + x="0" y="-2" w="0" relatw="1" h="20" + color="color.display" bold="0" fontsize="16" valign="bottom" antialias="0" ticker="1" translate="0" alpha="253" + /> + +// <layer id="link" x="0" y="0" h="15" w="0" relatw="1" rectrgn="1" move="0" cursor="IDC_HAND"/> + <layer id="link" x="0" y="0" h="15" w="0" relatw="1" rectrgn="1" move="0"/> + + <script file="scripts/infoline.maki" /> + +</groupdef> + + +<groupdef id="info.component.infodisplay"> + + <group id="infodisplay.line.rating" x="0" y="0" w="0" relatw="1" h="15" visible="0" /> + + <Bento:InfoLine id="infodisplay.line.title" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Title:"/> + <!--link="Click to Search Title" label="Title:"/>--> + + <Bento:InfoLine id="infodisplay.line.artist" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Artist:"/> + <!--link="Click to Search Artist" label="Artist:"/>--> + + <Bento:InfoLine id="infodisplay.line.album" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Album:"/> + <!--link="Click to Search Album" label="Album:"/>--> + + <Bento:InfoLine id="infodisplay.line.track" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Track:"/> + <!--link="Click to Show More Information" label="Track:"/>--> + + <Bento:InfoLine id="infodisplay.line.year" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Year:"/> + <!--link="Click to Show More Information" label="Year:"/>--> + + <Bento:InfoLine id="infodisplay.line.genre" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Genre:"/> + <!--link="Click to Show More Information" label="Genre:"/>--> + + + <Bento:InfoLine id="infodisplay.line.publisher" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Publisher:"/> + <!--link="Click to Show More Information" label="Publisher:"/>--> + + <Bento:InfoLine id="infodisplay.line.composer" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Composer:"/> + <!--link="Click to Show More Information" label="Composer:"/>--> + + <Bento:InfoLine id="infodisplay.line.format" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Decoder:"/> + <!--link="Click to Show More Information" label="Decoder:"/>--> + + <Bento:InfoLine id="infodisplay.line.sname" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Stream:"/> + <!--link="Visit Station Homepage" label="Stream:"/>--> + + <Bento:InfoLine id="infodisplay.line.surl" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Homepage:"/> + <!--link="Visit Station Homepage" label="Homepage:"/>--> + + <Bento:InfoLine id="infodisplay.line.albumartist" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Album Artist:"/> + <!--link="Click to Show More Information" label="Album Artist:"/>--> + + <Bento:InfoLine id="infodisplay.line.disc" x="0" y="0" w="0" relatw="1" h="15" visible="0" + label="Disc:"/> + <!--link="Click to Show More Information" label="Disc:"/>--> + + <script file="scripts/fileinfo.maki" param="@HAVE_LIBRARY@,6" /> + +</groupdef> + +<!-- Info:Component:PLSideCar --> + +<groupdef id="info.component.plsidecar"> + + <PlaylistDirectory fitparent="1" antialias="0" fontsize="16"/> + +</groupdef> + +<groupdef id="info.component.coverflow"> + + <!--button id="coverflow.prev" + x="0" y="-18" relaty="1" + image="config.colorthemes.button.prev2.normal" + hoverImage="config.colorthemes.button.prev2.hover" + downImage="config.colorthemes.button.prev2.down" + tooltip="Scroll backwards in Playlist" + /> + + <button id="coverflow.next" + x="30" y="-18" relaty="1" + image="config.colorthemes.button.next.normal" + hoverImage="config.colorthemes.button.next.hover" + downImage="config.colorthemes.button.next.down" + tooltip="Scroll forwards in Playlist" + /--> + + <text id="info" nograbb="1" move="0" + x="64" y="-16" relaty="1" h="12" w="-130" relatw="1" + align="center" color="color.display" fontsize="12" valign="top" bold="2" ghost="1" + /> + + <group id="info.component.coverflow.g" x="0" y="2" h="-1" relath="1" w="368" /> + +</groupdef> + +<!-- Info:Instance --> + +<groupdef id="infocomp.visbuttons"> + + <button + id="vis.cfg" + image="infocomp.button.vis.cfg2.normal" + downImage="infocomp.button.vis.cfg2.down" + hoverImage="infocomp.button.vis.cfg2.hover" + action="VIS_Menu" + x="0" y="7" + tooltip="Configure Visualizer" + /> + + <button + id="vis.prv" + image="config.colorthemes.button.prev.normal" + downImage="config.colorthemes.button.prev.down" + hoverImage="config.colorthemes.button.prev.hover" + action="VIS_Prev" + x="31" y="7" + tooltip="Previous Visualization Preset" + /> + + <ToggleButton + id="vis.rnd" + image="infocomp.button.vis.rnd.normal" + downImage="infocomp.button.vis.rnd.down" + hoverImage="infocomp.button.vis.rnd.hover" + x="62" y="7" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <button + id="vis.nxt" + image="config.colorthemes.button.next.normal" + downImage="config.colorthemes.button.next.down" + hoverImage="config.colorthemes.button.next.hover" + action="VIS_Next" + x="93" y="7" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.rnd.active" + x="58" y="0" h="25" w="41" + ActiveImage="infocomp.button.vis.rnd.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="scripts/syncbutton.maki" param="vis.rnd;vis.rnd.active" /> + <script file="scripts/visbuttons.maki" /> +</groupdef> + +<groupdef id="infocomp.background.footer.over"> + + <layer move="0" ghost="1" + x="0" y="0" + image="infocomp.background.buttons.left.over" + /> + +</groupdef> + +<groupdef id="infocomp.background.footer"> + + <grid + id="footer.background.grid" move="1" + x="0" y="7" h="17" w="0" relatw="1" + middle="pledit.background.buttons.center" + right="pledit.background.buttons.right" + /> + + <group id="infocomp.background.footer.over" x="0" y="7" w="-5" relatw="1" /> + + <group x="0" y="0" h="25" w="0" relatw="1" id="infocomp.visbuttons" /> + +</groupdef> + +<groupdef id="info.component.holder"> + + <grid fitparent="1" move="1" + topleft="infocomp.background.topleft" + top="infocomp.background.top" + topright="infocomp.background.topright" + left="infocomp.background.left" + middle="infocomp.background.center" + right="infocomp.background.right" + bottomleft="infocomp.background.bottomleft" + bottom="infocomp.background.bottom" + bottomright="infocomp.background.bottomright" + /> + + <group x="6" y="-25" h="25" w="-8" relatw="1" relaty="1" id="infocomp.background.footer" /> + + <group id="info.component.cover" x="4" y="4" h="111" w="111"/> + <group id="info.component.vis" x="4" y="4" h="111" w="111"/> + <group id="info.component.vis.full" x="0" y="3" h="116" w="0" relatw="1" visible="0"/> + <group id="info.component.eq" x="0" y="0" h="119" w="0" relatw="1" visible="0"/> + <group id="info.component.config" x="1" y="1" h="118" w="-2" relatw="1" visible="0"/> + <group id="info.component.plsidecar" x="2" y="2" h="99" w="-4" relatw="1" visible="0"/> + + <layer id="branding" visible="0" move="1" ghost="1" + x="0" y="48" h="24" w="100" image="infocomp.branding" + /> + + <group id="info.component.infodisplay" x="80" y="3" h="-19" relath="1" w="-143" relatw="1" /> + + <button + id="comp.menu" + x="-33" y="-18" relatx="1" relaty="1" + image="infocomp.button.toggle.normal" + hoverImage="infocomp.button.toggle.hover" + downImage="infocomp.button.toggle.down" + tooltip="Change the content this area holds" + /> + + <button + id="sendTo" + x="-64" y="-18" relatx="1" relaty="1" + action="ML_SendTo" + image="infocomp.button.more.normal" + hoverImage="infocomp.button.more.hover" + downImage="infocomp.button.more.down" + tooltip="Send this file to..." + anchor_menu="bottomleft" + /> + +<!-- <button + id="search" + x="-95" y="-18" relatx="1" relaty="1" + image="infocomp.button.blank.normal" + hoverImage="infocomp.button.blank.hover" + downImage="infocomp.button.blank.down" + tooltip="Search the web for this artist" + anchor_menu="bottomleft" + /> + <layer id="search.icon.bg" x="-95" y="-18" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.bg" /> + <script file="scripts/syncbutton.maki" param="search;search.icon.bg"/> + <layer id="search.icon" x="-95" y="-18" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.search" /> + <script file="scripts/syncbutton.maki" param="search;search.icon"/> + + <button + id="nowplaying" + x="-126" y="-18" relatx="1" relaty="1" + image="infocomp.button.blank.normal" + hoverImage="infocomp.button.blank.hover" + downImage="infocomp.button.blank.down" + tooltip="More information about this artist" + anchor_menu="bottomleft" + /> + <layer id="nowplaying.icon.bg" x="-126" y="-18" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.bg" /> + <script file="scripts/syncbutton.maki" param="nowplaying;nowplaying.icon.bg"/> + <layer id="nowplaying.icon" x="-126" y="-18" relatx="1" ghost="1" relaty="1" image="infocomp.button.icon.nowplaying" /> + <script file="scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> +--> + <script file="scripts/shadelinks.maki"/> + + <!--script file="scripts/componentregion.maki" param="comp.menu" /--> + + <!--layer id="osd.trigger" fitparent="1" rectrgn="1" ghost="0"/--> + + <script file="scripts/mcvcore.maki" param="big"/> +</groupdef> + +<groupdef id="player.component.fileinfo"> + + <group id="info.component.holder" x="0" y="0" h="119" w="0" relatw="1"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-normal-sui.xml b/Src/resources/skins/Big Bento/xml/player-normal-sui.xml new file mode 100644 index 00000000..6473e3a5 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-normal-sui.xml @@ -0,0 +1,317 @@ +<!-- SUI:Component:Browser --> + +<!-- <groupdef id="wdh.browser"> + + <Winamp:Browser x="0" y="1" h="-1" w="0" relatw="1" relath="1" id="sui.component.browser"/> + +</groupdef> --> + +<!-- SUI:Component:MediaLibrary --> + +<groupdef id="wdh.ml"> + + <windowholder id="wdh" x="3" y="4" w="-5" h="-4" relath="1" relatw="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}"/> + +</groupdef> + +<!-- SUI:Component:Video --> + +<groupdef id="wdh.video.resizable"> + + <rect id="bg" color="0,0,0" fitparent="1" filled="1" rectrgn="1"/> + + <rect id="wdh.outer" x="4" y="4" w="-8" relatw="1" h="-8" relath="1" color="80,80,80"/> + + <rect id="wdh.drag" x="-5" y="-5" relatx="1" relaty="1" h="5" w="5" filled="1" color="100,100,100" cursor="IDC_SIZENWSE"/> + + <windowholder id="wdh" x="5" y="5" w="-10" relatw="1" h="-10" relath="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}"/> + + <script file="scripts/videoresize.maki"/> + +</groupdef> + +<groupdef id="wdh.video"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <group id="wdh.video.resizable" x="1" y="5" w="-2" relatw="1" h="-29" relath="1" /> + + <Button action="VID_FS" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.fullscreen.normal" + hoverImage="video.button.fullscreen.hover" + downImage="video.button.fullscreen.down" + tooltip="Fullscreen" + /> + + <Button action="VID_1X" + x="29" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.1x.normal" + hoverImage="video.button.1x.hover" + downImage="video.button.1x.down" + tooltip="Normal Size" + /> + + <Button action="VID_2X" + x="54" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.2x.normal" + hoverImage="video.button.2x.hover" + downImage="video.button.2x.down" + tooltip="Double Size" + /> + + <!--<Button action="VID_TV" + x="80" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.itv.normal" + hoverImage="video.button.itv.hover" + downImage="video.button.itv.down" + tooltip="Internet TV" + />--> + + <NStatesButton nstates="2" + x="-53" relatx="1" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.pin.normal" + hoverImage="video.button.pin.hover" + downImage="video.button.pin.down" + tooltip="Enable Video in Window resizing" + cfgattrib="{E704AB5A-108E-4309-B54B-43EBA5C0C3AA};Enable Video in Window resizing" + /> + + <Button action="VID_Misc" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="video.button.cfg.normal" + hoverImage="video.button.cfg.hover" + downImage="video.button.cfg.down" + tooltip="Video Options" + /> + + <text id="info" display="VID_Info" ticker="1" + x="105" y="-18" relaty="1" h="13" w="-161" relatw="1" + align="center" color="color.window.txt" + /> + +</groupdef> + +<groupdef id="wdh.pl"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <group id="playlistpro" y="1" h="-23" x="2" w="-3" relath="1" relatw="1"/> + + <Wasabi:Button action="PE_Add" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.add" + center_image="1" + tooltip="Add Files to Playlist" + /> + + <Wasabi:Button action="PE_Rem" + x="29" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.rem" + center_image="1" + tooltip="Remove Files from Playlist" + /> + + <Wasabi:Button action="PE_Sel" + x="54" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.sel" + center_image="1" + tooltip="Select Files in Playlist" + /> + + <Wasabi:Button action="PE_Misc" + x="79" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.misc" + center_image="1" + tooltip="Misc Actions" + /> + + <Wasabi:Button action="PE_List" + x="104" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="pledit.tab.button.manage" + center_image="1" + tooltip="Manage Playlist" + /> + + <Wasabi:Button id="pe.move.top" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="pledit.tab.button.up" + center_image="1" + tooltip="Restore original Playlist position" + /> + + <text id="info" display="PE_Info" ticker="1" + x="131" y="-18" relaty="1" h="13" w="-161" relatw="1" + align="center" color="color.window.txt" + /> + +</groupdef> + +<!-- SUI:Component:Visualization --> + +<groupdef id="wdh.vis"> + + <layer x="1" y="4" h="1" w="-2" relatw="1" image="sui.component.bottom2" move="0" alpha="180"/> + <layer x="1" y="-24" relaty="1" h="1" w="-2" relatw="1" image="sui.component.top2" move="0" /> + + <rect id="bg" color="0,0,0" x="1" y="5" w="-2" relatw="1" h="-29" relath="1" filled="1" rectrgn="1"/> + + <windowholder id="wdh.vis.object" x="1" y="5" w="-2" relatw="1" h="-29" relath="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="0" visible="1" hold="guid:{0000000A-000C-0010-FF7B-01014263450C}"/> + + <Button action="VIS_FS" + x="4" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="video.button.fullscreen.normal" + hoverImage="video.button.fullscreen.hover" + downImage="video.button.fullscreen.down" + tooltip="Fullscreen" + /> + + <Button action="VIS_Prev" + x="29" y="-21" h="21" w="21" relaty="1" rectrgn="1" + image="vis.button.prev.normal" + hoverImage="vis.button.prev.hover" + downImage="vis.button.prev.down" + tooltip="Previous Visualization Preset" + /> + + <Button action="VIS_Next" + x="51" y="-21" h="21" w="21" relaty="1" rectrgn="1" + image="vis.button.next.normal" + hoverImage="vis.button.next.hover" + downImage="vis.button.next.down" + tooltip="Next Visualization Preset" + /> + + <ToggleButton id="vis.random" + x="74" y="-21" h="21" w="24" relaty="1" rectrgn="1" + image="vis.button.random.normal" + hoverImage="vis.button.random.hover" + downImage="vis.button.random.down" + tooltip="Randomly change Visualization Presets" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <ToggleButton id="vis.random.active" + x="74" y="-21" h="21" w="24" relaty="1" rectrgn="1" + ActiveImage="vis.button.random.active" + ghost="1" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + /> + + <script file="scripts/syncbutton.maki" param="vis.random;vis.random.active" /> + + <Button action="VIS_Menu" + x="-52" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="vis.button.presets.normal" + hoverImage="vis.button.presets.hover" + downImage="vis.button.presets.down" + tooltip="Presets" + /> + + <Button action="VIS_Cfg" + x="-27" y="-21" h="21" w="24" relaty="1" relatx="1" rectrgn="1" + image="video.button.cfg.normal" + hoverImage="video.button.cfg.hover" + downImage="video.button.cfg.down" + tooltip="Preset Editor / Options" + /> + +</groupdef> + +<groupdef id="sui.components"> + + <group id="wdh.ml" fitparent="1" visible="0" /> + <group id="wdh.pl" fitparent="1" visible="0" /> + <group id="wdh.vis" fitparent="1" visible="0" /> + <group id="wdh.video" fitparent="1" visible="0" /> + <!-- <group id="wdh.browser" fitparent="1" visible="0" /> --> + +</groupdef> + +<!-- +Params for <Bento:TabButton/> +text="sometext" +the object itself is a button. +--> + +<groupdef id="bento.tabbutton" xuitag="Bento:TabButton" embed_xui="bento.tabbutton.mousetrap"> + + <grid id="bento.tabbutton.normal" + fitparent="1" y="0" h="-1" relath="1" visible="1" + left="sui.button.inactive.normal.left" + middle="sui.button.inactive.normal.center" + right="sui.button.inactive.normal.right" + /> + + <text id="bento.tabbutton.normal.text" x="8" y="4" w="-17" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="14" antialias="0" visible="1" color="color.tabbutton.text.inactive" shadow="1" shadowcolor="color.tabbutton.text.inactive.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.hover" + fitparent="1" y="0" h="-1" relath="1" visible="0" + left="sui.button.inactive.hover.left" + middle="sui.button.inactive.hover.center" + right="sui.button.inactive.hover.right" + /> + + <text id="bento.tabbutton.hover.text" x="8" y="4" w="-17" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="14" antialias="0" visible="0" color="color.tabbutton.text.inactive.hover" shadow="1" shadowcolor="color.tabbutton.text.inactive.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.active" + fitparent="1" y="0" h="-1" relath="1" visible="0" + left="sui.button.active.normal.left" + middle="sui.button.active.normal.center" + right="sui.button.active.normal.right" + /> + + <text id="bento.tabbutton.active.text" x="8" y="4" w="-17" relatw="1" h="15" bold="1" align="center" font="Tahoma" fontsize="14" antialias="0" visible="0" color="color.tabbutton.text.active" shadow="1" shadowcolor="color.tabbutton.text.active.shadow" shadowx="0" shadowy="1"/> + + <grid id="bento.tabbutton.footer" + x="0" y="-1" h="1" w="0" relatw="1" relaty="1" visible="0" + left="sui.button.active.footer.left" + middle="sui.button.active.footer.center" + right="sui.button.active.footer.right" + /> + + <button id="bento.tabbutton.mousetrap" fitparent="1" y="1" h="-1" relath="1" rectrgn="1"/> + + <script file="scripts/tabbutton.maki" /> + +</groupdef> + +<groupdef id="sui.content" > + + <grid fitparent="1" move="1" + topleft="sui.background.topleft" + top="sui.background.top" + topright="sui.background.topright" + left="sui.background.left" + middle="sui.background.center" + right="sui.background.right" + bottomleft="sui.background.bottomleft" + bottom="sui.background.bottom" + bottomright="sui.background.bottomright" + /> + + <grid x="1" y="29" h="-30" w="-2" relath="1" relatw="1" + topleft="sui.component.topleft" + top="sui.component.top" + topright="sui.component.topright" + left="sui.component.left" + middle="sui.component.center" + right="sui.component.right" + bottomleft="sui.component.bottomleft" + bottom="sui.component.bottom" + bottomright="sui.component.bottomright" + /> + + <Bento:TabButton id="switch.ml" x="4" h="23" w="112" y="7" tabtext="Media Library"/> + <Bento:TabButton id="switch.pl" x="117" h="23" w="62" y="7" tabtext="Playlist"/> + <Bento:TabButton id="switch.video" x="117" h="23" w="62" y="7" tabtext="Video"/> + <Bento:TabButton id="switch.vis" x="180" h="23" w="109" y="7" tabtext="Visualization"/> + <!-- <Bento:TabButton id="switch.browser" x="290" h="23" w="83" y="7" tabtext="Browser"/> --> + + <script file="scripts/tabcontrol.maki" param="@HAVE_LIBRARY@"/> + + <group id="sui.components" x="1" y="29" h="-32" w="-2" relatw="1" relath="1"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-normal.xml b/Src/resources/skins/Big Bento/xml/player-normal.xml new file mode 100644 index 00000000..1092016d --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-normal.xml @@ -0,0 +1,80 @@ +<include file="player-normal-group.xml"/> +<include file="player-normal-sui.xml"/> +<include file="player-normal-mcv.xml"/> + +<layout id="normal" minimum_h="492" minimum_w="633" h="600" w="800" appbar="top|bottom" > + + <!-- Background Outfit --> + + <group id="window.background.regions" fitparent="1" sysregion="1" /> + + <layer id="window.background.maximize" fitparent="1" image="window.background.maximized" sysregion="1" visible="0"/> + + <layer x="0" y="23" w="5" h="5" image="window.background.topleft" resize="left" regionop="1"/> + <layer x="5" y="23" w="-10" relatw="1" h="5" image="window.background.top" regionop="1"/> + <layer x="-5" relatx="1" y="23" w="5" h="5" image="window.background.topright" resize="right" regionop="1"/> + <layer x="0" y="28" w="5" h="-33" relath="1" image="window.background.left" resize="left" regionop="1"/> + <layer x="5" y="28" w="-10" relatw="1" h="-33" relath="1" image="window.background.center" move="0" regionop="1"/> + <layer x="-5" relatx="1" y="28" w="5" h="-33" relath="1" image="window.background.right" resize="right" regionop="1"/> + <layer x="0" y="-5" relaty="1" w="5" h="5" image="window.background.bottomleft" resize="bottomleft" id="player.resizer.bottomleft" regionop="1"/> + <layer x="5" y="-5" relaty="1" w="-100" relatw="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom" regionop="1"/> + <layer x="-95" y="-15" relaty="1" w="44" relatx="1" h="15" image="window.background.collapse" resize="bottom" id="player.resizer.collapse" regionop="1"/> + <layer x="-51" y="-5" relaty="1" w="46" relatx="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom2" regionop="1"/> + <layer x="-5" relatx="1" y="-5" relaty="1" w="5" h="5" image="window.background.bottomright" regionop="1"/> + <layer x="-26" y="-15" w="19" h="10" relaty="1" relatx="1" image="window.background.resizer" id="player.resizer.bottomright" rectrgn="1" regionop="1"/> + + <layer id="player.resizer.disable" x="0" y="23" h="-23" w="0" relath="1" relatw="1" rectrgn="1" move="0"/> + + <layer x="2" y="24" image="window.background.gradient" move="0" ghost="1"/> + + <group id="focus.dummy" x="5" w="-10" relatw="1" y="23" h="-28" relath="1" rectrgn="1" wantfocus="1" move="1"/> + + <layer x="-26" y="-15" w="26" h="15" relaty="1" relatx="1" resize="bottomright" id="player.resizer.bottomright.dummy" rectrgn="1" /> + + <group x="0" y="0" h="23" w="0" relatw="1" id="player.titlebar" sysregion="1" wantfocus="1" rectrgn="1"/> + + <Wasabi:Frame id="player.mainframe.big" x="6" y="27" w="-12" relath="0" h="122" from="left" relatw="1" orientation="v" maxwidth="-300" left="player.layout" right="player.dualwnd.pl.info" minwidth="290" width="290" jump="none" vgrabber="empty" vbitmap="empty"/> + + <layer id="player.mainframe.grabber" ghost="1" x="295" y="27" h="119" w="8" image="wasabi.framewnd.verticaldivider" move="1"/> + + <layer id="bolt.glow" x="246" y="115" image="player.button.bolt.glow" alpha="0" ghost="1"/> + <button + id="bolt" + action="TOGGLE" param="guid:{D6201408-476A-4308-BF1B-7BACA1124B12}" + x="246" y="122" + image="player.button.bolt.normal" + downImage="player.button.bolt.down" + hoverImage="player.button.bolt.hover" + /> + + <script file="scripts/pledit.maki" param="big"/> + + <group id="sui.content" x="6" y="154" h="-174" relath="1" w="-12" relatw="1" sysregion="1" wantfocus="1"/> + + <button + id="sui.show" regionop="1" + x="-95" w="44" y="-15" h="15" relatx="1" relaty="1" + image="window.button.expand.normal" + hoverImage="window.button.expand.hover" + downImage="window.button.expand.down" + tooltip="Expand Window" + /> + <button + id="sui.hide" regionop="1" + x="-95" w="44" y="-15" h="15" relatx="1" relaty="1" + image="window.button.collapse.normal" + hoverImage="window.button.collapse.hover" + downImage="window.button.collapse.down" + tooltip="Collapse Window" + /> + + <script file="scripts/suicore.maki" param="166"/> + <!-- The main machine, + param - height of main wnd if you hide the sui + --> + + <groupdef id="playlistpro"> + <PlaylistPro id="centro.windowholder.playlist1" x="0" y="0" h="0" w="0" relath="1" relatw="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="1"/> + </groupdef> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player-shade.xml b/Src/resources/skins/Big Bento/xml/player-shade.xml new file mode 100644 index 00000000..29ed5d28 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player-shade.xml @@ -0,0 +1,340 @@ +<groupdef id="shade.cbuttons"> + + <Button id="Prev" + x="0" y="0" h="16" w="14" rectrgn="1" + image="shade.button.previous.normal" + hoverImage="shade.button.previous.hover" + downImage="shade.button.previous.down" + action="PREV" tooltip="Previous Track" + /> + + <Button id="Play" + x="14" y="0" h="16" w="12" rectrgn="1" + image="shade.button.play.normal" + hoverImage="shade.button.play.hover" + downImage="shade.button.play.down" + action="PLAY" tooltip="Play" + /> + + <Button id="Pause" + x="26" y="0" h="16" w="12" rectrgn="1" + image="shade.button.pause.normal" + hoverImage="shade.button.pause.hover" + downImage="shade.button.pause.down" + action="PAUSE" tooltip="Pause Playback" + /> + + <Button id="Stop" + x="38" y="0" h="16" w="14" rectrgn="1" + image="shade.button.stop.normal" + hoverImage="shade.button.stop.hover" + downImage="shade.button.stop.down" + action="STOP" tooltip="Stop Playback" + /> + + <Button id="Next" + x="52" y="0" h="16" w="14" rectrgn="1" + image="shade.button.next.normal" + hoverImage="shade.button.next.hover" + downImage="shade.button.next.down" + action="NEXT" tooltip="Next Track" + /> + + <Button id="Eject" + x="72" y="0" h="16" w="15" rectrgn="1" + image="shade.button.eject.normal" + hoverImage="shade.button.eject.hover" + downImage="shade.button.eject.down" + action="EJECT" tooltip="Open File(s)" + /> +</groupdef> + +<groupdef id="shade.display"> + + <grid + x="0" y="0" h="18" w="-6" relatw="1" ghost="1" + left="shade.display.left" + middle="shade.display.middle" + right="shade.display.right" + /> + + <text id="SongTime" + x="3" y="7" h="5" w="35" relatw="0" timeroffstyle="1" timecolonwidth="6" + display="time" align="left" font="player.bitmapfont.songinfo" + /> + + <SongTicker id="Songticker" nograbb="1" move="1" + x="0" y="2" h="12" w="-8" relatw="1" + display="SONGTITLE" showlen="1" ticker="1" rightpadding="-3" + rightclickaction="trackmenu" dblclickaction="trackinfo" align="right" + color="color.display" fontsize="12" valign="top" bold="2" + /> + <text id="InfoDisplay" nograbb="1" move="1" + x="0" y="2" h="12" w="-8" relatw="1" offsetx="-3" + align="right" color="color.display" fontsize="12" valign="top" bold="2" ghost="1" + /> + + <script file="scripts/songticker.maki" param="5,big" /> + +</groupdef> + +<groupdef id="shade.vis"> + + <grid + x="0" y="0" h="18" w="-6" relatw="1" ghost="1" + left="shade.display.left" + middle="shade.display.middle" + right="shade.display.right" + /> + + <vis + id="main.vis" + x="4" y="4" + w="54" h="9" + colorbandpeak="162,193,204" + colorband1="82,97,102" + colorband2="74,88,93" + colorband3="78,92,97" + colorband4="83,97,104" + colorband5="88,102,107" + colorband6="94,107,112" + colorband7="100,113,118" + colorband8="106,120,125" + colorband9="112,121,131" + colorband10="117,131,136" + colorband11="122,137,142" + colorband12="127,141,146" + colorband13="131,145,150" + colorband14="136,150,155" + colorband15="140,154,159" + colorband16="145,159,164" + colorosc1="82,97,102" + colorosc2="83,97,104" + colorosc3="106,120,125" + colorosc4="127,141,146" + colorosc5="145,159,164" + gammagroup="Displaytext" + /> + + <layer id="main.vis.trigger" x="2" y="3" h="11" w="58" rectrgn="1"/> + + <script file="scripts/visualizer.maki"/> + +</groupdef> + +<groupdef id="shade.volume"> + + <button id="mute" x="0" y="0" w="16" h="16" + image="shade.button.mute.normal" + hoverImage="shade.button.mute.hover" + downImage="shade.button.mute.down" + tooltip="Mute Volume" + /> + <button id="etum" x="0" y="0" w="16" h="16" + image="shade.button.demute.normal" + hoverImage="shade.button.demute.hover" + downImage="shade.button.demute.down" + tooltip="Turn Volume on" + visible="0" + /> + + <layer id="player.volume.label" x="20" y="1" image="shade.label.volume" ghost="1"/> + + <layer id="shade.volume.bg" + x="17" y="5" h="5" w="40" + image="shade.track.volume" + ghost="1" + /> + + <grid id="player.volume.fill" + x="19" y="7" h="2" w="38" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="Volume" + action="Volume" + x="16" y="4" h="10" w="42" + thumb="shade.volume.thumb.normal" + hoverThumb="shade.volume.thumb.hover" + downThumb="shade.volume.thumb.down" + tooltip="Volume" + /> + + <script file="scripts/mute.maki" param="38"/> + <!-- param = max_w for volume fillbar --> + +</groupdef> + +<groupdef id="shade.seek"> + + <grid id="player.seek.bg" + x="1" y="5" h="5" w="-5" relatw="1" + left="shade.track.seek.left" + middle="shade.track.seek.middle" + right="shade.track.seek.right" + /> + + <ProgressGrid id="progressbar" + x="3" y="7" h="2" w="-7" relatw="1" + orientation="right" + left="player.slider.light.left" + middle="player.slider.light.center" + right="player.slider.light.right" + /> + + <Slider + id="seeker" + action="SEEK" + x="0" y="4" h="10" w="-4" relatw="1" + thumb="shade.seek.thumb.normal" + hoverThumb="shade.seek.thumb.hover" + downThumb="shade.seek.thumb.down" + ghost="1" + visible="0" + tooltip="Seeker" + /> + + <Slider + id="seeker.ghost" + action="SEEK" + x="0" y="4" h="10" w="-4" relatw="1" + thumb="shade.seek.thumb.normal" + hoverThumb="shade.seek.thumb.hover" + downThumb="shade.seek.thumb.down" + tooltip="Seeker" + /> + + <script file="scripts/seek.maki"/> + +</groupdef> + +<groupdef id="shade.links"> + + <rect color="0,0,0" alpha="180" x="0" y="0" w="47" h="21" filled="1"/> + + <button id="search" x="24" y="0" w="22" h="21" + image="shade.button.search.normal" + hoverImage="shade.button.search.hover" + downImage="shade.button.search.down" + tooltip="Search the web for this artist" + /> + <layer id="search.bg" ghost="1" x="24" y="0" image="shade.button.icon.bg" /> + <layer id="search.icon" ghost="1" x="24" y="0" image="shade.button.icon.search" /> + <script file="scripts/syncbutton.maki" param="search;search.bg"/> + <script file="scripts/syncbutton.maki" param="search;search.icon"/> + + <button id="nowplaying" x="1" y="0" w="22" h="21" + image="shade.button.search.normal" + hoverImage="shade.button.search.hover" + downImage="shade.button.search.down" + tooltip="More information about this artist" + /> + <layer id="nowplaying.bg" ghost="1" x="1" y="0" image="shade.button.icon.bg" /> + <layer id="nowplaying.icon" ghost="1" x="1" y="0" image="shade.button.icon.nowplaying" /> + <script file="scripts/syncbutton.maki" param="nowplaying;nowplaying.bg"/> + <script file="scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> + + <script file="scripts/syncbutton.maki" param="nowplaying;nowplaying.icon"/> + + <script file="scripts/shadelinks.maki"/> + +</groupdef> + +<layout id="shade" minimum_w="273" h="23" minimum_h="23" maximum_h="23" w="500" primarycomponent="guid:player" appbar="top|bottom"> + + <!-- Background --> + + <group id="window.background.regions" fitparent="1" sysregion="1" /> + + <layer id="window.background.maximize" fitparent="1" image="window.background.maximized" sysregion="1" visible="0"/> + + <grid + x="0" y="0" h="23" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + <grid + x="0" y="0" h="23" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <layer x="35" y="7" image="window.titlebar.text.winamp" ghost="1" /> + + <guiobject fitparent="1" rectrgn="1" move="1" id="shade.mousetrap"/> + + <!-- System Buttons --> + + <button + x="7" y="5" h="13" w="15" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-84" relatx="1" y="5" h="13" w="17" + id="shade.button.minimize" + action="MINIMIZE" + image="window.titlebar.button.minimize.normal" + hoverImage="window.titlebar.button.minimize.hover" + downImage="window.titlebar.button.minimize.down" + tooltip="Minimize Winamp" + /> + + <button + x="-64" relatx="1" y="5" h="13" w="17" + id="shade.button.restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Winamp" + /> + + <button + x="-64" relatx="1" y="5" h="13" w="17" + id="shade.button.maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Winamp" + /> + + <button + x="-44" relatx="1" y="5" h="13" w="17" + action="SWITCH" param="normal" + image="window.titlebar.button.shade.normal" + hoverImage="window.titlebar.button.shade.hover" + downImage="window.titlebar.button.shade.down" + tooltip="Main Mode" + /> + + <button + x="-24" relatx="1" y="5" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Exit Winamp" + /> + + <layer x="-6" y="2" w="5" h="18" rectrgn="1" relatx="1" resize="right" image="shade.resizer.right" id="shade.resizer.right"/> + <layer x="-6" y="0" w="6" h="23" rectrgn="1" relatx="1" resize="right" id="shade.resizer.right2"/> + + <group id="shade.display" x="163" y="3" w="100" h="18" visible="0"/> + <group id="shade.cbuttons" x="93" y="4" w="96" h="16"/> + <group id="shade.volume" x="163" y="4" w="65" h="16" visible="0"/> + <group id="shade.seek" x="-151" relatx="1" y="4" w="63" h="16" visible="0"/> + <group id="shade.vis" x="96" y="3" w="67" h="16" visible="0"/> + <group id="shade.links" x="0" y="1" w="51" h="21" relatx="1" visible="0"/> + + <script file="scripts/shadesize.maki" param="90" /> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/player.xml b/Src/resources/skins/Big Bento/xml/player.xml new file mode 100644 index 00000000..84559dce --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/player.xml @@ -0,0 +1,64 @@ +<include file="player-elements.xml"/> +<include file="playlistpro.xml"/> + +<container id="main" name="Main Window" primarycomponent="guid:player"> + + <include file="player-normal.xml"/> + <include file="player-shade.xml"/> + +</container> +<!-- +<container id="browser.quicklink.edit.dialog2" name="Edit Quicklink" dynamic="1" default_visible="0" nomenu="1" > + + <groupdef id="browser.quicklink.content"> + + <text x="5" y="3" text="Store Quick Link in:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:Combobox id="edit.parent" x="5" y="20" w="-10" h="20" relatw="1" maxitems="5"/> + + <text x="5" y="43" text="Quick Link Name:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.name" x="5" y="60" w="-10" h="20" relatw="1"/> + + <text x="5" y="83" text="Quick Link URL:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.url" x="5" y="100" w="-10" h="20" relatw="1"/> + + <wasabi:button x="5" y="128" w="-10" h="19" relatw="1" text="OK" id="return.values"/> + + </groupdef> + + <layout id="normal" noparent="1" ontop="1" noactivation="1" minimum_h="194" minimum_w="300" maximum_h="194" maximum_w="300" lockminmax="1" nodock="1" move="0" > + + <Wasabi:StandardFrame:Static + fitparent="1" + regionop="1" + content="browser.quicklink.content" + /> + + </layout> + +</container> + +<container id="browser.submenu.edit2" name="Edit Submenu" dynamic="1" default_visible="0" nomenu="1" > + + <groupdef id="browser.submenu.content"> + + <text x="5" y="2" text="Submenu Name:" color="color.window.txt" ghost="1" antialias="0"/> + + <wasabi:editbox id="edit.name" x="5" y="20" w="-10" h="20" relatw="1"/> + + <wasabi:button x="5" y="48" w="-10" h="19" relatw="1" text="OK" id="return.values"/> + + </groupdef> + + <layout id="normal" noparent="1" ontop="1" noactivation="1" minimum_h="114" minimum_w="300" maximum_h="114" maximum_w="300" lockminmax="1" nodock="1" move="0" > + + <Wasabi:StandardFrame:Static + fitparent="1" + regionop="1" + content="browser.submenu.content" + /> + </layout> + +</container>-->
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/playlistpro.xml b/Src/resources/skins/Big Bento/xml/playlistpro.xml new file mode 100644 index 00000000..f765a409 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/playlistpro.xml @@ -0,0 +1,62 @@ +<groupdef id="PlaylistPro.list.group" minimum_h="64" background="studio.BaseTexture"> + + <grid + fitparent="1" + topleft="sui.pl.search.box.1" + top="sui.pl.search.box.2" + topright="sui.pl.search.box.3" + left="sui.pl.search.box.4" + middle="sui.pl.search.box.5" + right="sui.pl.search.box.6" + bottomleft="sui.pl.search.box.7" + bottom="sui.pl.search.box.8" + bottomright="sui.pl.search.box.9" + sysregion="1" + /> + + <list id="PlaylistPro.list" x="4" y="0" w="-6" h="-24" relatw="1" relath="1" nocolheader="1" antialias="1" font="arial" multiselect="1"/> + <text id="PlaylistPro.list.news" x="3" y="-22" w="-6" h="20" relaty="1" relatw="1" text="Results found: 22 items" font="arial" color="wasabi.list.text" align="center" antialias="1" fontsize="17"/> + <layer x="0" y="-1" relaty="1" w="0" relatw="1" h="20" resize="bottom" /> + +</groupdef> + +<container id="searchresults" name="Search Results" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1" autoclose="1"> + <layout id="normal" noparent="1" ontop="1" noactivation="1" nodock="1" move="0" autoclose="1"> + <group id="PlaylistPro.list.group" x="1" y="0" h="0" w="-12" relath="1" relatw="1"/> + <layer id="1px.patch" x="-11" y="0" w="1" relath="1" relatx="1" h="20" image="sui.pl.search.box.6" sysregion="1"/> + </layout> +</container> + + +<groupdef id="wasabi.edits" xuitag="Wasabi:EditBox2" embed_xui="wasabi.edit.box" h="24"> + <button id="pl.search.edit.rect" x="1" y="2" w="-4" h="22" relatw="1" relath="0" rectrgn="1" tooltip="Click to search the playlist (Right-Click for search history)" cursor="IDC_IBEAM"/> + <text id="pl.search.edit.searchhelp" x="1" y="2" w="-5" h="19" relatw="1" antialias="1" color="wasabi.list.text" text="Search in Playlist" ghost="1" font="arial" alpha="230" fontsize="16"/> + <edit id="wasabi.edit.box" x="1" y="0" w="-21" h="22" relatw="1" relath="0" autoselect="1" visible="0"/> + +<button id="pl.search.edit.clear.text" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.bgv" visible="0"/> +<button id="pl.search.edit.clear" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.1" hoverimage="sui.pl.search.stop.1" downimage="sui.pl.search.stop.3" cursor="IDC_HAND" tooltip="Clear Search" visible="0"/> +</groupdef> + +<groupdef id="player.component.playlist.searchbar.search" h="30"> + <grid x="0" y="0" h="31" w="0" relatw="1" + left="sui.pl.search.bgv.1" middle="sui.pl.search.bgv.2" right="sui.pl.search.bgv.3"/> + + <grid x="0" y="0" h="30" w="0" relatw="1" + left="sui.pl.search.bg.1" middle="sui.pl.search.bg.2" right="sui.pl.search.bg.3"/> + + <button id="pl.search.go" x="-26" y="4" h="19" w="20" relatx="1" image="sui.pl.search.go.1" hoverimage="sui.pl.search.go.2" downimage="sui.pl.search.go.3" tooltip="Go Search" rectrgn="1"/> + <Wasabi:EditBox2 id="pl.search.edit" x="4" y="4" relatw="1" w="-10" h="20" text=""/> +</groupdef> +<groupdef id="PlaylistPro.topbar"> + <group id="player.component.playlist.searchbar.search" x="0" y="0" w="0" relatw="1"/> +</groupdef> + +<groupdef id="PlaylistPro.xui" wantfocus="1" rectrgn="1" xuitag="PlaylistPro" embed_xui="wdh.playlist"> + <!--rect fitparent="1" filled="1" color="wasabi.window.background"/--> + + <windowholder id="wdh.playlist" h="0" x="0" w="0" relath="1" relatw="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="1" hold="guid:{45f3f7c1-a6f3-4ee6-a15e-125e92fc3f8d}"/> + +<group id="PlaylistPro.topbar" x="0" y="0" w="0" h="30" relatw="1" visible="0"/> + <script file="scripts/playlistpro.maki"/> +</groupdef> + diff --git a/Src/resources/skins/Big Bento/xml/standardframe.xml b/Src/resources/skins/Big Bento/xml/standardframe.xml new file mode 100644 index 00000000..35761760 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/standardframe.xml @@ -0,0 +1,152 @@ +<!-- ======================================================================================================= + + This group serves as a template for all the Wasabi:StandardFrame objects + +======================================================================================================== --> + +<groupdef id="wasabi.frame.layout"> + + <layer x="0" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="0" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="0" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + <layer x="-1" relatx="1" y="-1" relaty="1" h="1" w="1" image="window.background.region" regionop="-2" /> + + <grid + x="0" y="0" h="23" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.left" + middle="window.titlebar.grid.middle" + right="window.titlebar.grid.right" + /> + <grid + x="0" y="0" h="23" w="0" relatw="1" regionop="1" + left="window.titlebar.grid.over.left" + middle="window.titlebar.grid.over.middle" + right="window.titlebar.grid.over.right" + /> + + <layer x="0" y="0" h="23" w="0" relatw="1" move="1" /> + + <text id="componentname" x="27" y="5" w="-77" h="14" relatw="1" size="10" bold="1" default=":componentname" ghost="1" color="wasabi.titlebar.color" font="Arial" align="left" forceuppercase="1" antialias="1"/> + + <layer x="0" y="23" w="5" h="5" image="window.background.topleft" resize="left" regionop="1"/> + <layer x="5" y="23" w="-10" relatw="1" h="5" image="window.background.top" regionop="1"/> + <layer x="-5" relatx="1" y="23" w="5" h="5" image="window.background.topright" resize="right" regionop="1"/> + <layer x="0" y="28" w="5" h="-33" relath="1" image="window.background.left" resize="left" regionop="1"/> + <layer x="5" y="28" w="-10" relatw="1" h="-33" relath="1" image="window.background.center" move="1" regionop="1"/> + <layer x="-5" relatx="1" y="28" w="5" h="-33" relath="1" image="window.background.right" resize="right" regionop="1"/> + <layer x="0" y="-5" relaty="1" w="5" h="5" image="window.background.bottomleft" resize="bottomleft" id="player.resizer.bottomleft" regionop="1"/> + <layer x="5" y="-5" relaty="1" w="-10" relatw="1" h="5" image="window.background.bottom" resize="bottom" id="player.resizer.bottom" regionop="1"/> + <layer x="-5" relatx="1" y="-5" relaty="1" w="5" h="5" image="window.background.bottomright" regionop="1"/> + <layer x="-26" y="-15" w="19" h="10" relaty="1" relatx="1" image="window.background.resizer" id="player.resizer.bottomright" rectrgn="1" regionop="1"/> + <layer x="-26" y="-15" w="26" h="11" relaty="1" relatx="1" resize="bottomright" id="player.resizer.bottomright.dummy" rectrgn="1" /> + + <layer id="window.resize.disabler" fitparent="1" move="1" visible="0"/> + + <button + x="-44" relatx="1" y="5" h="13" w="17" visible="0" + id="restore" + image="window.titlebar.button.restore.normal" + hoverImage="window.titlebar.button.restore.hover" + downImage="window.titlebar.button.restore.down" + tooltip="Restore Window" + /> + + <button + x="-44" relatx="1" y="5" h="13" w="17" + id="maximize" + image="window.titlebar.button.maximize.normal" + hoverImage="window.titlebar.button.maximize.hover" + downImage="window.titlebar.button.maximize.down" + tooltip="Maximize Window" + /> + + <button + x="7" y="5" h="13" w="15" + action="SYSMENU" + image="window.titlebar.button.sysmenu.normal" + hoverImage="window.titlebar.button.sysmenu.hover" + downImage="window.titlebar.button.sysmenu.down" + tooltip="Main Menu" + /> + + <button + x="-24" relatx="1" y="5" h="13" w="17" + action="CLOSE" + image="window.titlebar.button.close.normal" + hoverImage="window.titlebar.button.close.hover" + downImage="window.titlebar.button.close.down" + tooltip="Close Window" + /> + + <LayoutStatus id="sysmenu.status" bg="0" x="5" y="2" h="13" w="15" includeonly="{system}" /> + <hideobject target="sysmenu.status"/> + + <script file="scripts/simplemaximize.maki"/> + + </groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Status /> implementation + +======================================================================================================== --> + + <groupdef id="wasabi.standardframe.statusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Status"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" relatw="1" h="0" relath="1"/> + + <LayoutStatus id="standardframe.layoutstatus" x="5" y="-33" relaty="1" w="-10" relatw="1" h="18" exclude="{system}" /> + <script id="standardframe.script" file="scripts/standardframe.maki" param="5,26,-10,-63,0,0,1,1" /> + +</groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:NoStatus /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:NoStatus"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" h="0" relatw="1" relath="1"/> + + <script id="standardframe.script" file="scripts/standardframe.maki" param="5,26,-10,-45,0,0,1,1" /> + +</groupdef> + + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Modal /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.modal" inherit_group="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Modal"> + <sendparams target="window.resize.disabler" visible="1" /> + <sendparams target="player.resizer.bottomright" visible="0" /> + <sendparams target="restore" visible="0" /> + <sendparams target="maximize" visible="0" /> +</groupdef> + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Static /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.static" inherit_group="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Static"> + <sendparams target="window.resize.disabler" visible="1" /> + <sendparams target="player.resizer.bottomright" visible="0" /> + <sendparams target="restore" visible="0" /> + <sendparams target="maximize" visible="0" /> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/system-colors.xml b/Src/resources/skins/Big Bento/xml/system-colors.xml new file mode 100644 index 00000000..ce2c3238 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/system-colors.xml @@ -0,0 +1,87 @@ +<elements> + + <!-- General Color Definitions --> + + <color id="color.display" value="147,175,185" gammagroup="DisplayText"/> + <color id="color.display.bg" value="8,9,10" gammagroup="PlayerDisplay"/> + <color id="color.window.bg" value="51,55,56" gammagroup="WindowBackground"/> + <color id="color.window.txt" value="210,210,210" gammagroup="WindowText"/> + <color id="color.selected.active" value="200,200,200" gammagroup="Selection"/> + <color id="color.selected.active.bg" value="49,53,64" gammagroup="SelectionBg"/> + <color id="color.selected.inactive.bg" value="42,46,57" gammagroup="SelectionBg Inactive"/> + + <color id="color.tabbutton.text.inactive" value="196,196,196" gammagroup="CompButtonInactiveText"/> + <color id="color.tabbutton.text.active" value="220,220,220" gammagroup="CompButtonActiveText"/> + <color id="color.tabbutton.text.inactive.hover" value="215,215,215" gammagroup="CompButtonInactiveText"/> + <color id="color.tabbutton.text.inactive.shadow" value="16,16,16" gammagroup="CompButtonInactive"/> + <color id="color.tabbutton.text.active.shadow" value="13,13,13" gammagroup="CompButtonActive"/> + + <!-- Specific Color Definitions --> + + <color id="wasabi.text.color" value="color.window.txt" gammagroup="WindowText"/> + <color id="wasabi.titlebar.color" value="216,217,219" gammagroup="TitlebarText"/> + + <color id="white" value="255,255,255" gammagroup="DisplayText"/> + <color id="white" value="color.window.txt" gammagroup="WindowText"/> + + <!-- Generic Trees --> + <color id="wasabi.tree.text" value="color.display" gammagroup="DisplayText"/> <!-- Item text color --> + <color id="wasabi.tree.selected" value="color.selected.active" gammagroup="Selection"/> <!-- Select item text background color --> + <color id="wasabi.tree.hiliteddrop" value="color.selected.active" gammagroup="Selection"/> <!-- Drop marker color --> + + <!-- Generic Lists --> + <color id="wasabi.list.text" value="color.display" gammagroup="DisplayText"/> <!--lists/trees item foreground (also edit text) --> + <color id="wasabi.list.background" value="color.display.bg" gammagroup="PlayerDisplay"/> <!--lists/trees item background (also bg for edit) --> + <color id="wasabi.list.text.alternate" value="147,175,185" gammagroup="DisplayText"/> + <color id="wasabi.list.background.alternate" value="13,14,15" gammagroup="PlayerDisplay"/> + + <color id="wasabi.list.text.selected" value="color.selected.active" gammagroup="Selection"/> <!--listview/treeview selection bar text color --> + <color id="wasabi.list.text.selected.background" value="color.selected.active.bg" gammagroup="SelectionBg"/> <!--listview/treeview selection bar backcolor --> + <color id="studio.list.item.selected" value="color.selected.active" gammagroup="Selection"/> + <color id="studio.list.item.focused" value="color.selected.active.bg" gammagroup="SelectionBg"/> + + + <color id="wasabi.list.text.current" value="color.selected.active" gammagroup="Selection"/> <!-- currently playing item in lists --> + <color id="wasabi.list.text.selected.inactive" value="color.window.txt" gammagroup="WindowText"/> <!-- listview/treeview selection bar textcolor (inactive) --> + <color id="wasabi.list.text.selected.background.inactive" value="color.selected.inactive.bg" gammagroup="SelectionBg Inactive"/> <!-- listview/treeview selectionbar back color (inactive) --> + + <color id="wasabi.list.column.background" value="73,76,77" gammagroup="Column"/> <!-- listview header background color --> + <color id="wasabi.list.column.text" value="color.window.txt" gammagroup="Column Text"/> <!-- listview header text color --> + <color id="wasabi.list.column.frame.top" value="100,103,104" gammagroup="Column"/> <!-- listview header frame top color --> + <color id="wasabi.list.column.frame.middle" value="57,61,62" gammagroup="Column"/> <!-- listview header frame middle color --> + <color id="wasabi.list.column.frame.bottom" value="31,34,35" gammagroup="Column"/> <!-- listview header frame bottom color --> + <color id="wasabi.list.column.empty" value="color.window.bg" gammagroup="ComponentFrame"/> <!-- listview header empty color (beyond the columns --> + + <!-- edit wnds --> + <color id="wasabi.window.background" value="color.window.bg" gammagroup="ComponentFrame"/> <!--window background. - If this color is not defined, a whole container is created in memory to extract a pixel, so specifying it makes skin loading faster --> + <color id="wasabi.window.text" value="color.window.txt" gammagroup="WindowText"/> <!--text color within windows --> + <color id="wasabi.border.sunken" value="73,76,77" gammagroup="ComponentFrame"/> <!-- color of dividers and sunken borders --> + + <color id="wasabi.scrollbar.foreground" value="20,21,22" gammagroup="ScrollBarTrack"/> <!-- scrollbar foreground color --> + <color id="wasabi.scrollbar.background" value="20,21,22" gammagroup="ScrollBarTrack"/> <!-- scrollbar background color --> + <color id="wasabi.scrollbar.foreground.inverted" value="20,21,22" gammagroup="ScrollBarTrack"/> <!-- inverse scrollbar foreground color --> + <color id="wasabi.scrollbar.background.inverted" value="20,21,22" gammagroup="ScrollBarTrack"/> <!-- inverse scrollbar background color --> + + <color id="wasabi.button.text" value="color.window.txt" gammagroup="Column Text"/> <!-- Buttons text color --> + <color id="wasabi.button.hiliteText" value="color.display" gammagroup="DisplayText"/> <!-- Buttons hilite text color, used by tab windows--> + <color id="wasabi.button.dimmedText" value="149,156,169" gammagroup="PlayerButton"/> <!-- Buttons dimmed text color, when disabled --> + + <bitmap id="wasabi.tree.background" file="$solid" h="64" w="64" color="8,9,10" gammagroup="PlayerDisplay"/><!-- Tree background bitmap (tile) --> + <bitmap id="wasabi.list.background" file="$solid" h="64" w="64" color="8,9,10" gammagroup="PlayerDisplay"/><!-- Tree background bitmap (tile) --> + + <!-- Winamp 5.53+ MediaLibrary PopupMenu --> + + <color id="wasabi.popupmenu.frame" value="100,103,104" gammagroup="WindowBackground"/> + <color id="wasabi.popupmenu.separator" value="36,37,38" gammagroup="WindowBackground"/> + <color id="wasabi.popupmenu.background.selected" value="100,103,104" gammagroup="WindowBackground"/> + <!-- pre 5.55: + <color id="wasabi.popupmenu.background" value="color.display.bg" gammagroup="PlayerDisplay"/> + <color id="wasabi.popupmenu.background.selected" value="color.selected.active.bg" gammagroup="SelectionBg"/> + <color id="wasabi.popupmenu.text" value="color.display" gammagroup="DisplayText"/> + <color id="wasabi.popupmenu.text.selected" value="color.selected.active" gammagroup="Selection"/> + <color id="wasabi.popupmenu.text.inactive" value="20,21,22" gammagroup="ScrollBarTrack"/> + <color id="wasabi.popupmenu.frame" value="20,21,22" gammagroup="ScrollBarTrack"/> + <color id="wasabi.popupmenu.separator" value="20,21,22" gammagroup="ScrollBarTrack"/> + --> + +</elements> diff --git a/Src/resources/skins/Big Bento/xml/system-elements.xml b/Src/resources/skins/Big Bento/xml/system-elements.xml new file mode 100644 index 00000000..2b3c57af --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/system-elements.xml @@ -0,0 +1,126 @@ +<elements> + +<!-- Scrollbars (on List, Tree, etc...) --> + <bitmap id="wasabi.scrollbar.vertical.button" file="window/scrollbars.png" x="20" y="0" h="31" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.button.hover" file="window/scrollbars.png" x="20" y="0" h="31" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.button.pressed" file="window/scrollbars.png" x="40" y="0" h="31" w="13" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.vertical.left" file="window/scrollbars.png" x="60" y="0" h="14" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.left.hover" file="window/scrollbars.png" x="60" y="0" h="14" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.left.pressed" file="window/scrollbars.png" x="80" y="0" h="14" w="13" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.vertical.right" file="window/scrollbars.png" x="60" y="26" h="14" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.right.hover" file="window/scrollbars.png" x="60" y="26" h="14" w="13" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.vertical.right.pressed" file="window/scrollbars.png" x="80" y="26" h="14" w="13" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.vertical.background" file="window/scrollbars.png" x="0" y="0" w="13" h="17" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.vertical.background.top" file="window/scrollbars.png" x="0" y="0" w="13" h="17" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.vertical.background.middle" file="window/scrollbars.png" x="0" y="0" w="13" h="17" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.vertical.background.bottom" file="window/scrollbars.png" x="0" y="0" w="13" h="17" gammagroup="ComponentFrame"/> + + <bitmap id="wasabi.scrollbar.horizontal.button" file="window/scrollbars.png" x="12" y="70" h="13" w="31" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.button.hover" file="window/scrollbars.png" x="12" y="70" h="13" w="31" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.button.pressed" file="window/scrollbars.png" x="12" y="90" h="13" w="31" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.horizontal.left" file="window/scrollbars.png" x="0" y="110" h="13" w="14" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.left.hover" file="window/scrollbars.png" x="0" y="110" h="13" w="14" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.left.pressed" file="window/scrollbars.png" x="0" y="130" h="13" w="14" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.horizontal.right" file="window/scrollbars.png" x="26" y="110" h="13" w="14" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.right.hover" file="window/scrollbars.png" x="26" y="110" h="13" w="14" gammagroup="Column"/> + <bitmap id="wasabi.scrollbar.horizontal.right.pressed" file="window/scrollbars.png" x="26" y="130" h="13" w="14" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.horizontal.background" file="window/scrollbars.png" x="18" y="50" w="17" h="13" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.horizontal.background.top" file="window/scrollbars.png" x="18" y="50" w="17" h="13" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.horizontal.background.middle" file="window/scrollbars.png" x="18" y="50" w="17" h="13" gammagroup="ComponentFrame"/> + <bitmap id="wasabi.scrollbar.horizontal.background.bottom" file="window/scrollbars.png" x="18" y="50" w="17" h="13" gammagroup="ComponentFrame"/> + +<!-- Generic Button --> + <bitmap id="wasabi.button.label.arrow.up" file="window/window-elements.png" x="137" y="75" h="4" w="7" gammagroup="Column Text"/> + <bitmap id="wasabi.button.label.arrow.down" file="window/window-elements.png" x="137" y="86" h="6" w="7" gammagroup="Column Text"/> + <bitmap id="wasabi.button.label.arrow.left" file="window/window-elements.png" x="133" y="79" h="7" w="4" gammagroup="Column Text"/> + <bitmap id="wasabi.button.label.arrow.right" file="window/window-elements.png" x="144" y="79" h="7" w="4" gammagroup="Column Text"/> + <bitmap id="wasabi.button.label.ellipses" file="window/window-elements.png" x="138" y="92" h="1" w="5" gammagroup="Column Text"/> + + <bitmap id="wasabi.button.top.left" file="window/window-elements.png" x="0" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.top" file="window/window-elements.png" x="4" y="134" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.top.right" file="window/window-elements.png" x="29" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.left" file="window/window-elements.png" x="0" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.center" file="window/window-elements.png" x="4" y="138" h="25" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.right" file="window/window-elements.png" x="29" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.bottom.left" file="window/window-elements.png" x="0" y="163" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.bottom" file="window/window-elements.png" x="4" y="163" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.bottom.right" file="window/window-elements.png" x="29" y="163" h="4" w="4" gammagroup="Column"/> + + <bitmap id="wasabi.button.hover.top.left" file="window/window-elements.png" x="33" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.top" file="window/window-elements.png" x="37" y="134" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.top.right" file="window/window-elements.png" x="62" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.left" file="window/window-elements.png" x="33" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.center" file="window/window-elements.png" x="37" y="138" h="25" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.right" file="window/window-elements.png" x="62" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.bottom.left" file="window/window-elements.png" x="33" y="163" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.bottom" file="window/window-elements.png" x="37" y="163" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.bottom.right" file="window/window-elements.png" x="62" y="163" h="4" w="4" gammagroup="Column"/> + + <bitmap id="wasabi.button.pressed.top.left" file="window/window-elements.png" x="66" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.top" file="window/window-elements.png" x="70" y="134" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.top.right" file="window/window-elements.png" x="95" y="134" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.left" file="window/window-elements.png" x="66" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.center" file="window/window-elements.png" x="70" y="138" h="25" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.right" file="window/window-elements.png" x="95" y="138" h="25" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.bottom.left" file="window/window-elements.png" x="66" y="163" h="4" w="4" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.bottom" file="window/window-elements.png" x="70" y="163" h="4" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.bottom.right" file="window/window-elements.png" x="95" y="163" h="4" w="4" gammagroup="Column"/> + + <bitmap id="wasabi.button.middle" file="window/window-elements.png" x="4" y="138" h="25" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.hover.middle" file="window/window-elements.png" x="37" y="138" h="25" w="25" gammagroup="Column"/> + <bitmap id="wasabi.button.pressed.middle" file="window/window-elements.png" x="70" y="138" h="25" w="25" gammagroup="Column"/> + + <bitmap id="wasabi.scrollbar.vertical.grip" file="window/scrollgrips.png" x="0" y="0" h="8" w="6" gammagroup="Column Text"/> + <bitmap id="wasabi.scrollbar.horizontal.grip" file="window/scrollgrips.png" x="7" y="0" h="6" w="8" gammagroup="Column Text"/> + +<!-- Object Frame--> + <bitmap id="wasabi.objectframe.top.left" file="window/window-elements.png" x="0" y="114" h="1" w="1" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.top" file="window/window-elements.png" x="1" y="114" h="1" w="17" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.top.right" file="window/window-elements.png" x="18" y="114" h="1" w="1" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.left" file="window/window-elements.png" x="0" y="115" h="17" w="1" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.center" file="window/window-elements.png" x="1" y="115" h="17" w="17" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.right" file="window/window-elements.png" x="18" y="115" h="17" w="1" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.bottom.left" file="window/window-elements.png" x="0" y="132" h="1" w="1" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.bottom" file="window/window-elements.png" x="1" y="132" h="1" w="17" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.objectframe.bottom.right" file="window/window-elements.png" x="18" y="132" h="1" w="1" gammagroup="PlayerDisplay"/> + +<!-- Standard Configuration Widgets --> + <bitmap id="wasabi.button.checkbox" file="window/window-elements.png" x="79" y="77" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.button.checkbox.pressed" file="window/window-elements.png" x="58" y="77" h="7" w="7" gammagroup="DisplayText"/> + + <bitmap id="wasabi.button.checkbox.xbox" file="window/window-elements.png" x="79" y="77" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.button.checkbox.xbox.pressed" file="window/window-elements.png" x="65" y="77" h="7" w="7" gammagroup="DisplayText"/> + + <bitmap id="wasabi.button.radio.background" file="window/window-elements.png" x="58" y="66" h="11" w="11" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.button.radio.background.display" file="window/window-elements.png" x="69" y="66" h="9" w="9" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.button.radio" file="window/window-elements.png" x="79" y="77" h="7" w="7" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.button.radio.pressed" file="window/window-elements.png" x="72" y="77" h="7" w="7" gammagroup="DisplayText"/> + +<!-- Frame windows --> + <bitmap id="wasabi.framewnd.verticaldivider" file="window/window-elements.png" x="124" y="53" h="65" w="8" gammagroup="Frame_Borders"/> + <bitmap id="wasabi.framewnd.verticalgrabber" file="window/window-elements.png" x="115" y="53" h="65" w="8" gammagroup="Frame_Borders"/> + <bitmap id="wasabi.framewnd.horizontaldivider" file="window/window-elements.png" x="40" y="97" h="8" w="65" gammagroup="Frame_Borders"/> + <bitmap id="wasabi.framewnd.horizontalgrabber" file="window/window-elements.png" x="40" y="106" h="8" w="65" gammagroup="Frame_Borders"/> + <bitmap id="wasabi.framewnd.windowshade" file="window/framewnd-windowshade.png" gammagroup="Frame_Borders"/> + + <bitmap id="wasabi.frame.divider.arrow.up" file="window/window-elements.png" x="64" y="124" h="4" w="7" gammagroup="Frame_Borders"/> + <bitmap id="wasabi.frame.divider.arrow.down" file="window/window-elements.png" x="64" y="128" h="4" w="7" gammagroup="Frame_Borders"/> + +<!-- Combo Box List--> + <bitmap id="wasabi.dropdownlist.list.top.left" file="window/window-elements.png" x="40" y="124" h="1" w="1"/> + <bitmap id="wasabi.dropdownlist.list.top" file="window/window-elements.png" x="41" y="124" h="1" w="10"/> + <bitmap id="wasabi.dropdownlist.list.top.right" file="window/window-elements.png" x="51" y="124" h="1" w="1"/> + <bitmap id="wasabi.dropdownlist.list.left" file="window/window-elements.png" x="40" y="125" h="8" w="1"/> + <bitmap id="wasabi.dropdownlist.list.center" file="window/window-elements.png" x="41" y="125" h="8" w="10" gammagroup="PlayerDisplay"/> + <bitmap id="wasabi.dropdownlist.list.right" file="window/window-elements.png" x="51" y="125" h="8" w="1"/> + <bitmap id="wasabi.dropdownlist.list.bottom.left" file="window/window-elements.png" x="40" y="133" h="1" w="1"/> + <bitmap id="wasabi.dropdownlist.list.bottom" file="window/window-elements.png" x="41" y="133" h="1" w="10"/> + <bitmap id="wasabi.dropdownlist.list.bottom.right" file="window/window-elements.png" x="51" y="133" h="1" w="1"/> + +</elements>
\ No newline at end of file diff --git a/Src/resources/skins/Big Bento/xml/window-overrides.xml b/Src/resources/skins/Big Bento/xml/window-overrides.xml new file mode 100644 index 00000000..5bd1b7d3 --- /dev/null +++ b/Src/resources/skins/Big Bento/xml/window-overrides.xml @@ -0,0 +1,83 @@ +<!-- This file is needed to prohibit the SUI Components show in a stand alone window --> + +<container id="MLibrary" name="Media Library" dynamic="1" component="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}" default_x="-1" default_y="-1" default_visible="0"> + + <layout id="normal" h="1" w="1"> + + <!--component + x="0" + y="0" + w="1" + h="1" + noshowcmdbar="1" + autoopen="0" + autoclose="0" + param="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}" + /--> + + <!--script file="scripts/wndkill.maki" /--> + + </layout> + +</container> + +<container id="AVS" name="Visualizations" dynamic="1" component="guid:{0000000A-000C-0010-FF7B-01014263450C}" default_x="-1" default_y="-1" default_visible="0"> + + <layout id="normal" h="1" w="1"> + + <component + x="0" + y="0" + w="1" + h="1" + noshowcmdbar="1" + autoopen="1" + autoclose="1" + param="guid:{0000000A-000C-0010-FF7B-01014263450C}" + /> + + </layout> + +</container> + + +<container id="Video" name="Video" dynamic="1" component="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" default_x="-1" default_y="-1" default_visible="0"> + + <layout id="normal" h="1" w="1"> + + <component + x="0" + y="0" + w="1" + h="1" + noshowcmdbar="1" + autoopen="1" + autoclose="1" + param="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" + /> + + </layout> + +</container> + + +<container id="Pledit" name="Playlist Editor" dynamic="1" component="guid:{45F3F7C1-A6F3-4ee6-A15E-125E92FC3F8D}" default_x="-1" default_y="-1" default_visible="0"> + + <layout id="normal" h="1" w="1"> + + <component + x="0" + y="0" + w="1" + h="1" + noshowcmdbar="1" + autoopen="1" + autoclose="1" + param="guid:{45F3F7C1-A6F3-4ee6-A15E-125E92FC3F8D}" + /> + + <!--script file="scripts/wndkill.maki" /--> + + </layout> + +</container>
\ No newline at end of file diff --git a/Src/resources/skins/Nokia/Nokia_3250.wal b/Src/resources/skins/Nokia/Nokia_3250.wal Binary files differnew file mode 100644 index 00000000..63adfe14 --- /dev/null +++ b/Src/resources/skins/Nokia/Nokia_3250.wal diff --git a/Src/resources/skins/Nokia/Nokia_Edition.wal b/Src/resources/skins/Nokia/Nokia_Edition.wal Binary files differnew file mode 100644 index 00000000..497ff195 --- /dev/null +++ b/Src/resources/skins/Nokia/Nokia_Edition.wal diff --git a/Src/resources/skins/Winamp Modern/about/about.maki b/Src/resources/skins/Winamp Modern/about/about.maki Binary files differnew file mode 100644 index 00000000..82218e25 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about.maki diff --git a/Src/resources/skins/Winamp Modern/about/about.xml b/Src/resources/skins/Winamp Modern/about/about.xml new file mode 100644 index 00000000..76a8d7a4 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about.xml @@ -0,0 +1,138 @@ +<elements> + <bitmap id="about.bg" file="about/about_bg.png"/> + <bitmap id="about.fg" file="about/about_fg.png"/> + <bitmap id="about.winampbolt" file="about/about_bolt.png"/> + <bitmap id="about.starani" file="about/about_star.png"/> + <bitmap id="about.eye" file="about/eye.png"/> + + <color id="font.about.color1" value="255,225,155" gammagroup=""/> + <color id="font.about.color2" value="255,255,255" gammagroup=""/> + +</elements> + +<groupdef id="skin.about.group" w="0" h="0" relatw="1" relath="1" rectrgn="1"> + <rect fitparent="1" color="110,119,134" filled="1" /> + <layer + x="0" y="0" + w="0" relatw="1" + h="321" + image="about.bg" + /> + <layer + x="0" y="0" + w="371" + h="321" + image="about.fg" + /> + <layer + id="about.bolt" + x="153" y="149" + w="56" + h="56" + image="about.winampbolt" + /> + <layer + id="about.eye1" + x="186" y="78" + w="3" + h="4" + image="about.eye" + /> + <layer + id="about.eye2" + x="197" y="79" + w="3" + h="4" + image="about.eye" + /> + <AnimatedLayer + x="-75" y="-70" + w="68" h="70" + id="about.star1" + image="about.starani" + autoplay="0" + autoreplay="0" + /> + <AnimatedLayer + x="-75" y="-70" + w="68" h="70" + id="about.star2" + image="about.starani" + autoplay="0" + autoreplay="0" + /> + <AnimatedLayer + x="-75" y="-70" + w="68" h="70" + id="about.star3" + image="about.starani" + autoplay="0" + autoreplay="0" + /> + <AnimatedLayer + x="-75" y="-70" + w="68" h="70" + id="about.star4" + image="about.starani" + autoplay="0" + autoreplay="0" + /> + + + <text + id="about.text1b" + color="font.about.color1" + x="10" y="13" + w="351" + h="20" + valign="top" + align="center" + fontsize="13" + font="Arial" + bold="1" + default="" + /> + <text + id="about.text2b" + color="font.about.color1" + x="10" y="13" + w="351" + h="20" + valign="top" + align="center" + fontsize="13" + font="Arial" + bold="1" + default="" + /> + + <text + id="about.text1" + color="font.about.color2" + x="10" y="27" + w="351" + h="30" + valign="top" + align="center" + fontsize="17" + font="Arial" + default="" + /> + <text + id="about.text2" + color="font.about.color2" + x="10" y="27" + w="351" + h="30" + valign="top" + align="center" + fontsize="17" + font="Arial" + default="" + /> + + <guiobject fitparent="1" /> + + <script file="about/about.maki"/> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/about/about_bg.png b/Src/resources/skins/Winamp Modern/about/about_bg.png Binary files differnew file mode 100644 index 00000000..24be94e1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about_bg.png diff --git a/Src/resources/skins/Winamp Modern/about/about_bolt.png b/Src/resources/skins/Winamp Modern/about/about_bolt.png Binary files differnew file mode 100644 index 00000000..8d41135a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about_bolt.png diff --git a/Src/resources/skins/Winamp Modern/about/about_fg.png b/Src/resources/skins/Winamp Modern/about/about_fg.png Binary files differnew file mode 100644 index 00000000..d420ac2b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about_fg.png diff --git a/Src/resources/skins/Winamp Modern/about/about_star.png b/Src/resources/skins/Winamp Modern/about/about_star.png Binary files differnew file mode 100644 index 00000000..c5195aa9 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/about_star.png diff --git a/Src/resources/skins/Winamp Modern/about/eye.png b/Src/resources/skins/Winamp Modern/about/eye.png Binary files differnew file mode 100644 index 00000000..350abea7 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/about/eye.png diff --git a/Src/resources/skins/Winamp Modern/notifier/aol_radio_alb_art.jpg b/Src/resources/skins/Winamp Modern/notifier/aol_radio_alb_art.jpg Binary files differnew file mode 100644 index 00000000..cdf7662b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/notifier/aol_radio_alb_art.jpg diff --git a/Src/resources/skins/Winamp Modern/notifier/notif-bg-alpha.png b/Src/resources/skins/Winamp Modern/notifier/notif-bg-alpha.png Binary files differnew file mode 100644 index 00000000..e9e16822 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/notifier/notif-bg-alpha.png diff --git a/Src/resources/skins/Winamp Modern/notifier/notif-bg.png b/Src/resources/skins/Winamp Modern/notifier/notif-bg.png Binary files differnew file mode 100644 index 00000000..b3681808 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/notifier/notif-bg.png diff --git a/Src/resources/skins/Winamp Modern/notifier/sc_alb_art.jpg b/Src/resources/skins/Winamp Modern/notifier/sc_alb_art.jpg Binary files differnew file mode 100644 index 00000000..64752759 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/notifier/sc_alb_art.jpg diff --git a/Src/resources/skins/Winamp Modern/player/Eq_bg.png b/Src/resources/skins/Winamp Modern/player/Eq_bg.png Binary files differnew file mode 100644 index 00000000..5d2bfd79 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/Eq_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/Options_buttons.png b/Src/resources/skins/Winamp Modern/player/Options_buttons.png Binary files differnew file mode 100644 index 00000000..058f3e6a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/Options_buttons.png diff --git a/Src/resources/skins/Winamp Modern/player/Options_elements.PNG b/Src/resources/skins/Winamp Modern/player/Options_elements.PNG Binary files differnew file mode 100644 index 00000000..d378aecf --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/Options_elements.PNG diff --git a/Src/resources/skins/Winamp Modern/player/Songtickerfont.png b/Src/resources/skins/Winamp Modern/player/Songtickerfont.png Binary files differnew file mode 100644 index 00000000..3b3070ba --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/Songtickerfont.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_displayoverlay.png b/Src/resources/skins/Winamp Modern/player/beat_displayoverlay.png Binary files differnew file mode 100644 index 00000000..7c4d1242 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_displayoverlay.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_l2.png b/Src/resources/skins/Winamp Modern/player/beat_l2.png Binary files differnew file mode 100644 index 00000000..43ab1310 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_l2.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_left.png b/Src/resources/skins/Winamp Modern/player/beat_left.png Binary files differnew file mode 100644 index 00000000..f19a9a90 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_left.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_r2.png b/Src/resources/skins/Winamp Modern/player/beat_r2.png Binary files differnew file mode 100644 index 00000000..85aa4908 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_r2.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_right.png b/Src/resources/skins/Winamp Modern/player/beat_right.png Binary files differnew file mode 100644 index 00000000..f704da80 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_right.png diff --git a/Src/resources/skins/Winamp Modern/player/beat_textoverlay.png b/Src/resources/skins/Winamp Modern/player/beat_textoverlay.png Binary files differnew file mode 100644 index 00000000..4862b7d1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/beat_textoverlay.png diff --git a/Src/resources/skins/Winamp Modern/player/bolt.png b/Src/resources/skins/Winamp Modern/player/bolt.png Binary files differnew file mode 100644 index 00000000..a70e9add --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/bolt.png diff --git a/Src/resources/skins/Winamp Modern/player/button_balance.png b/Src/resources/skins/Winamp Modern/player/button_balance.png Binary files differnew file mode 100644 index 00000000..108a2c62 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_balance.png diff --git a/Src/resources/skins/Winamp Modern/player/button_config_drawer.png b/Src/resources/skins/Winamp Modern/player/button_config_drawer.png Binary files differnew file mode 100644 index 00000000..5618461a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_config_drawer.png diff --git a/Src/resources/skins/Winamp Modern/player/button_ct_switch.png b/Src/resources/skins/Winamp Modern/player/button_ct_switch.png Binary files differnew file mode 100644 index 00000000..82a59c3f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_ct_switch.png diff --git a/Src/resources/skins/Winamp Modern/player/button_eq.png b/Src/resources/skins/Winamp Modern/player/button_eq.png Binary files differnew file mode 100644 index 00000000..b6f2a38a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_eq.png diff --git a/Src/resources/skins/Winamp Modern/player/button_mute.png b/Src/resources/skins/Winamp Modern/player/button_mute.png Binary files differnew file mode 100644 index 00000000..e8bddac8 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_mute.png diff --git a/Src/resources/skins/Winamp Modern/player/button_mute_bg.PNG b/Src/resources/skins/Winamp Modern/player/button_mute_bg.PNG Binary files differnew file mode 100644 index 00000000..3129b0df --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_mute_bg.PNG diff --git a/Src/resources/skins/Winamp Modern/player/button_repeat2.png b/Src/resources/skins/Winamp Modern/player/button_repeat2.png Binary files differnew file mode 100644 index 00000000..600ef18c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_repeat2.png diff --git a/Src/resources/skins/Winamp Modern/player/button_shufflerepeat.png b/Src/resources/skins/Winamp Modern/player/button_shufflerepeat.png Binary files differnew file mode 100644 index 00000000..3dbc1340 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_shufflerepeat.png diff --git a/Src/resources/skins/Winamp Modern/player/button_videoavs.png b/Src/resources/skins/Winamp Modern/player/button_videoavs.png Binary files differnew file mode 100644 index 00000000..a7f914a3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_videoavs.png diff --git a/Src/resources/skins/Winamp Modern/player/button_volume.png b/Src/resources/skins/Winamp Modern/player/button_volume.png Binary files differnew file mode 100644 index 00000000..d6cf6909 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/button_volume.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_detach.png b/Src/resources/skins/Winamp Modern/player/buttons_detach.png Binary files differnew file mode 100644 index 00000000..49c739f2 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_detach.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_eq.png b/Src/resources/skins/Winamp Modern/player/buttons_eq.png Binary files differnew file mode 100644 index 00000000..85f4a055 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_eq.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_mlpl.png b/Src/resources/skins/Winamp Modern/player/buttons_mlpl.png Binary files differnew file mode 100644 index 00000000..e3369a6e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_mlpl.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_mlpl_bg.png b/Src/resources/skins/Winamp Modern/player/buttons_mlpl_bg.png Binary files differnew file mode 100644 index 00000000..9584d288 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_mlpl_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_pl.png b/Src/resources/skins/Winamp Modern/player/buttons_pl.png Binary files differnew file mode 100644 index 00000000..84be72f6 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_pl.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_switchto.png b/Src/resources/skins/Winamp Modern/player/buttons_switchto.png Binary files differnew file mode 100644 index 00000000..856c92e9 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_switchto.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_video.png b/Src/resources/skins/Winamp Modern/player/buttons_video.png Binary files differnew file mode 100644 index 00000000..70c32d94 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_video.png diff --git a/Src/resources/skins/Winamp Modern/player/buttons_vis.png b/Src/resources/skins/Winamp Modern/player/buttons_vis.png Binary files differnew file mode 100644 index 00000000..43cf2bd0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/buttons_vis.png diff --git a/Src/resources/skins/Winamp Modern/player/config_tabs.png b/Src/resources/skins/Winamp Modern/player/config_tabs.png Binary files differnew file mode 100644 index 00000000..70924578 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/config_tabs.png diff --git a/Src/resources/skins/Winamp Modern/player/ct_background.png b/Src/resources/skins/Winamp Modern/player/ct_background.png Binary files differnew file mode 100644 index 00000000..fd6f816a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/ct_background.png diff --git a/Src/resources/skins/Winamp Modern/player/ct_bg.png b/Src/resources/skins/Winamp Modern/player/ct_bg.png Binary files differnew file mode 100644 index 00000000..6f1ae61b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/ct_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/display.PNG b/Src/resources/skins/Winamp Modern/player/display.PNG Binary files differnew file mode 100644 index 00000000..d43e78ce --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/display.PNG diff --git a/Src/resources/skins/Winamp Modern/player/displayoverlay.png b/Src/resources/skins/Winamp Modern/player/displayoverlay.png Binary files differnew file mode 100644 index 00000000..433e70d5 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/displayoverlay.png diff --git a/Src/resources/skins/Winamp Modern/player/drawer_bg.PNG b/Src/resources/skins/Winamp Modern/player/drawer_bg.PNG Binary files differnew file mode 100644 index 00000000..d2a991ea --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/drawer_bg.PNG diff --git a/Src/resources/skins/Winamp Modern/player/drawer_bg_regions.png b/Src/resources/skins/Winamp Modern/player/drawer_bg_regions.png Binary files differnew file mode 100644 index 00000000..3d3c43cf --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/drawer_bg_regions.png diff --git a/Src/resources/skins/Winamp Modern/player/drawer_shadow.PNG b/Src/resources/skins/Winamp Modern/player/drawer_shadow.PNG Binary files differnew file mode 100644 index 00000000..f24f1980 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/drawer_shadow.PNG diff --git a/Src/resources/skins/Winamp Modern/player/eq_balance.png b/Src/resources/skins/Winamp Modern/player/eq_balance.png Binary files differnew file mode 100644 index 00000000..db493ca3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/eq_balance.png diff --git a/Src/resources/skins/Winamp Modern/player/eq_labels.png b/Src/resources/skins/Winamp Modern/player/eq_labels.png Binary files differnew file mode 100644 index 00000000..ecea3332 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/eq_labels.png diff --git a/Src/resources/skins/Winamp Modern/player/eq_textoverlay.png b/Src/resources/skins/Winamp Modern/player/eq_textoverlay.png Binary files differnew file mode 100644 index 00000000..10b17d3d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/eq_textoverlay.png diff --git a/Src/resources/skins/Winamp Modern/player/main_bg.png b/Src/resources/skins/Winamp Modern/player/main_bg.png Binary files differnew file mode 100644 index 00000000..f930e346 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/main_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/mainregions.png b/Src/resources/skins/Winamp Modern/player/mainregions.png Binary files differnew file mode 100644 index 00000000..40ecf5b0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/mainregions.png diff --git a/Src/resources/skins/Winamp Modern/player/menubar.PNG b/Src/resources/skins/Winamp Modern/player/menubar.PNG Binary files differnew file mode 100644 index 00000000..0cf4622c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/menubar.PNG diff --git a/Src/resources/skins/Winamp Modern/player/numfont.png b/Src/resources/skins/Winamp Modern/player/numfont.png Binary files differnew file mode 100644 index 00000000..250587fb --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/numfont.png diff --git a/Src/resources/skins/Winamp Modern/player/openclose_overlay.png b/Src/resources/skins/Winamp Modern/player/openclose_overlay.png Binary files differnew file mode 100644 index 00000000..1bf1c35e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/openclose_overlay.png diff --git a/Src/resources/skins/Winamp Modern/player/options_bg.PNG b/Src/resources/skins/Winamp Modern/player/options_bg.PNG Binary files differnew file mode 100644 index 00000000..9bc5cc93 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/options_bg.PNG diff --git a/Src/resources/skins/Winamp Modern/player/options_buttons2.png b/Src/resources/skins/Winamp Modern/player/options_buttons2.png Binary files differnew file mode 100644 index 00000000..7edb2d43 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/options_buttons2.png diff --git a/Src/resources/skins/Winamp Modern/player/options_more.png b/Src/resources/skins/Winamp Modern/player/options_more.png Binary files differnew file mode 100644 index 00000000..f64588e9 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/options_more.png diff --git a/Src/resources/skins/Winamp Modern/player/options_scrollbuttons.PNG b/Src/resources/skins/Winamp Modern/player/options_scrollbuttons.PNG Binary files differnew file mode 100644 index 00000000..6c085fc7 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/options_scrollbuttons.PNG diff --git a/Src/resources/skins/Winamp Modern/player/options_slider.png b/Src/resources/skins/Winamp Modern/player/options_slider.png Binary files differnew file mode 100644 index 00000000..334ad436 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/options_slider.png diff --git a/Src/resources/skins/Winamp Modern/player/pe_time.png b/Src/resources/skins/Winamp Modern/player/pe_time.png Binary files differnew file mode 100644 index 00000000..4bb90b9c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/pe_time.png diff --git a/Src/resources/skins/Winamp Modern/player/pe_time_font.png b/Src/resources/skins/Winamp Modern/player/pe_time_font.png Binary files differnew file mode 100644 index 00000000..ec790f1e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/pe_time_font.png diff --git a/Src/resources/skins/Winamp Modern/player/playbackstatus.png b/Src/resources/skins/Winamp Modern/player/playbackstatus.png Binary files differnew file mode 100644 index 00000000..11ab1986 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/playbackstatus.png diff --git a/Src/resources/skins/Winamp Modern/player/player_buttons.png b/Src/resources/skins/Winamp Modern/player/player_buttons.png Binary files differnew file mode 100644 index 00000000..7ca200f4 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/player_buttons.png diff --git a/Src/resources/skins/Winamp Modern/player/player_buttons_status.png b/Src/resources/skins/Winamp Modern/player/player_buttons_status.png Binary files differnew file mode 100644 index 00000000..3f98ce8e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/player_buttons_status.png diff --git a/Src/resources/skins/Winamp Modern/player/progressbar.PNG b/Src/resources/skins/Winamp Modern/player/progressbar.PNG Binary files differnew file mode 100644 index 00000000..c1b6bb2a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/progressbar.PNG diff --git a/Src/resources/skins/Winamp Modern/player/resize_pl.png b/Src/resources/skins/Winamp Modern/player/resize_pl.png Binary files differnew file mode 100644 index 00000000..c2848346 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/resize_pl.png diff --git a/Src/resources/skins/Winamp Modern/player/resizer.png b/Src/resources/skins/Winamp Modern/player/resizer.png Binary files differnew file mode 100644 index 00000000..fd44cd66 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/resizer.png diff --git a/Src/resources/skins/Winamp Modern/player/seekbar.png b/Src/resources/skins/Winamp Modern/player/seekbar.png Binary files differnew file mode 100644 index 00000000..96d26594 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/seekbar.png diff --git a/Src/resources/skins/Winamp Modern/player/seekpos.png b/Src/resources/skins/Winamp Modern/player/seekpos.png Binary files differnew file mode 100644 index 00000000..0ebb2dc4 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/seekpos.png diff --git a/Src/resources/skins/Winamp Modern/player/shufflerepeat_bg.PNG b/Src/resources/skins/Winamp Modern/player/shufflerepeat_bg.PNG Binary files differnew file mode 100644 index 00000000..feea47ec --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/shufflerepeat_bg.PNG diff --git a/Src/resources/skins/Winamp Modern/player/shufflerepeat_led.png b/Src/resources/skins/Winamp Modern/player/shufflerepeat_led.png Binary files differnew file mode 100644 index 00000000..aae2c295 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/shufflerepeat_led.png diff --git a/Src/resources/skins/Winamp Modern/player/smallfont.PNG b/Src/resources/skins/Winamp Modern/player/smallfont.PNG Binary files differnew file mode 100644 index 00000000..da3a58fa --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/smallfont.PNG diff --git a/Src/resources/skins/Winamp Modern/player/songinfo.png b/Src/resources/skins/Winamp Modern/player/songinfo.png Binary files differnew file mode 100644 index 00000000..e034c156 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/songinfo.png diff --git a/Src/resources/skins/Winamp Modern/player/songinfofont.png b/Src/resources/skins/Winamp Modern/player/songinfofont.png Binary files differnew file mode 100644 index 00000000..6b636b7e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/songinfofont.png diff --git a/Src/resources/skins/Winamp Modern/player/txt_config.PNG b/Src/resources/skins/Winamp Modern/player/txt_config.PNG Binary files differnew file mode 100644 index 00000000..ec888f86 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/txt_config.PNG diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_bg.png b/Src/resources/skins/Winamp Modern/player/videoavs_bg.png Binary files differnew file mode 100644 index 00000000..9052189d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_button_bg.png b/Src/resources/skins/Winamp Modern/player/videoavs_button_bg.png Binary files differnew file mode 100644 index 00000000..9d2ffa06 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_button_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_button_bg2.png b/Src/resources/skins/Winamp Modern/player/videoavs_button_bg2.png Binary files differnew file mode 100644 index 00000000..9c708a9b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_button_bg2.png diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_button_overlay.png b/Src/resources/skins/Winamp Modern/player/videoavs_button_overlay.png Binary files differnew file mode 100644 index 00000000..dd482e5e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_button_overlay.png diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg.png b/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg.png Binary files differnew file mode 100644 index 00000000..50a14e64 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg.png diff --git a/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg2.png b/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg2.png Binary files differnew file mode 100644 index 00000000..574f3a06 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/videoavs_buttonup_bg2.png diff --git a/Src/resources/skins/Winamp Modern/player/visualization_background.png b/Src/resources/skins/Winamp Modern/player/visualization_background.png Binary files differnew file mode 100644 index 00000000..624264a0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/visualization_background.png diff --git a/Src/resources/skins/Winamp Modern/player/visualization_overlay.png b/Src/resources/skins/Winamp Modern/player/visualization_overlay.png Binary files differnew file mode 100644 index 00000000..8df3d1d1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/visualization_overlay.png diff --git a/Src/resources/skins/Winamp Modern/player/volume_bar_bg.png b/Src/resources/skins/Winamp Modern/player/volume_bar_bg.png Binary files differnew file mode 100644 index 00000000..1c26e0cd --- /dev/null +++ b/Src/resources/skins/Winamp Modern/player/volume_bar_bg.png diff --git a/Src/resources/skins/Winamp Modern/screenshot.png b/Src/resources/skins/Winamp Modern/screenshot.png Binary files differnew file mode 100644 index 00000000..45647a23 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/screenshot.png diff --git a/Src/resources/skins/Winamp Modern/scripts/albumart.m b/Src/resources/skins/Winamp Modern/scripts/albumart.m new file mode 100644 index 00000000..2ef9ce27 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/albumart.m @@ -0,0 +1,113 @@ +#include <lib/std.mi> +#include "attribs.m" + +Global AlbumArtLayer waaa; +Global Layout aalayout; + +System.onScriptLoaded() +{ + initAttribs(); + Container albumart = System.getContainer("winamp.albumart"); + aalayout = albumart.getLayout("normal"); + waaa = getScriptGroup().findObject(getParam()); +} + +system.onScriptUnloading () +{ + if (!aalayout) return; + setPrivateInt("Winamp Modern", "Album Art XPos", aalayout.getLeft()); + setPrivateInt("Winamp Modern", "Album Art YPos", aalayout.getTop()); +} + +aalayout.onStartup () +{ + resize(getPrivateInt("Winamp Modern", "Album Art XPos", 0), getPrivateInt("Winamp Modern", "Album Art YPos", 0), getWidth(), getHeight()); +} + +aalayout.onSetVisible (Boolean onoff) +{ + if (!onoff) + { + albumart_visible_attrib.setData("0"); + } + else + { + albumart_visible_attrib.setData("1"); + } +} + +albumart_visible_attrib.onDataChanged () +{ + if (getData() == "1") + { + aalayout.show(); + } + else + { + aalayout.hide(); + } +} + +System.onKeyDown(String key) +{ + if (key == "alt+a") + { + if (albumart_visible_attrib.getData() == "0") + albumart_visible_attrib.setData("1"); + else + albumart_visible_attrib.setData("0"); + complete; + } +} + +waaa.onRightButtonDown (int x, int y) +{ + popupmenu p = new popupmenu; + + p.addCommand("Refresh Album Art", 1, 0, 0); + String path = getPath(getPlayItemMetaDataString("filename")); + if(path != "") + { + p.addCommand("Open Folder", 2, 0, 0); + } + + int result = p.popatmouse(); + delete p; + + if (result == 1) + { + waaa.refresh(); + } + else if (result == 2) + { + if(path != "") + { + System.navigateUrl(path); + } + else + { + String url = getPlayItemMetaDataString("streamurl"); + if(url != "") + { + System.navigateUrl(url); + } + } + } +} + +waaa.onLeftButtonDblClk (int x, int y) +{ + String path = getPath(getPlayItemMetaDataString("filename")); + if(path != "") + { + System.navigateUrl(path); + } + else + { + String url = getPlayItemMetaDataString("streamurl"); + if(url != "") + { + System.navigateUrl(url); + } + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/albumart.maki b/Src/resources/skins/Winamp Modern/scripts/albumart.maki Binary files differnew file mode 100644 index 00000000..02bdf775 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/albumart.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/attribs.m b/Src/resources/skins/Winamp Modern/scripts/attribs.m new file mode 100644 index 00000000..8304496f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/attribs.m @@ -0,0 +1,319 @@ +#ifndef included +#error This script can only be compiled as a #include +#endif + +#ifndef __ATTRIBS_M +#define __ATTRIBS_M + +#include <lib/config.mi> + +// ----------------------------------------------------------------------------------------------------------------- + +// this is the page that maps its items to the options menu, you can add attribs or more pages (submenus) +#define CUSTOM_OPTIONSMENU_ITEMS "{1828D28F-78DD-4647-8532-EBA504B8FC04}" + +// this is the page that maps its items to the windows menu (aka View), you can add attribs or more pages (submenus) +#define CUSTOM_WINDOWSMENU_ITEMS "{6559CA61-7EB2-4415-A8A9-A2AEEF762B7F}" + +// custom options submenu item page, you can add more, just use guidgen and Config.newItem() +#define CUSTOM_PAGE "{26E26319-AECA-4433-B8F1-F4A5BF2A9ED5}" + +// drawer config page +#define CUSTOM_PAGE_DRAWER "{C338B30F-2A04-4b10-871F-4E9D52D62806}" + +// menubars config page +#define CUSTOM_PAGE_MENUBARS "{12ED320E-6813-45ac-9F8E-78EE5B2B5F6D}" + +// main windowshade config page +#define CUSTOM_PAGE_WINDOWSHADE "{58F07E21-AE96-4899-B7BC-3640B40029FB}" + +// vis button config page +#define CUSTOM_PAGE_VISCMD "{D70E3ABF-D2FF-4b82-9A70-4B5DF1A5D942}" + +// notifier config page +#define CUSTOM_PAGE_NOTIFIER "{1AB968B3-8687-4a35-BA70-FCF6D92FB57F}" + +// songticker config page +#define CUSTOM_PAGE_SONGTICKER "{7061FDE0-0E12-11D8-BB41-0050DA442EF3}" + +// non exposed attribs page +#define CUSTOM_PAGE_NONEXPOSED "{E9C2D926-53CA-400f-9A4D-85E31755A4CF}" + + +// ----------------------------------------------------------------------------------------------------------------- + +Function initAttribs(); + +// ----------------------------------------------------------------------------------------------------------------- + +Global ConfigAttribute scrolldrawerattrib; +Global ConfigAttribute scrollconfigdrawerattrib; + +Global ConfigAttribute vis_detach_attrib; +Global ConfigAttribute video_detach_attrib; + +Global ConfigAttribute drawer_directiontop_attrib; +Global ConfigAttribute drawer_directionbottom_attrib; +Global ConfigAttribute drawer_directionbypass_attrib; + +Global ConfigAttribute eq_visible_attrib, albumart_visible_attrib; + +Global ConfigAttribute menubar_main_attrib; +Global ConfigAttribute menubar_pe_attrib; +Global ConfigAttribute menubar_ml_attrib; + +Global ConfigAttribute windowshade_linkall_attrib; +Global ConfigAttribute windowshade_linkposition_attrib; +Global ConfigAttribute windowshade_linknone_attrib; + +Global ConfigAttribute beatvisualization_attrib; + +Global ConfigAttribute viscmd_config_attrib; +Global ConfigAttribute viscmd_menu_attrib; + +Global ConfigAttribute notifier_minimized_attrib; +Global ConfigAttribute notifier_windowshade_attrib; +Global ConfigAttribute notifier_always_attrib; +Global ConfigAttribute notifier_never_attrib; +Global ConfigAttribute notifier_fadeintime_attrib; +Global ConfigAttribute notifier_fadeouttime_attrib; +Global ConfigAttribute notifier_holdtime_attrib; +Global ConfigAttribute notifier_disablefullscreen_attrib; +//Global ConfigAttribute notifier_opennowplaying_attrib; +Global ConfigAttribute notifier_artworkinnotification_attrib; + +Class ConfigAttribute songticker_scrolling_attrib; +Global songticker_scrolling_attrib songticker_scrolling_modern_attrib; +Global songticker_scrolling_attrib songticker_scrolling_classic_attrib; +Global songticker_scrolling_attrib songticker_scrolling_disabled_attrib; + +// ----------------------------------------------------------------------------------------------------------------- + +initAttribs() { + + // create the custom cfgpage for this session (if it does exist, it just returns it) + ConfigItem custom_page = Config.newItem("Winamp Modern", CUSTOM_PAGE); + ConfigItem custom_page_drawer = Config.newItem("Drawers", CUSTOM_PAGE_DRAWER); + ConfigItem custom_page_menubars = Config.newItem("Menus", CUSTOM_PAGE_MENUBARS); + ConfigItem custom_page_windowshade = Config.newItem("Main Windowshade Mode", CUSTOM_PAGE_WINDOWSHADE); + ConfigItem custom_page_viscmd = Config.newItem("Vis Buttons", CUSTOM_PAGE_VISCMD); + ConfigItem custom_page_notifier = Config.newItem("Notifications", CUSTOM_PAGE_NOTIFIER); + ConfigItem custom_page_songticker = Config.newItem("Songticker", CUSTOM_PAGE_SONGTICKER); + + ConfigItem custom_page_nonexposed = Config.newItem("Hidden", CUSTOM_PAGE_NONEXPOSED); + + // load up the cfgpage in which we'll insert our custom page + ConfigItem custom_options_page = Config.getItem(CUSTOM_OPTIONSMENU_ITEMS); + ConfigItem custom_windows_page = Config.getItem(CUSTOM_WINDOWSMENU_ITEMS); + + // this creates a submenu for this attribute + ConfigAttribute submenuattrib = custom_options_page.newAttribute("Winamp Modern", ""); + submenuattrib.setData(CUSTOM_PAGE); // discard any default value and point at our custom cfgpage + + ConfigAttribute drawersubmenu = custom_page.newAttribute("Drawers", ""); + drawersubmenu.setData(CUSTOM_PAGE_DRAWER); + + ConfigAttribute menubarssubmenu = custom_page.newAttribute("Menus", ""); + menubarssubmenu.setData(CUSTOM_PAGE_MENUBARS); + + ConfigAttribute windowshadesubmenu = custom_page.newAttribute("Main Windowshade Mode", ""); + windowshadesubmenu.setData(CUSTOM_PAGE_WINDOWSHADE); + + ConfigAttribute viscmdsubmenu = custom_page.newAttribute("Vis Shortcut Button", ""); + viscmdsubmenu.setData(CUSTOM_PAGE_VISCMD); + + ConfigAttribute notifiersubmenu = custom_page.newAttribute("Notifications", ""); + notifiersubmenu.setData(CUSTOM_PAGE_NOTIFIER); + + ConfigAttribute songtickersubmenu = custom_page.newAttribute("Songticker", ""); + songtickersubmenu.setData(CUSTOM_PAGE_SONGTICKER); + + + scrolldrawerattrib = custom_page_drawer.newAttribute("Animate Video/Vis Drawer (disabled if opacity < 100%)", "0"); + scrollconfigdrawerattrib = custom_page_drawer.newAttribute("Animate Config Drawer", "0"); + ConfigAttribute sep = custom_page_drawer.newAttribute("sep1", ""); sep.setData("-"); + drawer_directiontop_attrib = custom_page_drawer.newAttribute("Open Video/Vis from the top", "0"); + drawer_directionbottom_attrib = custom_page_drawer.newAttribute("Open Video/Vis from the bottom", "1"); + drawer_directionbypass_attrib = custom_page_drawer.newAttribute("Bypass setting to keep in screen", "1"); + if (drawer_directiontop_attrib.getData() == "1") drawer_directiontop_attrib.onDataChanged(); else drawer_directionbottom_attrib.onDataChanged(); + + menubar_main_attrib = custom_page_menubars.newAttribute("Show Menus in Main Window", "1"); + menubar_pe_attrib = custom_page_menubars.newAttribute("Show Menus in Playlist Editor", "1"); + menubar_ml_attrib = custom_page_menubars.newAttribute("Show Menus in Media Library", "1"); + + // create an attribute for each of our options, if the attribute already exists, it is returned + sep = custom_page.newAttribute("sep1", ""); sep.setData("-"); + vis_detach_attrib = custom_page.newAttribute("Detach Vis Window", "0"); + video_detach_attrib = custom_page.newAttribute("Detach Video Window", "0"); + eq_visible_attrib = custom_windows_page.newAttribute("Equalizer\tAlt+G", "0"); + albumart_visible_attrib = custom_windows_page.newAttribute("Album Art\tAlt+A", "1"); + + sep = custom_page.newAttribute("sep2", ""); sep.setData("-"); + beatvisualization_attrib = custom_page.newAttribute("Enable Beat Visualization", "1"); + + windowshade_linkall_attrib = custom_page_windowshade.newAttribute("Link Position and Width", "1"); + windowshade_linkposition_attrib = custom_page_windowshade.newAttribute("Link Position, Unlink Width", "0"); + windowshade_linknone_attrib = custom_page_windowshade.newAttribute("Unlink Position and Width", "0"); + + viscmd_menu_attrib = custom_page_viscmd.newAttribute("Open Context Menu", "1"); + viscmd_config_attrib = custom_page_viscmd.newAttribute("Open Configuration", "0"); + + notifier_always_attrib = custom_page_notifier.newAttribute("Show always", "0"); + notifier_windowshade_attrib = custom_page_notifier.newAttribute("Show with windowshade and when minimized", "0"); + notifier_minimized_attrib = custom_page_notifier.newAttribute("Show only when minimized", "0"); + notifier_never_attrib = custom_page_notifier.newAttribute("Never show", "1"); + sep = custom_page_notifier.newAttribute("sep1", ""); sep.setData("-"); + notifier_disablefullscreen_attrib = custom_page_notifier.newAttribute("Disable in fullscreen", "1"); + sep = custom_page_notifier.newAttribute("sep666", ""); sep.setData("-"); + //notifier_opennowplaying_attrib = custom_page_notifier.newAttribute("Open Now Playing on Click", "1"); + sep = custom_page_notifier.newAttribute("sep333", ""); sep.setData("-"); + notifier_artworkinnotification_attrib = custom_page_notifier.newAttribute("Show Now Playing Artwork", "1"); + + notifier_fadeintime_attrib = custom_page_nonexposed.newAttribute("Notifications fade in time", "1000"); + notifier_fadeouttime_attrib = custom_page_nonexposed.newAttribute("Notifications fade out time", "5000"); + notifier_holdtime_attrib = custom_page_nonexposed.newAttribute("Notifications display time", "2000"); + + songticker_scrolling_disabled_attrib = custom_page_songticker.newAttribute("Disable Songticker scrolling", "0"); + if (songticker_scrolling_disabled_attrib.getData() == "0") songticker_scrolling_modern_attrib = custom_page_songticker.newAttribute("Modern Songticker scrolling", "1"); + else songticker_scrolling_modern_attrib = custom_page_songticker.newAttribute("Modern Songticker scrolling", "0"); + songticker_scrolling_classic_attrib = custom_page_songticker.newAttribute("Classic Songticker scrolling", "0"); +} + +// ----------------------------------------------------------------------------------------------------------------- + +#ifdef MAIN_ATTRIBS_MGR + +Global Int attribs_mychange; + +#define NOOFF if (getData()=="0") { setData("1"); return; } + +drawer_directiontop_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + drawer_directionbottom_attrib.setData("0"); + drawer_directiontop_attrib.setData("1"); + attribs_mychange = 0; +} + +drawer_directionbottom_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + drawer_directiontop_attrib.setData("0"); + drawer_directionbottom_attrib.setData("1"); + attribs_mychange = 0; +} + +windowshade_linkall_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + windowshade_linkposition_attrib.setData("0"); + windowshade_linknone_attrib.setData("0"); + attribs_mychange = 0; +} + +windowshade_linkposition_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + windowshade_linkall_attrib.setData("0"); + windowshade_linknone_attrib.setData("0"); + attribs_mychange = 0; +} + +windowshade_linknone_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + windowshade_linkall_attrib.setData("0"); + windowshade_linkposition_attrib.setData("0"); + attribs_mychange = 0; +} + +viscmd_menu_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + viscmd_config_attrib.setData("0"); + attribs_mychange = 0; + updateVisCmd(); +} + +viscmd_config_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + viscmd_menu_attrib.setData("0"); + attribs_mychange = 0; + updateVisCmd(); +} + +notifier_always_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_never_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_always_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_minimized_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_windowshade_attrib.setData("0"); + notifier_always_attrib.setData("0"); + attribs_mychange = 0; +} + +notifier_windowshade_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + notifier_never_attrib.setData("0"); + notifier_always_attrib.setData("0"); + notifier_minimized_attrib.setData("0"); + attribs_mychange = 0; +} + +songticker_scrolling_modern_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_scrolling_disabled_attrib.setData("0"); + songticker_scrolling_classic_attrib.setData("0"); + attribs_mychange = 0; +} +songticker_scrolling_disabled_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_scrolling_modern_attrib.setData("0"); + songticker_scrolling_classic_attrib.setData("0"); + attribs_mychange = 0; +} +songticker_scrolling_classic_attrib.onDataChanged() { + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + songticker_scrolling_modern_attrib.setData("0"); + songticker_scrolling_disabled_attrib.setData("0"); + attribs_mychange = 0; +} +#endif + +#endif diff --git a/Src/resources/skins/Winamp Modern/scripts/beatvisualization.m b/Src/resources/skins/Winamp Modern/scripts/beatvisualization.m new file mode 100644 index 00000000..af142e9d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/beatvisualization.m @@ -0,0 +1,139 @@ +#include <lib/std.mi> +#include "attribs.m" + +Function setObjects(); + +Global Group frameGroup,beatdisplay; +Global Layer beatOverlay,DisplayRight,DisplayRightOverlay,DisplaySongtickerBG,VisOverlay; +Global Timer refreshEQ; +Global AnimatedLayer beatbarLeft,beatbarRight; +Global int lastBeatLeft,lastBeatRight; +Global Button Toggler,Toggler2; +Global Int dobeat2; + +System.onScriptLoaded() { + initAttribs(); + frameGroup = getScriptGroup(); + beatdisplay = frameGroup.findObject("player.normal.display.beatvisualization"); + beatOverlay = frameGroup.findObject("beatdisplayoverlay"); + beatbarLeft = frameGroup.findObject("beatleft"); + beatbarRight = frameGroup.findObject("beatright"); + + Toggler = frameGroup.findObject("beatvisualization"); + Toggler2 = frameGroup.findObject("beatvisualization2"); + + DisplayRight = frameGroup.findObject("display.right"); + DisplayRightOverlay = frameGroup.findObject("display.right.overlay2"); + DisplaySongtickerBG = frameGroup.findObject("display.st.right"); + VisOverlay = frameGroup.findObject("visualization.overlay"); + + lastBeatLeft = 0; + lastBeatRight = 0; + + refreshEQ = new Timer; + refreshEQ.setDelay(10); +} + +System.onscriptunloading() { + delete refreshEQ; +} + +setObjects() { + int group_width = frameGroup.getWidth(); + + if ( group_width % 2 !=0 ) { + DisplayRight.setXmlParam("image","player.display.right"); + DisplayRightOverlay.setXmlParam("image","player.display.right"); + DisplaySongtickerBG.setXmlParam("image","player.display.songticker.bg.right"); + VisOverlay.setXmlParam("image","player.visualization.overlay"); + } else { + DisplayRight.setXmlParam("image","player.display.right2"); + DisplayRightOverlay.setXmlParam("image","player.display.right2"); + DisplaySongtickerBG.setXmlParam("image","player.display.songticker.bg.right2"); + VisOverlay.setXmlParam("image","player.visualization.overlay2"); + } + + if ( group_width > 480 ) { + int newXpos = (group_width-60)/2; + beatdisplay.setXmlParam("x", IntegerToString(newXpos)); + beatdisplay.show(); + + if ( beatvisualization_attrib.getData()=="1" ) { + refreshEQ.stop(); + refreshEQ.start(); + } else { + refreshEQ.stop(); + beatbarLeft.gotoframe(0); + beatbarRight.gotoframe(0); + } + } else { + beatdisplay.hide(); + refreshEQ.stop(); + } +} + +frameGroup.onResize(int x, int y, int w, int h) { + setObjects(); +} + +refreshEQ.onTimer() { + int beatLeft= System.getLeftVuMeter(); + int beatRight= System.getRightVuMeter(); + + int frameLeft=beatLeft/16; + int frameRight=beatRight/16; + + if (frameLeft>14) frameLeft=14; + if (frameRight>14) frameRight=14; + + if (frameLeft<lastBeatLeft) { + frameLeft=lastBeatLeft-1; + if (frameLeft<0) frameLeft=0; + } + + if (frameRight<lastBeatRight) { + frameRight=lastBeatRight-1; + if (frameRight<0) frameRight=0; + } + + lastBeatLeft=frameLeft; + lastBeatRight=frameRight; + + beatbarLeft.gotoframe(frameLeft); + beatbarRight.gotoframe(frameRight); +} + +beatvisualization_attrib.onDataChanged() { + setObjects(); +} + +System.onKeyDown(String key) { + if (key == "shift+ctrl+alt") { + dobeat2 = 1; + complete; + } else dobeat2 = 0; +} + +Toggler.onLeftClick() { + if ( beatvisualization_attrib.getData()=="1" ) { + beatvisualization_attrib.setData("0"); + } else { + beatvisualization_attrib.setData("1"); + } +} + +Toggler2.onActivate(boolean on) { + if (!dobeat2) { Toggler.leftClick(); return; } + refreshEQ.stop(); + + if (on) { + beatbarLeft.setXMLParam("image","player.display.beat.left2"); + beatbarRight.setXMLParam("image","player.display.beat.right2"); + beatOverlay.hide(); + } else { + beatbarLeft.setXMLParam("image","player.display.beat.left"); + beatbarRight.setXMLParam("image","player.display.beat.right"); + beatOverlay.show(); + } + setObjects(); +} diff --git a/Src/resources/skins/Winamp Modern/scripts/beatvisualization.maki b/Src/resources/skins/Winamp Modern/scripts/beatvisualization.maki Binary files differnew file mode 100644 index 00000000..fc710ebe --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/beatvisualization.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/buildall.bat b/Src/resources/skins/Winamp Modern/scripts/buildall.bat new file mode 100644 index 00000000..e7095811 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/buildall.bat @@ -0,0 +1,2 @@ +for %%a in (*.m) do "H:\Program Files\Nullsoft\sandbox\wasabi\mc.exe" %%a +pause diff --git a/Src/resources/skins/Winamp Modern/scripts/configtabs.m b/Src/resources/skins/Winamp Modern/scripts/configtabs.m new file mode 100644 index 00000000..8cd803c8 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/configtabs.m @@ -0,0 +1,280 @@ +#include <lib/std.mi> +#include "attribs.m" + +function setTabs(int tabstate); +function setTabContent(int contentstate); + +function OpenDrawer(int animate); +function CloseDrawer(int animate); +function updateAttribs(); + +function ShowDrawer(); +function adjustSnapPoints(int DrawerOpen); + +Global Group frameGroup,PlayerMain,VideoVisGroup; +Global Group tabs,tEQon,tEQoff,tOPTIONSon,tOPTIONSoff,tCOLORTHEMESon,tCOLORTHEMESoff; +Global Group ContentEQ,ContentOPTIONS,ContentCOLORTHEMES; +Global Layer mouseLayerEQ,mouseLayerOPTIONS,mouseLayerCOLORTHEMES; +Global Button btnClose,btnOpen; +Global Group Drawer,DrawerShadow,DrawerContent; +Global GuiObject ColorThemes; +Global Layout main; +Global Int mychange; +Global Boolean loaded=0; +Global Timer deferred_opendrawer; + +System.onScriptLoaded() { + initAttribs(); + + frameGroup = getScriptGroup(); + main = frameGroup.getParentLayout(); + + tabs=frameGroup.findObject("config.tabs"); + tEQon=frameGroup.findObject("config.tab.eq.on"); + tEQoff=frameGroup.findObject("config.tab.eq.off"); + tOPTIONSon=frameGroup.findObject("config.tab.options.on"); + tOPTIONSoff=frameGroup.findObject("config.tab.options.off"); + tCOLORTHEMESon=frameGroup.findObject("config.tab.colorthemes.on"); + tCOLORTHEMESoff=frameGroup.findObject("config.tab.colorthemes.off"); + + ColorThemes=frameGroup.findObject("colorthemes"); + PlayerMain=frameGroup.findObject("player.main"); + VideoVisGroup = frameGroup.findObject("AVSGroup"); + + ContentEQ=frameGroup.findObject("player.normal.drawer.eq"); + ContentOPTIONS=frameGroup.findObject("player.normal.drawer.options"); + ContentCOLORTHEMES=frameGroup.findObject("player.normal.drawer.colorthemes"); + + mouseLayerEQ=frameGroup.findObject("mousetrapTabEQ"); + mouseLayerOPTIONS=frameGroup.findObject("mousetrapTabOPTIONS"); + mouseLayerCOLORTHEMES=frameGroup.findObject("mousetrapTabCOLORTHEMES"); + + btnClose = frameGroup.findObject("drawer.button.close"); + btnOpen = frameGroup.findObject("drawer.button.open"); + drawer = frameGroup.findObject("player.normal.drawer"); + DrawerShadow = frameGroup.findObject("player.normal.drawer.shadow"); + DrawerContent = frameGroup.findObject("player.normal.drawer.content"); + + int tabEQwidth=tEQon.getWidth(); + int tabOPTIONSwidth=tOPTIONSon.getWidth(); + + int tOPTIONSx=tabEQwidth-3; + int tCOLORTHEMESx=tabEQwidth+tabOPTIONSwidth-6; + + tOPTIONSon.setXmlParam("x",integertostring(tOPTIONSx)); + tOPTIONSoff.setXmlParam("x",integertostring(tOPTIONSx)); + tCOLORTHEMESoff.setXmlParam("x",integertostring(tCOLORTHEMESx)); + tCOLORTHEMESon.setXmlParam("x",integertostring(tCOLORTHEMESx)); + + mychange = 1; + setTabs(getPrivateInt("winamp5", "ConfigTab", 1)); + mychange = 0; + if (getPrivateInt("winamp5", "DrawerOpen", 0)) { + OpenDrawer(0); + adjustSnapPoints(1); + } else { + adjustSnapPoints(0); + } + loaded=1; + deferred_opendrawer = new Timer; + deferred_opendrawer.setDelay(250); +} + +System.onScriptUnloading() { + delete deferred_opendrawer; +} + +setTabs(int tabstate) { + + tEQon.hide(); + tOPTIONSon.hide(); + tCOLORTHEMESon.hide(); + + if (tabstate==1) { + tEQon.show(); + } + if (tabstate==2) { + tOPTIONSon.show(); + } + if (tabstate==3) { + tCOLORTHEMESon.show(); + } + + setTabContent(tabstate); + setPrivateInt("winamp5", "ConfigTab", tabstate); + updateAttribs(); +} + +setTabContent(int contentstate) { + if (contentstate==1) { + ContentEQ.show(); + ContentOPTIONS.hide(); + ContentCOLORTHEMES.hide(); + } + if (contentstate==2) { + ContentEQ.hide(); + ContentOPTIONS.show(); + ContentCOLORTHEMES.hide(); + } + if (contentstate==3) { + ContentEQ.hide(); + ContentOPTIONS.hide(); + ContentCOLORTHEMES.show(); + } +} + +mouseLayerEQ.onLeftButtonDown(int x, int y) { + setTabs(1); +} + +mouseLayerOPTIONS.onLeftButtonDown(int x, int y) { + setTabs(2); +} + +mouseLayerCOLORTHEMES.onLeftButtonDown(int x, int y) { + setTabs(3); +} + +OpenDrawer(int animate) { + btnOpen.hide(); + btnClose.show(); + main.beforeRedock(); + if (animate && scrollconfigdrawerattrib.getData() == "1") { + lockUI(); + drawer.setTargetX(drawer.getGuiX()); + drawer.setTargetY(-147); + drawer.setTargetW(drawer.getGuiW()); + drawer.setTargetH(drawer.getGuiH()); + drawer.setTargetSpeed(1); + drawer.gotoTarget(); + } else { + drawer.setXMLParam("y","-147"); + setPrivateInt("winamp5", "DrawerOpen", 1); + ColorThemes.show(); + adjustSnapPoints(1); + updateAttribs(); + main.Redock(); + } + DrawerShadow.show(); +// main.setXmlParam("minimum_h", "397"); +} + +closeDrawer(int animate) { + main.beforeRedock(); +// main.setXmlParam("minimum_h", "280"); + ColorThemes.hide(); + + btnClose.hide(); + btnOpen.show(); + if (animate && scrollconfigdrawerattrib.getData() == "1") { + lockUI(); + drawer.setTargetX(drawer.getGuiX()); + drawer.setTargetY(-263); + drawer.setTargetW(drawer.getGuiW()); + drawer.setTargetH(drawer.getGuiH()); + drawer.setTargetSpeed(1); + drawer.gotoTarget(); + } else { + drawer.setXMLParam("y","-263"); + DrawerShadow.hide(); + setPrivateInt("winamp5", "DrawerOpen", 0); + adjustSnapPoints(0); + updateAttribs(); + main.redock(); + } +} + +btnClose.onLeftClick() { + closeDrawer(1); +} + +btnOpen.onLeftClick() { + openDrawer(1); +} + +drawer.onTargetReached() { + if (btnClose.isVisible()) { + setPrivateInt("winamp5", "DrawerOpen", 1); + ColorThemes.show(); + adjustSnapPoints(1); + } else { + DrawerShadow.hide(); + setPrivateInt("winamp5", "DrawerOpen", 0); + adjustSnapPoints(0); + } + updateAttribs(); + main.redock(); + unlockUI(); +} + +ShowDrawer() { + drawer.setXmlParam("y", "-147"); + ColorThemes.show(); + btnOpen.hide(); + btnClose.show(); + DrawerShadow.show(); + adjustSnapPoints(1); +} + +adjustSnapPoints(int DrawerOpen) { + int menuHeight=0; + if (menubar_main_attrib.getData() == "0") menuHeight=17; + if (DrawerOpen) { + main.snapAdjust(0,0,0,0+menuHeight); + } else { + main.snapAdjust(0,0,0,116+menuHeight); + } +} + +menubar_main_attrib.onDataChanged() { + int menuHeight=0; + if (getData() == "0") menuHeight=17; + main.beforeRedock(); + int DrawerOpen=getPrivateInt("winamp5", "DrawerOpen", 0); + if (DrawerOpen) { + main.snapAdjust(0,0,0,0+menuHeight); + } else { + main.snapAdjust(0,0,0,116+menuHeight); + } + main.Redock(); +} + +main.onResize(int x, int y, int w, int h) { + int newXpos=w/2-163; + DrawerContent.setXmlParam("x",integertostring(newXpos)); +} + +eq_visible_attrib.onDataChanged() { + if (mychange) return; + mychange = 1; + if (getData() == "1") { + main.getContainer().switchToLayout("normal"); // instead of main.show(), or linkwidth wont work + deferred_opendrawer.start(); + } if (getData() == "0") { + closeDrawer(1); + } + mychange = 0; +} + +deferred_opendrawer.onTimer() { + stop(); + setTabs(1); + if (btnOpen.isVisible()) openDrawer(1); +} + +updateAttribs() { + if (mychange) return; + mychange = 1; + if (tabstate == 1 && !btnOpen.isVisible()) eq_visible_attrib.setData("1"); else eq_visible_attrib.setData("0"); + mychange = 0; +} + +System.onKeyDown(String key) { + if (key == "alt+g") { + if (eq_visible_attrib.getData() == "0") + eq_visible_attrib.setData("1"); + else + eq_visible_attrib.setData("0"); + complete; + } +} diff --git a/Src/resources/skins/Winamp Modern/scripts/configtabs.maki b/Src/resources/skins/Winamp Modern/scripts/configtabs.maki Binary files differnew file mode 100644 index 00000000..d12d33d0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/configtabs.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/configtarget.m b/Src/resources/skins/Winamp Modern/scripts/configtarget.m new file mode 100644 index 00000000..2aad82e2 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/configtarget.m @@ -0,0 +1,97 @@ +#include <lib/std.mi> + +// ------------------------------------------------------------------------------------ +Global GuiObject target; +Global ComponentBucket buck; +// ------------------------------------------------------------------------------------ +Function turnAllOffExcept(GuiObject except); +Function turnOn(GuiObject obj); +Function turnOff(GuiObject obj); +// ------------------------------------------------------------------------------------ + + +// ------------------------------------------------------------------------------------ +// init +// ------------------------------------------------------------------------------------ +System.onScriptLoaded() { + target = getScriptGroup().findObject("skin.config.target"); + buck = getScriptGroup().findObject("my.bucket"); + + // turn off all + GuiObject o = NULL; + turnAllOffExcept(o); +} + +// ------------------------------------------------------------------------------------ +// save scroller position +// ------------------------------------------------------------------------------------ +System.onScriptUnloading() { + if (buck) { + setPrivateInt("configmenu", "last_scroll", buck.getScroll()); + } +} + +// ------------------------------------------------------------------------------------ +// turn on last open +// ------------------------------------------------------------------------------------ +buck.onStartup() { + setScroll(getPrivateInt("configmenu", "last_scroll", 0)); + Group g = buck.enumChildren(getPrivateInt("configmenu", "last_page", 0)); + if (!g) g = buck.enumChildren(0); + if (!g) return; + ToggleButton btn = g.getObject("btn"); + if (btn) btn.leftClick(); +} + +// ------------------------------------------------------------------------------------ +// this is called by the bucket button to switch to a new group +// ------------------------------------------------------------------------------------ +target.onAction(String action, String param, int x, int y, int p1, int p2, GuiObject source) { + if (getToken(action,";",0) == "switchto") { + String grp = getToken(action, ";", 1); + String is_subpage = getToken(action, ";", 2); + target.setXmlParam("groupid", grp); + + if (is_subpage!="subpage") turnAllOffExcept(source.getParent()); // getParent because the source is the button itself, the parent is the whole group item in the bucket + } +} + +// ------------------------------------------------------------------------------------ +// turn off all buttons except for the parameter, also save last_page param based on param item +// ------------------------------------------------------------------------------------ +turnAllOffExcept(GuiObject except) { + if (!buck) return; + int i=0; + // enumerate all inserted groups, turn them off if they're not our exception + while (i<buck.getNumChildren()) { + GuiObject obj = buck.enumChildren(i); + if (obj == except) { // otherwise record last page + setPrivateInt("configmenu", "last_page", i); + i++; + continue; + } + if (obj == NULL) { break; } // shoundnt happen + turnOff(obj); + i++; + } + // turn on the clicked item + if (except) turnOn(except); +} + +// ------------------------------------------------------------------------------------ +turnOn(GuiObject obj) { + Group gobj = obj; + + // otherwise we just need this : + ToggleButton tg = gobj.getObject("btn"); + tg.setActivated(1); +} + +// ------------------------------------------------------------------------------------ +turnOff(GuiObject obj) { + Group gobj = obj; + + // otherwise we just need this : + ToggleButton tg = gobj.getObject("btn"); + tg.setActivated(0); +} diff --git a/Src/resources/skins/Winamp Modern/scripts/configtarget.maki b/Src/resources/skins/Winamp Modern/scripts/configtarget.maki Binary files differnew file mode 100644 index 00000000..a2cc4f18 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/configtarget.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/crossfade.m b/Src/resources/skins/Winamp Modern/scripts/crossfade.m new file mode 100644 index 00000000..9c915997 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/crossfade.m @@ -0,0 +1,55 @@ +#include <lib/std.mi> + +Global Group frameGroup; +Global Slider slidercb; +Global Text fadertext; +Global Button CFIncrease, CFDecrease; +Global ToggleButton Crossfade; +Global Layer DisplayOverlay; + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + slidercb = frameGroup.findObject("sCrossfade"); + fadertext = frameGroup.findObject("CFDisplay"); + CFIncrease = frameGroup.findObject("CrossfadeIncrease"); + CFDecrease = frameGroup.findObject("CrossfadeDecrease"); + Crossfade = frameGroup.findObject("Crossfade"); + DisplayOverlay = frameGroup.findObject("crossfade.display.overlay"); + slidercb.onSetPosition(slidercb.getPosition()); + + Crossfade.onToggle(Crossfade.getActivated()); +} + +slidercb.onSetPosition(int val) { + String s = IntegerToString(val); + fadertext.setText(s); +} + +CFIncrease.onLeftClick() { + slidercb.SetPosition(slidercb.getPosition()+1); +} + +CFDecrease.onLeftClick() { + slidercb.SetPosition(slidercb.getPosition()-1); +} + +Crossfade.onToggle(boolean on) { + if (!on) + { + fadertext.setAlpha(150); + CFIncrease.setAlpha(150); + CFDecrease.setXmlParam("ghost" , "1"); + CFDecrease.setAlpha(150); + CFIncrease.setXmlParam("ghost" , "1"); + DisplayOverlay.show(); + } + else + { + fadertext.setAlpha(255); + CFIncrease.setAlpha(255); + CFDecrease.setAlpha(255); + CFIncrease.setXmlParam("ghost" , "0"); + CFDecrease.setXmlParam("ghost" , "0"); + DisplayOverlay.hide(); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/crossfade.maki b/Src/resources/skins/Winamp Modern/scripts/crossfade.maki Binary files differnew file mode 100644 index 00000000..0a8289e3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/crossfade.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/display.m b/Src/resources/skins/Winamp Modern/scripts/display.m new file mode 100644 index 00000000..0ed9e1ef --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/display.m @@ -0,0 +1,120 @@ +#include <lib/std.mi> +#include "attribs.m" + +Global Group frameGroup; +Global Togglebutton ShuffleBtn,RepeatBtn,ShuffleBtn2,RepeatBtn2; +Global Timer SongTickerTimer; +Global Text InfoTicker; +Global GuiObject SongTicker; +Global Slider Balance; +Global Layout normal; + +function setSongtickerScrolling(); + +System.onScriptLoaded() { + initAttribs(); + frameGroup = getScriptGroup(); + SongTicker = frameGroup.findObject("songticker"); + InfoTicker = frameGroup.findObject("infoticker"); + normal = frameGroup.getParentLayout(); + + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(1000); + + RepeatBtn = frameGroup.findObject("Repeat"); + ShuffleBtn = frameGroup.findObject("Shuffle"); + RepeatBtn2 = frameGroup.findObject("RepeatDisplay"); + ShuffleBtn2 = frameGroup.findObject("ShuffleDisplay"); + + Balance = frameGroup.findObject("Balance"); + setSongtickerScrolling(); +} + +normal.onAction (String action, String param, Int x, int y, int p1, int p2, GuiObject source) +{ + if (strlower(action) == "showinfo") + { + SongTicker.hide(); + SongTickerTimer.start(); + InfoTicker.setText(param); + InfoTicker.show(); + + } + else if (strlower(action) == "cancelinfo") + { + SongTickerTimer.onTimer (); + } +} + +SongTickerTimer.onTimer() { + SongTicker.show(); + InfoTicker.hide(); + SongTickerTimer.stop(); +} + +System.onScriptUnloading() { + delete SongTickerTimer; +} + +Balance.onSetPosition(int newpos) +{ + string t=translate("Balance")+":"; + if (newpos==127) t+= " " + translate("Center"); + if (newpos<127) t += " " + integerToString((100-(newpos/127)*100))+"% "+translate("Left"); + if (newpos>127) t += " " + integerToString(((newpos-127)/127)*100)+"% "+translate("Right"); + + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText(t); +} + +RepeatBtn.onToggle(boolean on) { + SongTickerTimer.start(); + int v = getCurCfgVal(); + SongTicker.hide(); + InfoTicker.show(); + if (v == 0) InfoTicker.setText("Repeat: OFF"); + else if (v > 0) InfoTicker.setText("Repeat: ALL"); + else if (v < 0) InfoTicker.setText("Repeat: TRACK"); +} + +ShuffleBtn.onToggle(boolean on) { + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + if (on) InfoTicker.setText("Playlist Shuffling: ON"); else InfoTicker.setText("Playlist Shuffling: OFF"); +} + +RepeatBtn2.onToggle(boolean on) { + SongTickerTimer.start(); + int v = getCurCfgVal(); + SongTicker.hide(); + InfoTicker.show(); + if (v == 0) InfoTicker.setText("Repeat: OFF"); + else if (v > 0) InfoTicker.setText("Repeat: ALL"); + else if (v < 0) InfoTicker.setText("Repeat: TRACK"); +} + +ShuffleBtn2.onToggle(boolean on) { + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + if (on) InfoTicker.setText("Playlist Shuffling: ON"); else InfoTicker.setText("Playlist Shuffling: OFF"); +} + +songticker_scrolling_attrib.onDataChanged() { + setSongtickerScrolling(); +} + +setSongtickerScrolling() { + if (songticker_scrolling_modern_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","bounce"); + } + else if (songticker_scrolling_classic_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","scroll"); + } + else { + SongTicker.setXMLParam("ticker","off"); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/display.maki b/Src/resources/skins/Winamp Modern/scripts/display.maki Binary files differnew file mode 100644 index 00000000..e9190556 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/display.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/drawer.m b/Src/resources/skins/Winamp Modern/scripts/drawer.m new file mode 100644 index 00000000..7e5c3698 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/drawer.m @@ -0,0 +1,1059 @@ +// ----------------------------------------------------------------------- +// Generic Video/Vis Application Drawer, by Nullsoft. +// +// Please #include this script, and override the appropriate events +// (see end of file), rather than modifying this script into your own +// version. +// +// *You should not have to edit this file*, it's just a bad idea, period. +// If you need something that is not supported in this version, we +// recommend that you contact Nullsoft to suggest the feature. +// +// Satisfying user experience depends on *fully working* scripts, if you +// insist on taking this file and modifying it for yourself, be sure to +// *thoroughly* test its behavior once you are done. +// +// If you do add a feature, please contact us so that your extention can +// be made available to others without each skin developper making its +// own (potentially broken) implementation. +// +// Note: this script requires mc 1.1.2+ to compile, and wa5.8+ to run. +// ----------------------------------------------------------------------- + +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include <lib/std.mi> +#include <lib/config.mi> +#include <lib/winampconfig.mi> + +// call these -- the first two are mandatory +Function initDrawer(Layout lay, String id); // call in your onScriptLoaded(); +Function shutdownDrawer(); // call in your onScriptUnloading(); +Function openDrawer(); // opens the drawer to the last page unless video plays, in which case it opens to it. does animations according to attribs +Function openDrawerForVideo(); // opens the drawer to the video page, does animations according to attribs +Function openDrawerForVis(); // opens the drawer to the vis page, does animations according to attribs +Function openDrawerForNothing(); // opens the drawer without putting anything in it, does animations according to attribs +Function closeDrawer(); // closes the drawer, does animations according to attribs +Function detachVis(); +Function attachVis(); +Function detachVideo(); +Function attachVideo(); +Function switchToVis(); +Function switchToVideo(); +Function Int getDrawerState(); // returns OPEN or CLOSED +Function Int getDrawerContent(); // returns CONTENT_VIDEO, CONTENT_VIS or CONTENT_NOTHING +Function maximizeWindow(); +Function restoreWindow(); +Function Int isDrawerToTop(); // returns 1 if the drawer will open to the top or will close from the top, rather than the normal to/from bottom +// whenever the main window is resized while its drawer is closed, you should compute a new layout +// height for the next opening of the drawer, this will avoid opening to a gigantic height after +// closing a big video and resizing the player horizontally. return -1 if you do not want this feature +Function Int getDrawerOpenAutoHeight(int layoutwidth); + +// implement these -- mandatory +Function WindowHolder getVideoWindowHolder(); +Function WindowHolder getVisWindowHolder(); +Function Int getDrawerClosedHeight(); +Function Int getDefaultDrawerOpenHeight(); + +// override these -- optional +Function onBeforeOpeningDrawer(); +Function onBeforeClosingDrawer(); +Function onDoneOpeningDrawer(); +Function onDoneClosingDrawer(); +Function onShowVis(); +Function onHideVis(); +Function onShowVideo(); +Function onHideVideo(); +Function onAttachVideo(); +Function onDetachVideo(); +Function onAttachVis(); +Function onDetachVis(); +Function onBeforeMaximize(); +Function onAfterMaximize(); +Function onBeforeRestore(); +Function onAfterRestore(); +Function onCancelMaximize(); + +// bind these -- mandatory (they don't have to be exposed in the menus) +Global ConfigAttribute __drawer_directiontop_attrib; +Global ConfigAttribute __scrolldrawerattrib; +Global ConfigAttribute __drawer_directionbypass_attrib; +Global ConfigAttribute __vis_detach_attrib; +Global ConfigAttribute __video_detach_attrib; + +// ----------------------------------------------------------------------- + +#define VIDEO_GUID "{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" +#define VIS_GUID "{0000000A-000C-0010-FF7B-01014263450C}" + +// this is used to temporarilly disable playback stop on video window close, in case it's set +#define SKINTWEAKS_CFGPAGE "{0542AFA4-48D9-4c9f-8900-5739D52C114F}" + +// this is used to handle video auto fullscreen on play when the video window is attached to the drawer +#define VIDEO_CONFIG_GROUP "{2135E318-6919-4bcf-99D2-62BE3FCA8FA6}" + +#define DEBUG + +#ifdef FALSE +#undef FALSE +#endif +#define FALSE 0 +#ifdef TRUE +#undef TRUE +#endif +#define TRUE -1 + +#define CLOSED 0 +#define OPEN 1 + +#define DIRECTION_NONE 0 +#define DIRECTION_OPENING 1 +#define DIRECTION_CLOSING 2 + +#define CONTENT_NOTHING 0 +#define CONTENT_VIDEO 1 +#define CONTENT_VIS 2 + +#define DETACHED_VIS 1 +#define DETACHED_VIDEO 2 + +// avoid calling these functions directly. if you do so, be sure to know what +// you're doing, and to test your script thoroughly. + +Function drawer_expandWindow(int withdrawer); +Function drawer_reduceWindow(int withdrawer); +Function drawer_showWindowContent(); +Function drawer_hideWindowContent(); +Function drawer_hideVis(); +Function drawer_showVis(); +Function drawer_hideVideo(); +Function drawer_showVideo(); +Function drawer_dc_showVis(); +Function drawer_dc_showVideo(); +Function drawer_dc_hideVis(); +Function drawer_dc_hideVideo(); +Function drawer_dc_linkup_showVis(); +Function drawer_dc_linkup_showVideo(); +Function drawer_doDetachVis(); +Function drawer_doAttachVis(); +Function drawer_doDetachVideo(); +Function drawer_doAttachVideo(); +Function drawer_disablePSOVC(); +Function drawer_enablePSOVC(); +Function drawer_linkup_showVis(); +Function drawer_linkup_showVideo(); +Function drawer_doMaximizeWindow(int notif); + +Global Int __drawer_direction; + +Global Timer __callbackTimer; +Global Int __callback_vis_show, __callback_video_show, __callback_vis_hide, __callback_video_hide; +Global Timer __callbackTimer2; +Global Int __callback2_what; +Global Timer __PSOVCTimer; +Global Int __bypasscancel; +Global Int __isinited; +Global Int __play_auto_fs_video; + +Global Int __hiding_video, __hiding_vis, __showing_vis, __showing_video; +Global Int __last_forcedbottom, __last_forcedtop; +Global Timer __tempDisable; + +Global Layout __main; +Global Container __maincontainer; + +Global String __myname; +Global Int __windowshade_openvid; +Global Int __windowshade_openvis; + +Global int __maximized; +Global int __oldx,__oldy,__oldw,__oldh; + +// ----------------------------------------------------------------------- +initDrawer(Layout lay, String name) { + // todo: test all attribs assigned + + __isinited = 0; + __play_auto_fs_video = 0; + + __main = lay; + __maincontainer = __main.getContainer(); + + if (name == "") __myname = "Drawer"; + else __myname = name; + __drawer_direction = DIRECTION_NONE; + + drawer_hideVis(); + drawer_hideVideo(); + + __callbackTimer = new Timer; + __callbackTimer.setDelay(1); + __callbackTimer2 = new Timer; + __callbackTimer2.setDelay(1); + __PSOVCTimer = new Timer; + __PSOVCTimer.setDelay(1000); + __tempDisable = new Timer; + __tempDisable.setDelay(50); + + __maximized = getPrivateInt("winamp5", __myname+"Maximized", 0); + if (__maximized) { + onBeforeMaximize(); + onAfterMaximize(); + } + + __oldx=getPrivateInt("winamp5", __myname+"ox", 0); + __oldy=getPrivateInt("winamp5", __myname+"oy", 0); + __oldw=getPrivateInt("winamp5", __myname+"ow", 0); + __oldh=getPrivateInt("winamp5", __myname+"oh", 0); + __last_forcedtop = getPrivateInt("winamp5", __myname+"ForcedTop", 0); + __last_forcedbottom = getPrivateInt("winamp5", __myname+"ForcedBottom", 0); +} + +// ----------------------------------------------------------------------- +shutdownDrawer() { + delete __callbackTimer; + delete __callbackTimer2; + delete __PSOVCTimer; + delete __tempDisable; +} + +// ----------------------------------------------------------------------- +Int isDrawerToTop() { + int fromtop = 0; + if (__drawer_directiontop_attrib.getData() =="1") fromtop = 1; + if (__drawer_directionbypass_attrib.getData() == "0") return fromtop; + + int curstate = getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + if (curstate != CLOSED) return __last_forcedtop; + + int h=getPrivateInt("winamp5", __myname+"Height", getDefaultDrawerOpenHeight()); + if (h == getDrawerClosedHeight()) h = getDefaultDrawerOpenHeight(); + if (__maximized) h = getViewportHeight()+__main.getSnapAdjustBottom(); + + __last_forcedbottom = 0; + __last_forcedtop = 0; + + // clienttoscreen auto adjusts for render ratio + if (fromtop) { + int y = __main.getGuiY(); + int curh = __main.clientToScreenH(__main.getGuiH()); + if (y + curh < __main.clientToScreenH(h) + getViewportTop()) { + int offset = __main.getSnapAdjustBottom(); + if (!(y + __main.clientToScreenH(h-offset) > getViewPortTop()+getViewPortHeight())) { + __last_forcedbottom = 1; + return 0; + } + } + } else { + int offset = __main.getSnapAdjustBottom(); + int y = __main.getGuiY(); + if (y + __main.clientToScreenH(h-offset) > getViewPortTop()+getViewPortHeight()) { + int curh = __main.clientToScreenH(__main.getGuiH()); + if (!(y + curh < __main.clientToScreenH(h) + getViewportTop())) { + __last_forcedtop = 1; + return 1; + } + } + } + return fromtop; +} + +// ----------------------------------------------------------------------- +__main.onTargetReached() { + unlockUI(); + if (__drawer_directiontop_attrib.getData() =="1") __main.reverseTarget(0); + if (__drawer_direction == DIRECTION_OPENING) { + setPrivateInt("winamp5", __myname+"OpenState", OPEN); + drawer_showWindowContent(); + onDoneOpeningDrawer(); + } else if (__drawer_direction == DIRECTION_CLOSING) { + setPrivateInt("winamp5", __myname+"OpenState", CLOSED); + onDoneClosingDrawer(); + } + __drawer_direction = DIRECTION_NONE; +} + +// ----------------------------------------------------------------------- +drawer_expandWindow(int withdrawer) { + int curstate = getPrivateInt("winamp5", __myname+"OpenState", CLOSED); +#ifdef DEBUG + debugstring("expand - curstate = " + integertostring(curstate), 0); +#endif + if (curstate == OPEN) { + drawer_showWindowContent(); + onBeforeOpeningDrawer(); + onDoneOpeningDrawer(); + return; + } + int fromtop = isDrawerToTop(); + setPrivateInt("winamp5", __myname+"OpenState", OPEN); + + int h=getPrivateInt("winamp5", __myname+"Height", getDefaultDrawerOpenHeight()); + if (h == getDrawerClosedHeight()) h = getDefaultDrawerOpenHeight(); + if (__maximized) h = getViewportHeight()+__main.getSnapAdjustBottom(); + int w = __main.getGuiW(); + + if (h == __main.getHeight()) withdrawer = 0; + + onBeforeOpeningDrawer(); + + int delay = 0; + if (!__main.isLayoutAnimationSafe()) withdrawer = 0; + if (withdrawer && StringToInteger(__scrolldrawerattrib.getData())) delay = 1; + + __drawer_direction = DIRECTION_OPENING; + __main.setTargetX(__main.getGuiX()); + __main.setTargetY(__main.getGuiY()); + __main.setTargetW(w); + __main.setTargetH(h); + __main.reverseTarget(fromtop); + __main.setTargetSpeed(delay); + __main.gotoTarget(); + lockUI(); + + if (!__maximized) + setPrivateInt("winamp5", __myname+"Height", h); + setPrivateInt("winamp5", __myname+"ForcedBottom", __last_forcedBottom); + setPrivateInt("winamp5", __myname+"ForcedTop", __last_forcedtop); +} + +// ----------------------------------------------------------------------- +drawer_reduceWindow(int withdrawer) { +#ifdef DEBUG + debugstring("reduce", 0); +#endif + drawer_hideVis(); + drawer_hideVideo(); + setPrivateInt("winamp5", __myname+"OpenState", CLOSED); + if (__drawer_direction == DIRECTION_NONE && !__maximized) { // avoid saving new size if we're currenly opening + int h=__main.getHeight(); + setPrivateInt("winamp5", __myname+"Height", h); + } + + drawer_hideWindowContent(); + onBeforeClosingDrawer(); + + int fromtop=0; + if (__drawer_directiontop_attrib.getData() =="1") fromtop = 1; + + int delay = 0; + if (!__main.isLayoutAnimationSafe()) withdrawer = 0; + if (withdrawer && StringToInteger(__scrolldrawerattrib.getData())) delay = 1; + + if (__drawer_directionbypass_attrib.getData() == "1") { + if (__last_forcedtop) fromtop = 1; + if (__last_forcedbottom) fromtop = 0; + } + + __drawer_direction = DIRECTION_CLOSING; + __main.setTargetX(__main.getGuiX()); + __main.setTargetY(__main.getGuiY()); + __main.setTargetW(__main.getGuiW()); + __main.setTargetH(getDrawerClosedHeight()); + __main.reverseTarget(fromtop); + __main.setTargetSpeed(delay); + __main.gotoTarget(); + lockUI(); + __last_forcedtop = 0; + __last_forcedbottom = 0; + setPrivateInt("winamp5", __myname+"ForcedBottom", 0); + setPrivateInt("winamp5", __myname+"ForcedTop", 0); +} + +// ----------------------------------------------------------------------- +openDrawer() { + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + int s = getStatus(); + if (s == STATUS_PLAYING || s == STATUS_PAUSED) { + if (!isVideo()) { + if (__vis_detach_attrib.getData() == "0") { + openDrawerForVis(); + } else if (__video_detach_attrib.getData() == "0") { + openDrawerForVideo(); + } else { + openDrawerForNothing(); + } + } else { + if (__video_detach_attrib.getData() == "0") { + openDrawerForVideo(); + } else if (__vis_detach_attrib.getData() == "0") { + openDrawerForVis(); + } else { + openDrawerForNothing(); + } + } + } else { + int Window_Content=getPrivateInt("winamp5", __myname+"State", CONTENT_VIS); + if (window_content == CONTENT_VIS && __vis_detach_attrib.getData() == "0") { + openDrawerForVis(); + } else if (window_content == CONTENT_VIDEO && __video_detach_attrib.getData() == "0") { + openDrawerForVideo(); + } else if (__vis_detach_attrib.getData() == "0") { + openDrawerForVis(); + } else if (__video_detach_attrib.getData() == "0") { + openDrawerForVideo(); + } else { + openDrawerForNothing(); + } + } +} + +// ----------------------------------------------------------------------- +closeDrawer() { + drawer_reduceWindow(1); +} + +// ----------------------------------------------------------------------- +System.onPlay() { + // needed to handle video auto fullscreen on play in drawer_showVideo() + WinampConfigGroup vidwcg = WinampConfig.getGroup(VIDEO_CONFIG_GROUP); + boolean auto_fs = vidwcg.getBool("auto_fs"); + if (auto_fs && __video_detach_attrib.getData() == "0") __play_auto_fs_video = 1; + else __play_auto_fs_video = 0; +} + +System.onTitleChange(String newtitle) { + // needed to handle video auto fullscreen on play in drawer_showVideo() + WinampConfigGroup vidwcg = WinampConfig.getGroup(VIDEO_CONFIG_GROUP); + boolean auto_fs = vidwcg.getBool("auto_fs"); + if (auto_fs && __video_detach_attrib.getData() == "0") __play_auto_fs_video = 1; + else __play_auto_fs_video = 0; +} + +// ----------------------------------------------------------------------- +System.onPause() { + __play_auto_fs_video = 0; +} + +// ----------------------------------------------------------------------- +System.onResume() { + __play_auto_fs_video = 0; +} + +// ----------------------------------------------------------------------- +System.onStop() { + __play_auto_fs_video = 0; +} + +// ----------------------------------------------------------------------- +// The heart of the machine, here we detect when a window wants to open +// or close, and we decide what to do about it. When we return FALSE, the +// window performs what it notified us about. When we return TRUE, the +// showing/hiding of the window is cancelled, and it is now up to us to +// show or hide the window once we're done with our animations. +// To show the window ourselves, we later show a windowholder with the +// autoopen="1" param, and to hide the window, we simply hide the +// windowholder, and its autoclose="1" param will do the rest +// ----------------------------------------------------------------------- +System.onGetCancelComponent(String guid, boolean goingvisible) { +#ifdef DEBUG + DebugString("+", 0); +#endif + + // fix for when the UI sometimes is locked after switching video file in fullscreen + unlockUI(); + + // isVideo() hasn't been set yet in System.onPlay and System.onTitleChange, so we check it here instead. + if (__play_auto_fs_video && !isVideo()) __play_auto_fs_video = 0; + + if (__bypasscancel) return FALSE; + if (guid == VIDEO_GUID && !goingvisible && __hiding_video) return FALSE; + if (guid == VIS_GUID && !goingvisible && __hiding_vis) return FALSE; + if (guid == VIDEO_GUID && goingvisible && __showing_video) return FALSE; + if (guid == VIS_GUID && goingvisible && __showing_vis) return FALSE; + +#ifdef DEBUG + DebugString("--------------- onGetCancelComponent ----------------", 0); + DebugString(" GUID : " + guid, 0); + if (goingvisible) DebugString(" Going Visible", 0); else DebugString(" Going Invisible", 0); + DebugString(" Last Content : " + IntegerToString(getPrivateInt("winamp5", __myname+"State", CONTENT_VIS)), 0); + DebugString(" Drawer State : " + IntegerToString(getPrivateInt("winamp5", __myname+"OpenState", CLOSED)), 0); + DebugString("-----------------------------------------------------", 0); +#endif + + if (!__main.isVisible()) return FALSE; + + int Window_Content=getPrivateInt("winamp5", __myname+"State", CONTENT_VIS); + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + + if (window_status == CLOSED) { + if (guid == VIDEO_GUID) { + if (__video_detach_attrib.getData() == "0") { + if (goingvisible) { + openDrawerForVideo(); + return TRUE; + } + } + } + if (guid == VIS_GUID) { + if (__vis_detach_attrib.getData() == "0") { + if (goingvisible) { + openDrawerForVis(); + return TRUE; + } + } + } + } else if (window_status == OPEN) { + if (goingvisible) { + if (guid == VIDEO_GUID && window_content == CONTENT_VIS) { + if (__video_detach_attrib.getData() == "0") { + window_content = CONTENT_VIDEO; + drawer_hideVis(); + drawer_dc_showVideo(); + return TRUE; + } + } else if (guid == VIS_GUID && window_content == CONTENT_VIDEO) { + if (__vis_detach_attrib.getData() == "0") { + window_content = CONTENT_VIS; + drawer_disablePSOVC(); + drawer_hideVideo(); + drawer_dc_showVis(); + return TRUE; + } + } + } + } + if (!goingvisible && window_status == OPEN) { +#ifdef DEBUG + DebugString("closing " + guid, 0); +#endif + if (guid == VIDEO_GUID && window_content == CONTENT_VIDEO) { + drawer_hideVideo(); + drawer_reduceWindow(1); + return FALSE; + } + if (guid == VIS_GUID && window_content == CONTENT_VIS) { + drawer_hideVis(); + if ((getStatus() == STATUS_PLAYING || + getStatus() == STATUS_PAUSED) && + isVideo() && + __video_detach_attrib.getData() == "0") { + drawer_dc_showVideo(); + } else { + drawer_reduceWindow(1); + } + return FALSE; + } + } +#ifdef DEBUG + DebugString("Went thru", 0); +#endif + return FALSE; +} + +// ----------------------------------------------------------------------- +drawer_showVis() { +#ifdef DEBUG + DebugString("drawer_showVis",0 ); +#endif + __showing_vis = 1; + setPrivateInt("winamp5", __myname+"OpenState", OPEN); + setPrivateInt("winamp5", __myname+"State", CONTENT_VIS); + GuiObject o = getVisWindowHolder(); + if (o != NULL) { __bypasscancel = 1; o.show(); __bypasscancel = 0; } +#ifdef DEBUG + else DebugString("vis object not provided (show)", 0); +#endif + onShowVis(); + __showing_vis = 0; +} + +// ----------------------------------------------------------------------- +drawer_hideVis() { + __callback_vis_show = 0; +#ifdef DEBUG + DebugString("drawer_hideVis",0 ); +#endif + __hiding_vis = 1; + GuiObject o = getVisWindowHolder(); + if (o != NULL) { __bypasscancel = 1; o.hide(); __bypasscancel = 0; } +#ifdef DEBUG + else DebugString("video object not found (hide)", 0); +#endif + onHideVis(); + __hiding_vis = 0; +} + +// ----------------------------------------------------------------------- +drawer_showVideo() { +#ifdef DEBUG + DebugString("drawer_showVideo",0 ); +#endif + __showing_video = 1; + setPrivateInt("winamp5", __myname+"OpenState", OPEN); + setPrivateInt("winamp5", __myname+"State", CONTENT_VIDEO); + GuiObject o = getVideoWindowHolder(); + if (o != NULL) { + __bypasscancel = 1; + + // hack to fix bug for auto fullscreen on play + if (__play_auto_fs_video) setVideoFullscreen(FALSE); + + o.show(); + + // hack to fix bug for auto fullscreen on play + if (__play_auto_fs_video) setVideoFullscreen(TRUE); + + __bypasscancel = 0; + } +#ifdef DEBUG + else DebugString("vis object not found (show)", 0); +#endif + onShowVideo(); + __play_auto_fs_video = 0; + __showing_video = 0; +} + +// ----------------------------------------------------------------------- +drawer_hideVideo() { + __callback_video_show = 0; +#ifdef DEBUG + DebugString("drawer_hideVideo",0 ); +#endif + __hiding_video = 1; + GuiObject o = getVideoWindowHolder(); + if (o != NULL) { __bypasscancel = 1; o.hide(); __bypasscancel = 0; } +#ifdef DEBUG + else DebugString("video object not found (hide)", 0); +#endif + onHideVideo(); + __hiding_video = 0; +} + +// ----------------------------------------------------------------------- +__callbackTimer.onTimer() { + stop(); + int cvds = __callback_video_show; + int cvss = __callback_vis_show; + int cvdh = __callback_video_hide; + int cvsh = __callback_vis_hide; + __callback_video_show = 0; + __callback_vis_show = 0; + __callback_video_hide = 0; + __callback_vis_hide = 0; + if (cvds == 1) drawer_showVideo(); + if (cvss == 1) drawer_showVis(); + if (cvsh == 1) drawer_hideVis(); + if (cvdh == 1) drawer_hideVideo(); +} + +// ----------------------------------------------------------------------- +drawer_dc_showVideo() { + __callback_video_show = 1; + __callback_video_hide = 0; + __callbackTimer.start(); +} + +// ----------------------------------------------------------------------- +drawer_dc_showVis() { + __callback_vis_show = 1; + __callback_vis_hide = 0; + __callbackTimer.start(); +} + +// ----------------------------------------------------------------------- +drawer_dc_hideVideo() { + __callback_video_show = 0; + __callback_video_hide = 1; + __callbackTimer.start(); +} + +// ----------------------------------------------------------------------- +drawer_dc_hideVis() { + __callback_vis_show = 0; + __callback_vis_hide = 1; + __callbackTimer.start(); +} + +// ----------------------------------------------------------------------- +drawer_showWindowContent() { + int lastWindowContent=getPrivateInt("winamp5", __myname+"State", 2); +#ifdef DEBUG + DebugString("drawer_showWindowContent = " + IntegerToString(lastWindowContent), 0); +#endif + if (lastWindowContent==CONTENT_VIDEO) drawer_dc_showVideo(); + if (lastWindowContent==CONTENT_VIS) drawer_dc_showVis(); +} + +// ----------------------------------------------------------------------- +drawer_hideWindowContent() { + int lastWindowContent=getPrivateInt("winamp5", __myname+"State", 2); +#ifdef DEBUG + DebugString("drawer_hideWindowContent = " + IntegerToString(lastWindowContent), 0); +#endif + /*if (lastWindowContent==CONTENT_VIDEO)*/ drawer_hideVideo(); + /*if (lastWindowContent==CONTENT_VIS)*/ drawer_hideVis(); +} + +// ----------------------------------------------------------------------- +OpenDrawerForVideo() { + setPrivateInt("winamp5", __myname+"State", CONTENT_VIDEO); + drawer_expandWindow(1); +} + +// ----------------------------------------------------------------------- +OpenDrawerForVis() { + setPrivateInt("winamp5", __myname+"State", CONTENT_VIS); + drawer_expandWindow(1); +} + +// ----------------------------------------------------------------------- +OpenDrawerForNothing() { + setPrivateInt("winamp5", __myname+"State", CONTENT_NOTHING); + drawer_expandWindow(1); +} + +// ----------------------------------------------------------------------- +__main.onResize(int x, int y, int w, int h) { + if (!isGoingToTarget() && !__isinited) { + __isinited = 1; + if (h > getDrawerClosedHeight()) { setPrivateInt("winamp5", __myname+"OpenState", OPEN); drawer_expandWindow(0); } + else setPrivateInt("winamp5", __myname+"OpenState", CLOSED); + } +} + +// ----------------------------------------------------------------------- +__main.onUserResize(int x, int y, int w, int h) { + int window_status=getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + if (window_status == OPEN) { + int h = getHeight(); + if (h != getDrawerClosedHeight()) { +#ifdef DEBUG + DebugString("h = "+integerTostring(h), 0); +#endif + if (!__maximized) + setPrivateInt("winamp5", __myname+"Height", h); + } + } else if (window_status == CLOSED) { + int h = getDrawerOpenAutoHeight(w); + if (h != -1) { + setPrivateInt("winamp5", __myname+"Height", h); + } + } + if (__maximized) { + __maximized = 0; + setPrivateInt("winamp5", __myname+"Maximized", 0); + onCancelMaximize(); + } +} + +// ----------------------------------------------------------------------- +switchToVideo() { + if (__callbackTimer.isRunning()) return; + if (__callbackTimer2.isRunning()) return; + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + drawer_hideVis(); + drawer_showVideo(); +} + +// ----------------------------------------------------------------------- +switchToVis() { + if (__callbackTimer.isRunning()) return; + if (__callbackTimer2.isRunning()) return; + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + drawer_disablePSOVC(); + drawer_hideVideo(); + drawer_showVis(); +} + +// ----------------------------------------------------------------------- +__tempDisable.onTimer() { + stop(); +} + +// ----------------------------------------------------------------------- +detachVis() { + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + __vis_detach_attrib.setData("1"); +} + +// ----------------------------------------------------------------------- +detachVideo() { + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + __video_detach_attrib.setData("1"); +} + +// ----------------------------------------------------------------------- +attachVis() { + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + __vis_detach_attrib.setData("0"); +} + +// ----------------------------------------------------------------------- +attachVideo() { + if (__tempDisable.isRunning()) return; + __tempDisable.start(); + __video_detach_attrib.setData("0"); +} + +// ----------------------------------------------------------------------- +__video_detach_attrib.onDataChanged() { +#ifdef DEBUG + DebugString("detach video changed", 0); +#endif + if (getData() == "1") { + drawer_doDetachVideo(); + onDetachVideo(); + } else { + if (getData() == "0") { + drawer_doAttachVideo(); + onAttachVideo(); + } + } +} + +// ----------------------------------------------------------------------- +__vis_detach_attrib.onDataChanged() { +#ifdef DEBUG + DebugString("detach vis changed", 0); +#endif + if (getData() == "1") { + drawer_doDetachVis(); + onDetachVis(); + } else { + if (getData() == "0") { + drawer_doAttachVis(); + onAttachVis(); + } + } +} + +// ----------------------------------------------------------------------- +drawer_doDetachVideo() { + int wasvisible = isNamedWindowVisible(VIDEO_GUID); + int lastWindowContent=getPrivateInt("winamp5", __myname+"State", 2); + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + if (!wasvisible) return; + if (lastWindowContent != CONTENT_VIDEO) return; + if (window_status == OPEN) { + drawer_disablePSOVC(); + drawer_reduceWindow(1); + } + drawer_dc_linkup_showVideo(); +} + +// ----------------------------------------------------------------------- +drawer_doDetachVis() { + int lastWindowContent=getPrivateInt("winamp5", __myname+"State", 2); + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + if (lastWindowContent != CONTENT_VIS) return; + int wasvisible = isNamedWindowVisible(VIS_GUID); + if (!wasvisible) return; + if (window_status == OPEN) { + drawer_hideVis(); + if ((getStatus() == STATUS_PLAYING || + getStatus() == STATUS_PAUSED) && isVideo() && + __video_detach_attrib.getData() == "0") { + setPrivateInt("winamp5", __myname+"State", CONTENT_VIDEO); + drawer_dc_showVideo(); + } else { + drawer_reduceWindow(1); + } + } + drawer_dc_linkup_showVis(); +} + +// ----------------------------------------------------------------------- +drawer_doAttachVideo() { + drawer_disablePSOVC(); + int wasvisible = isNamedWindowVisible(VIDEO_GUID); + if (wasvisible) { + hideNamedWindow(VIDEO_GUID); + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + int window_content=getPrivateInt("winamp5", __myname+"State", 2); + if (window_content == CONTENT_VIS) drawer_hideVis(); + if (window_status == CLOSED) openDrawerForVideo(); + else drawer_dc_showVideo(); + } +} + +// ----------------------------------------------------------------------- +drawer_doAttachVis() { + drawer_disablePSOVC(); + int wasvisible = isNamedWindowVisible(VIS_GUID); + if (wasvisible) { + hideNamedWindow(VIS_GUID); + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + int window_content=getPrivateInt("winamp5", __myname+"State", 2); + if (window_content == CONTENT_VIDEO) drawer_hideVideo(); + if (window_status == CLOSED) openDrawerForVis(); + else drawer_dc_showVis(); + } +} + +// ----------------------------------------------------------------------- +__callbackTimer2.onTimer() { + stop(); + if (__callback2_what == DETACHED_VIDEO) drawer_linkup_showVideo(); + if (__callback2_what == DETACHED_VIS) drawer_linkup_showVis(); +} + +// ----------------------------------------------------------------------- +drawer_dc_linkup_showVis() { + __callback2_what = DETACHED_VIS; + __callbackTimer2.start(); +} + +// ----------------------------------------------------------------------- +drawer_dc_linkup_showVideo() { + __callback2_what = DETACHED_VIDEO; + __callbackTimer2.start(); +} + +// ----------------------------------------------------------------------- +drawer_linkup_showVis() { +#ifdef DEBUG + DebugString("show detached vis",0 ); +#endif + showWindow(VIS_GUID, "", 0); +} + +// ----------------------------------------------------------------------- +drawer_linkup_showVideo() { +#ifdef DEBUG + DebugString("show detached video",0 ); +#endif + showWindow(VIDEO_GUID, "", 0); + drawer_enablePSOVC(); +} + +// ----------------------------------------------------------------------- +drawer_disablePSOVC() { +#ifdef DEBUG + DebugString("disabling stop on video close",0 ); +#endif + ConfigItem item = Config.getItem(SKINTWEAKS_CFGPAGE); + if (item) { + ConfigAttribute attr = item.getAttribute("Prevent video playback Stop on video window Close"); + if (attr) attr.setData("1"); + } + __PSOVCTimer.start(); +} + +// ----------------------------------------------------------------------- +drawer_enablePSOVC() { +#ifdef DEBUG + DebugString("enabling stop on video close",0 ); +#endif + __PSOVCTimer.stop(); + ConfigItem item = Config.getItem(SKINTWEAKS_CFGPAGE); + if (item) { + ConfigAttribute attr = item.getAttribute("Prevent video playback Stop on video window Close"); + if (attr) attr.setData("0"); + } +} + +// ----------------------------------------------------------------------- +__PSOVCTimer.onTimer() { + drawer_enablePSOVC(); +} + +// ----------------------------------------------------------------------- +__maincontainer.onBeforeSwitchToLayout(Layout oldl, Layout newl) { + int window_status =getPrivateInt("winamp5", __myname+"OpenState", CLOSED); + int window_content=getPrivateInt("winamp5", __myname+"State", 2); + if (oldl == __main && window_status == OPEN && window_content == CONTENT_VIDEO && getStatus() == STATUS_PLAYING && isVideo()) { + drawer_disablePSOVC(); + __windowshade_openvid = 1; + } + if (oldl == __main && window_status == OPEN && window_content == CONTENT_VIS) { + __windowshade_openvis = 1; + } +} + +// ----------------------------------------------------------------------- +__maincontainer.onSwitchToLayout(Layout newl) { + // these do not call drawer_doDetachVis or drawer_doDetachVideo but showDetachVis and showDetachVideo so that the change is temporary + if (__windowshade_openvid) { + __windowshade_openvid = 0; + drawer_linkup_showVideo(); + } + if (__windowshade_openvis) { + __windowshade_openvis = 0; + drawer_linkup_showVis(); + } +} + +// ----------------------------------------------------------------------- +Int getDrawerState() { + return getPrivateInt("winamp5", __myname+"OpenState", CLOSED); +} + +// ----------------------------------------------------------------------- +Int getDrawerContent() { + return getPrivateInt("winamp5", __myname+"State", CONTENT_VIS); +} + +// ----------------------------------------------------------------------- +maximizeWindow() { + __oldx=__main.getGuiX(); + __oldy=__main.getGuiY(); + __oldw=__main.getGuiW(); + __oldh=__main.getGuiH(); + + setPrivateInt("winamp5", __myname+"ox", __oldx); + setPrivateInt("winamp5", __myname+"oy", __oldy); + setPrivateInt("winamp5", __myname+"ow", __oldw); + setPrivateInt("winamp5", __myname+"oh", __oldh); + + drawer_doMaximizeWindow(1); +} + +// ----------------------------------------------------------------------- +drawer_doMaximizeWindow(int notif) { + int vx=getViewportLeft(); + int vy=getViewportTop(); + int vw=getViewportWidth(); + int vh=getViewportHeight(); + + if (notif) onBeforeMaximize(); + __maximized = 1; + setPrivateInt("winamp5", __myname+"Maximized", 1); + __main.resize(vx, vy, vw, vh+__main.getSnapAdjustBottom()); + if (notif) onAfterMaximize(); +} + +// ----------------------------------------------------------------------- +__main.onSnapAdjustChanged() { + if (__maximized) + drawer_doMaximizeWindow(0); +} + +// ----------------------------------------------------------------------- +restoreWindow() { + onBeforeRestore(); + __maximized = 0; + setPrivateInt("winamp5", __myname+"Maximized", 0); + __main.resize(__oldx, __oldy, __oldw, __oldh); + onAfterRestore(); +} + +// ----------------------------------------------------------------------- +// default events implementations - override them in your script +// ----------------------------------------------------------------------- +onBeforeOpeningDrawer() {} +onBeforeClosingDrawer() {} +onDoneOpeningDrawer() {} +onDoneClosingDrawer() {} +onShowVis() {} +onHideVis() {} +onShowVideo() {} +onHideVideo() {} +onAttachVideo() {} +onDetachVideo() {} +onAttachVis() {} +onDetachVis() {} +onBeforeMaximize() {} +onBeforeRestore() {} +onAfterMaximize() {} +onAfterRestore() {} +onCancelMaximize() {} diff --git a/Src/resources/skins/Winamp Modern/scripts/eq.m b/Src/resources/skins/Winamp Modern/scripts/eq.m new file mode 100644 index 00000000..8a062181 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/eq.m @@ -0,0 +1,90 @@ +#include <lib/std.mi> +#include <lib/winampconfig.mi> + +Global Group frameGroup, use; +Global Button btnEQp12,btnEQ0,btnEQm12; +Global Layer eqBand; +Global Boolean manual_set; + +Global Layout normal; + +#define ISOBANDS "31.5 Hz,63 Hz,125 Hz,250 Hz,500 Hz,1 KHz,2 KHz,4 KHz,8 KHz,16 KHz" +#define WINAMPBANDS "70 Hz,180 Hz,320 Hz,600 Hz,1 KHz,3 KHz,6 KHz,12 KHz,14 KHz,16 KHz" + +System.onScriptLoaded() { + WinampConfigGroup eqwcg = WinampConfig.getGroup("{72409F84-BAF1-4448-8211-D84A30A1591A}"); + int freqmode = eqwcg.getInt("frequencies"); // returns 0 for classical winamp levels, 1 for ISO levels + + frameGroup = getScriptGroup(); + normal = frameGroup.getParentLayout(); + btnEQp12 = frameGroup.findObject("EQ_p12"); + btnEQ0 = frameGroup.findObject("EQ_0"); + btnEQm12 = frameGroup.findObject("EQ_m12"); + eqBand = frameGroup.findObject("equalizer.band.label"); + + system.onEqFreqChanged(freqmode); +} + +btnEQp12.onLeftClick() { + manual_set = 1; + for(int i=0; i<10; i++) setEqBand(i, 127); + manual_set = 0; +} + +btnEQ0.onLeftClick() { + manual_set = 1; + for(int i=0; i<10; i++) setEqBand(i, 0); + manual_set = 0; +} + +btnEQm12.onLeftClick() { + manual_set = 1; + for(int i=0; i<10; i++) setEqBand(i, -127); + manual_set = 0; +} + +System.onEqFreqChanged (boolean isoonoff) +{ + if (isoonoff == 1) + { + eqBand.setXmlParam("image", "drawer.eq.label.iso"); + for(int i=0; i<10; i++) frameGroup.findObject("eq"+integerToString(i+1)).setXmlParam("tooltip", getToken(ISOBANDS,",",i)); + } + else + { + eqBand.setXmlParam("image", "drawer.eq.label.winamp"); + for(int i=0; i<10; i++) frameGroup.findObject("eq"+integerToString(i+1)).setXmlParam("tooltip", getToken(WINAMPBANDS,",",i)); + } +} + +system.onEqBandChanged(int band, int value) +{ + if (manual_set) return; + String t; + Float f = value; + f = f / 10.5; + WinampConfigGroup eqwcg = WinampConfig.getGroup("{72409F84-BAF1-4448-8211-D84A30A1591A}"); + if (eqwcg.getInt("frequencies") == 1) { + if (f >= 0) t = "EQ: " + translate(getToken(ISOBANDS,",",band)) + ": +" + floattostring(f, 1) + " "+ translate("dB"); + else t = "EQ: " + translate(getToken(ISOBANDS,",",band)) + ": " + floattostring(f, 1) + " "+ translate("dB"); + } + else { + if (f >= 0) t = "EQ: " + translate(getToken(WINAMPBANDS,",",band)) + ": +" + floattostring(f, 1) + " "+ translate("dB"); + else t = "EQ: " + translate(getToken(WINAMPBANDS,",",band)) + ": " + floattostring(f, 1) + " "+ translate("dB"); + } + + normal.sendAction("showinfo", t, 0,0,0,0); +} + +system.onEqPreampChanged(int value) +{ + slider s = getScriptGroup().findObject("preamp"); + value = s.getPosition(); // Somehow this function returns a range from [-127;125] with hotpos -3, so we take the slider instead + String t = "EQ: " + translate("Preamp:") + " "; + Float f = value; + f = f / 10.5; + if (f >= -3) t += "+"+floattostring(f, 1) + " "+ translate("dB"); + else t += floattostring(f, 1) + " "+ translate("dB"); + + normal.sendAction("showinfo", t, 0,0,0,0); +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/eq.maki b/Src/resources/skins/Winamp Modern/scripts/eq.maki Binary files differnew file mode 100644 index 00000000..da7663c6 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/eq.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/init_Playlist.m b/Src/resources/skins/Winamp Modern/scripts/init_Playlist.m new file mode 100644 index 00000000..bb5f41ba --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/init_Playlist.m @@ -0,0 +1,34 @@ +#ifndef included +#error This script can only be compiled as a #include +#endif + +#include "gen_pageguids.m" + + +Function initAttribs_Playlist(); + +#define COSTUM_PAGE_PLAYLIST "{0167CFD9-5D35-404a-8F03-80ED5B89DEDF}" + +Global ConfigAttribute playlist_search_attrib; + +initAttribs_Playlist(){ + initPages(); + + ConfigItem custom_page_playlist = addConfigSubMenu(optionsmenu_page, "Playlist", COSTUM_PAGE_PLAYLIST); + + playlist_search_attrib = custom_page_playlist.newAttribute("Show Playlist Search box", "1"); + //addMenuSeparator(custom_page_autoresize); +} + +#ifdef MAIN_ATTRIBS_MGR +/* +playlist_search_attrib.onDataChanged() +{ + if (attribs_mychange) return; + NOOFF + attribs_mychange = 1; + if (getData() == "1") playlist_search_attrib.setData("0"); + if (getData() == "0") playlist_search_attrib.setData("1"); + attribs_mychange = 0; +}*/ +#endif
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/mainmenu.m b/Src/resources/skins/Winamp Modern/scripts/mainmenu.m new file mode 100644 index 00000000..73efe5be --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mainmenu.m @@ -0,0 +1,50 @@ +#include <lib/std.mi> +#include "attribs.m" + +System.onScriptLoaded() { + initAttribs(); + menubar_main_attrib.onDataChanged(); +} + +menubar_main_attrib.onDataChanged() { + Group Player = getscriptgroup().findobject("player.content.dummy.group"); + Group MenuBar = getscriptgroup().findobject("wasabi.menubar"); + if (getData() == "1") { + Player.setXmlParam("y","0"); + MenuBar.show(); + } else { + Player.setXmlParam("y","-17"); + MenuBar.hide(); + } +} + +System.onAccelerator(String action, String section, String key) { + if (menubar_main_attrib.getData() == "0") return; + Layout l = getScriptGroup().getParentLayout(); + if (!l.isActive()) return; + if (action == "MENUHOTKEY_FILE") + { + getScriptGroup().findObject("File.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_PLAY") + { + getScriptGroup().findObject("Play.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_OPTIONS") + { + getScriptGroup().findObject("Options.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_VIEW") + { + getScriptGroup().findObject("View.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_HELP") + { + getScriptGroup().findObject("Help.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/mainmenu.maki b/Src/resources/skins/Winamp Modern/scripts/mainmenu.maki Binary files differnew file mode 100644 index 00000000..6bf1a69b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mainmenu.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.m b/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.m new file mode 100644 index 00000000..fba5e658 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.m @@ -0,0 +1,25 @@ +#include <lib/std.mi> +#include "attribs.m" + +Function setOverlay(); + +Global Layer VideoVisTextOverlay; + +System.onScriptLoaded() { + initAttribs(); + VideoVisTextOverlay=getScriptGroup().findObject("menubar.right.textoverlay"); + setOverlay(); +} + +video_detach_attrib.onDataChanged() { + setOverlay(); +} + +vis_detach_attrib.onDataChanged() { + setOverlay(); +} + +setOverlay() { + if (vis_detach_attrib.getData() == "1" && video_detach_attrib.getData() == "1") VideoVisTextOverlay.hide(); + else VideoVisTextOverlay.show(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.maki b/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.maki Binary files differnew file mode 100644 index 00000000..f07c1fb1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mainmenuoverlay.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/menualign.m b/Src/resources/skins/Winamp Modern/scripts/menualign.m new file mode 100644 index 00000000..b325c181 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/menualign.m @@ -0,0 +1,14 @@ +#include <lib/std.mi> + +System.onScriptLoaded() { + group sg = getScriptGroup(); + string params = getParam(); + int offset = 0; + + for (int a = 0; getToken(params,",",a) != ""; a++ ) + { + guiobject tmp = sg.getObject(getToken(params,",",a)); + tmp.setXMLparam("x",integertostring(offset)); + offset += tmp.getAutoWidth(); + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/menualign.maki b/Src/resources/skins/Winamp Modern/scripts/menualign.maki Binary files differnew file mode 100644 index 00000000..0709e016 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/menualign.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/mlmenu.m b/Src/resources/skins/Winamp Modern/scripts/mlmenu.m new file mode 100644 index 00000000..c558a089 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mlmenu.m @@ -0,0 +1,50 @@ +#include <lib/std.mi> +#include "attribs.m" + +System.onScriptLoaded() { + initAttribs(); + menubar_ml_attrib.onDataChanged(); +} + +menubar_ml_attrib.onDataChanged() { + Group Player = getscriptgroup().findobject("player.content.ml.dummy.group"); + Group MenuBar = getscriptgroup().findobject("wasabi.menubar.ml"); + Layout main = getscriptgroup().getParentLayout(); + + main.beforeRedock(); + if (getData() == "1") { + Player.setXmlParam("y","17"); + MenuBar.show(); + main.snapAdjust(0,0,0,0); + } + else { + Player.setXmlParam("y","0"); + MenuBar.hide(); + main.snapAdjust(0,0,0,17); + } + main.Redock(); +} + +System.onAccelerator(String action, String section, String key) { + if (menubar_main_attrib.getData() == "0") return; + Layout l = getScriptGroup().getParentLayout(); + if (!l.isActive()) return; + + // we use the general accelerators otherwise use specific ones + // will allow the skin to cope with variations in localisations + if (action == "MENUHOTKEY_FILE" || action == "ML_MENUHOTKEY_FILE") + { + getScriptGroup().findObject("ML_File.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_VIEW" || action == "ML_MENUHOTKEY_VIEW") + { + getScriptGroup().findObject("ML_View.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_HELP" || action == "ML_MENUHOTKEY_HELP") + { + getScriptGroup().findObject("ML_Help.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/mlmenu.maki b/Src/resources/skins/Winamp Modern/scripts/mlmenu.maki Binary files differnew file mode 100644 index 00000000..946a2460 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mlmenu.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/mute.m b/Src/resources/skins/Winamp Modern/scripts/mute.m new file mode 100644 index 00000000..864286a0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mute.m @@ -0,0 +1,125 @@ +#include <lib/std.mi> + +Function updateVolume(int v); + +Global Group frameGroup; +Global Togglebutton MuteBtn,MuteBtnShade; +Global Timer SongTickerTimer; +Global Text InfoTicker; +Global GuiObject SongTicker; +Global Float VolumeLevel; +Global Boolean Muted,BtnPressed; +Global Layer volumebar; +Global Timer callback; + +System.onScriptLoaded() { + Muted = getPrivateInt("winamp5", "muted", 0); + VolumeLevel = getPrivateInt("winamp5", "old_volume", 0); + frameGroup = getScriptGroup(); + + MuteBtn = frameGroup.findObject("mute"); + MuteBtn.setActivated(Muted); + + callback = new Timer; callback.setDelay(5); callback.start(); + SongTicker = frameGroup.findObject("songticker"); + InfoTicker = frameGroup.findObject("infoticker"); + + volumebar = frameGroup.findObject("volumebar"); + volumebar.setXmlParam("w",integertostring( (system.getVolume()/255) *70 + 5)); + + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(1000); + if (Muted) { + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText("Mute ON"); + } + BtnPressed = 0; +} + +System.onScriptUnloading() { + setPrivateInt("winamp5", "muted", Muted); + setPrivateInt("winamp5", "old_volume", VolumeLevel); + delete callback; +} + +callback.onTimer() { + MuteBtnShade = getcontainer("main").getlayout("shade").findObject("shademute"); + if (MuteBtnShade != NULL) { + MuteBtnShade.setActivated(Muted); + stop(); + } +} + +SongTickerTimer.onTimer() { + SongTicker.show(); + InfoTicker.hide(); + SongTickerTimer.stop(); +} + +MuteBtn.onLeftClick() { + BtnPressed = 1; + if (!Muted) { + VolumeLevel = System.getVolume(); + System.setVolume(0); + Muted = 1; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText("Mute ON"); + MuteBtnShade.setActivated(1); + } else { + System.setVolume(VolumeLevel); + Muted = 0; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText("Mute OFF"); + MuteBtnShade.setActivated(0); + } +} + +MuteBtnShade.onLeftClick() { + BtnPressed = 1; + if (!Muted) { + VolumeLevel = System.getVolume(); + System.setVolume(0); + Muted = 1; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText("Mute ON"); + MuteBtn.setActivated(1); + } else { + System.setVolume(VolumeLevel); + Muted = 0; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText("Mute OFF"); + MuteBtn.setActivated(0); + } +} + +System.onScriptUnloading() { + delete SongTickerTimer; +} + +System.onvolumechanged(int newvol) +{ + volumebar.setXmlParam("w",integertostring( (newvol/255) *70 + 5)); + if (!BtnPressed) { + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText(translate("Volume") + ": " + integerToString(newvol/2.55) + "%"); + + if (Muted) { + MuteBtn.setActivated(0); + MuteBtnShade.setActivated(0); + Muted = 0; + } + } + BtnPressed = 0; +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/mute.maki b/Src/resources/skins/Winamp Modern/scripts/mute.maki Binary files differnew file mode 100644 index 00000000..3dfdd215 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/mute.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/notifications_fade_times.maki b/Src/resources/skins/Winamp Modern/scripts/notifications_fade_times.maki Binary files differnew file mode 100644 index 00000000..e8e35a97 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/notifications_fade_times.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/notifier.m b/Src/resources/skins/Winamp Modern/scripts/notifier.m new file mode 100644 index 00000000..4144add7 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/notifier.m @@ -0,0 +1,615 @@ +#include <lib/std.mi> +#include "attribs.m" + +Function reset(); +Function createNotifier(boolean cancel); +Function showNotifier(Int w); +Function onNext(); +function cancelAnimation(); + +Function Int fillNextTrackInfo(String corneroverride); +Function Int fillCustomInfo(String customstring); +Function prepareAlbumArtNotifier(); + +Function checkPref(int bypassfs); + +Function String getArtist(); + +Function onAlbumArt(Boolean success); + +Global Container notifier_container; +Global Layout notifier_layout; +Global Timer notifier_timer; +Global String last_autotitle, cur_status; + +Global AlbumArtLayer cover; +Global boolean handleAACalback = false; + +Global Boolean triggerBug; //BUGFIX remove this +Global Timer fallbackTempFix; //BUGFIX remove this + +Global Boolean b_tohide = 0; +Global int width = 0; +Global int left = 0; + +#define WEBCOVER_SHOUTCAST "winamp.cover.shoutcast" +#define FORCE_BUG_MODE + +// ------------------------------------------------------------------------------ +// init +// ------------------------------------------------------------------------------ +System.onScriptLoaded() { + initAttribs(); + notifier_timer = new Timer; + fallbackTempFix = new Timer; //BUGFIX remove this + fallbackTempFix.setDelay(3000); //BUGFIX remove this / Time that onAlbumArtLoaded have to execute before bug mode is ON +} + +// ------------------------------------------------------------------------------ +// shutdown +// ------------------------------------------------------------------------------ +System.onScriptUnloading() { + delete notifier_timer; + delete fallbackTempFix; //BUGFIX remove this +} + +// ------------------------------------------------------------------------------ +// called by the system when the global hotkey for notification is pressed +// ------------------------------------------------------------------------------ +System.onShowNotification() { + //if (checkPref(1)) return; --mp: if we push the hotkey, we want to show the notifier, no matter what the pref settings are. + createNotifier(false); + if (getStatus() == STATUS_PLAYING) cur_status = "Playing"; + if (getStatus() == STATUS_PAUSED) cur_status = "Playback Paused"; + if (getStatus() == STATUS_STOPPED) cur_status = "Playback Stopped"; + prepareAlbumArtNotifier(); + complete; // prevents other scripts from getting the message + return 1; // tells anybody else that might watch the returned value that, yes, we implemented that +} + +// ------------------------------------------------------------------------------ +// called by the system when the title for the playing item changes, this could be the result of the player +// going to the next track, or of an update in the track title +// ------------------------------------------------------------------------------ +System.onTitleChange(String newtitle) { + if (last_autotitle == newtitle) return; + if (StrLeft(newtitle, 1) == "[") { + if (StrLeft(newtitle, 7) == "[Buffer" || + StrLeft(newtitle, 4) == "[ICY") return; + } + last_autotitle = newtitle; + onNext(); + + fallbackTempFix.stop(); //BUGFIX remove later + fallbackTempFix.start(); //BUGFIX remove later +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the next button +// ------------------------------------------------------------------------------ +onNext() { + if (checkPref(0)) return; + createNotifier(false); + cur_status = ""; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the play button +// ------------------------------------------------------------------------------ +System.onPlay() { + if (checkPref(0)) return; + createNotifier(false); + cur_status = "Playing"; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the pause button +// ------------------------------------------------------------------------------ +System.onPause() { + if (checkPref(0)) return; + DebugString("onPause",9); + createNotifier(true); + showNotifier(fillCustomInfo("Playback Paused")); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the pause button again +// ------------------------------------------------------------------------------ +System.onResume() { + if (checkPref(0)) return; + DebugString("onResume",9); + createNotifier(false); + cur_status = "Resuming Playback"; + prepareAlbumArtNotifier(); +} + +// ------------------------------------------------------------------------------ +// called by the system when the user clicks the play button +// ------------------------------------------------------------------------------ +System.onStop() { + if (checkPref(0)) return; + createNotifier(true); + showNotifier(fillCustomInfo("End of Playback")); +} + +// ------------------------------------------------------------------------------ +// checks if we should display anything +// ------------------------------------------------------------------------------ +Int checkPref(int bypassfs) { + if (!bypassfs && notifier_disablefullscreen_attrib.getData() == "1" && isVideoFullscreen()) return 1; + if (notifier_never_attrib.getData() == "1") return 1; + if (notifier_minimized_attrib.getData() == "1" && !isMinimized()) return 1; + if (notifier_windowshade_attrib.getData() == "1") { + if (isMinimized()) return 0; + Container c = getContainer("main"); + if (!c) return 1; + Layout l = c.getCurLayout(); + if (!l) return 1; + if (l.getId() != "shade") return 1; + } + return 0; +} + +// ------------------------------------------------------------------------------ +// fade in/out completed +// ------------------------------------------------------------------------------ +notifier_layout.onTargetReached() { + int a = notifier_layout.getAlpha(); + if (a == 255) { + notifier_timer.setDelay(StringToInteger(notifier_holdtime_attrib.getData())); + notifier_timer.start(); + } + else if (a == 0) { + reset(); + } +} + +// ------------------------------------------------------------------------------ +// hold time elapsed +// ------------------------------------------------------------------------------ +notifier_timer.onTimer() { + stop(); + if (notifier_layout.isTransparencySafe()) { + notifier_layout.setTargetA(0); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeouttime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + } else { + reset(); + } +} + +// ------------------------------------------------------------------------------ +// when notifier is clicked, bring back the app from minimized state if its minimized and focus it +// ------------------------------------------------------------------------------ +notifier_layout.onLeftButtonDown(int x, int y) { + cancelAnimation(); + + restoreApplication(); + activateApplication(); + /*if (notifier_opennowplaying_attrib.getData() == "1") + { + String artist = getArtist(); + if (artist == "") return; + System.navigateUrlBrowser("http://client.winamp.com/nowplaying/artist/?icid=notifiermodern&artistName=" + artist); + }*/ + + reset(); +} + +notifier_layout.onRightButtonUp(int x, int y) { + cancelAnimation(); + reset(); + complete; + return; +} + +//TODO merge w/ code below +String getArtist () +{ + String artist = getPlayItemMetaDataString("artist"); + if (artist == "") artist = getPlayItemMetaDataString("uvox/artist"); + if (artist == "") artist = getPlayItemMetaDataString("cbs/artist"); + if (artist == "") artist = getPlayItemMetaDataString("streamtitle"); + if (artist == "") artist = getPlayItemDisplayTitle(); + + return artist; +} + +// ------------------------------------------------------------------------------ +// close the notifier window, destroys the container automatically because it's dynamic +// ------------------------------------------------------------------------------ +reset() { + notifier_container.close(); + notifier_container = NULL; + notifier_layout = NULL; + handleAACalback = FALSE; +} + +// ------------------------------------------------------------------------------ +createNotifier(boolean cancel) { + if (notifier_container == NULL) { + notifier_container = newDynamicContainer("notifier"); + if (!notifier_container) return; // reinstall duh! + if (isDesktopAlphaAvailable()) + notifier_layout = notifier_container.getLayout("desktopalpha"); + else + notifier_layout = notifier_container.getLayout("normal"); + if (!notifier_layout) return; // reinstall twice, man + } else if (cancel) { + cancelAnimation(); + } +} + +cancelAnimation() +{ + notifier_layout.cancelTarget(); + notifier_timer.stop(); +} + +// ------------------------------------------------------------------------------ +showNotifier(int w) { + w = w + 32; + + Layout m = getContainer("main").getCurLayout(); + int x = left = getViewportWidthFromGuiObject(m) + getViewportLeftFromGuiObject(m) - w - 2; + int y = getViewportHeightFromGuiObject(m) + getViewportTopFromGuiObject(m) - 80 - 2; + + // show if not there or if already shown then lets resize on the fly (bento style) + if (!notifier_layout.isVisible()) { + notifier_layout.resize(x, y, w, 80); + } + else { + notifier_layout.resize(notifier_layout.getguiX(), y, notifier_layout.getGuiW(), 80); + } + + if (notifier_layout.isTransparencySafe()) { + notifier_layout.show(); + notifier_layout.setTargetA(255); + notifier_layout.setTargetX(x); + notifier_layout.setTargetY(y); + notifier_layout.setTargetW(w); + notifier_layout.setTargetH(80); + notifier_layout.setTargetSpeed(StringToInteger(notifier_fadeintime_attrib.getData()) / 1000); + notifier_layout.gotoTarget(); + } else { + notifier_layout.setAlpha(255); + notifier_layout.show(); + notifier_timer.setDelay(StringToInteger(notifier_holdtime_attrib.getData())); + notifier_timer.start(); + } +} + +// ------------------------------------------------------------------------------ + +prepareAlbumArtNotifier() +{ + if (!notifier_layout) return; + Group g_albumart = notifier_layout.findObject("notifier.albumart"); + + DebugString("prepareAlbumArtNotifier: handleAACalback="+integerToString(handleAACalback), 9); + if (g_albumart) + { + cover = g_albumart.findObject("notifier.cover"); + DebugString("prepareAlbumArtNotifier: cover.isLoading="+integerToString(cover.isLoading()), 9); + DebugString("prepareAlbumArtNotifier: cover.isInvalid="+integerToString(cover.isInvalid()), 9); + handleAACalback = true; + cover.refresh(); + } +} + +cover.onAlbumArtLoaded(boolean success) +{ + /* + Created a seperate function for the code that was here because for some reason I couldn't force this + event (from the fallbackTempFix.onTimer) with cover.onAlbumArtLoaded(success) after the Winamp bug appears. + Weird, yes. + */ + FORCE_BUG_MODE onAlbumArt(success); +} + +// ------------------------------------------------------------------------------ +Int fillNextTrackInfo(String corneroverride) { + Int maxv = 0; + Int stream = 0; + + if (!notifier_layout) return 0; + + Group g_text = notifier_layout.findObject("notifier.text"); + Group g_albumart = notifier_layout.findObject("notifier.albumart"); + + Text plentry = g_text.findObject("plentry"); + Text nexttrack = g_text.findObject("nexttrack"); + Text _title = g_text.findObject("title"); + Text album = g_text.findObject("album"); + Text artist = g_text.findObject("artist"); + Text endofplayback = notifier_layout.findObject("endofplayback"); + + DebugString("got callback for " + getPlayItemString(), 0); + + // Get Stream Name - if no stream returns "" + string s = getPlayItemMetaDataString("streamname"); + string stype = getPlayItemMetaDataString("streamtype"); //"streamtype" will return "2" for SHOUTcast and "5" for SHOUTcast 2 + if (stype == "2" || stype == "5") stream = 1; + + if (endofplayback) endofplayback.hide(); + + if (plentry) + { + plentry.setText(integerToString(getPlaylistIndex()+1)+translate(" of ")+integerToString(getPlaylistLength())); + plentry.show(); + } + if (nexttrack) { + if (corneroverride == "") { + if (!stream) { + if (!isVideo()) + { + nexttrack.setText("New track"); + } + else + { + nexttrack.setText("New video"); + } + } + else + { + nexttrack.setText("On air"); + } + } + else + { + nexttrack.setText(corneroverride); + } + nexttrack.show(); + } + + string set_artist = ""; + string set = ""; + if (_title) { + String str; + if (!stream) + { + _title.setXmlParam("ticker", "0"); + _title.setXmlParam("display", ""); + + str = getPlayitemMetaDataString("title"); + if (str == "") str = getPlayitemDisplayTitle(); + String l = getPlayItemMetaDataString("length"); + if (l != "") { + str += " (" + integerToTime(stringtointeger(l)) + ")"; + } + _title.setText(str); + } + else + { + if (str = getPlayItemMetaDataString("streamtitle") != "") + { + int v = strsearch(str, " - "); // We divide the string by a " - " sublimiter - no luck for old / wrong tagged stations + if (v > 0) { + set_artist = strleft (str, v); // Store artist + string str = strright (str, strlen(str) - 3 - v); + _title.setText(str); + } + else + { + _title.setXmlParam("ticker", "1"); // These titles can be _very_ long + _title.setText(str); + } + } else + { + _title.setXmlParam("ticker", "1"); + _title.setXmlParam("display", "songtitle"); + _title.setText(""); + } + } + _title.show(); + } + + if (artist) { + if (!stream) { + if (isVideo()) + { + artist.setText(""); + } + else + { + artist.setText(getPlayitemMetaDataString("artist")); + } + } + else + { + // Perhaps we've stored the artist before? + if (set_artist != "") + { + artist.setText(set_artist); + } + // Then display the station name + else if (s != "") + { + artist.setText(s); + } + // So, we've had no luck - just display a static text :( + else + { + if (isVideo()) + { + artist.setText("Internet TV"); + } + else + { + artist.setText("Internet Radio"); + } + } + } + artist.show(); + } + + if (album) { + String str; + if (!stream && !isVideo()) { + album.setXmlParam("display", ""); + str = getPlayitemMetaDataString("album"); + String l = getPlayitemMetaDataString("track"); + if (l != "" && l != "-1") str += " (" + translate("Track ") + l + ")"; + album.setText(str); + } + else + { + album.setXmlParam("display", ""); + // we have divided the songname - let's display the station name + if (set_artist != "" && s != "") + { + album.setText(s); + } + // no luck either... + else + { + album.setText(""); + album.setXmlParam("display", "songinfo_localise"); + } + } + album.show(); + } + + // Album Art Stuff + + Layer webcover; + if (g_albumart) + { + cover = g_albumart.findObject("notifier.cover"); + webcover = g_albumart.findObject("notifier.webcover"); + } + + Boolean showAlbumArt = FALSE; + + if (cover != NULL && webcover != NULL && notifier_artworkinnotification_attrib.getData() == "1") + { + if (stream) + { + if(stype == "2" || stype == "5" && cover.isInvalid()) + { + webcover.setXMLParam("image", WEBCOVER_SHOUTCAST); + cover.hide(); + webcover.show(); + showAlbumArt = TRUE; + } + else if(stype == "5" && !cover.isInvalid()) + { + webcover.hide(); + cover.show(); + showAlbumArt = TRUE; + } + } + else + { + if (cover.isInvalid()) // Check if the album art obj shows a pic + { + showAlbumArt = FALSE; + } + else + { + webcover.hide(); + cover.show(); + showAlbumArt = TRUE; + } + } + } + + if (showAlbumArt) + { + if (g_albumart) g_albumart.show(); + if (g_text) g_text.setXmlParam("x", "75"); + if (g_text) g_text.setXmlParam("w", "-95"); + } + else + { + if (g_albumart) g_albumart.hide(); + if (g_text) g_text.setXmlParam("x", "15"); + if (g_text) g_text.setXmlParam("w", "-35"); + } + + if (g_text) g_text.show(); + + maxv = artist.getAutoWidth(); + if (maxv < album.getAutoWidth()) maxv = album.getAutoWidth(); + if (maxv < _title.getAutoWidth()) maxv = _title.getAutoWidth(); + if (maxv < (nexttrack.getAutoWidth() + plentry.getAutoWidth() - 5) ) maxv = nexttrack.getAutoWidth() + plentry.getAutoWidth() - 5; + if (maxv < 128) maxv = 128; + Layout m = getContainer("main").getCurLayout(); + if (maxv > getViewportWidthFromGuiObject(m)/4) maxv = getViewportWidthFromGuiObject(m)/4; + + width = maxv; + + return maxv + ( showAlbumArt * 91 ); +} + +// ------------------------------------------------------------------------------ +Int fillCustomInfo(String customtext) +{ + Group p = notifier_layout; + Group g_text = p.findObject("notifier.text"); + Group g_albumart = p.findObject("notifier.albumart"); + Text plentry = p.findObject("plentry"); + Text nexttrack = p.findObject("nexttrack"); + Text _title = p.findObject("title"); + Text album = p.findObject("album"); + Text artist = p.findObject("artist"); + Text endofplayback = p.findObject("endofplayback"); + + if (g_text) { g_text.hide(); } + if (g_albumart) g_albumart.hide(); + + if (plentry) { plentry.hide(); } + if (nexttrack) nexttrack.hide(); + if (_title) { _title.hide(); } + if (artist) { artist.hide(); } + if (album) { album.hide(); } + + if (endofplayback != NULL /*&& s_endofplayback != NULL*/) { + endofplayback.setText(translate(customtext)+" "); + //s_endofplayback.setText(translate(customtext)+" "); + int aw = endofplayback.getAutoWidth(); + endofplayback.show(); + //s_endofplayback.show(); + if (aw > 128) + return aw; + } + return 128; +} + +//BUGFIX remove this timer later +fallbackTempFix.onTimer() //As soon as this timer runs, bug mode is ON ;) +{ + if (checkPref(0)) return; + + if (!notifier_layout) onNext(); + + if(!triggerBug) + { + triggerBug = true; + + onAlbumArt(cover.isInvalid()); //First time we see the bug + fallbackTempFix.setDelay(30); + + DebugString("Hello Bug", 9); + } + else if(triggerBug && !cover.isLoading()) onAlbumArt(cover.isInvalid()); +} + +onAlbumArt(Boolean success){ + fallbackTempFix.stop(); //BUGFIX remove later + + DebugString("onAlbumArtLoaded: success="+integerToString(success), 9); + DebugString("onAlbumArtLoaded: handleAACalback="+integerToString(handleAACalback), 9); + DebugString("onAlbumArtLoaded: cover.isLoading="+integerToString(cover.isLoading()), 9); + DebugString("onAlbumArtLoaded: cover.isInvalid="+integerToString(cover.isInvalid()), 9); + if (!handleAACalback || !notifier_layout /*|| isLoading()*/) + { + return; + } + + handleAACalback = cover.isLoading(); + cancelAnimation(); + showNotifier(fillNextTrackInfo(cur_status)); +} diff --git a/Src/resources/skins/Winamp Modern/scripts/notifier.maki b/Src/resources/skins/Winamp Modern/scripts/notifier.maki Binary files differnew file mode 100644 index 00000000..68d2845f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/notifier.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/playlistpro.m b/Src/resources/skins/Winamp Modern/scripts/playlistpro.m new file mode 100644 index 00000000..1a73c987 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/playlistpro.m @@ -0,0 +1,426 @@ +/* + +PlaylistPro build 005 +Originally done by pjn123 (www.skinconsortium.com) for the Classic Pro plugin + +*/ + +#include "lib/std.mi" +#include "lib/pldir.mi" +#include "init_Playlist.m" + +Function resizeResults(int items); +Function doSearch(String input); +Function setSearchBox(boolean onOff); +Function clearSearchBox(); +Function int getPlEntry(int search_item); +Function String replaceString(string baseString, string toreplace, string replacedby); + +Global Group frameGroup, topbar; +Global Edit searchBox; +Global Text helpSearch, searchNews;// fakeText; +Global GuiObject fakeSB, searchXUI, searchButtonXui; +Global Button searchButton, clearButton, clearButtonText; +Global GuiList searchResults; +Global Boolean foundsomething; +Global int tn, h_tune; +Global String temptoken; +Global Windowholder plwh; +GLobal Timer refreshActiveCheck; +Global PopupMenu search_rc; + +Global Container results_container; +Global Layout results_layout, main_layout; + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + topbar = frameGroup.findObject("PlaylistPro.topbar"); + plwh = frameGroup.findObject("wdh.playlist"); + + searchBox = frameGroup.findObject("wasabi.edit.box"); + searchXUI = frameGroup.findObject("pl.search.edit"); + searchButton = frameGroup.findObject("pl.search.go"); + searchButtonXui = frameGroup.findObject("pl.search.go"); + fakeSB = frameGroup.findObject("pl.search.edit.rect"); + clearButton = frameGroup.findObject("pl.search.edit.clear"); + clearButtonText = frameGroup.findObject("pl.search.edit.clear.text"); + helpSearch = frameGroup.findObject("pl.search.edit.searchhelp"); + //fakeText = frameGroup.findObject("pl.search.go.text.fake"); + + results_container = newDynamicContainer("searchresults"); + results_layout = results_container.getLayout("normal"); + searchResults = results_layout.findObject("PlaylistPro.list"); + searchResults.setFontSize(16); + searchNews = results_layout.findObject("PlaylistPro.list.news"); + + main_layout = getContainer("Pledit").getLayout("normal"); + + initAttribs_Playlist(); + + //translation workaround + /*searchButtonXui.setXmlParam("text", System.translate("Search")); + searchButtonXui.setXmlParam("x", integerToString(-1*fakeText.getAutoWidth()-4)); + searchButtonXui.setXmlParam("w", integerToString(fakeText.getAutoWidth()+2)); + searchXUI.setXmlParam("w", integerToString(-1*fakeText.getAutoWidth()-9));*/ + + refreshActiveCheck = new Timer; + refreshActiveCheck.setDelay(100); +} +System.onScriptUnLoading() { + delete refreshActiveCheck; +} + +refreshActiveCheck.onTimer(){ + if((!System.isAppActive() || System.isMinimized()) && results_layout.isVisible() ) results_layout.hide(); +} + +results_layout.onSetVisible(boolean onOff){ + if(onOff){ + refreshActiveCheck.start(); + } + else{ + refreshActiveCheck.stop(); + } +} + +System.onShowLayout(Layout _layout){ + if(main_layout.isVisible()) results_layout.setXmlParam("ontop", "1"); +} + +frameGroup.onSetVisible(boolean onOff){ + if(!onOff) clearSearchBox(); +} + +searchButton.onLeftClick(){ + doSearch(searchBox.getText()); +} + +resizeResults(int items){ + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(500); + results_layout.setTargetSpeed(1); + results_layout.gotoTarget();*/ + + //items++; //temp add one extra for info... xx items found + if(items>20) items=20; + + + if(items>=1) h_tune=29; + else h_tune=25; + + //results_layout.setXmlParam("h", integerToString(20+items*18)); + + /*results_layout.setTargetX(results_layout.getLeft()); + results_layout.setTargetY(results_layout.getTop()); + results_layout.setTargetW(results_layout.getWidth()); + results_layout.setTargetH(h_tune+items*16); + results_layout.setTargetSpeed(0.3); + results_layout.gotoTarget();*/ + results_layout.resize(results_layout.getLeft(), results_layout.getTop(), results_layout.getWidth(), h_tune+items*16); +} + +searchBox.onEnter(){ + doSearch(searchBox.getText()); +} + +doSearch(String input){ + if(input==""){ + clearSearchBox(); + return; + } + + //search history stuff + String history = getPublicString("cPro.PlaylistPro.history", ""); + history = replaceString(history, input, ""); + history = replaceString(history, ";;", ";"); + if(strleft(history, 1)==";") history = strright(history, strlen(history)-1); + if(strright(history, 1)==";") history = strleft(history, strlen(history)-1); + if(history=="") history= input; + else history= input+";"+history; + + String output = getToken(history, ";", 0); + for(int i = 1; i<15; i++){ + if(getToken(history, ";", i)=="") break; + output+=";"+getToken(history, ";", i); + } + setPublicString("cPro.PlaylistPro.history", history); + + + int itemsfound = 0; + input = strlower(input); + + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("w", integerToString(frameGroup.getWidth()-19)); + + if(!results_layout.isVisible()) results_layout.setXmlParam("h", "1"); + + searchResults.deleteAllItems(); + searchResults.scrollToItem(0); + + for(int i = 0; i<PlEdit.getNumTracks(); i++){ + foundsomething=false; + + for(tn = 0; tn<10; tn++){ + if(getToken(input, " ", tn)==""){ + break; + } + + temptoken = getToken(input, " ", tn); + if(strsearch(strlower(PlEdit.getTitle(i) + " " + PlEdit.getFileName(i)), temptoken)>=0){ + foundsomething=true; + } + else{ + foundsomething=false; + } + + if(!foundsomething){ + break; + } + } + + if(foundsomething){ + itemsfound++; + searchResults.addItem(integerToString(i+1)+". " + PlEdit.getTitle(i)); + if(itemsfound>500){ + searchNews.setText("Search result limited to 500 items"); + break; + } + } + } + + if(itemsfound==0){ + searchNews.setText("Nothing was found"); + } + else if(itemsfound<=500){ + searchNews.setText(System.translate("Items found: ") +integerToString(itemsfound)); + } + + if(!results_layout.isVisible()) results_layout.show(); + + // Fix if always on top is enabled.. it just refresh the ontop ;) + results_layout.setXmlParam("ontop", "1"); + + resizeResults(itemsfound); +} + +searchResults.onDoubleClick(Int itemnum){ + PlEdit.playTrack (getPlEntry(itemnum)); + setSearchBox(false); +} + +searchResults.onRightClick(Int itemnum){ + search_rc = new PopupMenu; + search_rc.addCommand("Move selected to top", 1, 0, 0); + search_rc.addCommand("Move selected to bottom", 2, 0, 0); + search_rc.addCommand("Move selected after current", 3, 0, 0); + search_rc.addCommand("Move selected together", 4, 0, 0); + search_rc.addSeparator(); + search_rc.addCommand("Remove selected from playlist", 5, 0, 0); + int result = search_rc.popAtMouse(); + delete search_rc; + + int lastselected = searchResults.getFirstItemSelected(); + int itemcounter = 1; + + if(result==1){ + PlEdit.moveTo (getPlEntry(lastselected), 0); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), itemcounter); + itemcounter++; + } + PlEdit.showTrack(0); + } + else if(result==2){ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getNumTracks ()-1); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected)-itemcounter, PlEdit.getNumTracks ()-1); + itemcounter++; + } + PlEdit.showTrack(PlEdit.getNumTracks ()-1); + } + else if(result==3){ + int align = 0; + int orignalPos = PlEdit.getCurrentIndex(); + int temp = getPlEntry(lastselected); + if(PlEdit.getCurrentIndex() > temp) align++; + + if(orignalPos > getPlEntry(lastselected)) PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()); + else PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+1); + + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + + if(orignalPos != getPlEntry(lastselected)){ + if(orignalPos > getPlEntry(lastselected)){ + PlEdit.moveTo (getPlEntry(lastselected)-align, PlEdit.getCurrentIndex()+itemcounter); + } + else{ + PlEdit.moveTo (getPlEntry(lastselected), PlEdit.getCurrentIndex()+itemcounter+1); + } + + temp = getPlEntry(lastselected); + if(orignalPos > temp) align++; + itemcounter++; + } + } + PlEdit.showCurrentlyPlayingTrack(); + } + else if(result==4){ + int startpos = getPlEntry(lastselected); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.moveTo (getPlEntry(lastselected), startpos+itemcounter); + itemcounter++; + } + PlEdit.showTrack(startpos); + } + else if(result==5){ + PlEdit.removeTrack (getPlEntry(lastselected)); + while(searchResults.getNextItemSelected(lastselected) != -1){ + lastselected = searchResults.getNextItemSelected(lastselected); + PlEdit.removeTrack (getPlEntry(lastselected)-itemcounter); + itemcounter++; + } + } + + else return; + + //hides the search + setSearchBox(false); +} + +int getPlEntry(int search_item){ + return stringToInteger(getToken(searchResults.getItemLabel(search_item,0), ". ", 0))-1; +} + +setSearchBox(boolean onOff){ + if(onOff){ + searchBox.show(); + clearButton.show(); + clearButtonText.show(); + helpSearch.hide(); + searchBox.setFocus(); + } + else{ + searchBox.hide(); + clearButton.hide(); + clearButtonText.hide(); + helpSearch.show(); + results_layout.hide(); + } +} + +fakeSB.onLeftButtonDown(int x, int y){ + setSearchBox(true); +} +fakeSB.onRightButtonDown(int x, int y){ + search_rc = new PopupMenu; + search_rc.addCommand("** Search history **", 0, 0, 1); + search_rc.addSeparator(); + + String history = getPublicString("cPro.PlaylistPro.history", ""); + boolean historyfound=false; + for(int i=0;i<15;i++){ + String historyitem = getToken(history, ";", i); + if(historyitem==""){ + if(i>0) historyfound=true; + break; + } + search_rc.addCommand(historyitem, i+1, 0, 0); + } + if(historyfound) search_rc.addSeparator(); + search_rc.addCommand("Clear History", 100, 0, 0); + + int result = search_rc.popAtMouse(); + delete search_rc; + + if(result>0 && result<100){ + setSearchBox(true); + searchBox.setText(getToken(history, ";", result-1)); + searchButton.leftClick(); + } + else if(result==100){ + setPublicString("cPro.PlaylistPro.history", ""); + } +} + +clearSearchBox(){ + searchBox.setText(""); + setSearchBox(false); +} + +main_layout.onMove(){ + if(results_layout.isVisible()){ + results_layout.setXmlParam("x", integerToString(fakeSB.clientToScreenX(fakeSB.getLeft()-2))); + results_layout.setXmlParam("y", integerToString(fakeSB.clientToScreenY(fakeSB.getTop() + fakeSB.getHeight()))); + results_layout.setXmlParam("ontop", "1"); + } +} +main_layout.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); +} + +frameGroup.onResize(int x, int y, int w, int h){ + if(results_layout.isVisible()) clearSearchBox(); + + //if(playlist_search_attib.getData()=="0") return; + + if(h<102 || playlist_search_attrib.getData()=="0"){ + + if(!topbar.isVisible()) return; //Don't do the same code over and over + + topbar.hide(); + plwh.setXmlParam("y", "0"); + plwh.setXmlParam("h", "0"); + } + else{ + if(topbar.isVisible()) return; //Don't do the same code over and over + + topbar.show(); + plwh.setXmlParam("y", "30"); + plwh.setXmlParam("h", "-30"); + } +} + +clearButton.onLeftClick(){ + clearSearchBox(); +} + +playlist_search_attrib.onDataChanged(){ + frameGroup.onResize(frameGroup.getLeft(), frameGroup.getTop(), frameGroup.getWidth(), frameGroup.getHeight()); + //debug("abc " + getData()); + + if (getData() == "0"){ + topbar.hide(); + plwh.setXMLParam("y", "0"); + plwh.setXMLParam("h", "0"); + } + else if(getData() == "1"){ + + topbar.show(); + plwh.setXMLParam("y", "30"); + plwh.setXMLParam("h", "-30"); + + } +} + + + +String replaceString(string baseString, string toreplace, string replacedby){ + if (toreplace == "") return baseString; + string sf1 = strupper(baseString); + string sf2 = strupper(toreplace); + int i = strsearch(sf1, sf2); + if (i == -1) return baseString; + string left = "", right = ""; + if (i != 0) left = strleft(baseString, i); + if (strlen(basestring) - i - strlen(toreplace) != 0) { + right = strright(basestring, strlen(basestring) - i - strlen(toreplace)); + } + return left + replacedby + right; +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/playlistpro.maki b/Src/resources/skins/Winamp Modern/scripts/playlistpro.maki Binary files differnew file mode 100644 index 00000000..92cdd793 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/playlistpro.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/plmenu.m b/Src/resources/skins/Winamp Modern/scripts/plmenu.m new file mode 100644 index 00000000..18fcfbdf --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/plmenu.m @@ -0,0 +1,72 @@ +#include <lib/std.mi> +#include "attribs.m" + +Global Layout pl_normal; +Global Layout pl_shade; + +System.onScriptLoaded() { + initAttribs(); + menubar_pe_attrib.onDataChanged(); + pl_normal = getScriptGroup().getParentLayout(); +} + +menubar_pe_attrib.onDataChanged() { + Group Player = getscriptgroup().findobject("player.content.pl.dummy.group"); + Group MenuBar = getscriptgroup().findobject("wasabi.menubar.pl"); + Layout main = getscriptgroup().getParentLayout(); + + main.beforeRedock(); + if (getData() == "1") { + Player.setXmlParam("y","16"); + MenuBar.show(); + main.snapAdjust(0,0,0,0); + } + else { + Player.setXmlParam("y","0"); + MenuBar.hide(); + main.snapAdjust(0,0,0,16); + } + main.Redock(); +} + +System.onKeyDown(String k) { + if (pl_shade == NULL) + pl_shade = pl_normal.getContainer().getLayout("shade"); + + if (StrLeft(k,4) == "ctrl" && StrSearch(k, "+w") != -1 && (pl_normal.isActive() || pl_shade.isActive())) { + if (pl_normal.isVisible()) + pl_normal.getContainer().switchToLayout("shade"); + else + pl_normal.getContainer().switchToLayout("normal"); + complete; + } +} + +System.onAccelerator(String action, String section, String key) { + if (menubar_main_attrib.getData() == "0") return; + Layout l = getScriptGroup().getParentLayout(); + if (!l.isActive()) return; + + // we use the general accelerators otherwise use specific ones + // will allow the skin to cope with variations in localisations + if (action == "MENUHOTKEY_FILE" || action == "PL_MENUHOTKEY_FILE") + { + getScriptGroup().findObject("PE_File.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_PLAY" || action == "PL_MENUHOTKEY_PLAYLIST") + { + getScriptGroup().findObject("PE_Playlist.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "PL_MENUHOTKEY_SORT") + { + getScriptGroup().findObject("PE_Sort.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } + if (action == "MENUHOTKEY_HELP" || action == "PL_MENUHOTKEY_HELP") + { + getScriptGroup().findObject("PE_Help.menu").sendAction("open", "", 0, 0, 0, 0); + complete; + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/plmenu.maki b/Src/resources/skins/Winamp Modern/scripts/plmenu.maki Binary files differnew file mode 100644 index 00000000..0e0666be --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/plmenu.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/pltime.m b/Src/resources/skins/Winamp Modern/scripts/pltime.m new file mode 100644 index 00000000..0f1ad50d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/pltime.m @@ -0,0 +1,62 @@ +#include <lib/std.mi> +#include "attribs.m" + +Global Layer TimeBG,TimeDisplay; +Global Text PLTime; +Global Group frameGroup; +Global GuiObject SongTicker; +Global Timer callback; + +function setSongtickerScrolling(); + +System.onScriptLoaded() { + initAttribs(); + frameGroup = getScriptGroup(); + TimeBG = frameGroup.findobject("player.pl.time.left"); + TimeDisplay = frameGroup.findobject("player.pl.time.display.left"); + PLTime = frameGroup.findobject("PLTime"); + callback = new Timer; callback.setDelay(1); callback.start(); +} + +callback.onTimer() { + Container c = getContainer("pledit"); + if (c) { + Layout l = c.getLayout("shade"); + if (l) { + SongTicker = l.findObject("PESongticker"); + } + } + if (SongTicker) callback.stop(); + setSongtickerScrolling(); +} + +frameGroup.onResize(int x, int y, int w, int h) { + if (w>394) { + TimeBG.show(); + TimeDisplay.show(); + PLTime.setXMLParam("x","-215"); + PLTime.setXMLParam("w","90"); + } else { + TimeBG.hide(); + TimeDisplay.hide(); + PLTime.setXMLParam("x","-180"); + PLTime.setXMLParam("w","55"); + } +} + +songticker_scrolling_attrib.onDataChanged() { + setSongtickerScrolling(); +} + +setSongtickerScrolling() { + if (!Songticker) + return; + + if (songticker_scrolling_modern_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","bounce"); + } else if (songticker_scrolling_classic_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","scroll"); + } else { + SongTicker.setXMLParam("ticker","off"); + } +} diff --git a/Src/resources/skins/Winamp Modern/scripts/pltime.maki b/Src/resources/skins/Winamp Modern/scripts/pltime.maki Binary files differnew file mode 100644 index 00000000..76b24211 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/pltime.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/seek.m b/Src/resources/skins/Winamp Modern/scripts/seek.m new file mode 100644 index 00000000..3356d3b1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/seek.m @@ -0,0 +1,65 @@ +#include <lib/std.mi> + +Global Group frameGroup; +Global Slider Seeker; +Global Int Seeking; +Global Timer SongTickerTimer; +Global Text InfoTicker; +Global GuiObject SongTicker; +Global layer SeekPos; + +System.onScriptLoaded() { + + frameGroup = getScriptGroup(); + Seeker = frameGroup.findObject("SeekerGhost"); + SongTicker = frameGroup.findObject("songticker"); + SeekPos = frameGroup.findObject("player.seekbar.pos"); + InfoTicker = frameGroup.findObject("infoticker"); + + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(1000); +} + +SongTickerTimer.onTimer() { + SongTicker.show(); + InfoTicker.hide(); + SongTickerTimer.stop(); +} + +System.onScriptUnloading() { + delete SongTickerTimer; +} + + +Seeker.onSetPosition(int p) { + if (seeking) { + Float f; + f = p; + f = f / 255 * 100; + Float len = getPlayItemLength(); + if (len != 0) { + int np = len * f / 100; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText(translate("Seek") + ":" + integerToTime(np) + "/" + integerToTime(len) + " (" + integerToString(f) + "%) "); + } + } +} + +Seeker.onLeftButtonDown(int x, int y) { + seeking = 1; +} + +Seeker.onLeftButtonUp(int x, int y) { + seeking = 0; + SongTickerTimer.start(); + SongTicker.show(); + InfoTicker.hide(); +} + +Seeker.onSetFinalPosition(int p) { + SongTickerTimer.start(); + SongTicker.show(); + InfoTicker.hide(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/seek.maki b/Src/resources/skins/Winamp Modern/scripts/seek.maki Binary files differnew file mode 100644 index 00000000..09e8f613 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/seek.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/seekshade.m b/Src/resources/skins/Winamp Modern/scripts/seekshade.m new file mode 100644 index 00000000..9edfa8c5 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/seekshade.m @@ -0,0 +1,64 @@ +#include <lib/std.mi> + +Global Group frameGroup; +Class Slider Seeker; +Global Seeker Seeker1, Seeker2; +Global Int Seeking; +Global Timer SongTickerTimer; +Global GuiObject SongTicker; +Global Text InfoTicker; + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + Seeker1 = frameGroup.findObject("shadeSeekerGhost"); + Seeker2 = frameGroup.findObject("shadeSeekerGhost2"); + SongTicker = frameGroup.findObject("SongtickerShade"); + InfoTicker = frameGroup.findObject("infotickerShade"); + + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(1000); +} + +SongTickerTimer.onTimer() { + SongTicker.show(); + InfoTicker.hide(); + SongTickerTimer.stop(); +} + +System.onScriptUnloading() { + delete SongTickerTimer; +} + + +Seeker.onSetPosition(int p) { + if (seeking) { + Float f; + f = p; + f = f / 255 * 100; + Float len = getPlayItemLength(); + if (len != 0) { + int np = len * f / 100; + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText(translate("Seek") + ":" + integerToTime(np) + "/" + integerToTime(len) + " (" + integerToString(f) + "%) "); + } + } +} + +Seeker.onLeftButtonDown(int x, int y) { + seeking = 1; +} + +Seeker.onLeftButtonUp(int x, int y) { + seeking = 0; + SongTickerTimer.start(); + SongTicker.show(); + InfoTicker.hide(); +} + +Seeker.onSetFinalPosition(int p) { + SongTickerTimer.start(); + SongTicker.show(); + InfoTicker.hide(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/seekshade.maki b/Src/resources/skins/Winamp Modern/scripts/seekshade.maki Binary files differnew file mode 100644 index 00000000..77298182 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/seekshade.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/shadecontrol.m b/Src/resources/skins/Winamp Modern/scripts/shadecontrol.m new file mode 100644 index 00000000..1fc4cce0 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadecontrol.m @@ -0,0 +1,190 @@ +#include <lib/std.mi> +#include "attribs.m" + +function setObjects(int w); +function setSongtickerScrolling(); + +Global Group frameGroup, gX1,gX2,gX3,display,display2,displaytimer,displayticker,displayvis; +Global Button btnExpand,btnReduce,shadeeq; +Global Layout main; +Global Layout main_normal; +Global Layer volumebar; +Global Timer SongTickerTimer; +Global GuiObject SongTicker; +Global text InfoTicker; +Global Button colorthemes; + +System.onScriptLoaded() { + initAttribs(); + + frameGroup = getScriptGroup(); + main = frameGroup.getParentLayout(); + main_normal = frameGroup.getParentLayout().getContainer().getLayout("normal"); + gX1 = frameGroup.findObject("shadeX1"); + gX2 = frameGroup.findObject("shadeX2"); + gX3 = frameGroup.findObject("shadeX3"); + shadeeq = frameGroup.findObject("shadeeq"); + display = frameGroup.findObject("shadedisplay"); + display2 = frameGroup.findObject("shadedisplay2"); + displaytimer = frameGroup.findObject("shadetimer"); + displayticker = frameGroup.findObject("shadeticker"); + displayvis = frameGroup.findObject("shadevis"); + btnExpand = frameGroup.findObject("shade.expand"); + btnReduce = frameGroup.findObject("shade.reduce"); + colorthemes = frameGroup.findObject("shadect"); + + SongTicker = frameGroup.findObject("SongtickerShade"); + InfoTicker = frameGroup.findObject("infotickerShade"); + SongTickerTimer = new Timer; + SongTickerTimer.setDelay(1000); + + volumebar = frameGroup.findObject("volumebarShade"); + volumebar.setXmlParam("w",integertostring( (system.getVolume()/255) *40 + 5)); + + setSongtickerScrolling(); +} + +System.onScriptUnloading() { + delete SongTickerTimer; +} + +SongTickerTimer.onTimer() { + SongTicker.show(); + InfoTicker.hide(); + SongTickerTimer.stop(); +} + +frameGroup.onResize(int x, int y, int w, int h) { + setObjects(w); +} + +shadeeq.onLeftClick() { + eq_visible_attrib.setData("1"); +} + +setObjects(int w) { + + int ShowButtons=getPrivateInt("winamp5", "ShowShadeButtons", 0); + + if (ShowButtons) { + btnExpand.show(); + btnReduce.hide(); + } else { + btnExpand.hide(); + btnReduce.show(); + } + + gX1.hide(); + gX2.hide(); + gX3.hide(); + display.hide(); + display2.hide(); + displaytimer.hide(); + displayticker.hide(); + displayvis.hide(); + + if (w>413) { + int w_display=w-356; + display.setXMLParam("w", integertostring(w_display)); + display.show(); + displaytimer.show(); + + if (w>433) { + displayticker.show(); + displayticker.setXMLParam("w", integertostring(w_display-13)); + + if (w>573) { + display.hide(); + display2.setXMLParam("w", integertostring(w_display-45)); + display2.show(); + displayticker.setXMLParam("w", integertostring(w_display-56-13)); + + if (ShowButtons) { + gX1.setXMLParam("x", "-100"); + gX1.show(); + + if (w>596) { + display2.setXMLParam("w", integertostring(w_display-68)); + displayticker.setXMLParam("w", integertostring(w_display-79-13)); + + gX1.setXMLParam("x", "-123"); + + gX2.setXMLParam("x", "-80"); + gX2.show(); + + if (w>655) { + display2.setXMLParam("w", integertostring(w_display-127)); + displayticker.setXMLParam("w", integertostring(w_display-138-13)); + + gX1.setXMLParam("x", "-182"); + + gX2.setXMLParam("x", "-139"); + + gX3.setXMLParam("x", "-116"); + gX3.show(); + + if (w>673) { + displayvis.setXMLParam("x", integertostring(-257)); + displayvis.show(); + displayticker.setXMLParam("w", integertostring(w_display-194-13)); + } + } + } + } else { + display2.setXMLParam("w", integertostring(w_display)); + displayvis.setXMLParam("x", integertostring(-130)); + displayvis.show(); + displayticker.setXMLParam("w", integertostring(w_display-66-13)); + } + } + } + } +} + +System.onKeyDown(String key) { + if (StrLeft(key,4) == "ctrl" && StrSearch(key, "+w") != -1 && (main.isActive() || main_normal.isActive())) { + if (main.isVisible()) + main.getContainer().switchToLayout("normal"); + else + main.getContainer().switchToLayout("shade"); + complete; + } +} + +btnExpand.onleftClick() { + setPrivateInt("winamp5", "ShowShadeButtons", 0); + setObjects(main.getGUIw()); +} + +btnReduce.onleftClick() { + setPrivateInt("winamp5", "ShowShadeButtons", 1); + setObjects(main.getGUIw()); +} + +System.onvolumechanged(int newvol) +{ + volumebar.setXmlParam("w",integertostring( (newvol/255) *40 + 5)); + SongTickerTimer.start(); + SongTicker.hide(); + InfoTicker.show(); + InfoTicker.setText(translate("Volume") + ": " + integerToString(newvol/2.55) + "%"); +} + +songticker_scrolling_attrib.onDataChanged() { + setSongtickerScrolling(); +} + +setSongtickerScrolling() { + if (songticker_scrolling_modern_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","bounce"); + } else if (songticker_scrolling_classic_attrib.getData()=="1") { + SongTicker.setXMLParam("ticker","scroll"); + } else { + SongTicker.setXMLParam("ticker","off"); + } +} + +colorthemes.onRightButtonDown(int x, int y) { + triggerAction(colorthemes, "ThemesSlotsMenu", ""); + complete; +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/shadecontrol.maki b/Src/resources/skins/Winamp Modern/scripts/shadecontrol.maki Binary files differnew file mode 100644 index 00000000..6a47037e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadecontrol.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/shadelinks.m b/Src/resources/skins/Winamp Modern/scripts/shadelinks.m new file mode 100644 index 00000000..0bca63f3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadelinks.m @@ -0,0 +1,45 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: syncbutton.m +Version: 1.0 + +Type: maki +Date: 25. Jun. 2007 - 14:04 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Function String getArtist (); + +Global Button nowplaying; + +System.onScriptLoaded () +{ + nowplaying = getScriptGroup().getObject("nowplaying"); +} + +nowplaying.onLeftClick () +{ + String artist = getArtist(); + if (artist == "") return; + + String icid = "winshadeiconmodern"; + + System.navigateUrlBrowser("http://client.winamp.com/nowplaying/artist/?icid="+ icid +"&artistName=" + artist); +} + +String getArtist () +{ + String artist = getPlayItemMetaDataString("artist"); + if (artist == "") artist = getPlayItemMetaDataString("uvox/artist"); + if (artist == "") artist = getPlayItemMetaDataString("cbs/artist"); + if (artist == "") artist = getPlayItemMetaDataString("streamtitle"); + if (artist == "") artist = getPlayItemDisplayTitle(); + + return artist; +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/shadelinks.maki b/Src/resources/skins/Winamp Modern/scripts/shadelinks.maki Binary files differnew file mode 100644 index 00000000..13c24afe --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadelinks.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/shadesizepos.m b/Src/resources/skins/Winamp Modern/scripts/shadesizepos.m new file mode 100644 index 00000000..9712239a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadesizepos.m @@ -0,0 +1,41 @@ +#include <lib/std.mi> +#include "attribs.m" + +Function updateLinkage(int type); + +System.onScriptLoaded() { + initAttribs(); + if (windowshade_linkall_attrib.getData() == "1") windowshade_linkall_attrib.onDataChanged(); + if (windowshade_linkposition_attrib.getData() == "1") windowshade_linkposition_attrib.onDataChanged(); + if (windowshade_linknone_attrib.getData() == "1") windowshade_linknone_attrib.onDataChanged(); +} + +windowshade_linkall_attrib.onDataChanged() { + if (getData() == "1") updateLinkage(2); +} + +windowshade_linkposition_attrib.onDataChanged() { + if (getData() == "1") updateLinkage(1); +} + +windowshade_linknone_attrib.onDataChanged() { + if (getData() == "1") updateLinkage(0); +} + +updateLinkage(int type) { + Layout shade = getScriptGroup().getParentLayout(); + Layout normal = shade.getContainer().getLayout("normal"); + if (type == 0) { + shade.setXmlParam("unlinked", "1"); + shade.setXmlParam("linkwidth", ""); + normal.setXmlParam("linkwidth", ""); + } else if (type == 1) { + shade.setXmlParam("unlinked", "0"); + shade.setXmlParam("linkwidth", ""); + normal.setXmlParam("linkwidth", ""); + } else if (type == 2) { + shade.setXmlParam("unlinked", "0"); + shade.setXmlParam("linkwidth", "normal"); + normal.setXmlParam("linkwidth", "shade"); + } +} diff --git a/Src/resources/skins/Winamp Modern/scripts/shadesizepos.maki b/Src/resources/skins/Winamp Modern/scripts/shadesizepos.maki Binary files differnew file mode 100644 index 00000000..b3b51c8e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/shadesizepos.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/songinfo.m b/Src/resources/skins/Winamp Modern/scripts/songinfo.m new file mode 100644 index 00000000..d216b1a3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/songinfo.m @@ -0,0 +1,165 @@ +#include <lib/std.mi> + +Function string tokenizeSongInfo(String tkn, String sinfo); +Function getSonginfo(String SongInfoString); +Function loadPlaylistArtWork(); + +Global Group frameGroup; +Global Layer channelDisplay; +Global Text bitrateText, FrequencyText; +Global Timer songInfoTimer; +Global String SongInfoString; +Global AlbumArtLayer waaa; +Global Int waaaRetries = 0; + +System.onScriptLoaded(){ + frameGroup = getScriptGroup(); + + bitrateText = frameGroup.findObject("Bitrate"); + frequencyText = frameGroup.findObject("Frequency"); + + channelDisplay = frameGroup.findObject("channels"); + + songInfoTimer = new Timer; + songInfoTimer.setDelay(1000); + + if (getStatus() == STATUS_PLAYING) { + String sit = getSongInfoText(); + waaaRetries = 0; + if (sit != "") getSonginfo(sit); + else songInfoTimer.setDelay(50); // goes to 1000 once info is available + songInfoTimer.start(); + } else if (getStatus() == STATUS_PAUSED) { + getSonginfo(getSongInfoText()); + } +} + +loadPlaylistArtWork() +{ + Container albumart = System.getContainer("winamp.albumart"); + if(albumart) + { + Layout aalayout = albumart.getLayout("normal"); + if(aalayout) + { + waaa = aalayout.findObject("waaa"); + } + } +} + +System.onScriptUnloading(){ + delete songInfoTimer; +} + +System.onPlay(){ + String sit = getSongInfoText(); + waaaRetries = 0; + if (sit != "") getSonginfo(sit); + else songInfoTimer.setDelay(50); // goes to 1000 once info is available + songInfoTimer.start(); +} + +System.onStop(){ + waaaRetries = 0; + songInfoTimer.stop(); + frequencyText.setText("(__)"); + bitrateText.setText("(___)"); + channelDisplay.setXmlParam("image", "player.songinfo.none"); +} + +System.onResume(){ + String sit = getSongInfoText(); + if (sit != "") getSonginfo(sit); + else songInfoTimer.setDelay(50); // goes to 1000 once info is available + songInfoTimer.start(); +} + +System.onPause(){ + songInfoTimer.stop(); +} + +songInfoTimer.onTimer(){ + String sit = getSongInfoText(); + if (sit == "") return; + songInfoTimer.setDelay(1000); + getSonginfo(sit); + + if(!waaa) loadPlaylistArtWork(); + if(waaa) + { + if(waaa.isInvalid() && waaaRetries < 5) + { + waaaRetries += 1; + waaa.refresh(); + waaa.show(); + } + else if(!waaa.isInvalid()) + { + waaaRetries = 0; + } + } +} + +String tokenizeSongInfo(String tkn, String sinfo){ + int searchResult; + String rtn; + if (tkn=="Bitrate"){ + for (int i = 0; i < 5; i++) { + rtn = getToken(sinfo, " ", i); + searchResult = strsearch(rtn, "kbps"); + if (searchResult>0) return StrMid(rtn, 0, searchResult); + } + return ""; + } + + if (tkn=="Channels"){ + for (int i = 0; i < 5; i++) { + rtn = getToken(sinfo, " ", i); + searchResult = strsearch(rtn, "tereo"); + if (searchResult>0) return "stereo"; + searchResult = strsearch(rtn, "ono"); + if (searchResult>0) return "mono"; + // Martin: surround > 3, stereo = 2,3 + searchResult = strsearch(rtn, "annels"); + if (searchResult>0) + { + int pos = strsearch(getSongInfoText(), "annels"); + pos = stringToInteger(strmid(getSongInfoText(), pos - 4, 1)); + if (pos > 3) return "surround"; + if (pos > 1 && pos < 4) return "stereo"; + else return "mono"; + } + } + return "none"; + } + + if (tkn=="Frequency"){ + for (int i = 0; i < 5; i++) { + rtn = getToken(sinfo, " ", i); + searchResult = strsearch(strlower(rtn), "khz"); + if (searchResult>0) { + String r = StrMid(rtn, 0, searchResult); + int dot = StrSearch(r, "."); + if (dot == -1) dot = StrSearch(r, ","); + if (dot != -1) return StrMid(r, 0, dot); + return r; + } + + } + return ""; + } + else return ""; +} + +getSonginfo(String SongInfoString) { + String tkn; + + tkn = tokenizeSongInfo("Bitrate", SongInfoString); + if(tkn != "") {bitrateText.setText("["+tkn+"]");} + + tkn = tokenizeSongInfo("Channels", SongInfoString); + channelDisplay.setXmlParam("image", "player.songinfo." + tkn); + + tkn = tokenizeSongInfo("Frequency", SongInfoString); + if(tkn != "") {frequencyText.setText("["+tkn+"]");} +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/songinfo.maki b/Src/resources/skins/Winamp Modern/scripts/songinfo.maki Binary files differnew file mode 100644 index 00000000..2d943cd2 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/songinfo.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/standardframe.m b/Src/resources/skins/Winamp Modern/scripts/standardframe.m new file mode 100644 index 00000000..7e6a8a57 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/standardframe.m @@ -0,0 +1,68 @@ +#include <lib/std.mi> + +Global Group frameGroup, content, titlebar; +Global String x, y, w, h, rx, ry, rw, rh; +Global Layer mouselayer; +Global Button Sysmenu; + +Function setNewGroup(String groupid); + +System.onScriptLoaded() { + frameGroup = getScriptGroup(); + String param = getParam(); + x = getToken(param, ",", 0); + y = getToken(param, ",", 1); + w = getToken(param, ",", 2); + h = getToken(param, ",", 3); + rx = getToken(param, ",", 4); + ry = getToken(param, ",", 5); + rw = getToken(param, ",", 6); + rh = getToken(param, ",", 7); + sysmenu = frameGroup.findObject("sysmenu"); +} + +System.onSetXuiParam(String param, String value) { + if (param == "content") { + setNewGroup(value); + titlebar = frameGroup.findObject("wasabi.titlebar"); + mouselayer = titlebar.findObject("mousetrap"); + } + if (param == "padtitleright" || param == "padtitleleft") { + if (titlebar != NULL) titlebar.setXmlParam(param, value); + } + if (param == "shade") { + if (mouselayer != NULL) mouselayer.setXmlParam("dblclickaction", "switch;"+value); + else messagebox("Cannot set shade parameter for StandardFrame object, no mousetrap found", "Skin Error", 0, ""); + } +} + +// backward compatibility for prerelease notify trick +frameGroup.onNotify(String cmd, String param, int a, int b) { + String _command = getToken(cmd, ",", 0); + String _param = getToken(cmd, ",", 1); + if (_command == "content" || _command == "padtitleright" || _command == "padtitleleft" || _command == "shade") { + onSetXuiParam(_command, _param); + } +} + +setNewGroup(String groupid) { + content = newGroup(groupid); + if (content == NULL) { + messagebox("group \"" + groupid + "\" not found", "ButtonGroup", 0, ""); + return; + } + content.setXmlParam("x", x); + content.setXmlParam("y", y); + content.setXmlParam("w", w); + content.setXmlParam("h", h); + content.setXmlParam("relatx", rx); + content.setXmlParam("relaty", ry); + content.setXmlParam("relatw", rw); + content.setXmlParam("relath", rh); + content.init(frameGroup); +} + +Sysmenu.onLeftClick() { + LayoutStatus _status = frameGroup.findObject("sysmenu.status"); + _status.callme("{system}"); +} diff --git a/Src/resources/skins/Winamp Modern/scripts/standardframe.maki b/Src/resources/skins/Winamp Modern/scripts/standardframe.maki Binary files differnew file mode 100644 index 00000000..252fee66 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/standardframe.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/titlebar.m b/Src/resources/skins/Winamp Modern/scripts/titlebar.m new file mode 100644 index 00000000..5d28307c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/titlebar.m @@ -0,0 +1,104 @@ +#include <lib/std.mi> + +#define MARGIN 0 + +Function resizeObjects(); + +Global GuiObject left, right, center; +Global Text tcenter; +Global Layer lcenter; +Global Group sg; +Global int padleft, padright; + +System.onScriptLoaded() { + + padleft = 0; + padright = 0; + + sg = getScriptGroup(); + + if (sg == NULL) { + messageBox("titlebar.maki can only run within a group", "Error", 0, ""); + return; + } + + left = sg.findObject(getToken(getParam(), ";", 0)); + center = sg.findObject(getToken(getParam(), ";", 1)); + if (center != NULL) { + tcenter = center.findObject("window.titlebar.title"); + lcenter = center.findObject("window.titlebar.title.overlay"); + } + right = sg.findObject(getToken(getParam(), ";", 2)); +} + +// backward compatibility with prerelease notify trick +sg.onNotify(String cmd, String param, int a, int b) { + String _command = getToken(cmd, ",", 0); + String _param = getToken(cmd, ",", 1); + if (_command == "padtitleright" || _command == "padtitleright") + onSetXuiParam(_command, _param); +} + +System.onSetXuiParam(String param, String value) { + if (param == "padtitleright") { + padright = padright + StringToInteger(value); + resizeObjects(); + } + if (param == "padtitleleft") { + padleft = padleft + StringToInteger(value); + resizeObjects(); + } +} + +resizeObjects() { + int text_width = 0; + int layout_width = 0; + int group_width = sg.getWidth(); + + Layout l = sg.getParentLayout(); + layout_width = l.getWidth(); + + if (center != NULL) { + text_width = center.getAutoWidth(); + } + + int lx = (layout_width - text_width) / 2; + lx = l.clientToScreenX(lx); + lx = sg.screenToClientX(lx); + lx = lx - sg.getLeft(); + + if (center != NULL) { + center.setXmlParam("x", IntegerToString(lx)); + center.setXmlParam("relatx", "0"); + center.setXmlParam("w", IntegerToString(text_width)); + center.setXmlParam("relatw", "0"); + + lcenter.setXmlParam("x", IntegerToString(lx)); + lcenter.setXmlParam("relatx", "0"); + lcenter.setXmlParam("w", IntegerToString(text_width)); + lcenter.setXmlParam("relatw", "0"); + + } + + if (left != NULL) { + left.setXmlParam("x", IntegerToString(padleft)); + left.setXmlParam("relatx", "0"); + left.setXmlParam("w", IntegerToString(lx-padleft-MARGIN)); + left.setXmlParam("relatw", "0"); + } + if (right != NULL) { + right.setXmlParam("x", IntegerToString(lx+text_width+MARGIN+1)); + right.setXmlParam("relatx", "0"); + right.setXmlParam("w", "-" + IntegerToString(lx+text_width+1+padright+MARGIN+1)); //IntegerToString(group_width-(lx+text_width))); + right.setXmlParam("relatw", "1"); + } +} + +tcenter.onTextChanged(string newtext) { + resizeObjects(); +} + +sg.onResize(int x, int y, int w, int h) { + resizeObjects(); +} + diff --git a/Src/resources/skins/Winamp Modern/scripts/titlebar.maki b/Src/resources/skins/Winamp Modern/scripts/titlebar.maki Binary files differnew file mode 100644 index 00000000..316a777a --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/titlebar.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/video.m b/Src/resources/skins/Winamp Modern/scripts/video.m new file mode 100644 index 00000000..5cd0723d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/video.m @@ -0,0 +1,15 @@ +#include <lib/std.mi> +#include "attribs.m" + +Global Button btnVideoReattach; + +System.onScriptLoaded() { + initAttribs(); + BtnVideoReattach = getScriptGroup().findObject("button.video.reattach"); +} + +BtnVideoReattach.onLeftClick() { + Container c = getContainer("main"); + if (c.getLayout("shade").isVisible()) c.switchToLayout("normal"); + video_detach_attrib.setData("0"); +} diff --git a/Src/resources/skins/Winamp Modern/scripts/video.maki b/Src/resources/skins/Winamp Modern/scripts/video.maki Binary files differnew file mode 100644 index 00000000..734ae90c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/video.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/videoavs.m b/Src/resources/skins/Winamp Modern/scripts/videoavs.m new file mode 100644 index 00000000..32ce21cb --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/videoavs.m @@ -0,0 +1,313 @@ +#include <lib/std.mi> +#include <lib/config.mi> + +#define MAIN_ATTRIBS_MGR + +Function updateVisCmd(); +Function updateOpenCloseDirection(); + +// this implements the main app drawer +#include "drawer.m" + +// this loads the skin config attributes definitions +#include "attribs.m" + +Global Layout main, shade; +Global Container maincontainer; +Global Group frameGroup, ButtonsVideo,ButtonsVis,ButtonsVideoDetach,ButtonsVisDetach,ButtonsVideoSwitchto,ButtonsVisSwitchto; +Global Button btnOpen,btnClose,btnMaximize,btnRestore, btnVisDetach, btnVideoDetach, btnVisSwitchto, btnVideoSwitchto; +Global Layer resizer,resizerDrawer,OpenCloseHider; +Global GuiObject VideoVisGroup; +Global Int evershown; +Global Int ismaximized; +Global Int lasttotop; + +//------------------------------------------------------------------------ +// script startup +//------------------------------------------------------------------------ +System.onScriptLoaded() { + // init skin attributes for this script + + initAttribs(); + + // bind objects + + frameGroup = getScriptGroup(); + btnOpen = frameGroup.findObject("videoavs.open"); + btnClose = frameGroup.findObject("videoavs.close"); + btnMaximize = frameGroup.findObject("button.vid.max"); + btnRestore = frameGroup.findObject("button.vid.restore"); + resizer = frameGroup.findObject("player.main.resizer"); + resizerDrawer = frameGroup.findObject("drawer.resizer"); + + ButtonsVideo = frameGroup.findObject("buttons.video"); + ButtonsVis = frameGroup.findObject("buttons.vis"); + + ButtonsVideoDetach = frameGroup.findObject("buttons.video.detach"); + ButtonsVisDetach = frameGroup.findObject("buttons.vis.detach"); + BtnVisDetach = ButtonsVisDetach.findObject("button.vis.detach"); + BtnVideoDetach = ButtonsVideoDetach.findObject("button.vid.detach"); + + ButtonsVideoSwitchto = frameGroup.findObject("buttons.video.switchto"); + ButtonsVisSwitchto = frameGroup.findObject("buttons.vis.switchto"); + + BtnVisSwitchto = ButtonsVisSwitchto.findObject("button.vis.Switchto"); + BtnVideoSwitchto = ButtonsVideoSwitchto.findObject("button.vid.Switchto"); + + OpenCloseHider=frameGroup.findObject("openclosehider"); + + main = frameGroup.getParentLayout(); + maincontainer = main.getContainer(); + VideoVisGroup = frameGroup.findObject("AVSGroup"); + + VideoVisGroup.hide(); + + // bind drawer script attribs to our attribs + + __drawer_directiontop_attrib = drawer_directiontop_attrib; + __scrolldrawerattrib = scrolldrawerattrib; + __drawer_directionbypass_attrib = drawer_directionbypass_attrib; + __vis_detach_attrib = vis_detach_attrib; + __video_detach_attrib = video_detach_attrib; + + // startup drawer script + + initDrawer(main, "VideoAVS"); + + // more init + + if (vis_detach_attrib.getData() == "1" && video_detach_attrib.getData() == "1") OpenCloseHider.show(); + else OpenCloseHider.hide(); + + lasttotop = 0; +} + +//------------------------------------------------------------------------ +// grab a handle to the windowshade layout, can't get it in onScriptLoaded since it doesn't exists yet +// also, first time we are shown, we update the viscmd button's action +//------------------------------------------------------------------------ +main.onSetVisible(int show) { + if (!evershown) { + evershown = 1; + if (!shade) { + shade = maincontainer.getLayout("shade"); + } + updateVisCmd(); + updateOpenCloseDirection(); + } +} + +//------------------------------------------------------------------------ +// script shutdown +//------------------------------------------------------------------------ +System.onScriptUnloading() { + + // shutdown the drawer script + + shutdownDrawer(); +} + +//------------------------------------------------------------------------ +// drawer script backend +//------------------------------------------------------------------------ + +Int getDrawerClosedHeight() { + return 280; // this is the size of the layout when the drawer is closed +} + +Int getDefaultDrawerOpenHeight() { + return 510; // this is the default size of the layout, used when it opens the first time +} + +// whenever the main window is resized while its drawer is closed, we change the height of the drawer the +// next time it opens so that video will fit 4:3 +Int getDrawerOpenAutoHeight(int layoutwidth) { + return (layoutwidth-6)*(3/4)+55+270; +} + +WindowHolder getVisWindowHolder() { + WindowHolder wh = getScriptGroup().findObject("myviswnd"); + return wh; // we return our vis windowholder object +} + +WindowHolder getVideoWindowHolder() { + WindowHolder wh = getScriptGroup().findObject("myvideownd"); + return wh; // we return our video windowholder object +} + +//------------------------------------------------------------------------ +// optional drawer events +//------------------------------------------------------------------------ + +onDoneOpeningDrawer() { + // nothing to do +} + +onDoneClosingDrawer() { + VideoVisGroup.hide(); +} + +onBeforeOpeningDrawer() { + resizer.setXmlParam("resize", "bottomright"); + resizerDrawer.setXmlParam("resize", "bottomright"); + btnOpen.hide(); + main.setXmlParam("minimum_h", "380"); + + VideoVisGroup.show(); +} + +onBeforeClosingDrawer() { + resizer.setXmlParam("resize", "right"); + resizerDrawer.setXmlParam("resize", "right"); + main.setXmlParam("minimum_h", "280"); + btnOpen.show(); +} + +onShowVis() { + ButtonsVideo.hide(); + ButtonsVideoDetach.hide(); + ButtonsVideoSwitchto.hide(); + ButtonsVis.show(); + ButtonsVisDetach.show(); + if (video_detach_attrib.getData() == "0") ButtonsVisSwitchto.show(); +} + +onHideVis() { + ButtonsVis.hide(); + ButtonsVisDetach.hide(); + ButtonsVisSwitchto.hide(); +} + +onShowVideo() { + ButtonsVis.hide(); + ButtonsVisDetach.hide(); + ButtonsVisSwitchto.hide(); + ButtonsVideo.show(); + ButtonsVideoDetach.show(); + if (vis_detach_attrib.getData() == "0") ButtonsVideoSwitchto.show(); +} + +onHideVideo() { + ButtonsVideo.hide(); + ButtonsVideoDetach.hide(); + ButtonsVideoSwitchto.hide(); +} + +onDetachVideo() { + ButtonsVisSwitchto.hide(); + if (vis_detach_attrib.getData() == "1") OpenCloseHider.show(); +} + +onAttachVideo() { + ButtonsVisSwitchto.show(); + OpenCloseHider.hide(); +} + +onDetachVis() { + ButtonsVideoSwitchto.hide(); + if (video_detach_attrib.getData() == "1") OpenCloseHider.show(); +} + +onAttachVis() { + ButtonsVideoSwitchto.show(); + OpenCloseHider.hide(); +} + +onBeforeRestore() { + btnMaximize.show(); + btnRestore.hide(); +} + +onBeforeMaximize() { + btnRestore.show(); + btnMaximize.hide(); +} + +onCancelMaximize() { + btnMaximize.show(); + btnRestore.hide(); +} + +// ----------------------------------------------------------------------- +// drawer control +// ----------------------------------------------------------------------- + +btnOpen.onLeftClick() { + openDrawer(); +} + +btnClose.onLeftClick() { + closeDrawer(); +} + +btnMaximize.onLeftClick() { + maximizeWindow(); +} + +btnRestore.onLeftClick() { + restoreWindow(); +} + +BtnVisDetach.onLeftClick() { + detachVis(); +} + +BtnVideoDetach.onLeftClick() { + detachVideo(); +} + +BtnVisSwitchto.onLeftClick() { + switchToVideo(); +} + +BtnVideoSwitchto.onLeftClick() { + switchToVis(); +} + +// ----------------------------------------------------------------------- +// when the player window is moved on the screen, we should update the up/down arrow for the open/close buttons since the +// drawer may have changed the direction it will open depending on user settings +// ----------------------------------------------------------------------- +main.onMove() { + updateOpenCloseDirection(); +} + +// ----------------------------------------------------------------------- +// just invert the images when the direction is to top and restore them otherwise +// ----------------------------------------------------------------------- +updateOpenCloseDirection() { + if (isDrawerToTop()) { + if (!lasttotop) { + btnClose.setXmlParam("image", "player.button.videoavs"); + btnClose.setXmlParam("downimage", "player.button.videoavs.pressed"); + btnClose.setXmlParam("hoverImage", "player.button.videoavs.hover"); + btnOpen.setXmlParam("image", "player.button.videoavs.up"); + btnOpen.setXmlParam("downimage", "player.button.videoavs.up.pressed"); + btnOpen.setXmlParam("hoverImage", "player.button.videoavs.up.hover"); + lasttotop = 1; + } + } else { + if (lasttotop) { + btnOpen.setXmlParam("image", "player.button.videoavs"); + btnOpen.setXmlParam("downimage", "player.button.videoavs.pressed"); + btnOpen.setXmlParam("hoverImage", "player.button.videoavs.hover"); + btnClose.setXmlParam("image", "player.button.videoavs.up"); + btnClose.setXmlParam("downimage", "player.button.videoavs.up.pressed"); + btnClose.setXmlParam("hoverImage", "player.button.videoavs.up.hover"); + lasttotop = 0; + } + } +} + +// ----------------------------------------------------------------------- +updateVisCmd() { + Button btn = getScriptGroup().findObject("button.vis.misc"); + if (btn) { + if (viscmd_menu_attrib.getData() == "1") { + btn.setXmlParam("action", "Vis_Menu"); + } else { + btn.setXmlParam("action", "Vis_Cfg"); + } + } +} + diff --git a/Src/resources/skins/Winamp Modern/scripts/videoavs.maki b/Src/resources/skins/Winamp Modern/scripts/videoavs.maki Binary files differnew file mode 100644 index 00000000..13a3f501 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/videoavs.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/vis.m b/Src/resources/skins/Winamp Modern/scripts/vis.m new file mode 100644 index 00000000..f80f8335 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/vis.m @@ -0,0 +1,42 @@ +#include <lib/std.mi> +#include "attribs.m" + +Function updateVisCmd(); + +Global Button btnVisReattach; +Global Layout thislayout; +Global Int evershown; + +System.onScriptLoaded() { + initAttribs(); + thislayout = getScriptGroup().getParentLayout(); + BtnVisReattach = getScriptGroup().findObject("button.vis.reattach"); +} + +thisLayout.onSetVisible(int show) { + if (!evershown) { + evershown = 1; + updateVisCmd(); + } +} + +BtnVisReattach.onLeftClick() { + Container c = getContainer("main"); + if (c.getLayout("shade").isVisible()) c.switchToLayout("normal"); + vis_detach_attrib.setData("0"); +} + +viscmd_menu_attrib.onDataChanged() { + updateVisCmd(); +} + +updateVisCmd() { + Button btn = getScriptGroup().findObject("button.vis.misc"); + if (btn) { + if (viscmd_menu_attrib.getData() == "1") { + btn.setXmlParam("action", "Vis_Menu"); + } else { + btn.setXmlParam("action", "Vis_Cfg"); + } + } +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/vis.maki b/Src/resources/skins/Winamp Modern/scripts/vis.maki Binary files differnew file mode 100644 index 00000000..e1983f3d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/vis.maki diff --git a/Src/resources/skins/Winamp Modern/scripts/visualizer.m b/Src/resources/skins/Winamp Modern/scripts/visualizer.m new file mode 100644 index 00000000..1d2fccc1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/visualizer.m @@ -0,0 +1,267 @@ +/*--------------------------------------------------- +----------------------------------------------------- +Filename: visualizer.m +Version: 1.4 + +Type: maki +Date: 07. Okt. 2007 - 19:56 +Author: Martin Poehlmann aka Deimos +E-Mail: martin@skinconsortium.com +Internet: www.skinconsortium.com + www.martin.deimos.de.vu + +Note: This script handles also the timer reflection +----------------------------------------------------- +---------------------------------------------------*/ + +#include <lib/std.mi> + +Function refreshVisSettings(); +Function setVis (int mode); +Function ProcessMenuResult (int a); + +Global Group scriptGroup; +Global Vis visualizer; +Global Text tmr; + +Global PopUpMenu visMenu; +Global PopUpMenu specmenu; +Global PopUpMenu oscmenu; +Global PopUpMenu pksmenu; +Global PopUpMenu anamenu; +Global PopUpMenu stylemenu; + +Global Int currentMode, a_falloffspeed, p_falloffspeed, a_coloring; +Global Boolean show_peaks, isShade; +Global layer trigger; + +Global Layout thislayout; +Global Container main; + +System.onScriptLoaded() +{ + scriptGroup = getScriptGroup(); + thislayout = scriptGroup.getParentLayout(); + main = thislayout.getContainer(); + + visualizer = scriptGroup.findObject("visual"); + + trigger = scriptGroup.findObject("main.vis.trigger"); + + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + + refreshVisSettings (); +} + +refreshVisSettings () +{ + currentMode = getPrivateInt(getSkinName(), "Visualizer Mode", 1); + show_peaks = getPrivateInt(getSkinName(), "Visualizer show Peaks", 1); + a_falloffspeed = getPrivateInt(getSkinName(), "Visualizer analyzer falloff", 3); + p_falloffspeed = getPrivateInt(getSkinName(), "Visualizer peaks falloff", 2); + a_coloring = getPrivateInt(getSkinName(), "Visualizer analyzer coloring", 0); + + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + + if (a_coloring == 0) + { + visualizer.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 1) + { + visualizer.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 2) + { + visualizer.setXmlParam("coloring", "Fire"); + } + else if (a_coloring == 3) + { + visualizer.setXmlParam("coloring", "Line"); + } + + setVis (currentMode); +} + +trigger.onLeftButtonDown (int x, int y) +{ + if (isKeyDown(VK_ALT) && isKeyDown(VK_SHIFT) && isKeyDown(VK_CONTROL)) + { + if (visualizer.getXmlParam("fliph") == "1") + { + visualizer.setXmlParam("fliph", "0"); + } + else + { + visualizer.setXmlParam("fliph", "1"); + } + return; + } + + currentMode++; + + if (currentMode == 6) + { + currentMode = 0; + } + + setVis (currentMode); + complete; +} + +trigger.onRightButtonUp (int x, int y) +{ + visMenu = new PopUpMenu; + specmenu = new PopUpMenu; + oscmenu = new PopUpMenu; + pksmenu = new PopUpMenu; + anamenu = new PopUpMenu; + stylemenu = new PopUpMenu; + + visMenu.addCommand("Presets:", 999, 0, 1); + visMenu.addCommand("No Visualization", 100, currentMode == 0, 0); + specmenu.addCommand("Thick Bands", 1, currentMode == 1, 0); + specmenu.addCommand("Thin Bands", 2, currentMode == 2, 0); + visMenu.addSubMenu(specmenu, "Spectrum Analyzer"); + + oscmenu.addCommand("Solid", 3, currentMode == 3, 0); + oscmenu.addCommand("Dots", 4, currentMode == 4, 0); + oscmenu.addCommand("Lines", 5, currentMode == 5, 0); + visMenu.addSubMenu(oscmenu, "Oscilloscope"); + + visMenu.addSeparator(); + visMenu.addCommand("Options:", 102, 0, 1); + visMenu.addCommand("Show Peaks", 101, show_peaks == 1, 0); + pksmenu.addCommand("Slower", 200, p_falloffspeed == 0, 0); + pksmenu.addCommand("Slow", 201, p_falloffspeed == 1, 0); + pksmenu.addCommand("Moderate", 202, p_falloffspeed == 2, 0); + pksmenu.addCommand("Fast", 203, p_falloffspeed == 3, 0); + pksmenu.addCommand("Faster", 204, p_falloffspeed == 4, 0); + visMenu.addSubMenu(pksmenu, "Peak Falloff Speed"); + anamenu.addCommand("Slower", 300, a_falloffspeed == 0, 0); + anamenu.addCommand("Slow", 301, a_falloffspeed == 1, 0); + anamenu.addCommand("Moderate", 302, a_falloffspeed == 2, 0); + anamenu.addCommand("Fast", 303, a_falloffspeed == 3, 0); + anamenu.addCommand("Faster", 304, a_falloffspeed == 4, 0); + visMenu.addSubMenu(anamenu, "Analyzer Falloff Speed"); + stylemenu.addCommand("Normal", 400, a_coloring == 0, 0); + stylemenu.addCommand("Fire", 402, a_coloring == 2, 0); + stylemenu.addCommand("Line", 403, a_coloring == 3, 0); + //visMenu.addSubMenu(stylemenu, "Analyzer Coloring"); + + ProcessMenuResult (visMenu.popAtMouse()); + + delete visMenu; + delete specmenu; + delete oscmenu; + delete pksmenu; + delete anamenu; + delete stylemenu; + + complete; +} + +ProcessMenuResult (int a) +{ + if (a < 1) return; + + if (a > 0 && a <= 6 || a == 100) + { + if (a == 100) a = 0; + setVis(a); + } + + else if (a == 101) + { + show_peaks = (show_peaks - 1) * (-1); + visualizer.setXmlParam("peaks", integerToString(show_peaks)); + setPrivateInt(getSkinName(), "Visualizer show Peaks", show_peaks); + } + + else if (a >= 200 && a <= 204) + { + p_falloffspeed = a - 200; + visualizer.setXmlParam("peakfalloff", integerToString(p_falloffspeed)); + setPrivateInt(getSkinName(), "Visualizer peaks falloff", p_falloffspeed); + } + + else if (a >= 300 && a <= 304) + { + a_falloffspeed = a - 300; + visualizer.setXmlParam("falloff", integerToString(a_falloffspeed)); + setPrivateInt(getSkinName(), "Visualizer analyzer falloff", a_falloffspeed); + } + + else if (a >= 400 && a <= 403) + { + a_coloring = a - 400; + if (a_coloring == 0) + { + visualizer.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 1) + { + visualizer.setXmlParam("coloring", "Normal"); + } + else if (a_coloring == 2) + { + visualizer.setXmlParam("coloring", "Fire"); + } + else if (a_coloring == 3) + { + visualizer.setXmlParam("coloring", "Line"); + } + setPrivateInt(getSkinName(), "Visualizer analyzer coloring", a_coloring); + } +} + +setVis (int mode) +{ + setPrivateInt(getSkinName(), "Visualizer Mode", mode); + if (mode == 0) + { + visualizer.setMode(0); + } + else if (mode == 1) + { + visualizer.setXmlParam("bandwidth", "wide"); + visualizer.setMode(1); + } + else if (mode == 2) + { + visualizer.setXmlParam("bandwidth", "thin"); + visualizer.setMode(1); + } + else if (mode == 3) + { + visualizer.setXmlParam("oscstyle", "solid"); + visualizer.setMode(2); + } + else if (mode == 4) + { + visualizer.setXmlParam("oscstyle", "dots"); + visualizer.setMode(2); + } + else if (mode == 5) + { + visualizer.setXmlParam("oscstyle", "lines"); + visualizer.setMode(2); + } + currentMode = mode; +} + +// Sync Normal and Shade Layout + +main.onBeforeSwitchToLayout(Layout oldlayout, Layout newlayout) +{ + if (newlayout != thislayout) + { + return; + } + + refreshVisSettings(); +}
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/scripts/visualizer.maki b/Src/resources/skins/Winamp Modern/scripts/visualizer.maki Binary files differnew file mode 100644 index 00000000..4b90d855 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/scripts/visualizer.maki diff --git a/Src/resources/skins/Winamp Modern/shade/bg_overlay.png b/Src/resources/skins/Winamp Modern/shade/bg_overlay.png Binary files differnew file mode 100644 index 00000000..b4c31f7f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/bg_overlay.png diff --git a/Src/resources/skins/Winamp Modern/shade/buttons.png b/Src/resources/skins/Winamp Modern/shade/buttons.png Binary files differnew file mode 100644 index 00000000..77f42bec --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/buttons.png diff --git a/Src/resources/skins/Winamp Modern/shade/buttons2.PNG b/Src/resources/skins/Winamp Modern/shade/buttons2.PNG Binary files differnew file mode 100644 index 00000000..2347a307 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/buttons2.PNG diff --git a/Src/resources/skins/Winamp Modern/shade/buttons_bg.png b/Src/resources/skins/Winamp Modern/shade/buttons_bg.png Binary files differnew file mode 100644 index 00000000..0dd2d125 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/buttons_bg.png diff --git a/Src/resources/skins/Winamp Modern/shade/corners.png b/Src/resources/skins/Winamp Modern/shade/corners.png Binary files differnew file mode 100644 index 00000000..35998040 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/corners.png diff --git a/Src/resources/skins/Winamp Modern/shade/display_overlay.png b/Src/resources/skins/Winamp Modern/shade/display_overlay.png Binary files differnew file mode 100644 index 00000000..6e727271 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/display_overlay.png diff --git a/Src/resources/skins/Winamp Modern/shade/led.png b/Src/resources/skins/Winamp Modern/shade/led.png Binary files differnew file mode 100644 index 00000000..b39f7a57 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/led.png diff --git a/Src/resources/skins/Winamp Modern/shade/nowplaying.png b/Src/resources/skins/Winamp Modern/shade/nowplaying.png Binary files differnew file mode 100644 index 00000000..203dddcb --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/nowplaying.png diff --git a/Src/resources/skins/Winamp Modern/shade/pl_shade.png b/Src/resources/skins/Winamp Modern/shade/pl_shade.png Binary files differnew file mode 100644 index 00000000..6090cddb --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/pl_shade.png diff --git a/Src/resources/skins/Winamp Modern/shade/playbackstatus.png b/Src/resources/skins/Winamp Modern/shade/playbackstatus.png Binary files differnew file mode 100644 index 00000000..3dd8aa22 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/playbackstatus.png diff --git a/Src/resources/skins/Winamp Modern/shade/seek.png b/Src/resources/skins/Winamp Modern/shade/seek.png Binary files differnew file mode 100644 index 00000000..467621f7 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/seek.png diff --git a/Src/resources/skins/Winamp Modern/shade/shade_bg.PNG b/Src/resources/skins/Winamp Modern/shade/shade_bg.PNG Binary files differnew file mode 100644 index 00000000..3c5fdc11 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/shade_bg.PNG diff --git a/Src/resources/skins/Winamp Modern/shade/songtickerfont.PNG b/Src/resources/skins/Winamp Modern/shade/songtickerfont.PNG Binary files differnew file mode 100644 index 00000000..dd6fd15d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/songtickerfont.PNG diff --git a/Src/resources/skins/Winamp Modern/shade/volume.png b/Src/resources/skins/Winamp Modern/shade/volume.png Binary files differnew file mode 100644 index 00000000..de77c4e8 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/shade/volume.png diff --git a/Src/resources/skins/Winamp Modern/skin.xml b/Src/resources/skins/Winamp Modern/skin.xml new file mode 100644 index 00000000..7c461c64 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/skin.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<WasabiXML version="1.35"> + + <skininfo> + <version>1.1.1</version> + <name>Winamp5 Base Skin</name> + <comment>Please feel free to use this skin as a reference point to build your new Winamp5 skins.</comment> + <author gaybag="bartibartman">Sven Kistner</author> + <email>sven@metrix.de</email> + <homepage>http://www.winamp.com</homepage> + <screenshot>screenshot.png</screenshot> + </skininfo> + + <accelerators section="normal"> + <accelerator bind="Alt+F" action="MENUHOTKEY_FILE"/> + <accelerator bind="Alt+P" action="MENUHOTKEY_PLAY"/> + <accelerator bind="Alt+O" action="MENUHOTKEY_OPTIONS"/> + <accelerator bind="Alt+I" action="MENUHOTKEY_VIEW"/> + <accelerator bind="Alt+H" action="MENUHOTKEY_HELP"/> + </accelerators> + + <accelerators section="myvideownd"> + <accelerator bind="Alt+F" action="MENUHOTKEY_FILE"/> + <accelerator bind="Alt+P" action="MENUHOTKEY_PLAY"/> + <accelerator bind="Alt+O" action="MENUHOTKEY_OPTIONS"/> + <accelerator bind="Alt+I" action="MENUHOTKEY_VIEW"/> + <accelerator bind="Alt+H" action="MENUHOTKEY_HELP"/> + </accelerators> + + <accelerators section="player.content.pl.dummy.group"> + <accelerator bind="Alt+F" action="PL_MENUHOTKEY_FILE"/> + <accelerator bind="Alt+P" action="PL_MENUHOTKEY_PLAYLIST"/> + <accelerator bind="Alt+S" action="PL_MENUHOTKEY_SORT"/> + <accelerator bind="Alt+H" action="PL_MENUHOTKEY_HELP"/> + </accelerators> + + <accelerators section="player.content.ml.dummy.group"> + <accelerator bind="Alt+F" action="ML_MENUHOTKEY_FILE"/> + <accelerator bind="Alt+I" action="ML_MENUHOTKEY_VIEW"/> + <accelerator bind="Alt+H" action="ML_MENUHOTKEY_HELP"/> + </accelerators> + + <include file="xml/color-presets.xml"/> + <include file="xml/system-colors.xml"/> + <include file="standardframe/standardframe.xml"/> + <include file="titlebar/titlebar.xml"/> + <include file="xml/player.xml"/> + <include file="xml/pledit.xml"/> + <include file="xml/ml.xml"/> + <include file="xml/vis.xml"/> + <include file="xml/video.xml"/> + <include file="xml/albumart.xml"/> + <include file="xml/notifier.xml"/> + <include file="about/about.xml"/> + +</WasabiXML>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/standardframe/standardframe-elements.xml b/Src/resources/skins/Winamp Modern/standardframe/standardframe-elements.xml new file mode 100644 index 00000000..6bb6139e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/standardframe/standardframe-elements.xml @@ -0,0 +1,14 @@ +<elements> + + <bitmap id="wasabi.frame.basetexture" file="window/background.png" gammagroup="Backgrounds" /> + <elementalias id="component.basetexture" target="wasabi.frame.basetexture" /> + + <bitmap id="wasabi.frame.top.left" file="window/titlebar.png" x="0" y="0" h="18" w="10" gammagroup="Titlebar"/> + <bitmap id="wasabi.frame.top" file="window/titlebar.png" x="10" y="0" h="18" w="10" gammagroup="Titlebar"/> + <bitmap id="wasabi.frame.top.right" file="window/titlebar.png" x="43" y="0" h="18" w="10" gammagroup="Titlebar"/> + + <bitmap id="wasabi.frame.top.left.region" file="window/titlebar.png" x="0" y="120" h="18" w="10" /> + <bitmap id="wasabi.frame.top.right.region" file="window/titlebar.png" x="43" y="120" h="18" w="10" /> + + +</elements> diff --git a/Src/resources/skins/Winamp Modern/standardframe/standardframe.xml b/Src/resources/skins/Winamp Modern/standardframe/standardframe.xml new file mode 100644 index 00000000..4a5825ff --- /dev/null +++ b/Src/resources/skins/Winamp Modern/standardframe/standardframe.xml @@ -0,0 +1,517 @@ +<!-- ======================================================================================================= + + This file implements the following objects : + + - Wasabi:MainFrame:NoStatus + - Wasabi:PlaylistFrame:NoStatus + - Wasabi:MediaLibraryFrame:NoStatus + Available parameters : + + padtitleleft : resizes the title from the left by the specified amount of pixels + padtitleright : resizes the title from the right by the specified amount of pixels + content : tells the object which group to instantiate in its client area + +======================================================================================================== --> + +<include file="standardframe-elements.xml" /> +<include file="window_menus.xml" /> + +<groupdef id="wasabi.main.layout" h="161"> + <layer + id="window.top.left" + x="0" y="0" + image="wasabi.frame.top.left" + resize="topleft" + sysregion="1" + /> + <layer + id="window.top" + x="10" y="0" + w="-20" + relatw="1" + image="wasabi.frame.top" + resize="top" + sysregion="1" + /> + <layer + id="window.top.right" + x="-10" y="0" + relatx="1" + image="wasabi.frame.top.right" + resize="topright" + sysregion="1" + /> + <layer + id="window.top.left.region" + x="0" + y="0" + image="wasabi.frame.top.left.region" + sysregion="-2" + /> + <layer + id="window.top.right.region" + x="-10" + y="0" + relatx="1" + image="wasabi.frame.top.right.region" + sysregion="-2" + /> + + <Wasabi:TitleBar + id="wasabi.titlebar" + x="10" y="0" + w="-29" h="18" + relatw="1" + /> + + <layer + x="5" y="4" + image="wasabi.button.bg.title" + /> + <button + id="MainMenu.inactive" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu.inactive" + tooltip="Main Menu" + activeAlpha="0" + /> + <button + id="MainMenu" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu" + downImage="wasabi.button.sysmenu.pressed" + hoverImage="wasabi.button.sysmenu.hover" + tooltip="Main Menu" + inactiveAlpha="0" + /> + <button + id="Close.inactive" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit.inactive" + tooltip="Close Window" + activeAlpha="0" + /> + <button + id="Close" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit" + downImage="wasabi.button.exit.pressed" + hoverImage="wasabi.button.exit.hover" + tooltip="Close Window" + inactiveAlpha="0" + /> +</groupdef> + + + +<groupdef id="wasabi.standard.layout"> + <layer + id="window.top.left" + x="0" y="0" + image="wasabi.frame.top.left" + resize="topleft" + sysregion="1" + /> + <layer + id="window.top" + x="10" y="0" + w="-20" + relatw="1" + image="wasabi.frame.top" + resize="top" + sysregion="1" + /> + <layer + id="window.top.right" + x="-10" y="0" + relatx="1" + image="wasabi.frame.top.right" + resize="topright" + sysregion="1" + /> + <layer + id="window.top.left.region" + x="0" + y="0" + image="wasabi.frame.top.left.region" + sysregion="-2" + /> + <layer + id="window.top.right.region" + x="-10" + y="0" + relatx="1" + image="wasabi.frame.top.right.region" + sysregion="-2" + /> + + <Wasabi:TitleBar + id="wasabi.titlebar" + x="10" y="0" + w="-29" h="18" + relatw="1" + /> + + <layer + x="5" y="4" + image="wasabi.button.bg.title" + /> + <button + id="MainMenu" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu.inactive" + tooltip="Main Menu" + activeAlpha="0" + /> + <button + id="MainMenu" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu" + downImage="wasabi.button.sysmenu.pressed" + hoverImage="wasabi.button.sysmenu.hover" + tooltip="Main Menu" + inactiveAlpha="0" + /> + <button + id="Close.inactive" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit.inactive" + tooltip="Close Window" + activeAlpha="0" + /> + <button + id="Close" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit" + downImage="wasabi.button.exit.pressed" + hoverImage="wasabi.button.exit.hover" + tooltip="Close Window" + inactiveAlpha="0" + /> +</groupdef> + +<!-- <Wasabi:MainFrame:NoStatus /> implementation --> +<groupdef id="wasabi.mainframe.nostatusbar" sysregion="1" xuitag="Wasabi:MainFrame:NoStatus"> + <group id="wasabi.main.layout" x="0" y="0" w="0" relatw="1" sysregion="1"/> + <group id="wasabi.menubar" x="0" y="18" w="0" relatw="1" sysregion="1" visible="1"/> + <script id="standardframe.script" file="scripts/standardframe.maki" param="0,18,0,0,0,0,1,1" /> +</groupdef> + +<!-- <Wasabi:PlaylistFrame:NoStatus /> implementation --> +<groupdef id="wasabi.playlistframe.nostatusbar" sysregion="1" xuitag="Wasabi:PlaylistFrame:NoStatus"> + <group id="wasabi.standard.layout" x="0" y="0" w="0" relatw="1" sysregion="1"/> + <group id="wasabi.menubar.pl" x="0" y="18" w="0" relatw="1" sysregion="1" visible="1"/> + <script id="standardframe.script" file="scripts/standardframe.maki" param="0,18,0,0,0,0,1,1" /> +</groupdef> + +<!-- <Wasabi:MediaLibraryFrame:NoStatus /> implementation --> +<groupdef id="wasabi.medialibraryframe.nostatusbar" sysregion="1" xuitag="Wasabi:MediaLibraryFrame:NoStatus"> + <group id="wasabi.standard.layout" x="0" y="0" w="0" relatw="1" sysregion="1"/> + <group id="wasabi.menubar.ml" x="0" y="18" w="0" relatw="1" sysregion="1" visible="1"/> + <script id="standardframe.script" file="scripts/standardframe.maki" param="0,18,0,0,0,0,1,1" /> +</groupdef> + +<!-- <Wasabi:VISFrame:NoStatus /> implementation --> +<groupdef id="wasabi.visframe.nostatusbar" sysregion="1" xuitag="Wasabi:VISFrame:NoStatus"> + <group id="wasabi.standard.layout" x="0" y="0" w="0" relatw="1" sysregion="1"/> + <script id="standardframe.script" file="scripts/standardframe.maki" param="0,18,0,0,0,0,1,1" /> +</groupdef> + + + + + + + + +<!-- ======================================================================================================= + + This group serves as a template for all the Wasabi:StandardFrame objects + +======================================================================================================== --> + +<groupdef id="wasabi.frame.layout"> + + <layer + id="window.top.left" + x="0" y="0" + image="wasabi.frame.top.left" + resize="topleft" + sysregion="1" + /> + <layer + id="window.top" + x="10" y="0" + w="-20" + relatw="1" + image="wasabi.frame.top" + resize="top" + sysregion="1" + /> + <layer + id="window.top.right" + x="-10" y="0" + relatx="1" + image="wasabi.frame.top.right" + resize="topright" + sysregion="1" + /> + <layer + id="window.top.left.region" + x="0" + y="0" + image="wasabi.frame.top.left.region" + sysregion="-2" + /> + <layer + id="window.top.right.region" + x="-10" + y="0" + relatx="1" + image="wasabi.frame.top.right.region" + sysregion="-2" + /> + + <layer + x="0" y="18" + image="wasabi.window2.topleft" + resize="topleft" + /> + <layer + x="6" y="18" + w="-12" + relatw="1" + image="wasabi.window2.topcenter" + resize="top" + /> + <layer + x="-6" y="18" + relatx="1" + image="wasabi.window2.topright" + resize="topright" + /> + <layer + x="0" y="23" + relath="1" + h="-23" + image="wasabi.window2.left" + resize="left" + /> + <layer + x="-6" y="23" + relatx="1" + relath="1" + h="-23" + image="wasabi.window2.right" + resize="right" + /> + + <layer id="window.resize.disabler" x="6" y="6" w="-12" h="-12" relatw="1" relath="1"/> + + <LayoutStatus id="sysmenu.status" bg="0" x="5" y="3" w="14" h="9" includeonly="{system}" /> + <hideobject target="sysmenu.status"/> + + <Wasabi:TitleBar + id="wasabi.titlebar" + x="20" y="0" + w="-39" h="18" + relatw="1" + /> + + <layer + id="MainMenu.button.bg" + x="5" y="4" + image="wasabi.button.bg.title" + /> + <button + id="MainMenu.inactive" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu.inactive" + tooltip="Main Menu" + activeAlpha="0" + /> + <button + id="MainMenu" + action="SYSMENU" + x="6" y="4" + image="wasabi.button.sysmenu" + downImage="wasabi.button.sysmenu.pressed" + hoverImage="wasabi.button.sysmenu.hover" + tooltip="Main Menu" + inactiveAlpha="0" + /> + <button + id="Close.inactive" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit.inactive" + tooltip="Close Window" + activeAlpha="0" + /> + <button + id="Close" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit" + downImage="wasabi.button.exit.pressed" + hoverImage="wasabi.button.exit.hover" + tooltip="Close Window" + inactiveAlpha="0" + /> + + </groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Status /> implementation + +======================================================================================================== --> + + <groupdef id="wasabi.standardframe.statusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:Status"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" relatw="1" h="-42" relath="1"/> + <layer + x="0" y="-42" + relaty="1" + image="wasabi.window2.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-25" + w="-40" + relatw="1" + relaty="1" + image="wasabi.window2.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-42" + relatx="1" + relaty="1" + image="wasabi.window2.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + + <layer + id="window.resizer" + x="-16" y="-16" + relatx="1" relaty="1" + image="wasabi.frame.resizer" + resize="bottomright" + scale="bottomright" + /> + + <LayoutStatus id="standardframe.layoutstatus" x="11" y="-21" relaty="1" w="-43" relatw="1" h="18" exclude="{system}" /> + <script id="standardframe.script" file="scripts/standardframe.maki" param="6,23,-12,-48,0,0,1,1" /> + +</groupdef> + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:NoStatus /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.nostatusbar" background="wasabi.frame.basetexture" sysregion="1" xuitag="Wasabi:StandardFrame:NoStatus"> + + <group id="wasabi.frame.layout" x="0" y="0" w="0" h="-15" relatw="1" relath="1"/> + <layer + x="0" y="-27" + relaty="1" + image="wasabi.window2.bottomleft.nostatus" + resize="bottomleft" + /> + <layer + x="20" y="-10" + w="-40" + relatw="1" + relaty="1" + image="wasabi.window2.bottomcenter.nostatus" + resize="bottom" + /> + <layer + x="-20" y="-27" + relatx="1" + relaty="1" + image="wasabi.window2.bottomright.nostatus" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + <script id="standardframe.script" file="scripts/standardframe.maki" param="6,23,-12,-33,0,0,1,1" /> + +</groupdef> + + + + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Modal /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.modal" inherit_group="wasabi.standardframe.nostatusbar" sysregion="1" xuitag="Wasabi:StandardFrame:Modal"> + <sendparams target="wasabi.titlebar" x="4" w="-22" relatw="1" /> + <hideobject target="MainMenu;MainMenu.inactive.inactive;MainMenu.button.bg"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom" resize="0" /> +</groupdef> + + +<!-- ======================================================================================================= + + <Wasabi:StandardFrame:Static /> implementation + +======================================================================================================== --> + +<groupdef id="wasabi.standardframe.static" inherit_group="wasabi.standardframe.nostatusbar" sysregion="1" xuitag="Wasabi:StandardFrame:Static"> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom" resize="0" /> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/standardframe/window_menus.xml b/Src/resources/skins/Winamp Modern/standardframe/window_menus.xml new file mode 100644 index 00000000..305bf979 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/standardframe/window_menus.xml @@ -0,0 +1,227 @@ +<!-- Common menu buttons --> + +<groupdef id="menu.button.normal" xuitag="menu:button_normal" rectrgn="1" h="16"> + <!-- Dummy --> +</groupdef> + +<groupdef id="menu.button.hover" xuitag="menu:button_hover" rectrgn="1" h="16"> + <layer id="button.left" image="button.menu.hover.left" x="0" y="0"/> + <layer id="button.middle" image="button.menu.hover.middle" x="4" y="0" w="-7" relatw="1"/> + <layer id="button.right" image="button.menu.hover.right" x="-3" y="0" relatx="1"/> +</groupdef> + +<groupdef id="menu.button.pressed" xuitag="menu:button_pressed" rectrgn="1" h="16"> + <layer id="button.left" image="button.menu.pressed.left" x="0" y="0"/> + <layer id="button.middle" image="button.menu.pressed.middle" x="4" y="0" w="-7" relatw="1"/> + <layer id="button.right" image="button.menu.pressed.right" x="-3" y="0" relatx="1"/> +</groupdef> + +<!-- End of menu buttons --> + +<groupdef id="menugroup.file" autowidthsource="File.txt" h="16"> + <menu:button_normal id="File.up.btn" x="0" y="0"/> + <menu:button_pressed id="File.down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="File.hover.btn" x="0" y="0" visible="0"/> + <layer id="File.txt" image="txt.menu.file" x="0" y="0"/> + <Menu id="File.menu" menugroup="main" next="Play.menu" prev="Help.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:File" normal="File.up.btn" hover="File.hover.btn" down="File.down.btn" /> +</groupdef> + +<groupdef id="menugroup.play" autowidthsource="Play.txt" h="16"> + <menu:button_normal id="Play.up.btn" x="0" y="0"/> + <menu:button_pressed id="Play.down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="Play.hover.btn" x="0" y="0" visible="0"/> + <layer id="Play.txt" image="txt.menu.play" x="0" y="0"/> + <Menu id="Play.menu" menugroup="main" next="Options.menu" prev="File.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:Play" normal="Play.up.btn" hover="Play.hover.btn" down="Play.down.btn" /> +</groupdef> + +<groupdef id="menugroup.options" autowidthsource="Options.txt" h="16"> + <menu:button_normal id="Options.up.btn" x="0" y="0"/> + <menu:button_pressed id="Options.down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="Options.hover.btn" x="0" y="0" visible="0"/> + <layer id="Options.txt" image="txt.menu.options" x="0" y="0"/> + <Menu id="Options.menu" menugroup="main" next="View.menu" prev="Play.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:Options" normal="Options.up.btn" hover="Options.hover.btn" down="Options.down.btn" /> +</groupdef> + +<groupdef id="menugroup.view" autowidthsource="View.txt" h="16"> + <menu:button_normal id="View.up.btn" x="0" y="0"/> + <menu:button_pressed id="View.down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="View.hover.btn" x="0" y="0" visible="0"/> + <layer id="View.txt" image="txt.menu.view" x="0" y="0"/> + <Menu id="View.menu" menugroup="main" next="Help.menu" prev="Options.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:Windows" normal="View.up.btn" hover="View.hover.btn" down="View.down.btn" /> +</groupdef> + +<groupdef id="menugroup.help" autowidthsource="Help.txt" h="16"> + <menu:button_normal id="Help.up.btn" x="0" y="0"/> + <menu:button_pressed id="Help.down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="Help.hover.btn" x="0" y="0" visible="0"/> + <layer id="Help.txt" image="txt.menu.help" x="0" y="0"/> + <Menu id="Help.menu" menugroup="main" next="File.menu" prev="View.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:Help" normal="Help.up.btn" hover="Help.hover.btn" down="Help.down.btn" /> +</groupdef> + +<groupdef id="menu.group" rectrgn="1"> + <group id="menugroup.file"/> + <group id="menugroup.play"/> + <group id="menugroup.options"/> + <group id="menugroup.view"/> + <group id="menugroup.help"/> + <script id="mainmenu.script" file="scripts/menualign.maki" param="menugroup.file,menugroup.play,menugroup.options,menugroup.view,menugroup.help"/> +</groupdef> + +<groupdef id="menugroup.pe_file" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.file" x="0" y="0"/> + <Menu id="PE_File.menu" menugroup="pl" next="PE_Playlist.menu" prev="PE_Help.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:PE_File" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menugroup.pe_playlist" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.playlist" x="0" y="0"/> + <Menu id="PE_Playlist.menu" menugroup="pl" next="PE_Sort.menu" prev="PE_File.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:PE_Playlist" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menugroup.pe_sort" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.sort" x="0" y="0"/> + <Menu id="PE_Sort.menu" menugroup="pl" next="PE_Help.menu" prev="PE_Playlist.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:PE_Sort" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menugroup.pe_help" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.help" x="0" y="0"/> + <Menu id="PE_Help.menu" menugroup="pl" next="PE_File.menu" prev="PE_Sort.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:PE_Help" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menu.group.pl" rectrgn="1"> + <group id="menugroup.pe_file"/> + <group id="menugroup.pe_playlist"/> + <group id="menugroup.pe_sort"/> + <group id="menugroup.pe_help"/> + <script id="mainmenu.script" file="scripts/menualign.maki" param="menugroup.pe_file,menugroup.pe_playlist,menugroup.pe_sort,menugroup.pe_help"/> +</groupdef> + +<groupdef id="menugroup.ml_file" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.file" x="0" y="0"/> + <Menu id="ML_File.menu" menugroup="ml" next="ML_View.menu" prev="ML_Help.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:ML_File" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menugroup.ml_view" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.view" x="0" y="0"/> + <Menu id="ML_View.menu" menugroup="ml" next="ML_Help.menu" prev="ML_File.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:ML_View" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menugroup.ml_help" autowidthsource="label.txt" h="16"> + <menu:button_normal id="up.btn" x="0" y="0"/> + <menu:button_pressed id="down.btn" x="0" y="0" visible="0"/> + <menu:button_hover id="hover.btn" x="0" y="0" visible="0"/> + <layer id="label.txt" image="txt.menu.help" x="0" y="0"/> + <Menu id="ML_Help.menu" menugroup="ml" next="ML_File.menu" prev="ML_View.menu" x="0" y="0" h="16" w="0" relatw="1" menu="WA5:ML_Help" normal="up.btn" hover="hover.btn" down="down.btn" /> +</groupdef> + +<groupdef id="menu.group.ml" rectrgn="1"> + <group id="menugroup.ml_file"/> + <group id="menugroup.ml_view"/> + <group id="menugroup.ml_help"/> + <script id="mainmenu.script" file="scripts/menualign.maki" param="menugroup.ml_file,menugroup.ml_view,menugroup.ml_help"/> +</groupdef> + + +<groupdef id="wasabi.menubar" background="wasabi.frame.basetexture" h="17"> + <layer + id="menubar.left" + x="0" y="0" + w="5" h="17" + image="wasabi.menubar.left" + /> + <layer + id="menubar.center" + x="5" y="0" + w="-50" h="17" + relatw="1" + image="wasabi.menubar.center" + /> + <layer + id="menubar.right" + x="-45" y="0" + w="45" h="17" + relatx="1" + image="wasabi.menubar.right" + /> + <layer + id="menubar.right" + x="-45" y="0" + w="45" h="17" + relatx="1" + image="wasabi.menubar.right.overlay" + /> + <layer + id="menubar.right.textoverlay" + x="-45" y="0" + w="45" h="17" + relatx="1" + image="wasabi.menubar.right.textoverlay" + /> + <group id="menu.group" x="1" y="0"/> + <script id="mainmenuoverlay.script" file="scripts/mainmenuoverlay.maki" /> +</groupdef> + +<groupdef id="wasabi.menubar.pl" background="wasabi.frame.basetexture" h="17"> + <layer + id="menubar.left" + x="0" y="0" + w="5" h="17" + image="wasabi.menubar.left" + /> + <layer + id="menubar.center" + x="5" y="0" + w="-50" h="17" + relatw="1" + image="wasabi.menubar.center" + /> + <layer + id="menubar.right" + x="-45" y="0" + w="45" h="17" + relatx="1" + image="wasabi.menubar.right" + /> + <group id="menu.group.pl" x="1" y="0"/> +</groupdef> + +<groupdef id="wasabi.menubar.ml" background="wasabi.frame.basetexture" h="17"> + <layer + id="menubar.left" + x="0" y="0" + w="5" h="17" + image="wasabi.menubar.left" + /> + <layer + id="menubar.center" + x="5" y="0" + w="-50" h="17" + relatw="1" + image="wasabi.menubar.center" + /> + <layer + id="menubar.right" + x="-45" y="0" + w="45" h="17" + relatx="1" + image="wasabi.menubar.right" + /> + <group id="menu.group.ml" x="1" y="0"/> +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/titlebar/titlebar.xml b/Src/resources/skins/Winamp Modern/titlebar/titlebar.xml new file mode 100644 index 00000000..73b5fce5 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/titlebar/titlebar.xml @@ -0,0 +1,120 @@ +<!-- ======================================================================================================= + + <Wasabi:TitleBar /> implmentation + + Available parameters : + + - All params for Group + - All params for Text + + Required objects : (these objects are manipulated by the script, so overriding with script content inheritance + will require you to have these objects. Otherwise, you should be fine) + + - Group id="wasabi.titlebar.streak.left" + - Group id="wasabi.titlebar.streak.right" + - Layer id="mousetrap" (this object shoud cover the content of the group) + +======================================================================================================== --> + +<groupdef id="wasabi.titlebar" xuitag="Wasabi:TitleBar" embed_xui="window.titlebar.title"> + <group + id="wasabi.titlebar.streak" + instanceid="wasabi.titlebar.streak.left" + x="0" y="3" + w="95" h="9" + /> + + <sendparams group="wasabi.titlebar.streak.left" target="titlebar.center.active" w="-20"/> + <sendparams group="wasabi.titlebar.streak.left" target="titlebar.center.inactive" w="-20"/> + <sendparams group="wasabi.titlebar.streak.left" target="titlebar.right.active" x="-10"/> + <sendparams group="wasabi.titlebar.streak.left" target="titlebar.right.inactive" x="-10"/> + + <text + id="window.titlebar.title" + x="100" y="1" + w="50" h="15" + default=":componentname" + font="Arial" fontsize="14" + color="titlebar.text.color" + shadowcolor="0,0,0" + shadowx="1" shadowy="1" + bold="1" + inactiveAlpha="128" + forceuppercase="1" + /> + <layer + id="window.titlebar.title.overlay" + x="100" y="4" + w="1" h="11" + image="wasabi.titlebar.overlay" + /> + + <group + id="wasabi.titlebar.streak" + instanceid="wasabi.titlebar.streak.right" + x="155" y="3" + w="-155" relatw="1" h="9" + sysregion="1" + /> + <sendparams group="wasabi.titlebar.streak.right" target="titlebar.center.active" x="10" w="-20"/> + <sendparams group="wasabi.titlebar.streak.right" target="titlebar.center.inactive" x="10" w="-20"/> + <sendparams group="wasabi.titlebar.streak.right" target="titlebar.left.active" x="0"/> + <sendparams group="wasabi.titlebar.streak.right" target="titlebar.left.inactive" x="0"/> + + <layer id="mousetrap" x="0" y="0" w="0" h="0" relatw="1" relath="1" move="1"/> + <script id="titlebar" file="scripts/titlebar.maki" param="wasabi.titlebar.streak.left;window.titlebar.title;wasabi.titlebar.streak.right" /> +</groupdef> + + + +<!-- ======================================================================================================= + + This implements a title streak bar. Dependencies are limited to the wasabi.titlebar group, in other words, if you remove + the sendparams in the above group, none of these objects are required. + +======================================================================================================== --> + +<groupdef id="wasabi.titlebar.streak"> + + <layer + id="titlebar.left.active" + x="0" y="1" + image="wasabi.titlebar.left.active" + inactiveAlpha="0" + /> + <layer + id="titlebar.center.active" + x="10" y="1" w="-10" + relatw="1" + image="wasabi.titlebar.center.active" + inactiveAlpha="0" + /> + <layer + id="titlebar.right.active" + x="-10" y="1" + relatx="1" + image="wasabi.titlebar.right.active" + inactiveAlpha="0" + /> + + <layer + id="titlebar.left.inactive" + x="0" y="1" + image="wasabi.titlebar.left.inactive" + activeAlpha="0" + /> + <layer + id="titlebar.center.inactive" + x="10" y="1" w="-10" + relatw="1" + image="wasabi.titlebar.center.inactive" + activeAlpha="0" + /> + <layer + id="titlebar.right.inactive" + x="-10" relatx="1" y="1" + image="wasabi.titlebar.right.inactive" + activeAlpha="0" + /> +</groupdef> + diff --git a/Src/resources/skins/Winamp Modern/window/Scrollgrips.png b/Src/resources/skins/Winamp Modern/window/Scrollgrips.png Binary files differnew file mode 100644 index 00000000..0884a74c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/Scrollgrips.png diff --git a/Src/resources/skins/Winamp Modern/window/background.png b/Src/resources/skins/Winamp Modern/window/background.png Binary files differnew file mode 100644 index 00000000..e03e91ea --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/background.png diff --git a/Src/resources/skins/Winamp Modern/window/main.png b/Src/resources/skins/Winamp Modern/window/main.png Binary files differnew file mode 100644 index 00000000..07816c80 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/main.png diff --git a/Src/resources/skins/Winamp Modern/window/main2.png b/Src/resources/skins/Winamp Modern/window/main2.png Binary files differnew file mode 100644 index 00000000..1710e224 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/main2.png diff --git a/Src/resources/skins/Winamp Modern/window/menu.png b/Src/resources/skins/Winamp Modern/window/menu.png Binary files differnew file mode 100644 index 00000000..763e64db --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/file.png b/Src/resources/skins/Winamp Modern/window/menu/file.png Binary files differnew file mode 100644 index 00000000..f17698b6 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/file.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/help.png b/Src/resources/skins/Winamp Modern/window/menu/help.png Binary files differnew file mode 100644 index 00000000..5ac81bda --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/help.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/options.png b/Src/resources/skins/Winamp Modern/window/menu/options.png Binary files differnew file mode 100644 index 00000000..bef075f8 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/options.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/play.png b/Src/resources/skins/Winamp Modern/window/menu/play.png Binary files differnew file mode 100644 index 00000000..7ed4f529 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/play.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/playlist.png b/Src/resources/skins/Winamp Modern/window/menu/playlist.png Binary files differnew file mode 100644 index 00000000..5591c600 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/playlist.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/sort.png b/Src/resources/skins/Winamp Modern/window/menu/sort.png Binary files differnew file mode 100644 index 00000000..e27e9304 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/sort.png diff --git a/Src/resources/skins/Winamp Modern/window/menu/view.png b/Src/resources/skins/Winamp Modern/window/menu/view.png Binary files differnew file mode 100644 index 00000000..f20d005c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu/view.png diff --git a/Src/resources/skins/Winamp Modern/window/menu_elements.png b/Src/resources/skins/Winamp Modern/window/menu_elements.png Binary files differnew file mode 100644 index 00000000..ca4ae9b4 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/menu_elements.png diff --git a/Src/resources/skins/Winamp Modern/window/mlwindow.png b/Src/resources/skins/Winamp Modern/window/mlwindow.png Binary files differnew file mode 100644 index 00000000..9f48d2cd --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/mlwindow.png diff --git a/Src/resources/skins/Winamp Modern/window/plwindow.png b/Src/resources/skins/Winamp Modern/window/plwindow.png Binary files differnew file mode 100644 index 00000000..daeeb27c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/plwindow.png diff --git a/Src/resources/skins/Winamp Modern/window/scrollbars.png b/Src/resources/skins/Winamp Modern/window/scrollbars.png Binary files differnew file mode 100644 index 00000000..95cc2eea --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/scrollbars.png diff --git a/Src/resources/skins/Winamp Modern/window/sui.png b/Src/resources/skins/Winamp Modern/window/sui.png Binary files differnew file mode 100644 index 00000000..fa200ba5 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/sui.png diff --git a/Src/resources/skins/Winamp Modern/window/titlebar.png b/Src/resources/skins/Winamp Modern/window/titlebar.png Binary files differnew file mode 100644 index 00000000..4f2138c6 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/titlebar.png diff --git a/Src/resources/skins/Winamp Modern/window/titlebar_overlay.png b/Src/resources/skins/Winamp Modern/window/titlebar_overlay.png Binary files differnew file mode 100644 index 00000000..7aafa18c --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/titlebar_overlay.png diff --git a/Src/resources/skins/Winamp Modern/window/wasabi_window.PNG b/Src/resources/skins/Winamp Modern/window/wasabi_window.PNG Binary files differnew file mode 100644 index 00000000..a1f23a72 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/wasabi_window.PNG diff --git a/Src/resources/skins/Winamp Modern/window/window-elements.png b/Src/resources/skins/Winamp Modern/window/window-elements.png Binary files differnew file mode 100644 index 00000000..66172be8 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/window/window-elements.png diff --git a/Src/resources/skins/Winamp Modern/xml/albumart.xml b/Src/resources/skins/Winamp Modern/xml/albumart.xml new file mode 100644 index 00000000..663ac71b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/albumart.xml @@ -0,0 +1,21 @@ +<container id="winamp.albumart" name="Album Art" default_visible="1" nomenu="1" > + +<groupdef id="albumart.content.group"> + + <AlbumArt + id="waaa" fitparent="1" move="1" + /> + + <script file="scripts/albumart.maki" param="waaa" /> + +</groupdef> + +<layout id="normal" minimum_w="107" minimum_h="60" h="164" w="164"> + <Wasabi:Standardframe:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="albumart.content.group" + /> + +</layout> + +</container>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/color-presets.xml b/Src/resources/skins/Winamp Modern/xml/color-presets.xml new file mode 100644 index 00000000..2c2e5bbb --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/color-presets.xml @@ -0,0 +1,1977 @@ +<gammaset id="Default"> + <gammagroup id="Backgrounds" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Text" value="-3897,-3774,-2394" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonStatus" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Led" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Display" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListSelBackground" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Good Ol' Winamp"> + <gammagroup id="Backgrounds" value="-2848,-2848,-2368" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-2880,-2880,-2336" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-2880,-2880,-2336" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="2220,2220,2220" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-2848,-2848,-2368" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="192,-128,-1632" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="1152,608,-1920" gray="2" boost="0" /> + <gammagroup id="Text" value="-4096,1024,-4096" gray="1" boost="1" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-484,-356,-356" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="0,128,128" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-484,-356,-356" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="0,128,128" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="1696,2976,-2464" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-4096,-1024,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="1696,2976,-2464" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-484,-356,-356" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="0,128,128" gray="2" boost="0" /> + <gammagroup id="Led" value="1696,2976,-2464" gray="0" boost="0" /> + <gammagroup id="Display" value="-2432,-2432,-1696" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2432,-2432,-1696" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-4096,0,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-4096,0,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-4096,0,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="-4096,0,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-4096,0,-4096" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="1696,2976,-2464" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="200,300,300" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-1096,-1096,-1096" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="1200,1300,1300" gray="1" boost="1" /> + <gammagroup id="TextDark" value="2700,2800,2800" gray="1" boost="1" /> + <gammagroup id="ListText" value="-4096,1024,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-4096,1024,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="4096,4096,4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-4096,-4096,1400" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="2400,2400,2400" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-2848,-2848,-2368" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="-4096,3727,-4096" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Blues"> + <gammagroup id="Backgrounds" value="-3142,-2689,-1081" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="Bolt" value="-880,-478,502" gray="1" boost="0" /> + <gammagroup id="Menubar" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="-3820,-2664,0" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-3619,-3116,-2262" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="-428,0,552" gray="0" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="0,301,929" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="301,477,904" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="0,251,1206" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="1055,2387,3568" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="ButtonStatus" value="0,427,829" gray="0" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-553,-277,276" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="0,301,929" gray="0" boost="0" /> + <gammagroup id="Led" value="0,879,2010" gray="0" boost="0" /> + <gammagroup id="Display" value="-3142,-2689,-1081" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-3142,-2689,-1081" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-503,-176,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="-503,-176,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-503,-176,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="-503,-176,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-503,-176,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="-478,0,1030" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="804,1457,3090" gray="0" boost="1" /> + <gammagroup id="BGOverlayBright" value="-1056,-553,276" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-2804,-1457,2090" gray="0" boost="1" /> + <gammagroup id="TextDark" value="2060,2789,4096" gray="0" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-1182,0,2035" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-3182,-2880,-880" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="2010,2739,3819" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-3142,-2689,-1081" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="BubbleGum"> + <gammagroup id="Backgrounds" value="2412,-453,-478" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="2060,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="4096,0,-553" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="4096,1356,1708" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="4096,1256,-176" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="4096,-1910,-1006" gray="0" boost="0" /> + <gammagroup id="Text" value="-2558,-3220,-3220" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="2387,527,-151" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="4096,-1910,-1006" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="2387,527,-151" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="4096,-1910,-1006" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="4096,-2539,-1006" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="1155,-2740,-4096" gray="1" boost="1" /> + <gammagroup id="ButtonStatus" value="4096,-1408,-4071" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="4096,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="4096,804,0" gray="0" boost="0" /> + <gammagroup id="Led" value="3844,-4096,427" gray="0" boost="0" /> + <gammagroup id="Display" value="3945,-2312,-754" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3945,-2312,-754" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,-1885" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,-1885" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,-1885" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,-1885" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,-1885" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="2663,-1835,-4096" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="3945,-2312,-754" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="2186,-176,-1383" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="2412,-478,-3820" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="-2011,-2740,-2765" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="402,-930,-553" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="1909,778,2739" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="1457,-930,-905" gray="0" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="2412,-453,-478" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="-2126,-3562,-4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Citrus"> + <gammagroup id="Backgrounds" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="3036,0,-3596" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="-1682,-3339,-4096" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" gray="0" boost="1" /> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="3872,288,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="3872,288,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="3872,288,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Led" value="3872,288,-4096" gray="2" boost="0" /> + <gammagroup id="Display" value="4064,480,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="4064,480,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="3872,288,-4096" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-1596,-2332,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-4096,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="4064,480,-4096" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="3064,480,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-630,-2126,-4096" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Clover"> + <gammagroup id="Backgrounds" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="-2966,-176,-1433" gray="2" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="-2966,-176,-1433" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="-4096,-2984,-3363" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-2966,-176,-1433" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="-2966,-176,-1433" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2966,-176,-1433" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Led" value="-2966,-176,-1433" gray="2" boost="0" /> + <gammagroup id="Display" value="-2966,-176,-1433" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2966,-176,-1433" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-3242,-553,-1508" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-2966,-176,-1433" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-2966,-176,-1433" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-3159,-1520,-2458" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-4096,-4096,-4096" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Copper"> + <gammagroup id="Backgrounds" value="-1856,-1856,-1856" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-832,-1216,-1504" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-832,-1216,-1504" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="320,384,544" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-832,-1216,-1504" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="-832,-1216,-1504" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="16,-915,-1520" gray="0" boost="0" /> + <gammagroup id="Text" value="449,-1729,-3410" gray="2" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-416,-1248,-1856" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="16,-915,-1520" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="-416,-1248,-1856" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="16,-915,-1520" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-416,-1248,-1856" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="16,-915,-1520" gray="0" boost="0" /> + <gammagroup id="Led" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="Display" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="136,-1856,-3728" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="-832,-1216,-1504" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-1536,-2756,-3628" gray="1" boost="1" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="-992,-2272,-3776" gray="2" boost="0" /> + <gammagroup id="ListTextSelected" value="992,32,-704" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="992,32,-704" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="3136,-256,-3328" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-992,-2272,-3776" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="-992,-2272,-3776" gray="2" boost="0" /> + <gammagroup id="Tooltips Background" value="-998,-2316,-3147" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Dymunds"> + <gammagroup id="Backgrounds" value="351,-277,-729" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="175,0,-252" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="251,-202,150" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="0,0,4" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="351,-277,-729" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="0,-202,276" gray="1" boost="0" /> + <gammagroup id="Text" value="-3329,-3207,-2915" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="276,452,1382" gray="1" boost="1" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="276,452,1382" gray="1" boost="1" /> + <gammagroup id="ButtonGlow" value="276,452,1382" gray="1" boost="1" /> + <gammagroup id="ButtonsActive" value="-729,-1458,-779" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-729,-1458,-779" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1583,603,-352" gray="1" boost="0" /> + <gammagroup id="Led" value="1936,451,1890" gray="2" boost="0" /> + <gammagroup id="Display" value="251,-202,150" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="251,-202,150" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="1936,451,1890" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="351,-277,-729" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="2789,2261,150" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="351,-277,-729" gray="1" boost="0" /> + <gammagroup id="TextDark" value="-478,-1659,-2790" gray="1" boost="1" /> + <gammagroup id="ListText" value="-277,0,653" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="2336,552,-880" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-4096,-3519,-2614" gray="1" boost="1" /> + <gammagroup id="ListBackground" value="251,-202,150" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="251,-202,150" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="-4096,-3519,-2614" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-262,-784,-1366" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-4096,-4085,-4096" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Grapefruit"> + <gammagroup id="Backgrounds" value="2060,251,-1483" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-2061,-2941,-2212" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-2061,-2941,-2212" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="4096,2713,-1483" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="3417,1105,-1483" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="1030,376,-553" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="1030,376,-553" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="1482,904,-176" gray="1" boost="0" /> + <gammagroup id="Text" value="-2605,-3315,-2700" gray="1" boost="1" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" gray="0" boost="1" /> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="904,502,-202" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="2060,251,-1483" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="2487,1155,-227" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="3090,678,2085" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-2061,-2941,-2212" gray="1" boost="1" /> + <gammagroup id="ButtonStatus" value="-880,-2564,-779" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="-930,-2941,-1056" gray="1" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="2060,251,-1483" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="2487,1155,-227" gray="1" boost="0" /> + <gammagroup id="Led" value="2603,296,2400" gray="2" boost="0" /> + <gammagroup id="Display" value="-1032,-2414,-1133" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-1032,-2414,-1133" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,-553,-1860" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,-553,-1860" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,-553,-1860" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,-528,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,-553,-1860" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="2603,296,2400" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2061,-2941,-2212" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="1206,477,-1458" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="3794,2236,-679" gray="1" boost="1" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,-227,-704" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-1860,-2991,-2011" gray="1" boost="1" /> + <gammagroup id="ListTextCurrent" value="2060,251,-1483" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-1860,-2991,-2011" gray="1" boost="1" /> + <gammagroup id="ListSelBackground" value="2060,251,-1483" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-2161,-3242,-2244" gray="1" boost="1" /> + <gammagroup id="Tooltips Text" value="4096,2968,-499" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Grapes"> + <gammagroup id="Backgrounds" value="-1383,-2438,-428" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-2714,-4096,-2237" gray="1" boost="0" /> + <gammagroup id="Bolt" value="502,0,879" gray="1" boost="0" /> + <gammagroup id="Menubar" value="-2212,-3368,-1684" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="3216,1784,4096" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-453,-2287,879" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="502,0,879" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="502,0,879" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="954,402,1331" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="502,0,879" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="1105,402,1457" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="502,0,879" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="1105,402,1457" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="1784,0,2437" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="0,-1533,577" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-729,-2187,0" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="502,0,879" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1030,527,1432" gray="0" boost="0" /> + <gammagroup id="Led" value="2914,-578,3693" gray="0" boost="0" /> + <gammagroup id="Display" value="-1383,-2438,-428" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-1383,-2438,-428" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-377,-1031,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-377,-1031,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-377,-1031,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="-377,-1031,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-377,-1031,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="2914,-578,3693" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2539,-4096,-2061" gray="0" boost="1" /> + <gammagroup id="BGOverlayBright" value="-252,-729,2035" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="3216,1784,4096" gray="0" boost="1" /> + <gammagroup id="TextDark" value="3241,2362,4096" gray="0" boost="1" /> + <gammagroup id="ListText" value="-578,-1156,427" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="1708,1407,2336" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-4096,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="ListSelBackground" value="-1383,-2438,-428" gray="1" boost="1" /> + <gammagroup id="ListColumnText" value="2990,1658,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-1383,-2438,-428" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-4096,-4096,-4096" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Halloween"> + <gammagroup id="Backgrounds" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="1764,-780,-4096" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="1764,-780,-4096" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="-1999,-1999,-1999" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="1764,-780,-4096" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="1764,-780,-4096" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="1764,-780,-4096" gray="1" boost="1" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="1764,-780,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="1764,-780,-4096" gray="1" boost="1" /> + <gammagroup id="Buttons2" value="864,80,-2096" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="864,80,-2096" gray="1" boost="1" /> + <gammagroup id="ButtonGlow" value="4064,980,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="4064,-980,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="4064,980,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="1764,-780,-4096" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1764,-780,-4096" gray="1" boost="1" /> + <gammagroup id="Led" value="4064,980,-4096" gray="2" boost="0" /> + <gammagroup id="Display" value="4064,980,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3064,180,-3096" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="1" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="1" /> + <gammagroup id="ProgressBar" value="2764,80,-3096" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="4064,980,-4096" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="2064,-980,-4096" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="4064,1980,-3096" gray="1" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="4096,-377,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="4064,1583,-4096" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="0,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="4064,980,-4096" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="2576,-701,-4096" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-3000,-3000,-3000" gray="2" boost="1" /> +</gammaset> + +<gammaset id="HaXb0x"> + <gammagroup id="Backgrounds" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-1400,-1400,-1400" gray="2" boost="0" /> + <gammagroup id="Bolt" value="2072,2872,-4032" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-2600,-2600,-2600" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="2596,4096,-4096" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-2480,-2480,-2480" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-564,640,-2432" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="-64,640,-2432" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="300,1240,-2332" gray="2" boost="1" /> + <gammagroup id="Text" value="-616,4096,-4096" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-64,640,-2432" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="300,1240,-2332" gray="2" boost="1" /> + <gammagroup id="Buttons2" value="-64,640,-2432" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="300,1240,-2332" gray="2" boost="1" /> + <gammagroup id="ButtonGlow" value="2596,2976,-3464" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-2950,-376,-3964" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-64,640,-2432" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-64,640,-2432" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="300,1240,-2332" gray="2" boost="1" /> + <gammagroup id="Led" value="3872,3872,-4032" gray="0" boost="0" /> + <gammagroup id="Display" value="3872,3872,-4032" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3872,3872,-4032" gray="0" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,-3000" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,-3000" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,-3000" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,-3000" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,-3000" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="1796,2576,-2464" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="1400,2800,-2300" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-600,400,-4096" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="2400,3800,-1300" gray="1" boost="1" /> + <gammagroup id="TextDark" value="2500,4096,-2000" gray="1" boost="1" /> + <gammagroup id="ListText" value="3996,4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="4096,4096,4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="4096,4096,4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-268,1984,-3040" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="2500,4096,-2000" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-268,1984,-3040" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-3000,-3000,-3000" gray="2" boost="1" /> +</gammaset> + +<gammaset id="Love Machine"> + <gammagroup id="Backgrounds" value="0,-4096,-1848" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="1984,-3040,-832" gray="2" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="0,-4096,-1848" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="2400,340,1400" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="0,-4096,-1848" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="0,-4096,-1848" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Led" value="2222,922,1622" gray="2" boost="0" /> + <gammagroup id="Display" value="1984,-3040,-832" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="1984,-3040,-832" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="2222,922,1622" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="3096,2096,2596" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="4096,4096,4096" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,-4096,-1848" gray="2" boost="1" /> + <gammagroup id="TextDark" value="4096,4096,4096" gray="1" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-844,-844,-844" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="4096,-779,0" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="1984,-3040,-832" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="1984,-3040,-832" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-333,-4096,-2138" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="MonoDark"> + <gammagroup id="Backgrounds" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Bolt" value="550,550,550" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-2200,-2200,-2200" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="3096,3096,3096" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-1999,-1999,-1999" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-333,-333,-333" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-255,-255,-255" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-255,-255,-255" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="1222,1222,1222" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-999,-999,-999" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2000,-2000,-2000" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-255,-255,-255" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Led" value="1222,1222,1222" gray="2" boost="0" /> + <gammagroup id="Display" value="-2896,-2896,-2896" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2896,-2896,-2896" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="255,255,255" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="500,500,500" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-550,-550,-550" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="1500,1500,1500" gray="1" boost="1" /> + <gammagroup id="TextDark" value="4096,4096,4096" gray="1" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-990,-990,-990" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-1096,-1096,-1096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="2222,2222,2222" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="NightVision"> + <gammagroup id="Backgrounds" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Bolt" value="-3619,778,351" gray="1" boost="0" /> + <gammagroup id="Menubar" value="-2200,-2200,-2200" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,3417,4096" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-1999,-1999,-1999" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-905,753,1507" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-779,753,1231" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Text" value="-4096,-327,0" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Buttons2" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="ButtonGlow" value="1222,1222,1222" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-999,-999,-999" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2941,-1332,-955" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Led" value="-3619,1532,-302" gray="0" boost="0" /> + <gammagroup id="Display" value="-3418,452,980" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-3418,452,980" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-880,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-880,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-880,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-3619,829,-302" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2463,1881,4096" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-302,3214,3693" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-302,2914,3693" gray="1" boost="1" /> + <gammagroup id="ListText" value="-4096,-327,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-1257,3920,4045" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-679,3719,4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-3418,452,980" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-4018,-1452,-880" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-2966,3769,4096" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="-1259,3609,4096" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Popcorn"> + <gammagroup id="Backgrounds" value="829,603,351" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="175,0,-252" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="175,0,-252" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="-553,-1734,-2840" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="3869,2764,1457" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="1583,603,-352" gray="1" boost="0" /> + <gammagroup id="Text" value="-2639,-3720,-4096" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="1583,603,-352" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="402,251,0" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="1583,603,-352" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="1985,954,-327" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-327,-2689,-2438" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-327,-1156,-2438" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1583,603,-352" gray="1" boost="0" /> + <gammagroup id="Led" value="4096,-855,-4096" gray="0" boost="0" /> + <gammagroup id="Display" value="3693,2362,829" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3693,2362,829" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="2789,1105,-352" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="-704,-1458,-2111" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="980,-202,-1182" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-704,-1458,-2111" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-478,-1659,-2790" gray="1" boost="1" /> + <gammagroup id="ListText" value="-2639,-3720,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="2739,552,-880" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="3317,2035,1482" gray="1" boost="1" /> + <gammagroup id="ListBackground" value="3995,3191,1859" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-1000,-1500,-2000" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="753,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="3241,1757,-380" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-2639,-3720,-4096" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Powerpuff!"> + <gammagroup id="Backgrounds" value="527,1784,-1558" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="703,402,-1684" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-3318,-1131,502" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="4096,4096,1507" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="0,1231,-2438" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="703,402,-1684" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="703,402,-1684" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="653,2035,-2488" gray="1" boost="0" /> + <gammagroup id="Text" value="-3268,-2723,-1658" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="-1709,-176,1960" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-1709,1080,1960" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="-1709,-176,1960" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-1709,603,1960" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="3945,3593,-1458" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-3418,-578,-2488" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="980,3090,0" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="703,402,-1684" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="0,1206,-2036" gray="1" boost="0" /> + <gammagroup id="Led" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Display" value="1608,3618,-553" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="1608,3618,1553" gray="0" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,-2463" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,-2463" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,-2463" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="527,1557,-3242" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1709,-176,1960" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-4000,-2000,0" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-4000,-2000,0" gray="1" boost="1" /> + <gammagroup id="ListText" value="-1709,3543,-2287" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="3065,3191,-1835" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="3065,3191,-1835" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-1709,-176,1960" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-1709,-176,1960" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="-2413,-1483,0" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="527,1784,-1558" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="-2802,-618,-3444" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Toxic"> + <gammagroup id="Backgrounds" value="-1182,-855,-1785" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-578,-151,-1182" gray="1" boost="0" /> + <gammagroup id="Bolt" value="-1634,226,-3770" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="2362,3693,1206" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="427,804,-528" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="427,929,-227" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-202,251,-1207" gray="1" boost="0" /> + <gammagroup id="Text" value="-428,0,-654" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-1760,-1458,-4021" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="-930,-403,-3192" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="-1760,-1458,-4021" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="-930,-403,-3192" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="1206,1834,0" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="1557,2161,-704" gray="0" boost="1" /> + <gammagroup id="ButtonStatus" value="351,1633,-3192" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="2814,4020,0" gray="0" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="-1760,-1458,-4021" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-930,-403,-3192" gray="0" boost="0" /> + <gammagroup id="Led" value="3467,2035,-3091" gray="0" boost="0" /> + <gammagroup id="Display" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-352,0,-830" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="-352,0,-830" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-352,0,-830" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="-1006,0,-1684" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-578,0,-1684" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="929,1683,-4021" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="1809,2336,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="-679,-352,-1810" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="-2262,-1885,-3569" gray="0" boost="1" /> + <gammagroup id="ListText" value="-428,0,-654" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-377,0,-679" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="477,1457,-1483" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-2187,-1961,-4021" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="-2890,-2011,-2740" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-1182,-855,-1785" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-2187,-1961,-4021" gray="1" boost="0" /> +</gammaset> + +<gammaset id="Uranium"> + <gammagroup id="Backgrounds" value="-640,-96,-608" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-2112,-2112,-2112" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-2080,-1600,-1824" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="96,96,96" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="-1856,-1408,-1248" gray="2" boost="0" /> + <gammagroup id="Text" value="-214,2367,-782" gray="2" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-1856,-1408,-1248" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="-1856,-1408,-1248" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="-672,32,288" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-1856,-1408,-1248" gray="2" boost="0" /> + <gammagroup id="Led" value="-1920,2872,-3096" gray="2" boost="0" /> + <gammagroup id="Display" value="2400,2336,2816" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="2400,2336,2816" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-1920,0,-4096" gray="2" boost="0" /> + <gammagroup id="DisplayVis" value="-1920,0,-4096" gray="2" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-1920,0,-4096" gray="2" boost="0" /> + <gammagroup id="DisplaySongticker" value="-1920,0,-4096" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-1920,0,-4096" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2112,-2112,-2112" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="-340,-16,-308" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="1640,2196,1608" gray="1" boost="1" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="ListTextSelected" value="-192,4064,-1792" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1088,-512,-288" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="2400,2336,2816" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-2592,-2560,-2624" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-1920,3872,-4096" gray="2" boost="0" /> + <gammagroup id="Tooltips Background" value="-640,-96,-608" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="-3087,-3467,-3016" gray="2" boost="1" /> +</gammaset> + +<gammaset id="Varsity"> + <gammagroup id="Backgrounds" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="150,150,150" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-2237,-3870,-3820" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="4096,1884,-3669" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-805,-880,-1332" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="577,276,-252" gray="1" boost="0" /> + <gammagroup id="Text" value="-2784,-2922,-3751" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-737,-2826,-3040" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="-1433,-3167,-3167" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-1433,-3167,-3167" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="-604,-2765,-2790" gray="1" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="150,0,-176" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="351,201,-202" gray="1" boost="0" /> + <gammagroup id="Led" value="-737,-2826,-3040" gray="2" boost="0" /> + <gammagroup id="Display" value="-805,-880,-1332" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-805,-880,-1332" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="-1433,-3167,-3167" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1307,-3368,-3393" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-805,-880,-1332" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-151,-2513,-2463" gray="1" boost="1" /> + <gammagroup id="ListText" value="0,0,-553" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="2161,-604,-4096" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="2161,-176,-4096" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-805,-880,-1332" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-805,-880,-1332" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="678,-3745,-3770" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-2237,-3870,-3820" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,3205,-1223" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Bloods"> + <gammagroup id="Backgrounds" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="555,-3921,-2840" gray="2" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="0,-3921,-2840" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="-2470,-4096,-4081" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="678,-3443,-3016" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="0,-3921,-2840" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="0,-3921,-2840" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Led" value="904,-3921,-3142" gray="2" boost="0" /> + <gammagroup id="Display" value="0,-3421,-2440" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="0,-3921,-2840" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="829,-3644,-3267" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="1759,-1232,-1483" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="0,-3921,-2840" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="0,-3921,-2840" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="MonoLite"> + <gammagroup id="Backgrounds" value="-440,-440,-440" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="-3652,-3652,-3652" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="550,550,550" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-880,-880,-880" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="220,220,220" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Led" value="190,190,190" gray="2" boost="0" /> + <gammagroup id="Display" value="1110,1110,1110" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-1110,-1110,-1110" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-3770,-3770,-3770" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1558,-1558,-1558" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-990,-990,-990" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-990,-990,-990" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-440,-440,-440" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-4085,-4096,-4096" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Gold Rush"> + <gammagroup id="Backgrounds" value="422,-132,-2056" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="655,451,-1035" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="655,451,-1035" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="1851,1268,-365" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="889,539,-569" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="889,539,-948" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="1151,685,335" gray="2" boost="0" /> + <gammagroup id="Text" value="-3329,-3728,-3713" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="655,451,-1035" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-744,-1298,-2610" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="422,-132,-2056" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,189,-511" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="830,655,-540" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-423,-2347,-2172" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-423,-2347,-2172" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="801,364,-948" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="947,451,-277" gray="2" boost="0" /> + <gammagroup id="Led" value="714,-1123,-1035" gray="2" boost="0" /> + <gammagroup id="Display" value="-715,-1502,-2726" gray="2" boost="1" /> + <gammagroup id="DisplaySongtickerBG" value="-686,-1444,-3164" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,-715" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,-715" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,-715" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,-715" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,-482" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="626,-2347,-2172" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,-336,-1735" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,-394,-1444" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,-394,-1735" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,-686" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="0,0,-452" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-715,-1502,-2726" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-715,-1502,-2726" gray="2" boost="1" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="889,539,-948" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Jeans"> + <gammagroup id="Backgrounds" value="-2843,-2581,-2027" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Bolt" value="0,-1473,-3193" gray="0" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="-1823,-4096,-2872" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="3600,-132,-1414" gray="0" boost="1" /> + <gammagroup id="ButtonsActive" value="-861,-4096,-2843" gray="0" boost="1" /> + <gammagroup id="ButtonStatus" value="-1298,-4096,-2960" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Led" value="-219,218,714" gray="2" boost="0" /> + <gammagroup id="Display" value="-1560,-3339,-2522" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2843,-2581,-2027" gray="0" boost="1" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="0,189,568" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,189,568" gray="0" boost="1" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="2375,2638,3425" gray="0" boost="1" /> + <gammagroup id="ListText" value="-598,-219,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-2027,-365,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1881,-394,-686" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-1560,-3339,-2522" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-1094,-482,0" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="1705,2142,2405" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-2289,-4096,-3076" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="3279,3717,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Bitter Lemon"> + <gammagroup id="Backgrounds" value="597,481,510" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-512,0,-2528" gray="0" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-512,0,-2528" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="1376,1376,1376" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="3804,3950,4064" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="4064,4064,4064" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="-160,-160,-160" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="3136,2240,1472" gray="0" boost="0" /> + <gammagroup id="Text" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="239,326,355" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-336,685,-2231" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="239,326,355" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="-336,685,-2231" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="2144,3040,-1280" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-656,335,-2785" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="1763,2900,-3040" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="-1792,-1344,-3584" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="239,326,355" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-336,685,-2231" gray="1" boost="0" /> + <gammagroup id="Led" value="1443,2463,-1504" gray="2" boost="0" /> + <gammagroup id="Display" value="2112,3040,-1504" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="0,510,772" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-4096,-3892,-3718" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="-4096,-3892,-3718" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-4096,-3892,-3718" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="-686,0,-1504" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-4096,-3892,-3718" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="2112,3040,-482" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,160,510" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="1728,2880,3200" gray="1" boost="1" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="1056,-384,544" gray="1" boost="0" /> + <gammagroup id="ListText" value="-4096,-4009,-3922" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-4096,-3339,-1677" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-3776,-3164,-1356" gray="0" boost="1" /> + <gammagroup id="ListBackground" value="2304,3168,-960" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="976,1384,1647" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-3328,-2272,-1952" gray="1" boost="0" /> + <gammagroup id="Tooltips Background" value="-190,830,-1504" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Blue Martini"> + <gammagroup id="Backgrounds" value="-1152,-1024,32" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-1376,-1728,-2112" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-1376,-1728,-2112" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="4096,3600,2871" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-640,-448,1696" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="1024,288,-512" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="1588,743,0" gray="0" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="1024,288,-512" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="1588,743,0" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="1024,288,-512" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="1588,743,0" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="1920,2112,3552" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonStatus" value="1920,2112,3552" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="1920,2112,3552" gray="2" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="1024,288,-512" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1588,743,0" gray="0" boost="0" /> + <gammagroup id="Led" value="1920,2112,3552" gray="2" boost="0" /> + <gammagroup id="Display" value="539,539,801" gray="1" boost="1" /> + <gammagroup id="DisplaySongtickerBG" value="597,685,1122" gray="1" boost="1" /> + <gammagroup id="DisplayElements" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="DisplayVis" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="DisplaySongticker" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="1920,2112,3552" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1152,-1024,32" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="1024,288,-512" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="ListTextSelected" value="-2318,-2114,-1035" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1735,-1648,-1210" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="539,539,889" gray="1" boost="1" /> + <gammagroup id="ListSelBackground" value="-219,-161,218" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="-3392,-3392,-3392" gray="2" boost="0" /> + <gammagroup id="Tooltips Background" value="801,0,-394" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="City Night"> + <gammagroup id="Backgrounds" value="-1344,-1344,-1344" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="Titlebar" value="96,96,96" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="1096,1096,1096" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="-1500,-1500,-1500" gray="2" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="-448,-448,-448" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-1500,-1500,-1500" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-448,-448,-448" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="-1500,-1500,-1500" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="4064,1152,-3264" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="0,-511,-2260" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="1792,1005,-1269" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="-4096,-3105,-3280" gray="0" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="-448,-448,-448" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-1500,-1500,-1500" gray="2" boost="0" /> + <gammagroup id="Led" value="2988,1152,-3264" gray="2" boost="0" /> + <gammagroup id="Display" value="-2700,-2700,-2700" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2500,-2500,-2500" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-248,-132,0" gray="2" boost="0" /> + <gammagroup id="DisplayVis" value="-248,-132,0" gray="2" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-248,-132,0" gray="2" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,-569,-2493" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,-569,-2493" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="1559,451,-2318" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2027,-1823,-1997" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="-423,-394,-365" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="1297,-161,-2522" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="860,0,-3264" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="2400,2336,2816" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-2592,-2560,-2624" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="0,-190,-1240" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Bullfrog"> + <gammagroup id="Backgrounds" value="-256,704,-4064" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-1920,-1312,-4096" gray="0" boost="0" /> + <gammagroup id="Bolt" value="160,1792,-1706" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-132,0,422" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="-256,704,-4064" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="-423,0,-2260" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="333,333,333" gray="1" boost="0" /> + <gammagroup id="Text" value="-3280,-2668,-3805" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="481,772,1851" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="-161,0,1268" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="481,772,1851" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="-161,0,1268" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="1880,3717,-4064" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-4096,-1024,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-4096,-1024,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="481,772,1851" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-161,0,1268" gray="0" boost="0" /> + <gammagroup id="Led" value="1938,2463,1384" gray="2" boost="0" /> + <gammagroup id="Display" value="451,1996,-3222" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="2496,4032,-2784" gray="0" boost="0" /> + <gammagroup id="DisplayElements" value="222,222,222" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="222,222,222" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="222,222,222" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="2" boost="1" /> + <gammagroup id="DisplaySongtickerShade" value="222,222,222" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="864,896,992" gray="2" boost="1" /> + <gammagroup id="BGOverlayDark" value="-256,704,-4064" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-540,0,-1589" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-256,704,-4064" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-1920,-715,-4096" gray="0" boost="0" /> + <gammagroup id="ListSelBackground" value="-256,704,-4064" gray="0" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-773,0,-2172" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Fort Knox"> + <gammagroup id="Backgrounds" value="-864,-896,-2080" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-864,-896,-1760" gray="2" boost="0" /> + <gammagroup id="Bolt" value="-190,-219,-1881" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-512,-512,-1414" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="-1152,-1152,-2304" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,-1298" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="0,0,-1210" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-1152,-1152,-2304" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,-482" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="0,0,-1376" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="189,160,-773" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="-352,-384,-1376" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="189,160,-773" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-352,-384,-1376" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-977,-1006,-2464" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="2288,2259,-1440" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-219,-248,-1210" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="189,160,-773" gray="1" boost="0" /> + <gammagroup id="Led" value="1822,1822,-1440" gray="2" boost="0" /> + <gammagroup id="Display" value="-928,-960,-2080" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-928,-960,-2080" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="1822,1822,-1440" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-511,-511,-1852" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="-394,-365,-1240" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,-569" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-288,-288,-1792" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-3105,-3076,-3543" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="-288,-288,-1792" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-288,-288,-1792" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-3018,-3076,-4096" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="2609,2609,0" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Raspberry Club"> + <gammagroup id="Backgrounds" value="-704,-3680,-2560" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="306,-1056,-3222" gray="2" boost="0" /> + <gammagroup id="Bolt" value="393,0,-423" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-1408,-3712,-2848" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="3687,2080,-2560" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-96,-3616,-2304" gray="0" boost="0" /> + <gammagroup id="TitlebarText" value="1005,-831,-2944" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="830,-715,-2944" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="1326,-248,-2464" gray="2" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="830,-715,-2944" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="1530,0,-2376" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="830,-715,-2944" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="1384,-248,-2406" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="3392,1938,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="-704,-3680,-2560" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="830,-2610,-1531" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="2848,-2048,-1920" gray="2" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="830,-715,-2944" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1268,-190,-2260" gray="2" boost="0" /> + <gammagroup id="Led" value="3571,1024,-4096" gray="2" boost="0" /> + <gammagroup id="Display" value="2592,364,-3328" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="2592,364,-3328" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,-161,-540" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,-161,-540" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,-161,-540" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,-161,-540" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,-161,-540" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="3571,1024,-4096" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="2464,218,-3168" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="0,-1123,-3076" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="3616,2080,-2560" gray="0" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="2112,4032,-192" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="-704,-3680,-2560" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="3046,976,-2976" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="801,-190,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="3616,2080,-2560" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="451,-686,-2551" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Emerald City"> + <gammagroup id="Backgrounds" value="320,736,864" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-2368,-288,32" gray="2" boost="0" /> + <gammagroup id="Bolt" value="306,1239,1676" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-2016,-384,-256" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="-4096,2336,2496" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="0,306,422" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="218,481,626" gray="2" boost="0" /> + <gammagroup id="Text" value="-4067,-3630,-3339" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="-2231,0,276" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-1094,306,597" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-512,-128,32" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="-896,320,736" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="-365,1268,1472" gray="2" boost="1" /> + <gammagroup id="ButtonsActive" value="-2960,510,2084" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="-3980,0,1180" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="-819,-161,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-512,-128,32" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-896,320,736" gray="2" boost="0" /> + <gammagroup id="Led" value="-3392,1851,2208" gray="2" boost="0" /> + <gammagroup id="Display" value="-4096,3136,3328" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-4096,3136,3328" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="4064,2208,2080" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="4064,2208,2080" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="-598,889,1326" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-598,-190,0" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="-2432,1536,2272" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-394,0,131" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-1648,-365,256" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1648,-365,256" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-4096,800,928" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-2720,480,1088" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-1910,-219,364" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Baby Jeans"> + <gammagroup id="Backgrounds" value="-2464,-2240,-1632" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-2112,-2016,-1793" gray="0" boost="0" /> + <gammagroup id="Bolt" value="1440,-128,-608" gray="1" boost="0" /> + <gammagroup id="Menubar" value="-2112,-2016,-1793" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="-3328,-3360,-3168" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="-2464,-2240,-1632" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="0,-248,-482" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="960,256,-192" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="1024,-704,-1216" gray="0" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="960,256,-192" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="1024,-704,-1216" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="960,256,-192" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="1024,-704,-1216" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-192,-96,224" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="1239,-948,-1327" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-800,-480,-160" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="864,-2080,-1408" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="960,256,-192" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="1024,-704,-1216" gray="1" boost="0" /> + <gammagroup id="Led" value="2580,1588,830" gray="2" boost="0" /> + <gammagroup id="Display" value="3136,2240,1472" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayElements" value="-4096,-4096,-3513" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="-4096,-4096,-3513" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-4096,-4096,-3513" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-4096,-3863,-2930" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="1440,-128,-608" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="2550,1676,422" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="3136,2240,1472" gray="1" boost="1" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="-608,-32,608" gray="1" boost="0" /> + <gammagroup id="ListText" value="-3328,-3360,-3168" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-2464,-2240,-1632" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-4009,-2347,-1210" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="3136,2240,1472" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="1440,768,160" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="3017,2725,2375" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="0,-336,-715" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Arctica"> + <gammagroup id="Backgrounds" value="512,544,608" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-1376,-1216,-861" gray="1" boost="0" /> + <gammagroup id="Bolt" value="1967,1996,2055" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-977,-861,-598" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="384,384,384" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="1312,1760,2871" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-307,-161,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="830,918,947" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="-832,-736,-480" gray="0" boost="0" /> + <gammagroup id="Text" value="-4096,-3863,-3572" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="512,544,608" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-832,-736,-480" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="512,544,608" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-832,-736,-480" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-192,-96,224" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-1632,-1568,-1376" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-1632,-1568,-1376" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="864,-2080,-1408" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="512,544,608" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-832,-736,-480" gray="0" boost="0" /> + <gammagroup id="Led" value="1588,1822,3250" gray="2" boost="0" /> + <gammagroup id="Display" value="3200,3456,3808" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="2259,2492,2900" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-2872,-3134,-2755" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="-2872,-3134,-2755" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-2872,-3134,-2755" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,860,1239" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-2872,-3134,-2755" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="2463,3104,4096" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2496,-2784,-2368" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="-277,-248,0" gray="1" boost="1" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="1568,1568,1568" gray="1" boost="0" /> + <gammagroup id="ListText" value="1920,2272,2464" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-416,-416,-352" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-3543,-3222,-2231" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="960,1376,1792" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-1344,-832,-320" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-2336,-2016,-1728" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="-248,-132,160" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Donatello"> + <gammagroup id="Backgrounds" value="-768,288,-2016" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="-1024,-128,-2432" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="3904,-2432,-2432" gray="1" boost="0" /> + <gammagroup id="Titlebar" value="-608,384,-1312" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="448,608,256" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="-608,384,-1312" gray="1" boost="0" /> + <gammagroup id="Text" value="-1304,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="2912,-3136,-2400" gray="2" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="333,333,333" gray="0" boost="0" /> + <gammagroup id="Led" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="Display" value="3456,-256,-3264" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="4064,2208,2080" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="4064,2208,2080" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="4064,2208,2080" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="3456,-256,-3264" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="3456,-256,-3264" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1088,-96,-1440" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="2016,2944,896" gray="2" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="2016,2944,896" gray="2" boost="0" /> + <gammagroup id="ListTextSelected" value="2112,4032,-192" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="4064,1952,256" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="2720,-544,-3200" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="2912,-928,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Rain Forest"> + <gammagroup id="Backgrounds" value="-4096,-1312,-3616" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="-2080,-2080,-2080" gray="0" boost="0" /> + <gammagroup id="Bolt" value="-132,3396,-1240" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-2080,-2080,-2080" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="-2720,-1056,-2912" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-336,0,-307" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="0,864,224" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="352,1312,448" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="-598,889,-656" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="-598,889,-656" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="-3455,1734,-2901" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="-4096,2080,-3616" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="-4096,2080,-3616" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="128,4064,128" gray="0" boost="0" /> + <gammagroup id="Led" value="-1589,1647,-3616" gray="2" boost="0" /> + <gammagroup id="Display" value="-4096,-1356,-3136" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-4096,-1984,-3136" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,3833,-277" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="-3105,2080,-3616" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-4096,2080,-3616" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="655,4096,0" gray="0" boost="1" /> + <gammagroup id="ListText" value="-307,0,-336" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-1006,0,-1414" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="-2930,0,-3309" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="-4096,-1920,-3712" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-2784,-320,-2592" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="0,3192,0" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-1065,0,-1152" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Amethyst"> + <gammagroup id="Backgrounds" value="-1088,-2912,-1056" gray="0" boost="0" /> + <gammagroup id="Backgrounds2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="-1968,-4096,-1444" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-1088,-2912,-1056" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-219,-598,-132" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="502,0,879" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="954,402,1331" gray="1" boost="0" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="-190,-1210,0" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="-190,-1210,0" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="3168,128,4064" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="2976,-1312,4064" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="2976,-1312,4064" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-190,-1210,0" gray="0" boost="0" /> + <gammagroup id="Led" value="2976,-1312,4064" gray="0" boost="0" /> + <gammagroup id="Display" value="-831,-3543,-773" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-831,-3543,-773" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="2976,-1312,4064" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1210,-3134,-452" gray="0" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,-656,-132" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-1088,-2912,-1056" gray="0" boost="1" /> + <gammagroup id="TextDark" value="3454,2055,4096" gray="0" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="-307,-1997,3483" gray="2" boost="0" /> + <gammagroup id="ListTextCurrent" value="-307,-1997,3483" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="453,-2287,879" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-320,-2784,-448" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="3279,976,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-2581,-4096,-2610" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Sunflower"> + <gammagroup id="Backgrounds" value="3630,450,-1708" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="3630,450,-1708" gray="1" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="4096,-356,-3522" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="-553,-1734,-2840" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="4096,0,-3630" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="0,592,0" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-2626,-619,-2393" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="-969,1003,-864" gray="2" boost="0" /> + <gammagroup id="Buttons" value="3630,450,-1708" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="7061,-819,-1925" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="3630,450,-1708" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="7061,-819,-1925" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="4096,-1541,-3069" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="2937,-2068,-2832" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2521,0,-2438" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="7061,-819,-1925" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="3630,450,-1708" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="7061,-819,-1925" gray="1" boost="0" /> + <gammagroup id="Led" value="4096,-1357,-2885" gray="2" boost="0" /> + <gammagroup id="Display" value="3693,1447,-1693" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="7061,-819,-1925" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-2639,-3544,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="1967,3946,-1450" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-3793,-2463,-3140" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-2930,-549,-2498" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1647,-1015,-1726" gray="1" boost="0" /> + <gammagroup id="BGOverlayBright" value="980,-202,-1182" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-704,-2938,-2111" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-478,-1659,-2790" gray="1" boost="1" /> + <gammagroup id="ListText" value="-2639,-3720,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="2739,552,-880" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="3317,2035,1482" gray="1" boost="1" /> + <gammagroup id="ListBackground" value="4280,2192,-1252" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="420,-1494,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="753,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="Text" value="-2639,-3720,-4096" gray="1" boost="0" /> + <gammagroup id="Text Inverse" value="4095,4095,4095" boost="1"/> + <gammagroup id="Tooltips Background" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Blueberry"> + <gammagroup id="Backgrounds" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="Bolt" value="-3619,778,351" gray="1" boost="0" /> + <gammagroup id="Menubar" value="-857,-2095,-303" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="-2569,-2779,-3043" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-905,753,1507" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-779,753,1231" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Buttons2" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="ButtonGlow" value="1222,1222,1222" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-999,-999,-999" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2941,-1332,-955" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Led" value="-3619,1532,-302" gray="0" boost="0" /> + <gammagroup id="Display" value="-404,955,3305" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-3418,452,2541" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="770,770,770" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="770,770,770" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-3619,829,-302" gray="0" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2463,1881,4096" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-302,3214,3693" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-302,2914,3693" gray="1" boost="1" /> + <gammagroup id="ListText" value="-4096,-327,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-1257,3920,4045" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-679,3719,4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-4018,-1452,-880" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-2966,3769,4096" gray="1" boost="1" /> + <gammagroup id="Text" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" boost="0"/> + <gammagroup id="Tooltips Background" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Coagulated"> + <gammagroup id="Backgrounds" value="-2755,-3980,-4096" gray="1" boost="0" /> + <gammagroup id="Backgrounds2" value="-2901,-4067,-4096" gray="1" boost="0" /> + <gammagroup id="Bolt" value="-1094,-1502,-2551" gray="2" boost="1" /> + <gammagroup id="Menubar" value="-2522,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="MenubarText" value="-4096,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-2901,-4067,-4096" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-2726,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="Text" value="3891,4096,4096" gray="1" boost="1" /> + <gammagroup id="Text Inverse" value="-4096,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="Buttons" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-2464,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-2581,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-2639,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-2610,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2755,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="3629,3454,4096" gray="1" boost="1" /> + <gammagroup id="Scrollbar Buttons" value="-2376,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-2785,-4096,-3980" gray="1" boost="0" /> + <gammagroup id="Led" value="-2056,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="Display" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2755,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-3222,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-3076,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-3572,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-4038,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="-2930,-3193,-3222" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-1094,-1502,-2551" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-1094,-1502,-2551" gray="1" boost="1" /> + <gammagroup id="BG2Textoverlay" value="-1094,-1502,-2551" gray="1" boost="1" /> + <gammagroup id="TextDark" value="-627,-1502,-2551" gray="1" boost="1" /> + <gammagroup id="ListText" value="-1094,-1502,-2551" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-1589,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-1414,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="ListBackground" value="-2930,-3193,-3222" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-3455,-3834,-4096" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="4096,4096,4096" gray="1" boost="1" /> + <gammagroup id="Tooltips Background" value="-1648,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="Tooltips Text" value="-3601,-4096,-4096" gray="1" boost="1" /> +</gammaset> + +<gammaset id="Peachy"> + <gammagroup id="Backgrounds" value="4096,-768,-1719" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="3961,-614,-1753" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="1334,-2685,-3084" gray="2" boost="1" /> + <gammagroup id="Titlebar" value="3961,-1275,-1753" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="3961,1411,-814" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="3961,1411,-814" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="3961,-1642,-2102" gray="2" boost="0" /> + <gammagroup id="Text" value="-783,-3345,-4096" gray="2" boost="0" /> + <gammagroup id="Text Inverse" value="4096,2454,2024" gray="2" boost="1" /> + <gammagroup id="Buttons" value="552,-231,-629" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="4096,-3375,-4050" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="4096,-1289,-2793" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="4096,0,-553" gray="2" boost="0" /> + <gammagroup id="Led" value="1580,-2394,-3989" gray="2" boost="0" /> + <gammagroup id="Display" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="475,-3391,-4081" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="4096,-1166,-2164" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="BG2Textoverlay" value="1334,-2685,-3084" gray="2" boost="1" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="4096,536,-261" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="3926,613,-461" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="4096,-507,-1657" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="1334,-2685,-3084" gray="2" boost="1" /> +</gammaset> + +<gammaset id="Bricks Set"> + <gammagroup id="Backgrounds" value="-3836,-1666,490" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-190,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Bolt" value="-4096,0,813" gray="2" boost="0" /> + <gammagroup id="Menubar" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="-4096,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="Titlebar" value="-3836,-1666,490" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="TitlebarElements" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="TitlebarHover" value="4096,4096,-4096" gray="0" boost="0" /> + <gammagroup id="Text" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="-4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Buttons" value="459,441,-4096" gray="0" boost="0" /> + <gammagroup id="ButtonsHover" value="837,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Buttons2" value="459,441,-4096" gray="0" boost="0" /> + <gammagroup id="ButtonsHover2" value="837,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="ButtonGlow" value="4096,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="ButtonsActive" value="1863,-4096,-4096" gray="0" boost="1" /> + <gammagroup id="ButtonStatus" value="4096,-4078,-4096" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="-3682,2408,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-4096,-1720,813" gray="0" boost="0" /> + <gammagroup id="Scrollbar Hover" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="Led" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="Display" value="4096,4096,4096" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-4096,4096,-4096" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="4096,0,-4096" gray="2" boost="0" /> + <gammagroup id="DisplayVis" value="-4096,-1558,-4096" gray="0" boost="0" /> + <gammagroup id="DisplayBeatVis" value="3482,951,0" gray="0" boost="0" /> + <gammagroup id="DisplaySongticker" value="4096,0,-4096" gray="0" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="4096,0,-4096" gray="0" boost="0" /> + <gammagroup id="ProgressBar" value="4096,4096,4096" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="4096,4096,4096" gray="2" boost="1" /> + <gammagroup id="BGOverlayBright" value="3328,1989,813" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="TextDark" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="337,2792,-3912" gray="0" boost="0" /> + <gammagroup id="ListBackground" value="751,4096,-2394" gray="0" boost="0" /> + <gammagroup id="ListSelBackground" value="2997,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="ListColumnText" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="-3836,-1666,490" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="4096,4096,4096" gray="0" boost="1" /> +</gammaset> + +<gammaset id="Rosemary"> + <gammagroup id="Backgrounds" value="819,0,0" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="369,0,0" gray="2" boost="0" /> + <gammagroup id="Bolt" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Menubar" value="459,0,0" gray="0" boost="0" /> + <gammagroup id="MenubarText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Titlebar" value="459,0,0" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="945,-352,-460" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="153,0,0" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="1665,0,0" gray="2" boost="0" /> + <gammagroup id="Text" value="-2116,-3754,-3448" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4096,4096,4096" gray="2" boost="1" /> + <gammagroup id="Buttons" value="297,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="2727,0,0" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="297,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="2727,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="1413,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="1413,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonStatus" value="1737,0,0" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="1953,0,0" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="2385,-316,-298" gray="2" boost="0" /> + <gammagroup id="Led" value="4096,0,0" gray="2" boost="0" /> + <gammagroup id="Display" value="603,0,0" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="1953,0,0" gray="2" boost="0" /> + <gammagroup id="DisplayVis" value="2817,-1090,-1144" gray="2" boost="0" /> + <gammagroup id="DisplayBeatVis" value="1953,0,0" gray="2" boost="0" /> + <gammagroup id="DisplaySongticker" value="-1126,-1684,-1648" gray="2" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-1126,-1684,-1648" gray="2" boost="0" /> + <gammagroup id="ProgressBar" value="1197,-1558,-2170" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="0,0,0" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="BG2Textoverlay" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="TextDark" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="ListTextSelected" value="4096,4096,4096" gray="0" boost="0" /> + <gammagroup id="ListTextCurrent" value="1413,0,0" gray="2" boost="0" /> + <gammagroup id="ListBackground" value="4096,3429,3501" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="1413,0,0" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Background" value="819,0,0" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Blueberry And Cream"> + <gammagroup id="Backgrounds" value="791,791,20" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="Bolt" value="791,791,20" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-857,-2095,-303" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="-2569,-2779,-3043" gray="1" boost="1" /> + <gammagroup id="Titlebar" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="TitlebarText" value="-905,753,1507" gray="1" boost="0" /> + <gammagroup id="TitlebarElements" value="-779,753,1231" gray="1" boost="0" /> + <gammagroup id="TitlebarHover" value="-553,1281,1834" gray="1" boost="1" /> + <gammagroup id="Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="Buttons2" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="ButtonsHover2" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="ButtonGlow" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="ButtonsActive" value="-999,-999,-999" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-1056,427,804" gray="1" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="Led" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="Display" value="-404,955,3305" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-3418,452,2541" gray="1" boost="0" /> + <gammagroup id="DisplayElements" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-880,452,980" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="770,770,770" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="770,770,770" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="BGOverlayBright" value="-2287,-4096,-1578" gray="2" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-2003,-2581,-701" gray="2" boost="0" /> + <gammagroup id="TextDark" value="-302,2914,3693" gray="1" boost="1" /> + <gammagroup id="ListText" value="-4096,-327,0" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="-1257,3920,4045" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="-679,3719,4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-857,-2095,2304" gray="2" boost="0" /> + <gammagroup id="ListSelBackground" value="-4018,-1452,-880" gray="2" boost="0" /> + <gammagroup id="ListColumnText" value="-2966,3769,4096" gray="1" boost="1" /> + <gammagroup id="Text" value="-3016,-4096,-3016" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="4096,4096,4096" gray="0" boost="1" /> + <gammagroup id="Tooltips Background" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Tooltips Text" value="0,0,0" gray="0" boost="0" /> +</gammaset> + +<gammaset id="Qwayke"> + <gammagroup id="Backgrounds" value="-3000,-3000,-3000" gray="2" boost="0" /> + <gammagroup id="Backgrounds2" value="-2260,-2620,-3124" gray="2" boost="0" /> + <gammagroup id="Bolt" value="153,-1936,-3952" gray="2" boost="0" /> + <gammagroup id="Menubar" value="-2908,-3484,-4096" gray="2" boost="0" /> + <gammagroup id="MenubarText" value="369,-4096,-4096" gray="2" boost="1" /> + <gammagroup id="Titlebar" value="-1999,-1999,-1999" gray="1" boost="0" /> + <gammagroup id="TitlebarText" value="-1216,-2296,-4096" gray="2" boost="0" /> + <gammagroup id="TitlebarElements" value="-1216,-2296,-4096" gray="2" boost="0" /> + <gammagroup id="TitlebarHover" value="0,-1576,-4096" gray="2" boost="0" /> + <gammagroup id="Text" value="-1072,-4096,-4096" gray="0" boost="0" /> + <gammagroup id="Text Inverse" value="0,0,0" gray="0" boost="0" /> + <gammagroup id="Buttons" value="-2386,-2836,-3358" gray="2" boost="0" /> + <gammagroup id="ButtonsHover" value="-1252,-2170,-4078" gray="1" boost="0" /> + <gammagroup id="Buttons2" value="-2386,-2836,-3358" gray="2" boost="0" /> + <gammagroup id="ButtonsHover2" value="-1252,-2170,-4078" gray="1" boost="0" /> + <gammagroup id="ButtonGlow" value="-568,-1468,-4078" gray="1" boost="0" /> + <gammagroup id="ButtonsActive" value="-568,-1468,-4078" gray="1" boost="0" /> + <gammagroup id="ButtonStatus" value="-568,-1468,-4078" gray="1" boost="0" /> + <gammagroup id="ButtonText" value="0,0,0" gray="1" boost="0" /> + <gammagroup id="Scrollbar Buttons" value="-2386,-2836,-3358" gray="2" boost="0" /> + <gammagroup id="Scrollbar Hover" value="-1252,-2170,-4078" gray="1" boost="0" /> + <gammagroup id="Led" value="0,-4096,-4096" gray="2" boost="0" /> + <gammagroup id="Display" value="-2278,-2782,-4078" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerBG" value="-2440,-2854,-4078" gray="2" boost="0" /> + <gammagroup id="DisplayElements" value="-1486,-2242,-4078" gray="1" boost="0" /> + <gammagroup id="DisplayVis" value="-1486,-2242,-4078" gray="1" boost="0" /> + <gammagroup id="DisplayBeatVis" value="-1486,-2242,-4078" gray="1" boost="0" /> + <gammagroup id="DisplaySongticker" value="-1486,-2242,-4078" gray="1" boost="0" /> + <gammagroup id="DisplaySongtickerShade" value="-1486,-2242,-4078" gray="1" boost="0" /> + <gammagroup id="ProgressBar" value="-1216,-3538,-3556" gray="1" boost="0" /> + <gammagroup id="BGOverlayDark" value="-2926,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="BGOverlayBright" value="-2350,-3340,-3646" gray="1" boost="0" /> + <gammagroup id="BG2Textoverlay" value="-4096,-4096,-4096" gray="1" boost="1" /> + <gammagroup id="TextDark" value="783,-1180,-3088" gray="2" boost="1" /> + <gammagroup id="ListText" value="-1936,-3538,-3556" gray="1" boost="0" /> + <gammagroup id="ListTextSelected" value="4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListTextCurrent" value="4096,-4096,-4096" gray="1" boost="0" /> + <gammagroup id="ListBackground" value="-2782,-3232,-4078" gray="1" boost="0" /> + <gammagroup id="ListSelBackground" value="-3070,-3358,-3520" gray="1" boost="0" /> + <gammagroup id="ListColumnText" value="927,-4096,-4096" gray="2" boost="1" /> + <gammagroup id="Tooltips Background" value="-2908,-3484,-4096" gray="2" boost="0" /> + <gammagroup id="Tooltips Text" value="819,-4096,-4096" gray="0" boost="1" /> +</gammaset> diff --git a/Src/resources/skins/Winamp Modern/xml/configdrawer.xml b/Src/resources/skins/Winamp Modern/xml/configdrawer.xml new file mode 100644 index 00000000..94737362 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/configdrawer.xml @@ -0,0 +1,1214 @@ +<groupdef id="config.tab.eq.on" h="19" autowidthsource="config.text.eq.on"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.on.left" + middle="drawer.tab.on.center" + right="drawer.tab.on.right" + /> + <text + id="config.text.eq.on" ticker="0" + default="Equalizer" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="8" + font="player.smallfont" move="0" + color="drawer.color.text.dark" + /> +</groupdef> +<groupdef id="config.tab.eq.off" h="19" autowidthsource="config.text.eq.off"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.off.left" + middle="drawer.tab.off.center" + right="drawer.tab.off.right" + /> + <text + id="config.text.eq.off" ticker="0" + default="Equalizer" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="8" + font="player.smallfont" move="0" + color="drawer.color.text.dark" + /> + <Layer id="mousetrapTabEQ" x="0" y="0" w="0" h="0" relatw="1" relath="1" move="0"/> +</groupdef> +<groupdef id="config.tab.options.on" h="19" autowidthsource="config.text.options.on"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.on.left" + middle="drawer.tab.on.center" + right="drawer.tab.on.right" + /> + <text + id="config.text.options.on" ticker="0" + default="Options" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="7" + font="player.smallfont" + color="drawer.color.text.dark" + /> +</groupdef> +<groupdef id="config.tab.options.off" h="19" autowidthsource="config.text.options.off"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.off.left" + middle="drawer.tab.off.center" + right="drawer.tab.off.right" + /> + <text + id="config.text.options.off" ticker="0" + default="Options" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="7" + font="player.smallfont" + color="drawer.color.text.dark" + /> + <Layer id="mousetrapTabOPTIONS" x="0" y="0" w="0" h="0" relatw="1" relath="1" move="0"/> +</groupdef> +<groupdef id="config.tab.colorthemes.on" h="19" autowidthsource="config.text.colorthemes.on"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.on.left" + middle="drawer.tab.on.center" + right="drawer.tab.on.right" + /> + <text + id="config.text.colorthemes.on" ticker="0" + default="Color Themes" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="7" + font="player.smallfont" + color="drawer.color.text.dark" + /> +</groupdef> +<groupdef id="config.tab.colorthemes.off" h="19" autowidthsource="config.text.colorthemes.off"> + <Grid x="0" y="0" w="0" h="19" relatw="1" + left="drawer.tab.off.left" + middle="drawer.tab.off.center" + right="drawer.tab.off.right" + /> + <text + id="config.text.colorthemes.off" ticker="0" + default="Color Themes" + x="11" y="-5" + fontsize="12" + w="-24" relatw="1" relath="1" h="7" + font="player.smallfont" + color="drawer.color.text.dark" + /> + <Layer id="mousetrapTabCOLORTHEMES" x="0" y="0" w="0" h="0" relatw="1" relath="1" move="0"/> +</groupdef> + +<groupdef id="config.tabs" w="330"> + <group id="config.tab.eq.off" x="0" y="0"/> + <group id="config.tab.options.off" x="0" y="0"/> + <group id="config.tab.colorthemes.off" x="0" y="0"/> + <group id="config.tab.eq.on" x="0" y="0"/> + <group id="config.tab.options.on" x="0" y="0"/> + <group id="config.tab.colorthemes.on" x="0" y="0"/> +</groupdef> + +<groupdef id="player.config.inner" name="Config Inner" w="326" h="127"> + <layer + id="drawer.inner.left" + x="0" y="0" + image="drawer.inner.left" + /> + <layer + id="drawer.inner.center" + x="10" y="0" + relatw="1" + w="-30" + image="drawer.inner.center" + /> + <layer + id="drawer.inner.right" + x="-20" y="0" + relatx="1" + image="drawer.inner.right" + /> +</groupdef> + + +<groupdef id="player.normal.drawer.eq.balance" x="0" y="0"> + <layer + x="5" y="0" + image="drawer.eq.balance.bg" + /> + <layer + x="7" y="2" + image="drawer.eq.balance.txtoverlay.bright" + /> + <slider + id="Balance" + action="PAN" + x="1" y="8" + w="77" h="13" + thumb="drawer.eq.button.balance" + downThumb="drawer.eq.button.balance.pressed" + hoverThumb="drawer.eq.button.balance.hover" + tooltip="Balance" + /> +</groupdef> + +<groupdef id="player.normal.drawer.eq.content" name="Drawer EQ Content" w="318" h="89"> + <layer + x="0" y="0" + image="drawer.eq.bg" + /> + <layer + x="0" y="0" + image="drawer.eq.txtoverlay.dark" + /> + <layer + x="0" y="82" + image="drawer.eq.txtoverlay.bright" + /> + + <layer + id="equalizer.band.label" + x="135" y="82" + image="drawer.eq.label.iso" + /> + + <button + id="eqonoff" + Image="drawer.eq.button.on" + downImage="drawer.eq.button.on.pressed" + activeImage="drawer.eq.button.on" + hoverImage="drawer.eq.button.on.hover" + action="EQ_TOGGLE" + x="16" y="47" + tooltip="EQ on/off" + /> + <button + id="eqonoff_led" + Image="player.led.off" + activeImage="player.led.on" + action="EQ_TOGGLE" + x="36" y="45" + /> + + <button + id="eqauto" + Image="drawer.eq.button.auto" + downImage="drawer.eq.button.auto.pressed" + activeImage="drawer.eq.button.auto" + hoverImage="drawer.eq.button.auto.hover" + action="EQ_AUTO" + x="16" y="61" + tooltip="EQ auto" + /> + <button + id="eqonoff_led" + Image="player.led.off" + activeImage="player.led.on" + action="EQ_AUTO" + x="49" y="59" + /> + + <button + id="eqpresets" + Image="drawer.eq.button.presets" + downImage="drawer.eq.button.presets.pressed" + hoverImage="drawer.eq.button.presets.hover" + action="MENU" + param="presets" + x="16" y="75" + tooltip="Open presets" + /> + + <slider + id="sCrossfade" + cfgattrib="{F1239F09-8CC6-4081-8519-C2AE99FCB14C};Crossfade time" + high="20" + x="14" y="30" + w="2" h="2" + /> + + <togglebutton + id="CrossfadeLED" + x="27" y="24" + Image="player.led.off" + activeImage="player.led.on" + cfgattrib="{FC3EAF78-C66E-4ED2-A0AA-1494DFCC13FF};Enable crossfading" + /> + <togglebutton + id="Crossfade" + x="8" y="26" + image="drawer.eq.button.crossfade" + downImage="drawer.eq.button.crossfade.pressed" + activeImage="drawer.eq.button.crossfade" + hoverImage="drawer.eq.button.crossfade.hover" + tooltip="Toggle Crossfading Between Tracks" + cfgattrib="{FC3EAF78-C66E-4ED2-A0AA-1494DFCC13FF};Enable crossfading" + /> + + <button + id="CrossfadeDecrease" + Image="drawer.eq.button.crossfade.prev" + downImage="drawer.eq.button.crossfade.prev.pressed" + hoverImage="drawer.eq.button.crossfade.prev.hover" + x="43" y="26" + tooltip="Decrease Crossfade Time" + /> + <button + id="CrossfadeIncrease" + Image="drawer.eq.button.crossfade.next" + downImage="drawer.eq.button.crossfade.next.pressed" + hoverImage="drawer.eq.button.crossfade.next.hover" + x="64" y="26" + tooltip="Increase Crossfade Time" + /> + + <layer + image="drawer.eq.crossfade.display" + x="51" y="26" + /> + + <text + id="CFDisplay" + x="51" y="27" w="12" h="8" + font="player.pe.time.font" + align="center" + valign="top" + fontsize="8" + color="font.display" + /> + + <layer + id="crossfade.display.overlay" + image="drawer.eq.crossfade.display" + x="51" y="26" + alpha="150" + /> + + <button + id="EQ_p12" + x="104" y="6" + w="21" h="7" + rectrgn="1" + /> + + <button + id="EQ_0" + x="104" y="36" + w="21" h="7" + rectrgn="1" + /> + + <button + id="EQ_m12" + x="104" y="66" + w="21" h="7" + rectrgn="1" + /> + + <slider + id="preamp" + action="EQ_BAND" param="preamp" + x="82" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + tooltip="Preamp" + /> + + <slider + id="eq1" + action="EQ_BAND" param="1" + x="134" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq2" + action="EQ_BAND" param="2" + x="152" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq3" + action="EQ_BAND" param="3" + x="170" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq4" + action="EQ_BAND" param="4" + x="188" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq5" + action="EQ_BAND" param="5" + x="206" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq6" + action="EQ_BAND" param="6" + x="224" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq7" + action="EQ_BAND" param="7" + x="242" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq8" + action="EQ_BAND" param="8" + x="260" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq9" + action="EQ_BAND" param="9" + x="278" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <slider + id="eq10" + action="EQ_BAND" param="10" + x="296" y="1" + w="13" h="80" + orientation="vertical" + thumb="player.main.eq.button" + hoverthumb="player.main.eq.button.hover" + downthumb="player.main.eq.button.pressed" + /> + + <script id="eq.script" file="scripts/eq.maki" /> + <script id="crossfade.script" file="scripts/crossfade.maki" /> +</groupdef> + + +<groupdef id="player.normal.drawer.eq" name="Drawer EQ Content" w="318" h="89"> + <group id="player.normal.drawer.eq.content" x="0" y="0"/> + <group id="player.normal.drawer.eq.balance" x="0" y="0"/> +</groupdef> + + + + +<groupdef id="player.normal.drawer.options" name="Drawer Options Content" w="314" h="93"> + <layer + x="0" y="0" + image="drawer.options.bg" + /> + <layer + x="0" y="0" + image="drawer.options.bg.display" + /> + <layer + x="14" y="6" + image="drawer.options.bg2.shadow" + /> + <layer + x="14" y="6" + image="drawer.options.bg2" + /> + + <!-- config page target --> + <GroupXFade speed="0.5" x="100" y="12" w="200" h="74" id="skin.config.target" /> + + <!-- config menu --> + <componentbucket id="my.bucket" x="17" y="20" w="81" h="55" spacing="0" leftmargin="0" rightmargin="0" vertical="1" wndtype="skin.config"/> + + <!-- up/down arrows --> + <Button + cbtarget="bucket" action="cb_prevpage" + x="17" y="10" + image="drawer.options.button.scroll.up" + downImage="drawer.options.button.scroll.up.pressed" + hoverImage="drawer.options.button.scroll.up.hover" + tooltip="Scroll up" + rectrgn="1" + /> + <Button + cbtarget="bucket" action="cb_nextpage" + x="17" y="76" + image="drawer.options.button.scroll.down" + downImage="drawer.options.button.scroll.down.pressed" + hoverImage="drawer.options.button.scroll.down.hover" + tooltip="Scroll down" + rectrgn="1" + /> + <script id="configtarget.script" file="scripts/configtarget.maki" /> +</groupdef> + + +<!-- config menu items --> +<groupdef id="bucket.entry.1" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.drawers.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.drawers" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.drawers" + hoverImage="drawer.options.button.drawers.hover" + downImage="drawer.options.button.drawers.pressed" + activeImage="drawer.options.button.drawers.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.2" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.menus.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.menus" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.menus" + hoverImage="drawer.options.button.menus.hover" + downImage="drawer.options.button.menus.pressed" + activeImage="drawer.options.button.menus.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.3" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.winshade.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.winshade" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.winshade" + hoverImage="drawer.options.button.winshade.hover" + downImage="drawer.options.button.winshade.pressed" + activeImage="drawer.options.button.winshade.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.4" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.visbutton.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.visbutton" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.visbutton" + hoverImage="drawer.options.button.visbutton.hover" + downImage="drawer.options.button.visbutton.pressed" + activeImage="drawer.options.button.visbutton.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.5" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.notifications.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.notifications" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.notifications" + hoverImage="drawer.options.button.notifications.hover" + downImage="drawer.options.button.notifications.pressed" + activeImage="drawer.options.button.notifications.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.6" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.songticker.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.songticker" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.songticker" + hoverImage="drawer.options.button.songticker.hover" + downImage="drawer.options.button.songticker.pressed" + activeImage="drawer.options.button.songticker.pressed" + rectrgn="1" + /> +</groupdef> + +<groupdef id="bucket.entry.7" windowtype="skin.config" w="81" h="14"> + <layer + x="0" y="0" + image="drawer.options.button.misc.shadow" + /> + <togglebutton + id="btn" + action="switchto;optionsgroup.misc" action_target="skin.config.target" + x="0" y="0" + image="drawer.options.button.misc" + hoverImage="drawer.options.button.misc.hover" + downImage="drawer.options.button.misc.pressed" + activeImage="drawer.options.button.misc.pressed" + rectrgn="1" + /> +</groupdef> + +<!-- config menu pages --> + +<groupdef id="optionsgroup.drawers"> + <layer + x="0" y="0" + image="drawer.options.drawers.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.drawers.text" + /> + <togglebutton + cfgattrib="{C338B30F-2A04-4b10-871F-4E9D52D62806};Animate Video/Vis Drawer (disabled if opacity = 100%)" + x="10" y="2" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{C338B30F-2A04-4b10-871F-4E9D52D62806};Animate Config Drawer" + x="10" y="14" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{C338B30F-2A04-4b10-871F-4E9D52D62806};Open Video/Vis from the top" + x="10" y="30" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{C338B30F-2A04-4b10-871F-4E9D52D62806};Open Video/Vis from the bottom" + x="10" y="41" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{C338B30F-2A04-4b10-871F-4E9D52D62806};Bypass setting to keep in screen" + x="10" y="56" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> +</groupdef> + +<groupdef id="optionsgroup.menus"> + <layer + x="0" y="0" + image="drawer.options.menus.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.menus.text" + /> + <togglebutton + cfgattrib="{12ED320E-6813-45ac-9F8E-78EE5B2B5F6D};Show Menus in Main Window" + x="10" y="13" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{12ED320E-6813-45ac-9F8E-78EE5B2B5F6D};Show Menus in Playlist Editor" + x="10" y="28" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{12ED320E-6813-45ac-9F8E-78EE5B2B5F6D};Show Menus in Media Library" + x="10" y="43" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> +</groupdef> + +<groupdef id="optionsgroup.winshade"> + <layer + x="0" y="0" + image="drawer.options.winshade.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.winshade.text" + /> + <togglebutton + cfgattrib="{58F07E21-AE96-4899-B7BC-3640B40029FB};Link Position and Width" + x="11" y="13" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{58F07E21-AE96-4899-B7BC-3640B40029FB};Link Position, Unlink Width" + x="11" y="28" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{58F07E21-AE96-4899-B7BC-3640B40029FB};Unlink Position and Width" + x="11" y="43" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> +</groupdef> + +<groupdef id="optionsgroup.visbutton"> + <layer + x="0" y="0" + image="drawer.options.visbutton.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.visbutton.text" + /> + <togglebutton + cfgattrib="{D70E3ABF-D2FF-4b82-9A70-4B5DF1A5D942};Open Context Menu" + x="25" y="25" + image="drawer.options.radio.w140.off" + hoverImage="drawer.options.radio.w140.hover" + downImage="drawer.options.radio.w140.down" + activeImage="drawer.options.radio.w140.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{D70E3ABF-D2FF-4b82-9A70-4B5DF1A5D942};Open Configuration" + x="25" y="39" + image="drawer.options.radio.w140.off" + hoverImage="drawer.options.radio.w140.hover" + downImage="drawer.options.radio.w140.down" + activeImage="drawer.options.radio.w140.on" + rectrgn="1" + /> +</groupdef> + +<groupdef id="optionsgroup.notifications"> + <layer + x="0" y="0" + image="drawer.options.notifications.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.notifications.text" + /> + <togglebutton + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show always" + x="10" y="1" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show with windowshade and when minimized" + x="10" y="13" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Show only when minimized" + x="10" y="25" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Never show" + x="10" y="37" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{1AB968B3-8687-4a35-BA70-FCF6D92FB57F};Disable in fullscreen" + x="10" y="54" + image="drawer.options.checkbox.w131.off" + hoverImage="drawer.options.checkbox.w131.hover" + downImage="drawer.options.checkbox.w131.down" + activeImage="drawer.options.checkbox.w131.on" + rectrgn="1" + /> + + <Button + action="switchto;optionsgroup.notifications.2;subpage" action_target="skin.config.target" + x="152" y="55" + image="drawer.options.more" + downImage="drawer.options.more.down" + hoverImage="drawer.options.more.hover" + tooltip="more options" + rectrgn="1" + /> +</groupdef> + +<groupdef id="optionsgroup.notifications.2"> + <layer + id="snotifier_fadein_shadow" + x="0" y="0" + image="drawer.options.notifications2.fadein.shadow" + /> + <layer + id="snotifier_hold_shadow" + x="0" y="25" + image="drawer.options.notifications2.hold.shadow" + /> + <layer + id="snotifier_fadeout_shadow" + x="0" y="50" + image="drawer.options.notifications2.fadeout.shadow" + /> + <layer + id="snotifier_fadein_text" + x="0" y="0" + image="drawer.options.notifications2.fadein.text" + /> + <layer + id="snotifier_hold_text" + x="0" y="25" + image="drawer.options.notifications2.hold.text" + /> + <layer + id="snotifier_fadeout_text" + x="0" y="50" + image="drawer.options.notifications2.fadeout.text" + /> + + <slider + id="snotifier_fadeintime" + cfgattrib="{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade in time" + high="10000" + thumb="drawer.options.slider" + downThumb="drawer.options.slider.down" + hoverThumb="drawer.options.slider.hover" + tooltip="Adjust Fade in time" + x="9" y="11" + w="115" h="10" + /> + + <slider + id="snotifier_holdtime" + cfgattrib="{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications display time" + high="10000" + thumb="drawer.options.slider" + downThumb="drawer.options.slider.down" + hoverThumb="drawer.options.slider.hover" + tooltip="Adjust Hold time" + x="9" y="35" + w="115" h="10" + /> + + <slider + id="snotifier_fadeouttime" + cfgattrib="{E9C2D926-53CA-400f-9A4D-85E31755A4CF};Notifications fade out time" + high="10000" + thumb="drawer.options.slider" + downThumb="drawer.options.slider.down" + hoverThumb="drawer.options.slider.hover" + tooltip="Adjust Fade out time" + x="9" y="61" + w="115" h="10" + /> + + <text + id="tnotifier_fadeintime" + x="127" y="13" w="25" h="8" + font="player.pe.time.font" + align="left" + valign="top" + fontsize="8" + color="font.display" + default="10.2s" + /> + <text + id="tnotifier_holdtime" + x="127" y="38" w="25" h="8" + font="player.pe.time.font" + align="left" + valign="top" + fontsize="8" + color="font.display" + default="10.2s" + /> + <text + id="tnotifier_fadeouttime" + x="127" y="63" w="25" h="8" + font="player.pe.time.font" + align="left" + valign="top" + fontsize="8" + color="font.display" + default="10.2s" + /> + + <Button + action="switchto;optionsgroup.notifications;subpage" action_target="skin.config.target" + x="152" y="55" + image="drawer.options.back" + downImage="drawer.options.back.down" + hoverImage="drawer.options.back.hover" + tooltip="back" + rectrgn="1" + /> + + <script id="notifications_fade_times.script" file="scripts/notifications_fade_times.maki" /> + +</groupdef> + + + +<groupdef id="optionsgroup.songticker"> + <layer + x="0" y="0" + image="drawer.options.songticker.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.songticker.text" + /> + <togglebutton + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF3};Disable Songticker scrolling" + x="11" y="13" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF3};Modern Songticker scrolling" + x="11" y="28" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{7061FDE0-0E12-11D8-BB41-0050DA442EF3};Classic Songticker scrolling" + x="11" y="43" + image="drawer.options.radio.w181.off" + hoverImage="drawer.options.radio.w181.hover" + downImage="drawer.options.radio.w181.down" + activeImage="drawer.options.radio.w181.on" + rectrgn="1" + /> + +</groupdef> + +<groupdef id="optionsgroup.misc"> + <layer + x="0" y="0" + image="drawer.options.misc.shadow" + /> + <layer + x="0" y="0" + image="drawer.options.misc.text" + /> + <togglebutton + cfgattrib="{26E26319-AECA-4433-B8F1-F4A5BF2A9ED5};Detach Vis Window" + x="10" y="11" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{26E26319-AECA-4433-B8F1-F4A5BF2A9ED5};Detach Video Window" + x="10" y="26" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> + <togglebutton + cfgattrib="{26E26319-AECA-4433-B8F1-F4A5BF2A9ED5};Enable Beat Visualization" + x="10" y="45" + image="drawer.options.checkbox.w181.off" + hoverImage="drawer.options.checkbox.w181.hover" + downImage="drawer.options.checkbox.w181.down" + activeImage="drawer.options.checkbox.w181.on" + rectrgn="1" + /> +</groupdef> + +<groupdef id="player.normal.drawer.colorthemes" name="Drawer ColorThemes Content" w="310" h="98"> + <layer + id="drawer.colorthemes.bg" + x="0" y="0" + image="drawer.colorthemes.bg" + /> + <layer + x="228" y="20" + image="drawer.colorthemes.txtoverlay.dark" + /> + + <layer + x="6" y="5" + ghost="1" + h="80" + w="204" + tile="1" + image="wasabi.list.background" + /> + + <layer + x="197" y="5" + image="wasabi.scrollbar.vertical.background.middle" + w="13" h="79" + /> + <layer + x="197" y="5" + image="wasabi.scrollbar.vertical.left" + /> + <layer + x="197" y="68" + image="wasabi.scrollbar.vertical.right" + /> + <layer + x="197" y="22" + image="wasabi.scrollbar.vertical.button" + /> + + + + <ColorThemes:List + id="colorthemes" + x="6" y="5" + w="204" h="80" + nohscroll="1" + nocolheader="1" + visible="0" + /> + + <Button + id="Switch" + action="colorthemes_switch" + action_target="colorthemes" + x="250" y="72" + image="drawer.button.settheme" + downImage="drawer.button.settheme.pressed" + hoverImage="drawer.button.settheme.hover" + tooltip="Switch to selected ColorTheme" + /> + + <Button + id="Switch" + action="colorthemes_previous" + action_target="colorthemes" + x="217" y="72" + image="drawer.button.theme.prev" + downImage="drawer.button.theme.prev.pressed" + hoverImage="drawer.button.theme.prev.hover" + tooltip="Previous ColorTheme" + /> + <Button + id="Switch" + action="colorthemes_next" + action_target="colorthemes" + x="229" y="72" + image="drawer.button.theme.next" + downImage="drawer.button.theme.next.pressed" + hoverImage="drawer.button.theme.next.hover" + tooltip="Next ColorTheme" + /> + +</groupdef> + + +<groupdef id="player.normal.drawer.content" name="Config Drawer Content" w="326" h="127"> + <group id="player.config.inner" x="0" y="0"/> + <group id="config.tabs" x="10" y="108" /> + <group id="player.normal.drawer.eq" x="3" y="15" visible="0"/> + <group id="player.normal.drawer.options" x="5" y="13" visible="0"/> + <group id="player.normal.drawer.colorthemes" x="8" y="14" visible="0"/> +</groupdef> + + +<groupdef id="player.normal.drawer" name="Config Drawer" relatw="1" w="0" h="129" background="wasabi.frame.basetexture"> + + <layer + id="drawer.window.left" + x="0" y="0" + image="drawer.main.left" + resize="left" + /> + <layer + id="drawer.window.center" + x="20" y="0" + w="-40" + relatw="1" + image="drawer.main.center" + /> + <layer + id="drawer.window.right" + x="-20" y="0" + relatx="1" + image="drawer.main.right" + resize="right" + /> + <layer + id="drawer.window.left.bottom.region" + x="0" y="0" + image="drawer.main.left.region" + resize="left" + sysregion="-1" + /> + <layer + id="drawer.window.right.bottom.region" + x="-20" y="0" + relatx="1" + image="drawer.main.right.region" + sysregion="-1" + /> + + <group id="player.normal.drawer.content" x="0" y="0"/> + + + <layer + id="drawer.button.close.bg" + x="-80" y="113" + relatx="1" + image="drawer.button.close.bg" + /> + + <button + id="drawer.button.close" + x="-72" y="118" + relatx="1" + image="drawer.button.close" + downImage="drawer.button.close.pressed" + hoverImage="drawer.button.close.hover" + tooltip="Close Configuration Drawer" + rectrgn="1" + /> + <button + id="drawer.button.open" + x="-72" y="118" + relatx="1" + image="drawer.button.open" + downImage="drawer.button.open.pressed" + hoverImage="drawer.button.open.hover" + tooltip="Open Configuration Drawer" + rectrgn="1" + /> + + <layer + id="drawer.resizer" + w="20" h="20" + x="-20" y="-20" + relatx="1" + relaty="1" + resize="right" + /> + +</groupdef> + +<groupdef id="player.normal.drawer.shadow" w="0" h="15" relatw="1"> + <layer + x="9" y="0" + relatw="1" + w="-94" + image="drawer.main.shadow.left" + /> + <layer + x="-85" y="0" + relatx="1" + image="drawer.main.shadow.right" + ghost="1" + /> +</groupdef> diff --git a/Src/resources/skins/Winamp Modern/xml/ml-normal.xml b/Src/resources/skins/Winamp Modern/xml/ml-normal.xml new file mode 100644 index 00000000..5c7d7eb6 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/ml-normal.xml @@ -0,0 +1,121 @@ + + + +<groupdef id="ml.frame.layout" relatw="1" relath="1" w="0" h="-35" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.ml.topleft" + resize="topleft" + /> + <layer + x="6" y="0" + w="-12" + relatw="1" + image="player.ml.topcenter" + resize="top" + /> + <layer + x="-6" y="0" + relatx="1" + image="player.ml.topright" + resize="topright" + /> + <layer + x="0" y="5" + relath="1" + h="-50" + image="player.ml.left" + resize="left" + /> + <layer + x="-6" y="5" + relatx="1" + relath="1" + h="-50" + image="player.ml.right" + resize="right" + /> + <layer + x="0" y="-52" + relaty="1" + image="player.ml.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-10" + w="-40" + relatw="1" + relaty="1" + image="player.ml.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-52" + relatx="1" + relaty="1" + image="player.ml.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> +</groupdef> + +<groupdef id="player.content.ml.dummy.group" name="MediaLibraryDummyGroup" relatw="1" relath="1" w="0" h="0"> + <component + x="6" + y="5" + w="-12" + relatw="1" + h="-50" + relath="1" + noshowcmdbar="1" + autoopen="1" + autoclose="0" + param="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}" + /> + <group id="ml.frame.layout" x="0" y="0"/> +</groupdef> + +<groupdef id="mledit.content.group" name="MediaLibraryContent"> + <group id="player.content.ml.dummy.group" x="0" y="17" sysregion="1"/> + <script id="mlmenu.script" file="scripts/mlmenu.maki" /> +</groupdef> + + +<layout id="normal" minimum_w="354" minimum_h="164" h="349" w="790"> + <Wasabi:MediaLibraryFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="mledit.content.group" + padtitleleft="10" + padtitleright="0" + shade="shade" + /> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + + <layer + x="0" y="0" w="0" h="3" + relatw="1" + resize="top" + /> + +</layout> + + + + + + + diff --git a/Src/resources/skins/Winamp Modern/xml/ml.xml b/Src/resources/skins/Winamp Modern/xml/ml.xml new file mode 100644 index 00000000..1b97c7b3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/ml.xml @@ -0,0 +1,3 @@ +<container id="MLibrary" name="Media Library" dynamic="1" component="guid:{6B0EDF80-C9A5-11D3-9F26-00C04F39FFC6}" default_x="0" default_y="164" default_visible="@HAVE_LIBRARY@"> + <include file="ml-normal.xml"/> +</container> diff --git a/Src/resources/skins/Winamp Modern/xml/notifier-elements.xml b/Src/resources/skins/Winamp Modern/xml/notifier-elements.xml new file mode 100644 index 00000000..d544cb5b --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/notifier-elements.xml @@ -0,0 +1,11 @@ +<elements> + <bitmap id="notifier.bg.left" file="notifier/notif-bg.png" x="0" y="0" w="13" h="80" gammagroup="Backgrounds"/> + <bitmap id="notifier.bg.center" file="notifier/notif-bg.png" x="13" y="0" w="133" h="80" gammagroup="Backgrounds"/> + <bitmap id="notifier.bg.right" file="notifier/notif-bg.png" x="146" y="0" w="13" h="80" gammagroup="Backgrounds"/> + <bitmap id="notifier.bg.left.da" file="notifier/notif-bg-alpha.png" x="0" y="0" w="13" h="80" gammagroup="Backgrounds"/> + <bitmap id="notifier.bg.center.da" file="notifier/notif-bg-alpha.png" x="13" y="0" w="133" h="80" gammagroup="Backgrounds"/> + <bitmap id="notifier.bg.right.da" file="notifier/notif-bg-alpha.png" x="146" y="0" w="13" h="80" gammagroup="Backgrounds"/> + <bitmap id="winamp.cover.shoutcast" file="notifier/sc_alb_art.jpg" x="0" y="0" h="111" w="111"/> + <color id="notifier.dark" value="white" gammagroup="Text"/> + <color id="notifier.bright" value="black" gammagroup="Text Inverse"/> +</elements>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/notifier-normal.xml b/Src/resources/skins/Winamp Modern/xml/notifier-normal.xml new file mode 100644 index 00000000..2a45e30d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/notifier-normal.xml @@ -0,0 +1,43 @@ +<groupdef id="notifier.albumart" sysregion="1" ghost="1" > + + <layer id="notifier.cover.bg" x="0" y="0" image="notifier.bg.cover" move="0"/> + <AlbumArt id="notifier.cover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" notfoundImage="winamp.cover.notfound.50" noAutoRefresh="1"/> + <layer id="notifier.webcover" x="18" y="15" h="50" w="50" move="0" rectrgn="1" visible="0"/> + +</groupdef> + +<groupdef id="notifier.text" sysregion = "1" ghost="1"> + + <!-- mp: I know this is an unusual way to get text shadow - but it creates a much better effect than the shadow params --> + <text id="plentry" x="0" y="12" default="2/15" w="100" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="nexttrack" x="-102" y="12" w="102" relatw="1" align="right" default="Next track" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="12" bold="1" ghost="1"/> + + <text id="title" x="0" y="27" w="0" relatw="1" default="Nothing" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="17" ghost="1" bold="1" translate="0"/> + + <text id="artist" x="0" y="41" w="0" h="18" relatw="1" default="Nithin Sawhney" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="13" ghost="1" translate="0"/> + + <text id="album" x="0" y="54" w="0" h="14" relatw="1" default="Prophesy" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="13" ghost="1" translate="0"/> + +</groupdef> + + +<layout id="normal" noparent="1" ontop="1" h="80" w="128" forcealpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left" middle="notifier.bg.center" right="notifier.bg.right" fitparent="1" sysregion="1" ghost="1" rectrgn="0" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback" x="16" y="32" w="-32" relatw="1" align="center" default="End of playback" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout> + +<layout id="desktopalpha" noparent="1" ontop="1" h="80" w="128" desktopalpha="1" noactivation="1" nodock="1" move="0"> + + <grid left="notifier.bg.left.da" middle="notifier.bg.center.da" right="notifier.bg.right.da" fitparent="1" ghost="1" move="0"/> + <group id="notifier.text" x="75" y="0" h="80" w="-95" relatw="1" move="0"/> + <group id="notifier.albumart" x="0" y="0" h="80" w="80" relatw="1" move="0" visible="0"/> + + <text id="endofplayback" x="16" y="32" w="-32" relatw="1" align="center" default="End of playback" color="notifier.dark" shadow="1" shadowcolor="notifier.bright" shadowx="1" shadowy="1" font="Arial" fontsize="20" visible="0" ghost="1"/> + +</layout>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/notifier.xml b/Src/resources/skins/Winamp Modern/xml/notifier.xml new file mode 100644 index 00000000..6eeae70f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/notifier.xml @@ -0,0 +1,9 @@ +<include file="notifier-elements.xml"/> +<container id="notifier" name="Notifier" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1"> + + <include file="notifier-normal.xml"/> + +</container> + +<!-- this script runs independently --> +<script file="scripts/notifier.maki"/>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/player-elements-shade.xml b/Src/resources/skins/Winamp Modern/xml/player-elements-shade.xml new file mode 100644 index 00000000..09a0f8c1 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-elements-shade.xml @@ -0,0 +1,186 @@ +<elements> + +<!-- Backgrounds/Overlays --> + <bitmap id="shade.bg.overlay" file="shade/bg_overlay.png" x="0" y="0" w="177" h="20" gammagroup="Backgrounds2"/> + + <bitmap id="shade.bg.left" file="shade/shade_bg.png" x="0" y="0" w="303" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.center" file="shade/shade_bg.png" x="305" y="0" w="5" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.right" file="shade/shade_bg.png" x="305" y="0" w="49" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.resize" file="shade/shade_bg.png" x="358" y="0" w="9" h="21" gammagroup="Backgrounds"/> + + <bitmap id="shade.regions.left" file="shade/corners.png" x="0" y="0" w="5" h="25"/> + <bitmap id="shade.regions.right" file="shade/corners.png" x="10" y="0" w="5" h="25"/> + + <bitmap id="shade.bg.X1" file="shade/buttons_bg.png" x="0" y="0" w="42" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.X2" file="shade/buttons_bg.png" x="42" y="0" w="23" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.X3" file="shade/buttons2.png" x="26" y="0" w="59" h="23" gammagroup="Backgrounds"/> + <bitmap id="shade.bg.X4" file="shade/buttons_bg.png" x="110" y="0" w="74" h="25" gammagroup="Backgrounds"/> + +<!-- Display --> + <bitmap id="shade.display.left" file="shade/pl_shade.png" x="23" y="34" w="10" h="14" gammagroup="Display"/> + <bitmap id="shade.display.center" file="shade/pl_shade.png" x="33" y="34" w="50" h="14" gammagroup="Display"/> + <bitmap id="shade.display.right" file="shade/pl_shade.png" x="214" y="34" w="6" h="14" gammagroup="Display"/> + + <bitmap id="shade.display.bg.left" file="shade/pl_shade.png" x="20" y="0" w="10" h="22" gammagroup="Backgrounds"/> + <bitmap id="shade.display.bg.center" file="shade/pl_shade.png" x="30" y="0" w="10" h="22" gammagroup="Backgrounds"/> + <bitmap id="shade.display.bg.right" file="shade/pl_shade.png" x="208" y="0" w="10" h="22" gammagroup="Backgrounds"/> + + <bitmap id="shade.display2.bg.right" file="shade/buttons2.png" x="5" y="0" w="21" h="23" gammagroup="Backgrounds"/> + + <bitmap id="shade.display.vis.bg" file="shade/display_overlay.png" x="0" y="20" w="60" h="13" gammagroup="Display"/> + <bitmap id="shade.display.vis.overlay" file="shade/display_overlay.png" x="0" y="0" w="60" h="13" gammagroup="Display"/> + <bitmap id="shade.display.ticker.overlay" file="shade/display_overlay.png" x="0" y="40" w="5" h="13" gammagroup="Display"/> + + + +<!-- Playback buttons --> + <bitmap id="shade.button.previous" file="shade/buttons.png" x="212" y="3" h="13" w="14" gammagroup="Buttons"/> + <bitmap id="shade.button.previous.pressed" file="shade/buttons.png" x="212" y="23" h="13" w="14" gammagroup="Buttons"/> + <bitmap id="shade.button.previous.hover" file="shade/buttons.png" x="212" y="3" h="13" w="14" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.play" file="shade/buttons.png" x="232" y="1" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.play.pressed" file="shade/buttons.png" x="232" y="21" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.play.hover" file="shade/buttons.png" x="232" y="1" h="17" w="17" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.pause" file="shade/buttons.png" x="254" y="1" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.pause.pressed" file="shade/buttons.png" x="254" y="21" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.pause.hover" file="shade/buttons.png" x="254" y="1" h="17" w="17" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.stop" file="shade/buttons.png" x="276" y="1" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.stop.pressed" file="shade/buttons.png" x="276" y="21" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.stop.hover" file="shade/buttons.png" x="276" y="1" h="17" w="17" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.next" file="shade/buttons.png" x="299" y="3" h="13" w="14" gammagroup="Buttons"/> + <bitmap id="shade.button.next.pressed" file="shade/buttons.png" x="299" y="23" h="13" w="14" gammagroup="Buttons"/> + <bitmap id="shade.button.next.hover" file="shade/buttons.png" x="299" y="3" h="13" w="14" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.status.play" file="shade/playbackstatus.png" x="0" y="0" h="9" w="51" gammagroup="ButtonStatus"/> + <bitmap id="shade.button.status.pause" file="shade/playbackstatus.png" x="0" y="20" h="9" w="51" gammagroup="ButtonStatus"/> + <bitmap id="shade.button.status.stop" file="shade/playbackstatus.png" x="0" y="40" h="9" w="51" gammagroup="ButtonStatus"/> + +<!-- Volume --> + <bitmap id="shade.button.volume" file="shade/volume.png" x="0" y="0" h="11" w="16" gammagroup="Buttons2"/> + <bitmap id="shade.button.volume.hover" file="shade/volume.png" x="0" y="0" h="11" w="16" gammagroup="ButtonsHover2"/> + <bitmap id="shade.button.volume.pressed" file="shade/volume.png" x="20" y="0" h="11" w="16" gammagroup="Buttons2"/> + +<!-- Seek --> + <bitmap id="shade.button.seek" file="shade/seek.png" x="0" y="0" h="10" w="24" gammagroup="Buttons"/> + <bitmap id="shade.button.seek.pressed" file="shade/seek.png" x="30" y="0" h="10" w="24" gammagroup="Buttons"/> + <bitmap id="shade.button.seek.hover" file="shade/seek.png" x="0" y="0" h="10" w="24" gammagroup="ButtonsHover"/> + +<!-- EJECT/PL/ML --> + <bitmap id="shade.button.eject" file="shade/buttons.png" x="349" y="7" h="9" w="14" gammagroup="Buttons2"/> + <bitmap id="shade.button.eject.pressed" file="shade/buttons.png" x="349" y="27" h="9" w="14" gammagroup="Buttons2"/> + <bitmap id="shade.button.eject.hover" file="shade/buttons.png" x="349" y="7" h="9" w="14" gammagroup="ButtonsHover2"/> + + <bitmap id="shade.button.pl" file="shade/buttons.png" x="369" y="7" h="9" w="14" gammagroup="Buttons2"/> + <bitmap id="shade.button.pl.pressed" file="shade/buttons.png" x="369" y="27" h="9" w="14" gammagroup="Buttons2"/> + <bitmap id="shade.button.pl.hover" file="shade/buttons.png" x="369" y="7" h="9" w="14" gammagroup="ButtonsHover2"/> + <bitmap id="shade.button.pl.active" file="shade/buttons.png" x="369" y="47" h="9" w="14" gammagroup="ButtonsActive"/> + + <bitmap id="shade.button.ml" file="shade/buttons.png" x="387" y="7" h="9" w="15" gammagroup="Buttons2"/> + <bitmap id="shade.button.ml.pressed" file="shade/buttons.png" x="387" y="27" h="9" w="15" gammagroup="Buttons2"/> + <bitmap id="shade.button.ml.hover" file="shade/buttons.png" x="387" y="7" h="9" w="15" gammagroup="ButtonsHover2"/> + <bitmap id="shade.button.ml.active" file="shade/buttons.png" x="387" y="47" h="9" w="15" gammagroup="ButtonsActive"/> + +<!-- MUTE --> + <bitmap id="shade.button.mute.off" file="shade/buttons.png" x="328" y="5" h="13" w="13" gammagroup="Buttons2"/> + <bitmap id="shade.button.mute.on" file="shade/buttons.png" x="328" y="45" h="13" w="13" gammagroup="Buttons2"/> + <bitmap id="shade.button.mute.on.hover" file="shade/buttons.png" x="328" y="45" h="13" w="13" gammagroup="ButtonsHover2"/> + <bitmap id="shade.button.mute.on.pressed" file="shade/buttons.png" x="328" y="25" h="13" w="13" gammagroup="Buttons2"/> + +<!-- SHUFFLE/REPEAT --> + <bitmap id="shade.button.repeat0" file="shade/buttons.png" x="0" y="5" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.pressed0" file="shade/buttons.png" x="0" y="25" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.hover0" file="shade/buttons.png" x="0" y="5" h="15" w="15" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.repeat1" file="shade/buttons.png" x="0" y="5" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.pressed1" file="shade/buttons.png" x="0" y="45" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.hover1" file="shade/buttons.png" x="0" y="5" h="15" w="15" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.repeat2" file="shade/buttons.png" x="19" y="45" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.pressed2" file="shade/buttons.png" x="0" y="25" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.repeat.hover2" file="shade/buttons.png" x="19" y="45" h="15" w="15" gammagroup="ButtonsHover"/> + + <bitmap id="shade.button.shuffle" file="shade/buttons.png" x="19" y="5" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.shuffle.pressed" file="shade/buttons.png" x="19" y="25" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.button.shuffle.hover" file="shade/buttons.png" x="19" y="5" h="15" w="15" gammagroup="ButtonsHover"/> + + <bitmap id="shade.led.on" file="shade/led.png" x="0" y="0" h="9" w="9" gammagroup="Led"/> + <bitmap id="shade.led.off" file="shade/led.png" x="20" y="0" h="9" w="9" gammagroup="Led"/> + +<!-- EQ --> + <bitmap id="shade.button.eq" file="shade/buttons.png" x="109" y="1" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.eq.pressed" file="shade/buttons.png" x="109" y="21" h="17" w="17" gammagroup="Buttons"/> + <bitmap id="shade.button.eq.hover" file="shade/buttons.png" x="109" y="1" h="17" w="17" gammagroup="ButtonsHover"/> + +<!-- ColorThemes --> + <bitmap id="shade.button.ct" file="shade/buttons2.png" x="41" y="43" h="7" w="29" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.pressed" file="shade/buttons2.png" x="41" y="73" h="7" w="29" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.hover" file="shade/buttons2.png" x="41" y="43" h="7" w="29" gammagroup="ButtonsHover"/> + <bitmap id="shade.button.ct.prev" file="shade/buttons2.png" x="32" y="43" h="7" w="8" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.prev.pressed" file="shade/buttons2.png" x="32" y="73" h="7" w="8" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.prev.hover" file="shade/buttons2.png" x="32" y="43" h="7" w="8" gammagroup="ButtonsHover"/> + <bitmap id="shade.button.ct.next" file="shade/buttons2.png" x="71" y="43" h="7" w="8" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.next.pressed" file="shade/buttons2.png" x="71" y="73" h="7" w="8" gammagroup="Buttons"/> + <bitmap id="shade.button.ct.next.hover" file="shade/buttons2.png" x="71" y="43" h="7" w="8" gammagroup="ButtonsHover"/> + +<!-- Always on top --> + <bitmap id="shade.button.aot" file="shade/buttons2.png" x="33" y="32" h="7" w="34" gammagroup="Buttons"/> + <bitmap id="shade.button.aot.pressed" file="shade/buttons2.png" x="33" y="62" h="7" w="34" gammagroup="Buttons"/> + <bitmap id="shade.button.aot.hover" file="shade/buttons2.png" x="33" y="32" h="7" w="34" gammagroup="ButtonsHover"/> + +<!-- Expand/Reduce --> + <bitmap id="shade.button.expand" file="shade/buttons2.png" x="16" y="37" h="7" w="7" gammagroup="Buttons"/> + <bitmap id="shade.button.expand.pressed" file="shade/buttons2.png" x="16" y="67" h="7" w="7" gammagroup="Buttons"/> + <bitmap id="shade.button.expand.hover" file="shade/buttons2.png" x="16" y="37" h="7" w="7" gammagroup="ButtonsHover"/> + <bitmap id="shade.button.reduce" file="shade/buttons2.png" x="96" y="37" h="7" w="7" gammagroup="Buttons"/> + <bitmap id="shade.button.reduce.pressed" file="shade/buttons2.png" x="96" y="67" h="7" w="7" gammagroup="Buttons"/> + <bitmap id="shade.button.reduce.hover" file="shade/buttons2.png" x="96" y="37" h="7" w="7" gammagroup="ButtonsHover"/> + +<!-- SONGTICKERFONT --> + <bitmap id="bitmapfont.shade.songticker" file="shade/songtickerfont.png" x="0" y="0" h="40" w="300" gammagroup="DisplaySongtickerShade"/> + <bitmapfont id="shade.songticker.font" file="bitmapfont.shade.songticker" charwidth="7" charheight="12" hspacing="-1" vspacing="0"/> + +<!-- CLOSE/MINIMIZE... --> + <bitmap id="shade.button.winshade" file="window/titlebar.png" x="0" y="140" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.winshade.pressed" file="window/titlebar.png" x="40" y="140" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.winshade.hover" file="window/titlebar.png" x="0" y="140" h="10" w="11" gammagroup="TitlebarHover"/> + + <bitmap id="shade.button.minimize" file="window/titlebar.png" x="0" y="40" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.minimize.pressed" file="window/titlebar.png" x="40" y="40" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.minimize.hover" file="window/titlebar.png" x="0" y="40" h="10" w="11" gammagroup="TitlebarHover"/> + + <bitmap id="shade.button.close" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.close.pressed" file="window/titlebar.png" x="40" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.close.hover" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarHover"/> + + <bitmap id="shade.button.sysmenu" file="window/titlebar.png" x="0" y="20" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.sysmenu.pressed" file="window/titlebar.png" x="40" y="20" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="shade.button.sysmenu.hover" file="window/titlebar.png" x="0" y="20" h="10" w="11" gammagroup="TitlebarHover"/> + +<!-- PLAYLIST SHADE --> + <bitmap id="shade.pl.bg.left" file="shade/pl_shade.png" x="0" y="0" w="30" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.pl.bg.center" file="shade/pl_shade.png" x="36" y="0" w="10" h="25" gammagroup="Backgrounds"/> + <bitmap id="shade.pl.bg.right" file="shade/pl_shade.png" x="208" y="0" w="74" h="25" gammagroup="Backgrounds"/> + + <bitmap id="shade.pl.display.left" file="shade/pl_shade.png" x="23" y="34" w="10" h="14" gammagroup="Display"/> + <bitmap id="shade.pl.display.center" file="shade/pl_shade.png" x="33" y="34" w="50" h="14" gammagroup="Display"/> + <bitmap id="shade.pl.display.right" file="shade/pl_shade.png" x="214" y="34" w="6" h="14" gammagroup="Display"/> + + <bitmap id="shade.pl.seek" file="shade/pl_shade.png" x="29" y="65" h="9" w="24" gammagroup="Buttons"/> + <bitmap id="shade.pl.seek.pressed" file="shade/pl_shade.png" x="59" y="65" h="9" w="24" gammagroup="Buttons"/> + <bitmap id="shade.pl.seek.hover" file="shade/pl_shade.png" x="29" y="65" h="9" w="24" gammagroup="ButtonsHover"/> + + <bitmap id="shade.pl.button.list" file="shade/pl_shade.png" x="228" y="35" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.pl.button.list.pressed" file="shade/pl_shade.png" x="228" y="65" h="15" w="15" gammagroup="Buttons"/> + <bitmap id="shade.pl.button.list.hover" file="shade/pl_shade.png" x="228" y="35" h="15" w="15" gammagroup="ButtonsHover"/> + + <bitmap id="shade.pl.resize" file="shade/pl_shade.png" x="137" y="57" h="23" w="9" gammagroup="Buttons"/> + + <bitmap id="shade.button.nowplaying.normal" file="shade/nowplaying.png" x="0" y="0" h="10" w="10" gammagroup="DisplayVis"/> + <bitmap id="shade.button.nowplaying.hover" file="shade/nowplaying.png" x="10" y="0" h="10" w="10" gammagroup="DisplayVis"/> + <bitmap id="shade.button.nowplaying.down" file="shade/nowplaying.png" x="20" y="0" h="10" w="10" gammagroup="DisplayVis"/> + +</elements> + diff --git a/Src/resources/skins/Winamp Modern/xml/player-elements.xml b/Src/resources/skins/Winamp Modern/xml/player-elements.xml new file mode 100644 index 00000000..95234b88 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-elements.xml @@ -0,0 +1,723 @@ +<elements> + + + <!-- SUI Playlist Search --> + <bitmap id="sui.pl.search.box.1" file="window/sui.png" x="180" y="39" w="6" h="1" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.2" file="window/sui.png" x="187" y="39" w="6" h="1" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.3" file="window/sui.png" x="194" y="39" w="6" h="1" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.4" file="window/sui.png" x="180" y="41" w="6" h="6" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.5" file="window/sui.png" x="187" y="41" w="6" h="6" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.6" file="window/sui.png" x="194" y="41" w="6" h="6" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.7" file="window/sui.png" x="180" y="48" w="6" h="24" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.8" file="window/sui.png" x="187" y="48" w="6" h="24" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.box.9" file="window/sui.png" x="194" y="48" w="6" h="24" gammagroup="Backgrounds"/> + + <bitmap id="sui.pl.search.bg.1" file="window/sui.png" x="81" y="31" w="18" h="30" gammagroup="ListBackground"/> + <bitmap id="sui.pl.search.bg.2" file="window/sui.png" x="100" y="31" w="20" h="30" gammagroup="ListBackground"/> + <bitmap id="sui.pl.search.bg.3" file="window/sui.png" x="121" y="31" w="18" h="30" gammagroup="ListBackground"/> + + <bitmap id="sui.pl.search.bgv.1" file="window/sui.png" x="0" y="31" w="30" h="30" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.bgv.2" file="window/sui.png" x="31" y="31" w="20" h="30" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.bgv.3" file="window/sui.png" x="50" y="31" w="30" h="30" gammagroup="Backgrounds"/> + + <bitmap id="sui.pl.search.go.bgv" file="window/sui.png" x="225" y="0" w="20" h="19" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.go.1" file="window/sui.png" x="225" y="20" w="20" h="19" gammagroup="Buttons"/> + <bitmap id="sui.pl.search.go.2" file="window/sui.png" x="225" y="40" w="20" h="19" gammagroup="Buttons"/> + <bitmap id="sui.pl.search.go.3" file="window/sui.png" x="225" y="60" w="20" h="19" gammagroup="Buttons"/> + + <bitmap id="sui.pl.search.stop.bgv" file="window/sui.png" x="201" y="0" w="20" h="19" gammagroup="Backgrounds"/> + <bitmap id="sui.pl.search.stop.1" file="window/sui.png" x="201" y="20" w="20" h="19" gammagroup="Buttons"/> + <bitmap id="sui.pl.search.stop.2" file="window/sui.png" x="201" y="40" w="20" h="19" gammagroup="Buttons"/> + <bitmap id="sui.pl.search.stop.3" file="window/sui.png" x="201" y="60" w="20" h="19" gammagroup="Buttons"/> + + +<!-- Player Backgrounds/Overlays --> + <bitmap id="player.main.left" file="window/main.png" x="0" y="0" h="126" w="180" gammagroup="Backgrounds"/> + <bitmap id="player.main.center" file="window/main.png" x="200" y="0" h="126" w="20" gammagroup="Backgrounds"/> + <bitmap id="player.main.right" file="window/main.png" x="264" y="0" h="126" w="90" gammagroup="Backgrounds"/> + <bitmap id="player.main.bg2.left" file="window/main2.png" x="0" y="0" h="31" w="60" gammagroup="Backgrounds2"/> + <bitmap id="player.main.bg2.center" file="window/main2.png" x="60" y="0" h="31" w="20" gammagroup="Backgrounds2"/> + <bitmap id="player.main.bg2.right" file="window/main2.png" x="126" y="0" h="31" w="90" gammagroup="Backgrounds2"/> + <bitmap id="player.main.left.region" file="player/mainregions.png" x="0" y="0" h="6" w="6"/> + <bitmap id="player.main.right.region" file="player/mainregions.png" x="10" y="0" h="6" w="6"/> + <bitmap id="player.main.bg" file="player/main_bg.png" x="0" y="0" h="126" w="354"/> + <bitmap id="player.openclose.overlay" file="player/openclose_overlay.png" x="0" y="0" h="17" w="40" gammagroup="Backgrounds"/> + <bitmap id="player.main.bg2.textoverlay" file="player/txt_config.png" x="0" y="0" h="5" w="25" gammagroup="BG2Textoverlay"/> + +<!-- Media Library Window --> + <bitmap id="player.ml.topleft" file="window/mlwindow.png" x="0" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.ml.topright" file="window/mlwindow.png" x="58" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.ml.topcenter" file="window/mlwindow.png" x="20" y="0" h="5" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.ml.left" file="window/mlwindow.png" x="0" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.ml.right" file="window/mlwindow.png" x="58" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.ml.bottomleft" file="window/mlwindow.png" x="0" y="16" h="52" w="20" gammagroup="Backgrounds"/> + <bitmap id="player.ml.bottomright" file="window/mlwindow.png" x="44" y="16" h="52" w="20" gammagroup="Backgrounds"/> + <bitmap id="player.ml.bottomcenter" file="window/mlwindow.png" x="30" y="58" h="10" w="10" gammagroup="Backgrounds"/> + +<!-- Playlist Window --> + <bitmap id="player.pl.topleft" file="window/plwindow.png" x="0" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.pl.topright" file="window/plwindow.png" x="58" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.pl.topcenter" file="window/plwindow.png" x="20" y="0" h="5" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.pl.left" file="window/plwindow.png" x="0" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.pl.right" file="window/plwindow.png" x="58" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="player.pl.bottomleft" file="window/plwindow.png" x="0" y="16" h="67" w="20" gammagroup="Backgrounds"/> + <bitmap id="player.pl.bottomright" file="window/plwindow.png" x="44" y="16" h="67" w="20" gammagroup="Backgrounds"/> + <bitmap id="player.pl.bottomcenter" file="window/plwindow.png" x="30" y="58" h="25" w="10" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.button.add" file="player/buttons_pl.png" x="4" y="0" h="13" w="37" gammagroup="Buttons"/> + <bitmap id="player.pl.button.add.pressed" file="player/buttons_pl.png" x="4" y="20" h="13" w="37" gammagroup="Buttons"/> + <bitmap id="player.pl.button.add.hover" file="player/buttons_pl.png" x="4" y="0" h="13" w="37" gammagroup="ButtonsHover"/> + <bitmap id="player.pl.button.add.bg" file="player/buttons_pl.png" x="1" y="36" h="21" w="44" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.button.rem" file="player/buttons_pl.png" x="49" y="0" h="13" w="38" gammagroup="Buttons"/> + <bitmap id="player.pl.button.rem.pressed" file="player/buttons_pl.png" x="49" y="20" h="13" w="38" gammagroup="Buttons"/> + <bitmap id="player.pl.button.rem.hover" file="player/buttons_pl.png" x="49" y="0" h="13" w="38" gammagroup="ButtonsHover"/> + <bitmap id="player.pl.button.rem.bg" file="player/buttons_pl.png" x="45" y="36" h="21" w="46" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.button.sel" file="player/buttons_pl.png" x="95" y="0" h="13" w="31" gammagroup="Buttons"/> + <bitmap id="player.pl.button.sel.pressed" file="player/buttons_pl.png" x="95" y="20" h="13" w="31" gammagroup="Buttons"/> + <bitmap id="player.pl.button.sel.hover" file="player/buttons_pl.png" x="95" y="0" h="13" w="31" gammagroup="ButtonsHover"/> + <bitmap id="player.pl.button.sel.bg" file="player/buttons_pl.png" x="91" y="36" h="21" w="39" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.button.misc" file="player/buttons_pl.png" x="134" y="0" h="13" w="38" gammagroup="Buttons"/> + <bitmap id="player.pl.button.misc.pressed" file="player/buttons_pl.png" x="134" y="20" h="13" w="38" gammagroup="Buttons"/> + <bitmap id="player.pl.button.misc.hover" file="player/buttons_pl.png" x="134" y="0" h="13" w="38" gammagroup="ButtonsHover"/> + <bitmap id="player.pl.button.misc.bg" file="player/buttons_pl.png" x="130" y="36" h="21" w="46" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.button.list" file="player/buttons_pl.png" x="220" y="0" h="13" w="91" gammagroup="Buttons"/> + <bitmap id="player.pl.button.list.pressed" file="player/buttons_pl.png" x="220" y="20" h="13" w="91" gammagroup="Buttons"/> + <bitmap id="player.pl.button.list.hover" file="player/buttons_pl.png" x="220" y="0" h="13" w="91" gammagroup="ButtonsHover"/> + <bitmap id="player.pl.button.list.bg" file="player/buttons_pl.png" x="216" y="36" h="21" w="99" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.resizer" file="player/resize_pl.png" x="0" y="0" h="15" w="15" gammagroup="Backgrounds"/> + + <bitmap id="player.pl.time" file="player/pe_time.png" x="0" y="0" h="20" w="70" gammagroup="Backgrounds"/> + <bitmap id="player.pl.time.display" file="player/pe_time.png" x="5" y="34" h="11" w="60" gammagroup="Display"/> + <bitmap id="player.pl.time.left" file="player/pe_time.png" x="0" y="0" h="20" w="55" gammagroup="Backgrounds"/> + <bitmap id="player.pl.time.display.left" file="player/pe_time.png" x="5" y="34" h="11" w="50" gammagroup="Display"/> + +<!-- PE Time --> + <bitmap id="bitmapfont.pe.font" file="player/pe_time_font.png" x="0" y="0" h="23" w="124" gammagroup="DisplayElements"/> + <bitmapfont id="player.pe.time.font" file="bitmapfont.pe.font" charwidth="4" charheight="8" hspacing="0" vspacing="0"/> + +<!-- Drawer Background --> + <bitmap id="drawer.main.left" file="player/drawer_bg.png" x="0" y="4" h="133" w="20" gammagroup="Backgrounds"/> + <bitmap id="drawer.main.center" file="player/drawer_bg.png" x="20" y="4" h="133" w="20" gammagroup="Backgrounds"/> + <bitmap id="drawer.main.right" file="player/drawer_bg.png" x="50" y="4" h="133" w="90" gammagroup="Backgrounds"/> + <bitmap id="drawer.main.left.region" file="player/drawer_bg_regions.png" x="0" y="4" h="133" w="20" gammagroup="Backgrounds"/> + <bitmap id="drawer.main.right.region" file="player/drawer_bg_regions.png" x="50" y="4" h="133" w="20" gammagroup="Backgrounds"/> + <bitmap id="drawer.colorthemes.bg" file="player/ct_background.png" x="0" y="0" h="90" w="306" gammagroup="Backgrounds"/> + <bitmap id="drawer.colorthemes.txtoverlay.dark" file="player/ct_background.png" x="318" y="20" h="21" w="72" gammagroup="BGOverlayDark"/> + + <bitmap id="wasabi.list.background" file="player/ct_bg.png" x="0" y="0" h="36" w="36" gammagroup="ListBackground"/> + + <bitmap id="drawer.main.shadow.left" file="player/drawer_shadow.png" x="0" y="0" h="15" w="10"/> + <bitmap id="drawer.main.shadow.right" file="player/drawer_shadow.png" x="260" y="0" h="15" w="76"/> + + <bitmap id="drawer.button.settheme" file="player/button_ct_switch.png" x="43" y="0" h="13" w="48" gammagroup="Buttons"/> + <bitmap id="drawer.button.settheme.hover" file="player/button_ct_switch.png" x="43" y="0" h="13" w="48" gammagroup="ButtonsHover"/> + <bitmap id="drawer.button.settheme.pressed" file="player/button_ct_switch.png" x="43" y="20" h="13" w="48" gammagroup="Buttons"/> + + <bitmap id="drawer.button.theme.prev" file="player/button_ct_switch.png" x="0" y="0" h="13" w="12" gammagroup="Buttons"/> + <bitmap id="drawer.button.theme.prev.hover" file="player/button_ct_switch.png" x="0" y="0" h="13" w="12" gammagroup="ButtonsHover"/> + <bitmap id="drawer.button.theme.prev.pressed" file="player/button_ct_switch.png" x="0" y="20" h="13" w="12" gammagroup="Buttons"/> + + <bitmap id="drawer.button.theme.next" file="player/button_ct_switch.png" x="22" y="0" h="13" w="11" gammagroup="Buttons"/> + <bitmap id="drawer.button.theme.next.hover" file="player/button_ct_switch.png" x="22" y="0" h="13" w="11" gammagroup="ButtonsHover"/> + <bitmap id="drawer.button.theme.next.pressed" file="player/button_ct_switch.png" x="22" y="20" h="13" w="11" gammagroup="Buttons"/> + +<!-- Drawer InnerBackground --> + <bitmap id="drawer.inner.left" file="player/config_tabs.png" x="0" y="4" h="119" w="10" gammagroup="Backgrounds"/> + <bitmap id="drawer.inner.center" file="player/config_tabs.png" x="68" y="4" h="119" w="10" gammagroup="Backgrounds"/> + <bitmap id="drawer.inner.right" file="player/config_tabs.png" x="186" y="4" h="119" w="20" gammagroup="Backgrounds"/> + +<!-- Drawer Elements --> + <bitmap id="drawer.tab.off.left" file="player/config_tabs.png" x="19" y="112" h="19" w="15" gammagroup="Backgrounds"/> + <bitmap id="drawer.tab.off.center" file="player/config_tabs.png" x="34" y="112" h="19" w="10" gammagroup="Backgrounds"/> + <bitmap id="drawer.tab.off.right" file="player/config_tabs.png" x="52" y="112" h="19" w="15" gammagroup="Backgrounds"/> + <bitmap id="drawer.tab.on.left" file="player/config_tabs.png" x="79" y="112" h="19" w="15" gammagroup="Backgrounds"/> + <bitmap id="drawer.tab.on.center" file="player/config_tabs.png" x="94" y="112" h="19" w="10" gammagroup="Backgrounds"/> + <bitmap id="drawer.tab.on.right" file="player/config_tabs.png" x="112" y="112" h="19" w="15" gammagroup="Backgrounds"/> + <bitmap id="drawer.button.close.bg" file="player/config_tabs.png" x="139" y="117" h="15" w="41" gammagroup="Backgrounds"/> + <bitmap id="drawer.button.close" file="player/button_config_drawer.png" x="0" y="20" h="7" w="25" gammagroup="Buttons"/> + <bitmap id="drawer.button.close.hover" file="player/button_config_drawer.png" x="0" y="20" h="7" w="25" gammagroup="ButtonsHover"/> + <bitmap id="drawer.button.close.pressed" file="player/button_config_drawer.png" x="50" y="20" h="7" w="25" gammagroup="Buttons"/> + <bitmap id="drawer.button.open" file="player/button_config_drawer.png" x="0" y="0" h="7" w="25" gammagroup="Buttons"/> + <bitmap id="drawer.button.open.hover" file="player/button_config_drawer.png" x="0" y="0" h="7" w="25" gammagroup="ButtonsHover"/> + <bitmap id="drawer.button.open.pressed" file="player/button_config_drawer.png" x="50" y="0" h="7" w="25" gammagroup="Buttons"/> + +<!-- Drawer Content Options --> + <bitmap id="drawer.options.bg" file="player/options_bg.png" x="0" y="0" h="93" w="314" gammagroup="Backgrounds"/> + <bitmap id="drawer.options.bg.display" file="player/options_bg.png" x="0" y="100" h="93" w="314" gammagroup="Display"/> + + <bitmap id="drawer.options.bg2" file="player/options_elements.png" x="21" y="6" h="85" w="291" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.bg2.shadow" file="player/options_elements.png" x="571" y="6" h="85" w="291" gammagroup="Display"/> + + <bitmap id="drawer.options.button.scroll.up" file="player/options_scrollbuttons.png" x="160" y="0" h="9" w="69" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.scroll.up.hover" file="player/options_scrollbuttons.png" x="80" y="0" h="9" w="69" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.scroll.up.pressed" file="player/options_scrollbuttons.png" x="0" y="0" h="9" w="69" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.scroll.down" file="player/options_scrollbuttons.png" x="160" y="66" h="9" w="69" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.scroll.down.hover" file="player/options_scrollbuttons.png" x="80" y="66" h="9" w="69" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.scroll.down.pressed" file="player/options_scrollbuttons.png" x="0" y="66" h="9" w="69" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.drawers" file="player/options_buttons.png" x="180" y="0" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.drawers.hover" file="player/options_buttons.png" x="90" y="0" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.drawers.pressed" file="player/options_buttons.png" x="0" y="0" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.menus" file="player/options_buttons.png" x="180" y="14" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.menus.hover" file="player/options_buttons.png" x="90" y="14" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.menus.pressed" file="player/options_buttons.png" x="0" y="14" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.winshade" file="player/options_buttons.png" x="180" y="28" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.winshade.hover" file="player/options_buttons.png" x="90" y="28" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.winshade.pressed" file="player/options_buttons.png" x="0" y="28" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.visbutton" file="player/options_buttons.png" x="180" y="42" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.visbutton.hover" file="player/options_buttons.png" x="90" y="42" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.visbutton.pressed" file="player/options_buttons.png" x="0" y="42" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.notifications" file="player/options_buttons.png" x="180" y="56" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.notifications.hover" file="player/options_buttons.png" x="90" y="56" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.notifications.pressed" file="player/options_buttons.png" x="0" y="56" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.songticker" file="player/options_buttons.png" x="180" y="70" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.songticker.hover" file="player/options_buttons.png" x="90" y="70" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.songticker.pressed" file="player/options_buttons.png" x="0" y="70" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.misc" file="player/options_buttons.png" x="180" y="84" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.misc.hover" file="player/options_buttons.png" x="90" y="84" h="14" w="77" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.button.misc.pressed" file="player/options_buttons.png" x="0" y="84" h="14" w="77" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.button.drawers.shadow" file="player/options_buttons.png" x="290" y="0" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.menus.shadow" file="player/options_buttons.png" x="290" y="14" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.winshade.shadow" file="player/options_buttons.png" x="290" y="28" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.visbutton.shadow" file="player/options_buttons.png" x="290" y="42" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.notifications.shadow" file="player/options_buttons.png" x="290" y="56" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.songticker.shadow" file="player/options_buttons.png" x="290" y="70" h="14" w="77" gammagroup="Display"/> + <bitmap id="drawer.options.button.misc.shadow" file="player/options_buttons.png" x="290" y="84" h="14" w="77" gammagroup="Display"/> + + <bitmap id="drawer.options.drawers.shadow" file="player/options_elements.png" x="577" y="112" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.drawers.text" file="player/options_elements.png" x="27" y="112" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.menus.shadow" file="player/options_elements.png" x="577" y="202" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.menus.text" file="player/options_elements.png" x="27" y="202" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.winshade.shadow" file="player/options_elements.png" x="577" y="292" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.winshade.text" file="player/options_elements.png" x="27" y="292" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.misc.shadow" file="player/options_elements.png" x="797" y="112" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.misc.text" file="player/options_elements.png" x="247" y="112" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.notifications.shadow" file="player/options_elements.png" x="797" y="292" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.notifications.text" file="player/options_elements.png" x="247" y="292" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.notifications2.fadein.shadow" file="player/options_elements.png" x="797" y="382" h="25" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.notifications2.fadein.text" file="player/options_elements.png" x="247" y="382" h="25" w="198" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.notifications2.hold.shadow" file="player/options_elements.png" x="797" y="408" h="25" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.notifications2.hold.text" file="player/options_elements.png" x="247" y="408" h="25" w="198" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.notifications2.fadeout.shadow" file="player/options_elements.png" x="797" y="432" h="24" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.notifications2.fadeout.text" file="player/options_elements.png" x="247" y="432" h="24" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.songticker.shadow" file="player/options_elements.png" x="577" y="382" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.songticker.text" file="player/options_elements.png" x="27" y="382" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.visbutton.shadow" file="player/options_elements.png" x="797" y="202" h="72" w="198" gammagroup="Display"/> + <bitmap id="drawer.options.visbutton.text" file="player/options_elements.png" x="247" y="202" h="72" w="198" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.checkbox.w181.off" file="player/options_buttons2.png" x="0" y="80" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w181.on" file="player/options_buttons2.png" x="0" y="100" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w181.hover" file="player/options_buttons2.png" x="0" y="0" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w181.down" file="player/options_buttons2.png" x="0" y="20" h="13" w="181" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.checkbox.w131.off" file="player/options_buttons2.png" x="0" y="80" h="13" w="131" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w131.on" file="player/options_buttons2.png" x="0" y="100" h="13" w="131" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w131.hover" file="player/options_buttons2.png" x="0" y="0" h="13" w="131" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.checkbox.w131.down" file="player/options_buttons2.png" x="0" y="20" h="13" w="131" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.radio.w181.off" file="player/options_buttons2.png" x="0" y="120" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w181.on" file="player/options_buttons2.png" x="0" y="140" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w181.hover" file="player/options_buttons2.png" x="0" y="40" h="13" w="181" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w181.down" file="player/options_buttons2.png" x="0" y="60" h="13" w="181" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.radio.w140.off" file="player/options_buttons2.png" x="0" y="120" h="13" w="140" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w140.on" file="player/options_buttons2.png" x="0" y="140" h="13" w="140" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w140.hover" file="player/options_buttons2.png" x="0" y="40" h="13" w="140" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.radio.w140.down" file="player/options_buttons2.png" x="0" y="60" h="13" w="140" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.more" file="player/options_more.png" x="0" y="30" h="19" w="49" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.more.hover" file="player/options_more.png" x="60" y="30" h="19" w="49" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.more.down" file="player/options_more.png" x="120" y="30" h="19" w="49" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.back" file="player/options_more.png" x="0" y="0" h="19" w="49" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.back.hover" file="player/options_more.png" x="60" y="0" h="19" w="49" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.back.down" file="player/options_more.png" x="120" y="0" h="19" w="49" gammagroup="DisplayElements"/> + + <bitmap id="drawer.options.slider" file="player/options_slider.png" x="0" y="0" h="10" w="14" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.slider.hover" file="player/options_slider.png" x="0" y="10" h="10" w="14" gammagroup="DisplayElements"/> + <bitmap id="drawer.options.slider.down" file="player/options_slider.png" x="0" y="0" h="10" w="14" gammagroup="DisplayElements"/> + +<!-- Drawer Content EQ --> + <bitmap id="drawer.eq.bg" file="player/eq_bg.png" x="0" y="0" h="89" w="318" gammagroup="Backgrounds"/> + <bitmap id="player.main.eq.button" file="player/button_eq.png" x="0" y="0" h="23" w="13" gammagroup="Buttons"/> + <bitmap id="player.main.eq.button.hover" file="player/button_eq.png" x="0" y="0" h="23" w="13" gammagroup="ButtonsHover"/> + <bitmap id="player.main.eq.button.pressed" file="player/button_eq.png" x="18" y="0" h="23" w="13" gammagroup="Buttons"/> + <bitmap id="drawer.eq.txtoverlay.dark" file="player/eq_textoverlay.png" x="0" y="0" h="76" w="318" gammagroup="BGOverlayDark"/> + <bitmap id="drawer.eq.txtoverlay.bright" file="player/eq_textoverlay.png" x="0" y="82" h="7" w="318" gammagroup="BGOverlayBright"/> + <bitmap id="drawer.eq.balance.txtoverlay.bright" file="player/eq_textoverlay.png" x="0" y="89" h="5" w="63" gammagroup="BGOverlayBright"/> + <bitmap id="drawer.eq.button.on" file="player/buttons_eq.png" x="8" y="21" h="9" w="20" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.on.pressed" file="player/buttons_eq.png" x="88" y="21" h="9" w="20" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.on.hover" file="player/buttons_eq.png" x="8" y="21" h="9" w="20" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.auto" file="player/buttons_eq.png" x="8" y="35" h="9" w="33" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.auto.pressed" file="player/buttons_eq.png" x="88" y="35" h="9" w="33" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.auto.hover" file="player/buttons_eq.png" x="8" y="35" h="9" w="33" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.presets" file="player/buttons_eq.png" x="8" y="49" h="9" w="49" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.presets.pressed" file="player/buttons_eq.png" x="88" y="49" h="9" w="49" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.presets.hover" file="player/buttons_eq.png" x="8" y="49" h="9" w="49" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.balance.bg" file="player/eq_balance.png" x="0" y="0" h="16" w="68" gammagroup="Backgrounds"/> + <bitmap id="drawer.eq.button.balance" file="player/button_balance.png" x="69" y="5" h="13" w="23" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.balance.hover" file="player/button_balance.png" x="69" y="5" h="13" w="23" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.balance.pressed" file="player/button_balance.png" x="99" y="5" h="13" w="23" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.crossfade" file="player/buttons_eq.png" x="0" y="0" h="9" w="18" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.crossfade.hover" file="player/buttons_eq.png" x="0" y="0" h="9" w="18" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.crossfade.pressed" file="player/buttons_eq.png" x="80" y="0" h="9" w="18" gammagroup="Buttons"/> + <bitmap id="drawer.eq.crossfade.display" file="player/buttons_eq.png" x="46" y="21" h="9" w="12" gammagroup="Display"/> + <bitmap id="drawer.eq.button.crossfade.prev" file="player/buttons_eq.png" x="35" y="0" h="9" w="7" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.crossfade.prev.hover" file="player/buttons_eq.png" x="35" y="0" h="9" w="7" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.crossfade.prev.pressed" file="player/buttons_eq.png" x="115" y="0" h="9" w="7" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.crossfade.next" file="player/buttons_eq.png" x="56" y="0" h="9" w="7" gammagroup="Buttons"/> + <bitmap id="drawer.eq.button.crossfade.next.hover" file="player/buttons_eq.png" x="56" y="0" h="9" w="7" gammagroup="ButtonsHover"/> + <bitmap id="drawer.eq.button.crossfade.next.pressed" file="player/buttons_eq.png" x="136" y="0" h="9" w="7" gammagroup="Buttons"/> + <bitmap id="drawer.eq.label.winamp" file="player/eq_labels.png" x="0" y="0" h="5" w="174" gammagroup="BGOverlayBright"/> + <bitmap id="drawer.eq.label.iso" file="player/eq_labels.png" x="0" y="5" h="5" w="174" gammagroup="BGOverlayBright"/> + +<!-- Titlebar --> + <bitmap id="wasabi.titlebar.left.active" file="window/titlebar.png" x="0" y="100" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.center.active" file="window/titlebar.png" x="10" y="100" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.right.active" file="window/titlebar.png" x="43" y="100" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.left.inactive" file="window/titlebar.png" x="0" y="110" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.center.inactive" file="window/titlebar.png" x="10" y="110" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.right.inactive" file="window/titlebar.png" x="43" y="110" h="9" w="10" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.titlebar.overlay" file="window/titlebar_overlay.png" x="0" y="0" h="11" w="32" gammagroup="Titlebar"/> + +<!-- Resize --> + <bitmap id="player.resizer" file="player/resizer.png" x="0" y="0" w="17" h="17" gammagroup="Backgrounds2"/> + +<!-- Menubar --> + <bitmap id="wasabi.menubar.left" file="player/menubar.png" x="0" y="0" h="17" w="5" gammagroup="Menubar"/> + <bitmap id="wasabi.menubar.center" file="player/menubar.png" x="5" y="0" h="17" w="5" gammagroup="Menubar"/> + <bitmap id="wasabi.menubar.right.overlay" file="player/menubar.png" x="25" y="0" h="17" w="45" gammagroup="Menubar"/> + <bitmap id="wasabi.menubar.right.textoverlay" file="player/menubar.png" x="125" y="0" h="17" w="45" gammagroup="MenubarText"/> + <bitmap id="wasabi.menubar.right" file="player/menubar.png" x="75" y="0" h="17" w="45" gammagroup="Menubar"/> + +<!-- Menu --> + <bitmap id="txt.menu.file" file="window/menu/file.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.play" file="window/menu/play.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.view" file="window/menu/view.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.help" file="window/menu/help.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.play" file="window/menu/play.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.sort" file="window/menu/sort.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.options" file="window/menu/options.png" gammagroup="MenubarText"/> + <bitmap id="txt.menu.playlist" file="window/menu/playlist.png" gammagroup="MenubarText"/> + + <bitmap id="button.menu.hover.left" file="window/menu_elements.png" x="31" y="20" w="4" h="16" gammagroup="Menubar"/> + <bitmap id="button.menu.hover.middle" file="window/menu_elements.png" x="35" y="20" w="44" h="16" gammagroup="Menubar"/> + <bitmap id="button.menu.hover.right" file="window/menu_elements.png" x="79" y="20" w="3" h="16" gammagroup="Menubar"/> + + <bitmap id="button.menu.pressed.left" file="window/menu_elements.png" x="31" y="40" w="4" h="16" gammagroup="Menubar"/> + <bitmap id="button.menu.pressed.middle" file="window/menu_elements.png" x="35" y="40" w="44" h="16" gammagroup="Menubar"/> + <bitmap id="button.menu.pressed.right" file="window/menu_elements.png" x="79" y="40" w="3" h="16" gammagroup="Menubar"/> + +<!-- Titlebar Buttons --> + <bitmap id="wasabi.button.winshade" file="window/titlebar.png" x="0" y="60" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.winshade.pressed" file="window/titlebar.png" x="40" y="60" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.winshade.hover" file="window/titlebar.png" x="0" y="60" h="10" w="11" gammagroup="TitlebarHover"/> + <bitmap id="wasabi.button.winshade.inactive" file="window/titlebar.png" x="60" y="60" h="10" w="11" gammagroup="TitlebarElements"/> + + <bitmap id="wasabi.button.sysmenu" file="window/titlebar.png" x="0" y="20" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.sysmenu.pressed" file="window/titlebar.png" x="40" y="20" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.sysmenu.hover" file="window/titlebar.png" x="0" y="20" h="10" w="11" gammagroup="TitlebarHover"/> + <bitmap id="wasabi.button.sysmenu.inactive" file="window/titlebar.png" x="60" y="20" h="10" w="11" gammagroup="TitlebarElements"/> + + <bitmap id="wasabi.button.minimize" file="window/titlebar.png" x="0" y="40" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.minimize.pressed" file="window/titlebar.png" x="40" y="40" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.minimize.hover" file="window/titlebar.png" x="0" y="40" h="10" w="11" gammagroup="TitlebarHover"/> + <bitmap id="wasabi.button.minimize.inactive" file="window/titlebar.png" x="60" y="40" h="10" w="11" gammagroup="TitlebarElements"/> + + <bitmap id="wasabi.button.exit" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.exit.pressed" file="window/titlebar.png" x="40" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.exit.hover" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarHover"/> + <bitmap id="wasabi.button.exit.inactive" file="window/titlebar.png" x="60" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + + <bitmap id="wasabi.button.close.flat" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.close.flat.pressed" file="window/titlebar.png" x="40" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + <bitmap id="wasabi.button.close.flat.hover" file="window/titlebar.png" x="0" y="80" h="10" w="11" gammagroup="TitlebarHover"/> + <bitmap id="wasabi.button.close.flat.inactive" file="window/titlebar.png" x="60" y="80" h="10" w="11" gammagroup="TitlebarElements"/> + + <bitmap id="wasabi.button.bg.title" file="window/titlebar.png" x="60" y="100" h="11" w="13" gammagroup="Titlebar"/> + +<!-- Playback buttons --> + <bitmap id="player.button.previous.bg" file="player/player_buttons.png" x="0" y="0" h="26" w="30" gammagroup="Backgrounds"/> + <bitmap id="player.button.previous" file="player/player_buttons.png" x="0" y="40" h="26" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.previous.pressed" file="player/player_buttons.png" x="0" y="80" h="26" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.previous.hover" file="player/player_buttons.png" x="0" y="120" h="26" w="30" gammagroup="ButtonGlow"/> + + <bitmap id="player.button.play.bg" file="player/player_buttons.png" x="30" y="0" h="29" w="30" gammagroup="Backgrounds"/> + <bitmap id="player.button.play" file="player/player_buttons.png" x="30" y="40" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.play.pressed" file="player/player_buttons.png" x="30" y="80" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.play.hover" file="player/player_buttons.png" x="30" y="120" h="29" w="30" gammagroup="ButtonGlow"/> + + <bitmap id="player.button.pause.bg" file="player/player_buttons.png" x="60" y="0" h="29" w="30" gammagroup="Backgrounds"/> + <bitmap id="player.button.pause" file="player/player_buttons.png" x="60" y="40" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.pause.pressed" file="player/player_buttons.png" x="60" y="80" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.pause.hover" file="player/player_buttons.png" x="60" y="120" h="29" w="30" gammagroup="ButtonGlow"/> + + <bitmap id="player.button.stop.bg" file="player/player_buttons.png" x="90" y="0" h="29" w="30" gammagroup="Backgrounds"/> + <bitmap id="player.button.stop" file="player/player_buttons.png" x="90" y="40" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.stop.pressed" file="player/player_buttons.png" x="90" y="80" h="29" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.stop.hover" file="player/player_buttons.png" x="90" y="120" h="29" w="30" gammagroup="ButtonGlow"/> + + <bitmap id="player.button.next.bg" file="player/player_buttons.png" x="120" y="0" h="26" w="30" gammagroup="Backgrounds"/> + <bitmap id="player.button.next" file="player/player_buttons.png" x="120" y="40" h="26" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.next.pressed" file="player/player_buttons.png" x="120" y="80" h="26" w="30" gammagroup="Buttons"/> + <bitmap id="player.button.next.hover" file="player/player_buttons.png" x="120" y="120" h="26" w="30" gammagroup="ButtonGlow"/> + + <bitmap id="player.button.status.play" file="player/player_buttons_status.png" x="30" y="0" h="29" w="90" gammagroup="ButtonStatus"/> + <bitmap id="player.button.status.pause" file="player/player_buttons_status.png" x="30" y="40" h="29" w="90" gammagroup="ButtonStatus"/> + <bitmap id="player.button.status.stop" file="player/player_buttons_status.png" x="30" y="80" h="29" w="90" gammagroup="ButtonStatus"/> + + <bitmap id="player.button.mlpl.bg" file="player/buttons_mlpl_bg.png" x="0" y="0" h="26" w="90" gammagroup="Backgrounds"/> + <bitmap id="player.button.eject" file="player/buttons_mlpl.png" x="0" y="0" h="13" w="19" gammagroup="Buttons"/> + <bitmap id="player.button.eject.hover" file="player/buttons_mlpl.png" x="0" y="0" h="13" w="19" gammagroup="ButtonsHover"/> + <bitmap id="player.button.eject.pressed" file="player/buttons_mlpl.png" x="0" y="40" h="13" w="19" gammagroup="Buttons"/> + <bitmap id="player.button.pl" file="player/buttons_mlpl.png" x="26" y="0" h="13" w="22" gammagroup="Buttons"/> + <bitmap id="player.button.pl.hover" file="player/buttons_mlpl.png" x="26" y="0" h="13" w="22" gammagroup="ButtonsHover"/> + <bitmap id="player.button.pl.active" file="player/buttons_mlpl.png" x="26" y="20" h="13" w="22" gammagroup="ButtonsActive"/> + <bitmap id="player.button.pl.pressed" file="player/buttons_mlpl.png" x="26" y="40" h="13" w="22" gammagroup="Buttons"/> + <bitmap id="player.button.ml" file="player/buttons_mlpl.png" x="52" y="0" h="13" w="22" gammagroup="Buttons"/> + <bitmap id="player.button.ml.hover" file="player/buttons_mlpl.png" x="52" y="0" h="13" w="22" gammagroup="ButtonsHover"/> + <bitmap id="player.button.ml.active" file="player/buttons_mlpl.png" x="52" y="20" h="13" w="22" gammagroup="ButtonsActive"/> + <bitmap id="player.button.ml.pressed" file="player/buttons_mlpl.png" x="52" y="40" h="13" w="22" gammagroup="Buttons"/> + +<!-- Display --> + <bitmap id="player.display.bg.left" file="player/display.png" x="0" y="0" h="67" w="60" gammagroup="Backgrounds"/> + <bitmap id="player.display.bg.center" file="player/display.png" x="60" y="0" h="67" w="60" gammagroup="Backgrounds"/> + <bitmap id="player.display.bg.right" file="player/display.png" x="247" y="0" h="67" w="60" gammagroup="Backgrounds"/> + + <bitmap id="player.display.songticker.bg.left" file="player/display.png" x="0" y="124" h="19" w="60" gammagroup="DisplaySongtickerBG"/> + <bitmap id="player.display.songticker.bg.center" file="player/display.png" x="60" y="124" h="19" w="60" gammagroup="DisplaySongtickerBG"/> + <bitmap id="player.display.songticker.bg.right" file="player/display.png" x="247" y="124" h="19" w="60" gammagroup="DisplaySongtickerBG"/> + + <bitmap id="player.display.left" file="player/display.png" x="0" y="80" h="67" w="60" gammagroup="Display"/> + <bitmap id="player.display.center" file="player/display.png" x="60" y="80" h="67" w="60" gammagroup="Display"/> + <bitmap id="player.display.right" file="player/display.png" x="247" y="80" h="67" w="60" gammagroup="Display"/> + + <bitmap id="player.display.right2" file="player/display.png" x="163" y="80" h="67" w="60" gammagroup="Display"/> + <bitmap id="player.display.songticker.bg.right2" file="player/display.png" x="163" y="124" h="19" w="60" gammagroup="DisplaySongtickerBG"/> + + <bitmap id="player.display.left.overlay" file="player/displayoverlay.png" x="0" y="0" h="63" w="21" gammagroup="DisplaySongtickerBG"/> + <bitmap id="player.display.right.overlay" file="player/displayoverlay.png" x="56" y="0" h="63" w="17" gammagroup="DisplaySongtickerBG"/> + +<!-- Display Beat Visualization --> + <bitmap id="player.display.beat.left" file="player/beat_left.png" gammagroup="DisplayBeatVis"/> + <bitmap id="player.display.beat.right" file="player/beat_right.png" gammagroup="DisplayBeatVis"/> + <bitmap id="player.display.beat.left2" file="player/beat_l2.png" gammagroup="DisplayBeatVis"/> + <bitmap id="player.display.beat.right2" file="player/beat_r2.png" gammagroup="DisplayBeatVis"/> + <bitmap id="player.display.beat.textoverlay" file="player/beat_textoverlay.png" gammagroup="DisplayBeatVis"/> + <bitmap id="player.display.beat.displayoverlay" file="player/beat_displayoverlay.png" gammagroup="Display"/> + +<!-- Seek --> + <bitmap id="player.button.seek" file="player/seekbar.png" x="97" y="0" h="13" w="36" gammagroup="Buttons"/> + <bitmap id="player.button.seek.pressed" file="player/seekbar.png" x="137" y="0" h="13" w="36" gammagroup="Buttons"/> + <bitmap id="player.button.seek.hover" file="player/seekbar.png" x="97" y="0" h="13" w="36" gammagroup="ButtonsHover"/> + <bitmap id="player.seekbar.left" file="player/seekbar.png" x="0" y="0" h="13" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.seekbar.center" file="player/seekbar.png" x="10" y="0" h="13" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.seekbar.right" file="player/seekbar.png" x="73" y="0" h="13" w="10" gammagroup="Backgrounds"/> + +<!-- NUMFONT --> + <bitmap id="bitmapfont.player.BIGNUM" file="player/numfont.png" x="0" y="0" h="60" w="300" gammagroup="DisplayElements"/> + <bitmapfont id="player.BIGNUM" file="bitmapfont.player.BIGNUM" charwidth="13" charheight="20" hspacing="-1" vspacing="0"/> + +<!-- SMALLFONT --> + <bitmap id="bitmapfont.player.smallfont" file="player/smallfont.png" x="0" y="0" h="24" w="192" charwidth="6" charheight="8" hspacing="0" vspacing="-1" gammagroup="TextDark"/> + <bitmapfont id="player.smallfont" file="bitmapfont.player.smallfont" charwidth="6" charheight="8" hspacing="0" vspacing="-1"/> + +<!-- SONGTICKERFONT --> + <bitmap id="bitmapfont.player.songticker" file="player/songtickerfont.png" x="0" y="0" h="66" w="320" gammagroup="DisplaySongticker"/> + <bitmapfont id="player.songticker.font" file="bitmapfont.player.songticker" charwidth="10" charheight="22" hspacing="-1" vspacing="0"/> + +<!-- PLAYBACK STATUS --> + <bitmap id="player.status.stop" file="player/playbackstatus.png" x="0" y="0" h="23" w="10" gammagroup="DisplayElements"/> + <bitmap id="player.status.play" file="player/playbackstatus.png" x="20" y="0" h="23" w="10" gammagroup="DisplayElements"/> + <bitmap id="player.status.pause" file="player/playbackstatus.png" x="40" y="0" h="23" w="10" gammagroup="DisplayElements"/> + +<!-- VISUALIZATION --> + <bitmap id="player.visualization.background" file="player/visualization_background.png" x="0" y="0" h="33" w="85" gammagroup="DisplayElements"/> + <bitmap id="player.visualization.overlay" file="player/visualization_overlay.png" x="0" y="0" h="33" w="85" gammagroup="Display"/> + <bitmap id="player.visualization.overlay2" file="player/visualization_overlay.png" x="1" y="0" h="33" w="85" gammagroup="Display"/> + +<!-- SONGINFO --> + <bitmap id="bitmapfont.player.songinfo" file="player/songinfofont.png" x="0" y="0" h="23" w="124" gammagroup="DisplayElements"/> + <bitmapfont id="player.songinfo.font" file="bitmapfont.player.songinfo" charwidth="4" charheight="8" hspacing="0" vspacing="0"/> + <bitmap id="player.songinfo.kbps" file="player/songinfo.png" x="0" y="0" h="7" w="20" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.khz" file="player/songinfo.png" x="47" y="0" h="7" w="22" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.stereo" file="player/songinfo.png" x="0" y="13" h="9" w="74" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.mono" file="player/songinfo.png" x="0" y="23" h="9" w="74" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.none" file="player/songinfo.png" x="0" y="33" h="9" w="74" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.surround" file="player/songinfo.png" x="0" y="43" h="9" w="74" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.repeat1" file="player/songinfo.png" x="76" y="13" h="10" w="14" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.repeat2" file="player/songinfo.png" x="76" y="27" h="10" w="14" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.repeat0" file="player/songinfo.png" x="76" y="43" h="10" w="14" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.shuffle.on" file="player/songinfo.png" x="91" y="13" h="10" w="13" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.shuffle.off" file="player/songinfo.png" x="91" y="43" h="10" w="13" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.eq.on" file="player/songinfo.png" x="94" y="0" h="7" w="10" gammagroup="DisplayElements"/> + <bitmap id="player.songinfo.eq.off" file="player/songinfo.png" x="94" y="30" h="7" w="10" gammagroup="DisplayElements"/> + +<!-- WINAMP BOLT --> + <bitmap id="player.button.bolt.bg" file="player/bolt.png" x="3" y="1" h="20" w="18" gammagroup="Backgrounds2"/> + <bitmap id="player.button.bolt" file="player/bolt.png" x="33" y="1" h="20" w="18" gammagroup="Bolt"/> + <bitmap id="player.button.bolt.hover" file="player/bolt.png" x="63" y="1" h="20" w="18" gammagroup="Bolt"/> + <bitmap id="player.button.bolt.pressed" file="player/bolt.png" x="93" y="1" h="20" w="18" gammagroup="Bolt"/> + +<!-- Volume --> + <bitmap id="player.volume.bg" file="player/volume_bar_bg.png" x="0" y="0" h="19" w="85" gammagroup="Backgrounds2"/> + <bitmap id="player.button.volume" file="player/button_volume.png" x="0" y="0" h="13" w="21" gammagroup="Buttons2"/> + <bitmap id="player.button.volume.hover" file="player/button_volume.png" x="0" y="0" h="13" w="21" gammagroup="ButtonsHover2"/> + <bitmap id="player.button.volume.pressed" file="player/button_volume.png" x="60" y="0" h="13" w="21" gammagroup="Buttons2"/> + +<!-- Mute --> + <bitmap id="player.button.mute.bg" file="player/button_mute_bg.png" x="0" y="0" h="24" w="23" gammagroup="Backgrounds2"/> + <bitmap id="player.button.mute.off" file="player/button_mute.png" x="0" y="0" h="15" w="15" gammagroup="Buttons2"/> + <bitmap id="player.button.mute.off.hover" file="player/button_mute.png" x="0" y="0" h="15" w="15" gammagroup="ButtonsHover2"/> + <bitmap id="player.button.mute.off.pressed" file="player/button_mute.png" x="30" y="0" h="15" w="15" gammagroup="Buttons2"/> + <bitmap id="player.button.mute.on" file="player/button_mute.png" x="0" y="30" h="15" w="15" gammagroup="Buttons2"/> + <bitmap id="player.button.mute.on.hover" file="player/button_mute.png" x="0" y="30" h="15" w="15" gammagroup="ButtonsHover2"/> + <bitmap id="player.button.mute.on.pressed" file="player/button_mute.png" x="30" y="30" h="15" w="15" gammagroup="Buttons2"/> + +<!-- Shuffle / Repeat --> + <bitmap id="player.button.repeat.bg" file="player/shufflerepeat_bg.png" x="0" y="0" h="23" w="40" gammagroup="Backgrounds"/> + <bitmap id="player.button.shuffle.bg" file="player/shufflerepeat_bg.png" x="0" y="23" h="23" w="40" gammagroup="Backgrounds"/> + <bitmap id="player.button.repeat" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.repeat.hover" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="ButtonsHover"/> + <bitmap id="player.button.repeat.pressed" file="player/button_shufflerepeat.png" x="30" y="0" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.shuffle" file="player/button_shufflerepeat.png" x="0" y="23" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.shuffle.hover" file="player/button_shufflerepeat.png" x="0" y="23" h="15" w="20" gammagroup="ButtonsHover"/> + <bitmap id="player.button.shuffle.pressed" file="player/button_shufflerepeat.png" x="30" y="23" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.led.on" file="player/shufflerepeat_led.png" x="0" y="0" h="13" w="13" gammagroup="Led"/> + <bitmap id="player.led.off" file="player/shufflerepeat_led.png" x="20" y="0" h="13" w="13" gammagroup="Led"/> + + <bitmap id="player.button.repeat0" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.repeat.hover0" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="ButtonsHover"/> + <bitmap id="player.button.repeat.pressed0" file="player/button_shufflerepeat.png" x="30" y="0" h="15" w="20" gammagroup="Buttons"/> + + <bitmap id="player.button.repeat1" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.repeat.hover1" file="player/button_shufflerepeat.png" x="0" y="0" h="15" w="20" gammagroup="ButtonsHover"/> + <bitmap id="player.button.repeat.pressed1" file="player/button_repeat2.png" x="30" y="0" h="15" w="20" gammagroup="Buttons"/> + + <bitmap id="player.button.repeat2" file="player/button_repeat2.png" x="0" y="0" h="15" w="20" gammagroup="Buttons"/> + <bitmap id="player.button.repeat.hover2" file="player/button_repeat2.png" x="0" y="0" h="15" w="20" gammagroup="ButtonsHover"/> + <bitmap id="player.button.repeat.pressed2" file="player/button_shufflerepeat.png" x="30" y="0" h="15" w="20" gammagroup="Buttons"/> + +<!-- VIDEO/AVS --> + <bitmap id="player.button.videoavs.up.bg" file="player/videoavs_buttonup_bg.png" x="0" y="0" h="18" w="43" gammagroup="Menubar"/> + <bitmap id="player.button.videoavs.up.bg2" file="player/videoavs_buttonup_bg2.png" x="0" y="0" h="18" w="43" gammagroup="Menubar"/> + <bitmap id="player.button.videoavs.overlay" file="player/videoavs_button_overlay.png" x="0" y="0" h="16" w="39" gammagroup="Backgrounds"/> + <bitmap id="player.button.videoavs" file="player/button_videoavs.png" x="0" y="0" h="9" w="27" gammagroup="Buttons2"/> + <bitmap id="player.button.videoavs.hover" file="player/button_videoavs.png" x="0" y="0" h="9" w="27" gammagroup="ButtonsHover2"/> + <bitmap id="player.button.videoavs.pressed" file="player/button_videoavs.png" x="50" y="0" h="9" w="27" gammagroup="Buttons2"/> + <bitmap id="player.button.videoavs.up" file="player/button_videoavs.png" x="0" y="10" h="9" w="27" gammagroup="Buttons2"/> + <bitmap id="player.button.videoavs.up.hover" file="player/button_videoavs.png" x="0" y="10" h="9" w="27" gammagroup="ButtonsHover2"/> + <bitmap id="player.button.videoavs.up.pressed" file="player/button_videoavs.png" x="50" y="10" h="9" w="27" gammagroup="Buttons2"/> + <bitmap id="player.videoavs.topleft" file="player/videoavs_bg.png" x="0" y="0" h="21" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.topmiddle" file="player/videoavs_bg.png" x="10" y="0" h="21" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.topright" file="player/videoavs_bg.png" x="84" y="0" h="21" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.left" file="player/videoavs_bg.png" x="0" y="21" h="10" w="4" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.middle" file="player/videoavs_bg.png" x="10" y="21" h="10" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.right" file="player/videoavs_bg.png" x="90" y="21" h="10" w="4" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.bottomleft" file="player/videoavs_bg.png" x="0" y="47" h="26" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.bottommiddle" file="player/videoavs_bg.png" x="10" y="47" h="26" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.videoavs.bottomright" file="player/videoavs_bg.png" x="44" y="47" h="26" w="50" gammagroup="Backgrounds"/> + + <bitmap id="player.button.video.bg.left" file="player/buttons_video.png" x="0" y="38" h="18" w="97" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.bg.center" file="player/buttons_video.png" x="97" y="38" h="18" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.bg.right" file="player/buttons_video.png" x="111" y="38" h="18" w="52" gammagroup="Backgrounds"/> + + <bitmap id="player.button.video.bg.detached.left" file="player/buttons_video.png" x="0" y="57" h="18" w="74" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.bg.detached.center" file="player/buttons_video.png" x="74" y="57" h="18" w="10" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.bg.detached.right" file="player/buttons_video.png" x="88" y="57" h="18" w="52" gammagroup="Backgrounds"/> + + <bitmap id="player.button.video.fs" file="player/buttons_video.png" x="3" y="0" h="13" w="17" gammagroup="Buttons"/> + <bitmap id="player.button.video.fs.hover" file="player/buttons_video.png" x="3" y="0" h="13" w="17" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.fs.pressed" file="player/buttons_video.png" x="3" y="20" h="13" w="17" gammagroup="Buttons"/> + + <bitmap id="player.button.video.s1x" file="player/buttons_video.png" x="26" y="0" h="13" w="17" gammagroup="Buttons"/> + <bitmap id="player.button.video.s1x.hover" file="player/buttons_video.png" x="26" y="0" h="13" w="17" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.s1x.pressed" file="player/buttons_video.png" x="26" y="20" h="13" w="17" gammagroup="Buttons"/> + + <bitmap id="player.button.video.s2x" file="player/buttons_video.png" x="49" y="0" h="13" w="18" gammagroup="Buttons"/> + <bitmap id="player.button.video.s2x.hover" file="player/buttons_video.png" x="49" y="0" h="13" w="18" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.s2x.pressed" file="player/buttons_video.png" x="49" y="20" h="13" w="18" gammagroup="Buttons"/> + + <bitmap id="player.button.video.smax" file="player/buttons_video.png" x="73" y="0" h="13" w="17" gammagroup="Buttons"/> + <bitmap id="player.button.video.smax.hover" file="player/buttons_video.png" x="73" y="0" h="13" w="17" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.smax.pressed" file="player/buttons_video.png" x="73" y="20" h="13" w="17" gammagroup="Buttons"/> + + <bitmap id="player.button.video.srestore" file="player/buttons_video.png" x="173" y="0" h="13" w="17" gammagroup="Buttons"/> + <bitmap id="player.button.video.srestore.hover" file="player/buttons_video.png" x="173" y="0" h="13" w="17" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.srestore.pressed" file="player/buttons_video.png" x="173" y="20" h="13" w="17" gammagroup="Buttons"/> + + <!--<bitmap id="player.button.video.tv" file="player/buttons_video.png" x="118" y="0" h="13" w="19" gammagroup="Buttons"/> + <bitmap id="player.button.video.tv.hover" file="player/buttons_video.png" x="118" y="0" h="13" w="19" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.tv.pressed" file="player/buttons_video.png" x="118" y="20" h="13" w="19" gammagroup="Buttons"/>--> + + <bitmap id="player.button.video.misc" file="player/buttons_video.png" x="143" y="0" h="13" w="17" gammagroup="Buttons"/> + <bitmap id="player.button.video.misc.hover" file="player/buttons_video.png" x="143" y="0" h="13" w="17" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.misc.pressed" file="player/buttons_video.png" x="143" y="20" h="13" w="17" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.bg.left" file="player/buttons_vis.png" x="0" y="38" h="18" w="213" gammagroup="Backgrounds"/> + <bitmap id="player.button.vis.bg.detached.left" file="player/buttons_vis.png" x="0" y="57" h="18" w="192" gammagroup="Backgrounds"/> + + <bitmap id="player.button.vis.bg.right" file="player/buttons_vis.png" x="216" y="38" h="18" w="23" gammagroup="Backgrounds"/> + <bitmap id="player.button.vis.bg.detached.right" file="player/buttons_vis.png" x="205" y="57" h="18" w="23" gammagroup="Backgrounds"/> + + <bitmap id="player.button.vis.prev" file="player/buttons_vis.png" x="3" y="0" h="13" w="40" gammagroup="Buttons"/> + <bitmap id="player.button.vis.prev.hover" file="player/buttons_vis.png" x="3" y="0" h="13" w="40" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.prev.pressed" file="player/buttons_vis.png" x="3" y="20" h="13" w="40" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.next" file="player/buttons_vis.png" x="49" y="0" h="13" w="41" gammagroup="Buttons"/> + <bitmap id="player.button.vis.next.hover" file="player/buttons_vis.png" x="49" y="0" h="13" w="41" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.next.pressed" file="player/buttons_vis.png" x="49" y="20" h="13" w="41" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.random" file="player/buttons_vis.png" x="107" y="0" h="13" w="60" gammagroup="Buttons"/> + <bitmap id="player.button.vis.random.hover" file="player/buttons_vis.png" x="107" y="0" h="13" w="60" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.random.pressed" file="player/buttons_vis.png" x="107" y="20" h="13" w="60" gammagroup="Buttons"/> + + <bitmap id="player.button.video.detach.bg" file="player/buttons_detach.png" x="0" y="118" h="15" w="92" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.detach" file="player/buttons_detach.png" x="3" y="40" h="11" w="86" gammagroup="Buttons"/> + <bitmap id="player.button.video.detach.hover" file="player/buttons_detach.png" x="3" y="40" h="11" w="86" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.detach.pressed" file="player/buttons_detach.png" x="3" y="60" h="11" w="86" gammagroup="Buttons"/> + + <bitmap id="player.button.video.reattach.bg" file="player/buttons_detach.png" x="148" y="106" h="21" w="105" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.reattach" file="player/buttons_detach.png" x="153" y="40" h="11" w="97" gammagroup="Buttons"/> + <bitmap id="player.button.video.reattach.hover" file="player/buttons_detach.png" x="153" y="40" h="11" w="97" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.reattach.pressed" file="player/buttons_detach.png" x="153" y="60" h="11" w="97" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.detach.bg" file="player/buttons_detach.png" x="0" y="78" h="15" w="108" gammagroup="Backgrounds"/> + <bitmap id="player.button.vis.detach" file="player/buttons_detach.png" x="3" y="0" h="11" w="102" gammagroup="Buttons"/> + <bitmap id="player.button.vis.detach.hover" file="player/buttons_detach.png" x="3" y="0" h="11" w="102" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.detach.pressed" file="player/buttons_detach.png" x="3" y="20" h="11" w="102" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.reattach.bg" file="player/buttons_detach.png" x="148" y="76" h="21" w="114" gammagroup="Backgrounds"/> + <bitmap id="player.button.vis.reattach" file="player/buttons_detach.png" x="153" y="0" h="11" w="106" gammagroup="Buttons"/> + <bitmap id="player.button.vis.reattach.hover" file="player/buttons_detach.png" x="153" y="0" h="11" w="106" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.reattach.pressed" file="player/buttons_detach.png" x="153" y="20" h="11" w="106" gammagroup="Buttons"/> + + <bitmap id="player.button.video.switchto.bg" file="player/buttons_switchto.png" x="1" y="40" h="15" w="120" gammagroup="Backgrounds"/> + <bitmap id="player.button.video.switchto" file="player/buttons_switchto.png" x="4" y="2" h="11" w="113" gammagroup="Buttons"/> + <bitmap id="player.button.video.switchto.hover" file="player/buttons_switchto.png" x="4" y="2" h="11" w="113" gammagroup="ButtonsHover"/> + <bitmap id="player.button.video.switchto.pressed" file="player/buttons_switchto.png" x="4" y="22" h="11" w="113" gammagroup="Buttons"/> + + <bitmap id="player.button.vis.switchto.bg" file="player/buttons_switchto.png" x="131" y="40" h="15" w="120" gammagroup="Backgrounds"/> + <bitmap id="player.button.vis.switchto" file="player/buttons_switchto.png" x="134" y="2" h="11" w="113" gammagroup="Buttons"/> + <bitmap id="player.button.vis.switchto.hover" file="player/buttons_switchto.png" x="134" y="2" h="11" w="113" gammagroup="ButtonsHover"/> + <bitmap id="player.button.vis.switchto.pressed" file="player/buttons_switchto.png" x="134" y="22" h="11" w="113" gammagroup="Buttons"/> + +<!-- Pogress Bar --> + <bitmap id="player.progressbar.left" file="player/progressbar.png" x="0" y="0" h="4" w="2" gammagroup="ProgressBar"/> + <bitmap id="player.progressbar.center" file="player/progressbar.png" x="10" y="0" h="4" w="2" gammagroup="ProgressBar"/> + <bitmap id="player.progressbar.right" file="player/progressbar.png" x="71" y="0" h="4" w="2" gammagroup="ProgressBar"/> + <bitmap id="player.volumebar" file="player/progressbar.png" x="10" y="1" h="2" w="2" gammagroup="ProgressBar"/> + +<!-- Scrollbars (on List, Tree, etc...) --> + <bitmap id="wasabi.scrollbar.vertical.button" file="window/scrollbars.png" x="20" y="0" h="31" w="13" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.vertical.button.hover" file="window/scrollbars.png" x="20" y="0" h="31" w="13" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.vertical.button.pressed" file="window/scrollbars.png" x="40" y="0" h="31" w="13" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.vertical.left" file="window/scrollbars.png" x="60" y="0" h="17" w="13" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.vertical.left.hover" file="window/scrollbars.png" x="60" y="0" h="17" w="13" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.vertical.left.pressed" file="window/scrollbars.png" x="80" y="0" h="17" w="13" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.vertical.right" file="window/scrollbars.png" x="60" y="26" h="17" w="13" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.vertical.right.hover" file="window/scrollbars.png" x="60" y="26" h="17" w="13" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.vertical.right.pressed" file="window/scrollbars.png" x="80" y="26" h="17" w="13" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.vertical.background" file="window/scrollbars.png" x="0" y="0" w="13" h="17" /> + <bitmap id="wasabi.scrollbar.vertical.background.top" file="window/scrollbars.png" x="0" y="0" w="13" h="17" /> + <bitmap id="wasabi.scrollbar.vertical.background.middle" file="window/scrollbars.png" x="0" y="0" w="13" h="17" /> + <bitmap id="wasabi.scrollbar.vertical.background.bottom" file="window/scrollbars.png" x="0" y="0" w="13" h="17" /> + + <bitmap id="wasabi.scrollbar.horizontal.button" file="window/scrollbars.png" x="12" y="70" h="13" w="31" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.horizontal.button.hover" file="window/scrollbars.png" x="12" y="70" h="13" w="31" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.horizontal.button.pressed" file="window/scrollbars.png" x="12" y="90" h="13" w="31" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.horizontal.left" file="window/scrollbars.png" x="0" y="110" h="13" w="17" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.horizontal.left.hover" file="window/scrollbars.png" x="0" y="110" h="13" w="17" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.horizontal.left.pressed" file="window/scrollbars.png" x="0" y="130" h="13" w="17" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.horizontal.right" file="window/scrollbars.png" x="26" y="110" h="13" w="17" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.horizontal.right.hover" file="window/scrollbars.png" x="26" y="110" h="13" w="17" gammagroup="Scrollbar Hover"/> + <bitmap id="wasabi.scrollbar.horizontal.right.pressed" file="window/scrollbars.png" x="26" y="130" h="13" w="17" gammagroup="Scrollbar Buttons"/> + + <bitmap id="wasabi.scrollbar.horizontal.background" file="window/scrollbars.png" x="18" y="50" w="17" h="13" /> + <bitmap id="wasabi.scrollbar.horizontal.background.left" file="window/scrollbars.png" x="18" y="50" w="17" h="13" /> + <bitmap id="wasabi.scrollbar.horizontal.background.middle" file="window/scrollbars.png" x="18" y="50" w="17" h="13" /> + <bitmap id="wasabi.scrollbar.horizontal.background.right" file="window/scrollbars.png" x="18" y="50" w="17" h="13" /> + +<!-- Generic Button --> + <bitmap id="wasabi.button.label.arrow.up" file="window/window-elements.png" x="137" y="75" h="4" w="7" gammagroup="Button Fonts"/> + <bitmap id="wasabi.button.label.arrow.down" file="window/window-elements.png" x="137" y="86" h="4" w="7" gammagroup="Button Fonts"/> + <bitmap id="wasabi.button.label.arrow.left" file="window/window-elements.png" x="133" y="79" h="7" w="4" gammagroup="Button Fonts"/> + <bitmap id="wasabi.button.label.arrow.right" file="window/window-elements.png" x="144" y="79" h="7" w="4" gammagroup="Button Fonts"/> + <bitmap id="wasabi.button.label.ellipses" file="window/window-elements.png" x="138" y="92" h="1" w="5" gammagroup="Button Fonts"/> + + <bitmap id="wasabi.button.top.left" file="window/window-elements.png" x="0" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.top" file="window/window-elements.png" x="4" y="134" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.top.right" file="window/window-elements.png" x="29" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.left" file="window/window-elements.png" x="0" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.center" file="window/window-elements.png" x="4" y="138" h="25" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.right" file="window/window-elements.png" x="29" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.bottom.left" file="window/window-elements.png" x="0" y="163" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.bottom" file="window/window-elements.png" x="4" y="163" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.bottom.right" file="window/window-elements.png" x="29" y="163" h="4" w="4" gammagroup="Buttons"/> + + <bitmap id="wasabi.button.hover.top.left" file="window/window-elements.png" x="33" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.top" file="window/window-elements.png" x="37" y="134" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.top.right" file="window/window-elements.png" x="62" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.left" file="window/window-elements.png" x="33" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.center" file="window/window-elements.png" x="37" y="138" h="25" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.right" file="window/window-elements.png" x="62" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.bottom.left" file="window/window-elements.png" x="33" y="163" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.bottom" file="window/window-elements.png" x="37" y="163" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.bottom.right" file="window/window-elements.png" x="62" y="163" h="4" w="4" gammagroup="Buttons"/> + + <bitmap id="wasabi.button.pressed.top.left" file="window/window-elements.png" x="66" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.top" file="window/window-elements.png" x="70" y="134" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.top.right" file="window/window-elements.png" x="95" y="134" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.left" file="window/window-elements.png" x="66" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.center" file="window/window-elements.png" x="70" y="138" h="25" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.right" file="window/window-elements.png" x="95" y="138" h="25" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.bottom.left" file="window/window-elements.png" x="66" y="163" h="4" w="4" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.bottom" file="window/window-elements.png" x="70" y="163" h="4" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.bottom.right" file="window/window-elements.png" x="95" y="163" h="4" w="4" gammagroup="Buttons"/> + + <bitmap id="wasabi.button.middle" file="window/window-elements.png" x="4" y="138" h="25" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.hover.middle" file="window/window-elements.png" x="37" y="138" h="25" w="25" gammagroup="Buttons"/> + <bitmap id="wasabi.button.pressed.middle" file="window/window-elements.png" x="70" y="138" h="25" w="25" gammagroup="Buttons"/> + + <bitmap id="wasabi.scrollbar.vertical.grip" file="window/scrollgrips.png" x="0" y="0" h="8" w="6" gammagroup="Scrollbar Buttons"/> + <bitmap id="wasabi.scrollbar.horizontal.grip" file="window/scrollgrips.png" x="7" y="0" h="6" w="8" gammagroup="Scrollbar Buttons"/> + +<!-- WASABI WINDOW --> + <bitmap id="wasabi.window2.topleft" file="window/wasabi_window.png" x="0" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.topright" file="window/wasabi_window.png" x="58" y="0" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.topcenter" file="window/wasabi_window.png" x="20" y="0" h="5" w="10" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.left" file="window/wasabi_window.png" x="0" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.right" file="window/wasabi_window.png" x="58" y="5" h="5" w="6" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomleft" file="window/wasabi_window.png" x="0" y="16" h="42" w="20" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomright" file="window/wasabi_window.png" x="44" y="16" h="42" w="20" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomcenter" file="window/wasabi_window.png" x="30" y="33" h="25" w="10" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomleft.nostatus" file="window/wasabi_window.png" x="80" y="16" h="27" w="20" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomright.nostatus" file="window/wasabi_window.png" x="124" y="16" h="27" w="20" gammagroup="Backgrounds"/> + <bitmap id="wasabi.window2.bottomcenter.nostatus" file="window/wasabi_window.png" x="110" y="33" h="10" w="10" gammagroup="Backgrounds"/> + +</elements>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/player-normal-group.xml b/Src/resources/skins/Winamp Modern/xml/player-normal-group.xml new file mode 100644 index 00000000..d3abe23e --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-normal-group.xml @@ -0,0 +1,1232 @@ +<!-- player-normal-group.xml defines the layout of the Winamp Player Window. --> + +<!-- Playback buttons --> +<groupdef id="player.normal.playbuttons" name="Player buttons"> + + <!-- Button Backgrounds --> + <layer + id="Play.bg" + x="30" y="0" + image="player.button.play.bg" + /> + <layer + id="Play.button.bg" + x="30" y="0" + image="player.button.play" + /> + <layer + id="Pause.bg" + x="60" y="0" + image="player.button.pause.bg" + /> + <layer + id="Pause.button.bg" + x="60" y="0" + image="player.button.pause" + /> + <layer + id="Stop.bg" + x="90" y="0" + image="player.button.stop.bg" + /> + <layer + id="Stop.button.bg" + x="90" y="0" + image="player.button.stop" + /> + + <!-- Playback Button Status --> + <status + id="status" + x="30" y="0" + stopBitmap="player.button.status.stop" + playBitmap="player.button.status.play" + pauseBitmap="player.button.status.pause" + ghost="1" + /> + + + <!-- PREVIOUS --> + <layer + id="Previous.bg" + x="0" y="0" + image="player.button.previous.bg" + /> + <layer + id="Previous.button.bg" + x="0" y="0" + image="player.button.previous" + /> + <button + id="Previous" + action="PREV" + x="0" y="0" + image="player.button.previous" + downImage="player.button.previous.pressed" + hoverImage="player.button.previous.hover" + tooltip="Previous" + rectrgn="1" + /> + + <!-- PLAY --> + <button + id="Play" + action="PLAY" + x="30" y="0" + image="player.button.play" + downImage="player.button.play.pressed" + hoverImage="player.button.play.hover" + tooltip="Play" + rectrgn="1" + /> + + <!-- PAUSE --> + <button + id="Pause" + action="PAUSE" + x="60" y="0" + image="player.button.pause" + downImage="player.button.pause.pressed" + hoverImage="player.button.pause.hover" + tooltip="Pause" + rectrgn="1" + /> + + <!-- STOP --> + <button + id="Stop" + action="STOP" + x="90" y="0" + image="player.button.stop" + downImage="player.button.stop.pressed" + hoverImage="player.button.stop.hover" + tooltip="Stop" + rectrgn="1" + /> + + <!-- NEXT --> + <layer + id="Next.bg" + x="120" y="0" + image="player.button.next.bg" + /> + <layer + id="Next.button.bg" + x="120" y="0" + image="player.button.next" + /> + <button + id="Next" + action="NEXT" + x="120" y="0" + image="player.button.next" + downImage="player.button.next.pressed" + hoverImage="player.button.next.hover" + tooltip="Next" + rectrgn="1" + /> + +</groupdef> + + +<groupdef id="player.normal.songinfo" name="Songinfo"> + + <!-- Bitrate --> + <layer + id="display.songinfo.display.kbps" + x="7" y="0" + ghost="1" + image="player.songinfo.kbps" + /> + <text + id="Bitrate" + display="" default="(___)" + x="27" y="0" w="30" h="8" + font="player.songinfo.font" + fontsize="9" + color="font.display" + valign="top" + /> + + <!-- Frequency --> + <layer + id="display.songinfo.display.khz" + x="56" y="0" + ghost="1" + image="player.songinfo.khz" + /> + <text + id="Frequency" + display="" default="(__)" + x="78" y="0" w="30" h="8" + font="player.songinfo.font" + fontsize="9" + color="font.display" + valign="top" + /> + + <!-- mono/stereo --> + <layer x="7" y="10" id="channels" image="player.songinfo.none" move="1" rectrgn="1" dblclickaction="WA5:Prefs" dblclickparam="42" /> + + <!-- EQ on/off --> + <button + id="eqonoff_led" + Image="player.songinfo.eq.off" + activeImage="player.songinfo.eq.on" + action="EQ_TOGGLE" + x="101" y="0" + rectrgn="1" + /> + + <!-- shuffle/repeat --> + <togglebutton + id="ShuffleDisplay" + x="98" y="10" + image="player.songinfo.shuffle.off" + downImage="player.songinfo.shuffle.off" + activeImage="player.songinfo.shuffle.on" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + rectrgn="1" + /> + <NStatesButton + id="RepeatDisplay" + x="83" y="10" + nstates="3" + image="player.songinfo.repeat" + downImage="player.songinfo.repeat" + activeImage="player.songinfo.repeat" + hoverImage="player.songinfo.repeat" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + rectrgn="1" + /> + + <script id="songinfo.script" file="scripts/songinfo.maki" /> +</groupdef> + +<groupdef id="player.normal.display.beatvisualization" name="BeatVisualization"> + <AnimatedLayer + x="7" y="0" + w="76" h="50" + id="beatleft" + image="player.display.beat.left" + move="0" + autoplay="0" + autoreplay="0" + ghost="1" + /> + <AnimatedLayer + x="88" y="0" + w="76" h="50" + id="beatright" + image="player.display.beat.right" + move="0" + autoplay="0" + autoreplay="0" + ghost="1" + /> + <layer + x="2" y="0" + image="player.display.beat.textoverlay" + /> + <layer + id="beatdisplayoverlay" + x="2" y="0" + image="player.display.beat.displayoverlay" + /> + <button + id="beatvisualization" + x="4" y="0" + w="162" h="31" + tooltip="Toggle Beat Visualization" + rectrgn="1" + ghost="0" + /> + <togglebutton + id="beatvisualization2" + x="84" y="10" + w="4" h="4" + tooltip="Toggle Beat Visualization" + rectrgn="1" + ghost="0" + /> + +</groupdef> + + +<!-- DISPLAY --> +<groupdef id="player.normal.display" name="Display" relatw="1" w="-49"> + + <layer + id="display.background.left" + x="0" y="0" + ghost="1" + image="player.display.bg.left" + /> + <layer + id="display.background.center" + x="60" y="0" + ghost="1" + relatw="1" + w="-120" + image="player.display.bg.center" + /> + <layer + id="display.background.right" + x="-60" y="0" + ghost="1" + relatx="1" + image="player.display.bg.right" + /> + <layer + id="display.left" + x="0" y="0" + ghost="1" + image="player.display.left" + /> + <layer + id="display.center" + x="60" y="0" + ghost="1" + relatw="1" + w="-120" + tile="1" + image="player.display.center" + /> + <layer + id="display.right" + x="-60" y="0" + ghost="1" + relatx="1" + image="player.display.right" + /> + <layer + id="display.st.left" + x="0" y="44" + ghost="1" + image="player.display.songticker.bg.left" + /> + <layer + id="display.st.center" + x="60" y="44" + ghost="1" + relatw="1" + w="-120" + tile="1" + image="player.display.songticker.bg.center" + /> + <layer + id="display.st.right" + x="-60" y="44" + ghost="1" + relatx="1" + image="player.display.songticker.bg.right" + /> + + <!-- Timer --> + <text + id="timer" + display="time" + x="20" y="16" + w="78" h="20" + font="player.BIGNUM" + align="center" + timecolonwidth="5" + timeroffstyle="1" + fontsize="24" + color="font.display" + /> + + + <!-- Playback Status --> + <status + id="status" + x="11" y="15" + w="10" h="23" + stopBitmap="player.status.stop" + playBitmap="player.status.play" + pauseBitmap="player.status.pause" + /> + + <!-- Visualization --> + <layer + id="visualization.background" + x="-94" y="12" + relatx="1" + image="player.visualization.background" + /> + + <vis + id="visual" + x="-88" y="13" w="72" h="25" + relatx="1" + gammagroup="DisplayVis" + ColorBand1="255,255,255" + ColorBand2="255,255,255" + ColorBand3="255,255,255" + ColorBand4="255,255,255" + ColorBand5="255,255,255" + ColorBand6="255,255,255" + ColorBand7="255,255,255" + ColorBand8="255,255,255" + ColorBand9="255,255,255" + ColorBand10="255,255,255" + ColorBand11="255,255,255" + ColorBand12="255,255,255" + ColorBand13="255,255,255" + ColorBand14="255,255,255" + ColorBand15="255,255,255" + ColorBand16="255,255,255" + + colorbandpeak="255,255,255" + colorosc1="255,255,255" + colorosc2="255,255,255" + colorosc3="255,255,255" + colorosc4="255,255,255" + colorosc5="255,255,255" + /> + + <layer id="main.vis.trigger" x="-83" y="13" w="72" h="25" relatx="1" rectrgn="1"/> + + <script file="scripts/visualizer.maki" /> + + <layer + id="visualization.overlay" + x="-99" y="12" + relatx="1" + image="player.visualization.overlay" + ghost="1" + /> + + <!-- Songticker --> + <Songticker + id="Songticker" showlen="1" + x="8" y="43" + relatw="1" + w="-16" h="23" + leftpadding="5" + rightpadding="-5" + font="player.songticker.font" + align="center" + valign="top" + rightclickaction="trackmenu" + dblclickaction="trackinfo" + fontsize="18" + color="font.display.songticker" + altfont="Arial" + /> + + <Text + id="Infoticker" + x="8" y="43" + relatw="1" + w="-16" h="23" + leftpadding="5" + rightpadding="-5" + font="player.songticker.font" + align="center" + valign="top" + fontsize="18" + color="font.display.songticker" + altfont="Arial" + visible="0" + /> + + <!-- Songticker overlay --> + <layer + id="display.left.overlay" + x="0" y="0" + ghost="1" + image="player.display.left.overlay" + /> + <layer + id="display.right.overlay" + x="-21" y="0" + ghost="1" + relatx="1" + image="player.display.right.overlay" + /> + + <!-- the songinfo --> + <group id="player.normal.songinfo" x="96" y="17" /> + + <group id="player.normal.display.beatvisualization" x="200" y="11" visible="0"/> + + <layer + id="display.left" + x="0" y="0" + ghost="1" + image="player.display.left" + alpha="13" + /> + + <layer + id="display.center" + x="60" y="0" + ghost="1" + relatw="1" + w="-120" + tile="1" + image="player.display.center" + alpha="13" + /> + + <layer + id="display.right.overlay2" + x="-60" y="0" + ghost="1" + relatx="1" + image="player.display.right" + alpha="13" + /> + + <script id="beatvisualization.script" file="scripts/beatvisualization.maki" /> + +</groupdef> + +<groupdef id="player.bar.rightbottom" relatw="1" w="0" relath="1" h="0"> + + <layer + id="player.main.resizer" + x="-17" y="108" + relatx="1" + image="player.resizer" + resize="right" + sysregion="1" + rectrgn="1" + /> + + <layer + x="-31" y="101" + relatx="1" + image="player.button.bolt.bg" + sysregion="1" + /> + <button + id="about" + action="TOGGLE" param="guid:{D6201408-476A-4308-BF1B-7BACA1124B12}" + x="-31" y="101" + relatx="1" + image="player.button.bolt" + downImage="player.button.bolt.pressed" + activeImage="player.button.bolt" + hoverImage="player.button.bolt.hover" + rectrgn="1" + /> + + <!-- Volume --> + <layer + x="183" y="100" + image="player.volume.bg" + /> + + <layer + id="volumebar" + x="185" y="115" + w="10" + image="player.volumebar" + /> + + <slider + id="Volume" + action="VOLUME" + x="183" y="110" + w="86" h="13" + thumb="player.button.volume" + downThumb="player.button.volume.pressed" + hoverThumb="player.button.volume.hover" + tooltip="Volume" + /> + + <!-- Mute --> + <layer + x="160" y="99" + image="player.button.mute.bg" + /> + <togglebutton + id="mute" + x="164" y="104" + image="player.button.mute.off" + downImage="player.button.mute.on.pressed" + hoverImage="player.button.mute.on.hover" + activeImage="player.button.mute.on" + tooltip="Toggle Mute" + rectrgn="1" + /> + + <script id="mute.script" file="scripts/mute.maki" /> + +</groupdef> + + +<groupdef id="buttons.video"> + <layer + x="0" y="0" + image="player.button.video.bg.left" + /> + <layer + x="97" y="0" + relatw="1" w="-169" + image="player.button.video.bg.center" + /> + <layer + x="-72" y="0" + relatx="1" + image="player.button.video.bg.right" + /> + + <button + id="button.vid.fs" + action="VID_FS" + x="3" y="2" + image="player.button.video.fs" + downImage="player.button.video.fs.pressed" + hoverImage="player.button.video.fs.hover" + tooltip="Fullscreen" + rectrgn="1" + /> + + <button + id="button.vid.1x" + action="VID_1X" + x="26" y="2" + image="player.button.video.s1x" + downImage="player.button.video.s1x.pressed" + hoverImage="player.button.video.s1x.hover" + tooltip="Normal Size" + rectrgn="1" + /> + + <button + id="button.vid.2x" + action="VID_2X" + x="49" y="2" + image="player.button.video.s2x" + downImage="player.button.video.s2x.pressed" + hoverImage="player.button.video.s2x.hover" + tooltip="Double Size" + rectrgn="1" + /> + + <button + id="button.vid.max" + x="73" y="2" + image="player.button.video.smax" + downImage="player.button.video.smax.pressed" + hoverImage="player.button.video.smax.hover" + tooltip="Maximize Window" + rectrgn="1" + /> + <button + id="button.vid.restore" + x="73" y="2" + image="player.button.video.srestore" + downImage="player.button.video.srestore.pressed" + hoverImage="player.button.video.srestore.hover" + tooltip="Restore Window" + rectrgn="1" + visible="0" + /> + + <button + id="button.vid.misc" + action="VID_Misc" + x="-40" y="2" + relatx="1" + image="player.button.video.misc" + downImage="player.button.video.misc.pressed" + hoverImage="player.button.video.misc.hover" + tooltip="Options" + rectrgn="1" + /> + + <text + id="wasabi.statusbar.text" + x="100" y="2" + w="-174" h="12" + relatw="1" + font="arial" + color="drawer.color.text.dark" fontsize="14" + display="VID_Info" wrap="0" + ghost="1" + /> +</groupdef> + + +<groupdef id="buttons.vis"> + <layer + x="0" y="0" + image="player.button.vis.bg.left" + /> + + <button + id="button.vid.fs" + action="VIS_FS" + x="3" y="2" + image="player.button.video.fs" + downImage="player.button.video.fs.pressed" + hoverImage="player.button.video.fs.hover" + tooltip="Fullscreen" + rectrgn="1" + /> + + <button + id="button.vis.prev" + action="VIS_Prev" + x="38" y="2" + image="player.button.vis.prev" + downImage="player.button.vis.prev.pressed" + hoverImage="player.button.vis.prev.hover" + tooltip="Previous Visualization" + rectrgn="1" + /> + + <button + id="button.vis.next" + action="VIS_Next" + x="84" y="2" + image="player.button.vis.next" + downImage="player.button.vis.next.pressed" + hoverImage="player.button.vis.next.hover" + tooltip="Next Visualization" + rectrgn="1" + /> + + <togglebutton + id="button.vis.random" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + x="142" y="2" + image="player.button.vis.random" + downImage="player.button.vis.random.pressed" + hoverImage="player.button.vis.random.hover" + tooltip="Toggle Random Visualization" + rectrgn="1" + /> + <togglebutton + id="led.vis.random" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + x="200" y="-2" + image="player.led.off" + downImage="player.led.on" + activeImage="player.led.on" + rectrgn="1" + /> + + <layer + x="-43" y="0" + relatx="1" + image="player.button.vis.bg.right" + /> + <button + id="button.vis.misc" + action="Vis_Menu" + x="-40" y="2" + relatx="1" + image="player.button.video.misc" + downImage="player.button.video.misc.pressed" + hoverImage="player.button.video.misc.hover" + tooltip="Options" + rectrgn="1" + /> + +</groupdef> + +<groupdef id="buttons.video.detach"> + <layer + x="0" y="0" + image="player.button.video.detach.bg" + /> + <button + id="button.vid.detach" + x="3" y="2" + image="player.button.video.detach" + downImage="player.button.video.detach.pressed" + hoverImage="player.button.video.detach.hover" + tooltip="Detach Video" + rectrgn="1" + /> +</groupdef> + +<groupdef id="buttons.video.switchto"> + <layer + x="0" y="0" + image="player.button.video.switchto.bg" + /> + <button + id="button.vid.switchto" + x="3" y="2" + image="player.button.video.switchto" + downImage="player.button.video.switchto.pressed" + hoverImage="player.button.video.switchto.hover" + tooltip="Switch to Visualizer" + rectrgn="1" + /> +</groupdef> + + +<groupdef id="buttons.vis.detach"> + <layer + x="0" y="0" + image="player.button.vis.detach.bg" + /> + <button + id="button.vis.detach" + x="3" y="2" + image="player.button.vis.detach" + downImage="player.button.vis.detach.pressed" + hoverImage="player.button.vis.detach.hover" + tooltip="Detach Visualizations" + rectrgn="1" + /> +</groupdef> + +<groupdef id="buttons.vis.switchto"> + <layer + x="0" y="0" + image="player.button.vis.switchto.bg" + /> + <button + id="button.vis.switchto" + x="3" y="2" + image="player.button.vis.switchto" + downImage="player.button.vis.switchto.pressed" + hoverImage="player.button.vis.switchto.hover" + tooltip="Switch to Video" + rectrgn="1" + /> +</groupdef> + + + +<groupdef id="videowindow" rectrgn="1"> + <windowholder id="myvideownd" fitparent="1" autoclose="1" autoopen="1" autoavailable="0" visible="0" hold="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}"/> + <windowholder id="myviswnd" fitparent="1" autoclose="1" autoopen="1" autoavailable="0" visible="0" hold="guid:avs" autofocus="0"/> +</groupdef> + +<groupdef id="video.group" rectrgn="1"> + <rect fitparent="1" color="0,0,0" filled="1" /> + <group id="videowindow" fitparent="1"/> +</groupdef> + + +<groupdef id="AVSGroup" relatw="1" w="0" relath="1" h="-280" visible="0" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.videoavs.topleft" + resize="left" + /> + <layer + x="10" y="0" + ghost="0" + relatw="1" + w="-20" + image="player.videoavs.topmiddle" + /> + <layer + x="-10" y="0" + relatx="1" + image="player.videoavs.topright" + resize="right" + /> + + <layer + x="0" y="21" + relath="1" + h="-47" + image="player.videoavs.left" + resize="left" + /> + <layer + x="4" y="21" + ghost="0" + relatw="1" + w="-8" + relath="1" + h="-47" + image="player.videoavs.middle" + /> + <layer + x="-4" y="21" + relatx="1" + relath="1" + h="-47" + image="player.videoavs.right" + resize="right" + /> + + <layer + x="0" y="-26" + ghost="0" + image="player.videoavs.bottomleft" + relaty="1" + /> + <layer + x="10" y="-26" + ghost="0" + relatw="1" + w="-60" + relaty="1" + image="player.videoavs.bottommiddle" + /> + <layer + x="-50" y="-26" + ghost="0" + relatx="1" + relaty="1" + image="player.videoavs.bottomright" + /> + + <layer + id="player.button.videoavs.up.bg2" + x="-45" y="0" + relatx="1" + image="player.button.videoavs.up.bg2" + /> + + <group id="video.group" x="4" y="21" relatw="1" relath="1" w="-8" h="-47"/> + <group id="buttons.video" x="10" relatw="1" w="0" relaty="1" y="-21"/> + <group id="buttons.vis" x="10" relatw="1" w="0" relaty="1" y="-21"/> + <group id="buttons.video.detach" x="5" y="3" visible="0"/> + <group id="buttons.vis.detach" x="5" y="3" visible="0"/> + + <group id="buttons.video.switchto" x="-170" y="3" relatx="1" visible="0"/> + <group id="buttons.vis.switchto" x="-170" y="3" relatx="1" visible="1"/> + +</groupdef> + + +<groupdef id="player.main" relatw="1" w="0" h="126"> + <layer + id="window.left" + x="0" y="0" + image="player.main.left" + sysregion = "1" + /> + <layer + id="window.center" + x="180" y="0" + w="-270" + relatw="1" + image="player.main.center" + sysregion = "1" + /> + <layer + id="window.right" + x="-90" y="0" + relatx="1" + image="player.main.right" + sysregion = "1" + /> + + <layer + id="window.bg2.left" + x="138" y="95" + image="player.main.bg2.left" + sysregion = "1" + /> + + <layer + id="window.bg2.center" + x="198" y="95" + w="-288" + relatw="1" + image="player.main.bg2.center" + sysregion = "1" + /> + + <layer + id="window.bg2.right" + x="-90" y="95" + relatx="1" + image="player.main.bg2.right" + sysregion = "1" + /> + <layer + x="-72" y="107" + relatx="1" + image="player.main.bg2.textoverlay" + /> + <layer + id="window.left.bottom.region" + x="0" y="120" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + id="window.right.bottom.region" + x="-6" y="120" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + + <!-- the display --> + <group id="player.normal.display" x="5" y="3" /> + + <!-- the playback buttons --> + <group id="player.normal.playbuttons" x="4" y="93" /> + + <!-- the volume / mute / resize / ... --> + <group id="player.bar.rightbottom" x="0" y="0" /> + + + + <!-- SEEK SLIDER --> + + <layer + id="seekbar.left" + x="6" y="75" + ghost="1" + image="player.seekbar.left" + /> + <layer + id="seekbar.center" + x="16" y="75" + ghost="1" + relatw="1" + w="-121" + image="player.seekbar.center" + /> + <layer + id="seekbar.right" + x="-105" y="75" + ghost="1" + relatx="1" + image="player.seekbar.right" + /> + + <ProgressGrid + w="-110" h="4" relatw="1" + orientation="right" + x="10" y="79" + middle="player.progressbar.center" + /> + + <slider + id="Seeker" + action="SEEK" + x="6" y="75" + h="13" + relatw="1" + w="-100" + thumb="player.button.seek" + downThumb="player.button.seek.pressed" + hoverThumb="player.button.seek.hover" + tooltip="Seeker" + /> + <slider + id="SeekerGhost" + action="SEEK" + x="6" y="75" + h="13" + relatw="1" + w="-100" + thumb="player.button.seek" + downThumb="player.button.seek.pressed" + hoverThumb="player.button.seek.hover" + /> + + <!-- Shuffle / Repeat --> + <layer + id="button.repeat.bg" + x="-44" y="18" + ghost="1" + relatx="1" + image="player.button.repeat.bg" + /> + <layer + id="button.shuffle.bg" + x="-44" y="41" + ghost="1" + relatx="1" + image="player.button.shuffle.bg" + /> + + <NStatesButton + id="Repeat" + x="-40" y="22" + nstates="3" + relatx="1" + image="player.button.repeat" + downImage="player.button.repeat.pressed" + hoverImage="player.button.repeat.hover" + activeImage="player.button.repeat" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + rectrgn="1" + /> + <togglebutton + id="Shuffle" + x="-40" y="45" + relatx="1" + image="player.button.shuffle" + downImage="player.button.shuffle.pressed" + hoverImage="player.button.shuffle.hover" + activeImage="player.button.shuffle" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + rectrgn="1" + /> + + <NStatesButton + id="RepeatLED" + x="-19" y="22" + relatx="1" + nstates="3" + autoelements="0" + image="player.led.off" + downImage="player.led.on" + activeImage="player.led.on" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + rectrgn="1" + /> + <togglebutton + id="ShuffleLED" + x="-19" y="45" + relatx="1" + image="player.led.off" + downImage="player.led.on" + activeImage="player.led.on" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + rectrgn="1" + /> + + + <layer + id="player.button.videoavs.overlay" + x="-43" y="0" + ghost="0" + relatx="1" + image="player.button.videoavs.overlay" + /> + + <layer + id="player.button.mlpl.bg" + x="-94" y="69" + ghost="0" + relatx="1" + image="player.button.mlpl.bg" + /> + + <button + id="EJECT" + action="EJECT" + x="-86" y="75" + relatx="1" + image="player.button.eject" + downImage="player.button.eject.pressed" + hoverImage="player.button.eject.hover" + tooltip="Open file(s)" + /> + + <layer + x="-60" y="75" + relatx="1" + image="player.button.pl" + /> + <layer + x="-34" y="75" + relatx="1" + image="player.button.ml" + /> + + <button + id="pl" + action="TOGGLE" param="guid:pl" + x="-60" y="75" + relatx="1" + image="player.button.pl" + downImage="player.button.pl.pressed" + hoverImage="player.button.pl.hover" + activeImage="player.button.pl.active" + tooltip="Playlist Editor" + /> + <button + id="ml" + action="TOGGLE" param="guid:ml" + x="-34" y="75" + relatx="1" + image="player.button.ml" + downImage="player.button.ml.pressed" + hoverImage="player.button.ml.hover" + activeImage="player.button.ml.active" + tooltip="Media Library" + /> + + <layer + x="0" y="0" + w="3" h="0" + relath="1" + resize="left" + /> + <layer + x="-5" y="0" + w="5" h="-20" + relath="1" + relatx="1" + resize="right" + /> + + <script id="seek.script" file="scripts/seek.maki" /> + <script id="display.script" file="scripts/display.maki" /> + + +</groupdef> + +<groupdef id="player.content.dummy.group" name="WinampDummyGroup" relatw="1" relath="1" w="0" h="0"> + <group id="player.normal.drawer" x="0" y="-263" relaty="1" sysregion="1" move="1"/> + <group id="player.normal.drawer.shadow" x="0" y="-149" relaty="1" relatw="1" w="0" visible="0" sysregion="1"/> + <group id="player.main" x="0" y="-263" relaty="1" sysregion="1"/> + <group id="AVSGroup" x="0" y="17" sysregion="1"/> + + <layer + id="player.button.videoavs.up.bg" + x="-45" y="17" + relatx="1" + image="player.button.videoavs.up.bg" + /> + <button + id="videoavs.close" + x="-37" y="19" + relatx="1" + image="player.button.videoavs.up" + downImage="player.button.videoavs.up.pressed" + hoverImage="player.button.videoavs.up.hover" + tooltip="Close Video and Visualization" + rectrgn="1" + /> + <button + id="videoavs.open" + x="-37" y="19" + relatx="1" + image="player.button.videoavs" + downImage="player.button.videoavs.pressed" + hoverImage="player.button.videoavs.hover" + tooltip="Open Video and Visualization" + rectrgn="1" + /> + <layer + id="openclosehider" + x="-44" y="16" + relatx="1" + image="player.openclose.overlay" + /> + + <script id="configtabs.script" file="scripts/configtabs.maki" /> + <script id="videoavs.script" file="scripts/videoavs.maki" /> + +</groupdef> + +<groupdef id="player.content.group" name="Winamp"> + <group id="player.content.dummy.group" x="0" y="0"/> + <script id="mainmenu.script" file="scripts/mainmenu.maki" /> +</groupdef> + +<include file="configdrawer.xml" />
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/player-normal.xml b/Src/resources/skins/Winamp Modern/xml/player-normal.xml new file mode 100644 index 00000000..4dacbb76 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-normal.xml @@ -0,0 +1,114 @@ +<!-- player-normal.xml creates the layout of the Winamp Player Window. --> + +<include file="player-normal-group.xml" /> + + <layout + id="normal" + minimum_w="354" + minimum_h="280" + h="280" + w="354" + droptarget="pldr" + snapadjustbottom="116" + linkwidth="shade" + > + + <Wasabi:MainFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="player.content.group" + padtitleleft="10" + padtitleright="25" + shade="shade" + /> + <sendparams target="window.titlebar.title" default="WINAMP"/> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + <hideobject target="close;close.inactive"/> + + +<layer + x="-42" y="4" + relatx="1" + image="wasabi.button.bg.title" +/> +<button + id="Minimize" + action="MINIMIZE" + x="-41" y="4" + relatx="1" + image="wasabi.button.minimize.inactive" + tooltip="Minimize Winamp" + activeAlpha="0" +/> +<button + id="Minimize" + action="MINIMIZE" + x="-41" y="4" + relatx="1" + image="wasabi.button.minimize" + downImage="wasabi.button.minimize.pressed" + hoverImage="wasabi.button.minimize.hover" + tooltip="Minimize Winamp" + inactiveAlpha="0" +/> + +<layer + x="-30" y="4" + relatx="1" + image="wasabi.button.bg.title" +/> +<button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade.inactive" + tooltip="Windowshade Mode" + activeAlpha="0" +/> +<button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade" + downImage="wasabi.button.winshade.pressed" + hoverImage="wasabi.button.winshade.hover" + tooltip="Windowshade Mode" + inactiveAlpha="0" +/> + +<layer + x="-18" y="4" + relatx="1" + image="wasabi.button.bg.title" +/> +<button + id="Close" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit.inactive" + tooltip="Exit Winamp" + activeAlpha="0" +/> +<button + id="Close" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="wasabi.button.exit" + downImage="wasabi.button.exit.pressed" + hoverImage="wasabi.button.exit.hover" + tooltip="Exit Winamp" + inactiveAlpha="0" +/> + + <groupdef id="playlistpro"> + <PlaylistPro id="centro.windowholder.playlist1" x="0" y="0" h="0" w="0" relath="1" relatw="1" autofocus="1" wantfocus="1" autoclose="1" autoopen="1" autoavailable="1"/> + </groupdef> + +</layout> + + + diff --git a/Src/resources/skins/Winamp Modern/xml/player-shade-group.xml b/Src/resources/skins/Winamp Modern/xml/player-shade-group.xml new file mode 100644 index 00000000..db81505f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-shade-group.xml @@ -0,0 +1,684 @@ + +<groupdef id="shadeX1"> <!-- SHUFFLE/REPEAT --> + <layer + x="0" y="0" + image="shade.bg.X1" + ghost="1" + /> + + <NStatesButton + id="shadeRepeat" + x="1" y="8" + nstates="3" + image="shade.button.repeat" + downImage="shade.button.repeat.pressed" + hoverImage="shade.button.repeat.hover" + tooltip="Toggle Playlist/Song Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + rectrgn="1" + /> + <togglebutton + id="shadeShuffle" + x="20" y="8" + image="shade.button.shuffle" + downImage="shade.button.shuffle.pressed" + hoverImage="shade.button.shuffle.hover" + activeImage="shade.button.shuffle" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + rectrgn="1" + /> + + <NStatesButton + id="shadeRepeatLED" + x="12" y="1" + nstates="3" + autoelements="0" + image="shade.led.off" + downImage="shade.led.on" + activeImage="shade.led.on" + tooltip="Toggle Playlist Repeating" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Repeat" + cfgvals="0;1;-1" + rectrgn="1" + /> + <togglebutton + id="shadeShuffleLED" + x="31" y="1" + image="shade.led.off" + downImage="shade.led.on" + activeImage="shade.led.on" + tooltip="Toggle Playlist Shuffling" + cfgattrib="{45F3F7C1-A6F3-4EE6-A15E-125E92FC3F8D};Shuffle" + rectrgn="1" + /> +</groupdef> + + +<groupdef id="shadeX2"> <!-- EQ --> + <layer + x="0" y="0" + image="shade.bg.X2" + ghost="1" + /> + <button + id="shadeeq" + x="3" y="4" + image="shade.button.eq" + downImage="shade.button.eq.pressed" + activeImage="shade.button.eq" + hoverImage="shade.button.eq.hover" + tooltip="Equalizer" + /> +</groupdef> + +<groupdef id="shadeX3"> <!-- COLOR THEMES --> + <layer + x="0" y="0" + image="shade.bg.X3" + ghost="1" + /> + <button + id="shadect" + action="TOGGLE" param="{53DE6284-7E88-4c62-9F93-22ED68E6A024}" + x="15" y="13" + image="shade.button.ct" + downImage="shade.button.ct.pressed" + activeImage="shade.button.ct" + hoverImage="shade.button.ct.hover" + tooltip="Color Themes" + /> + <ColorThemes:Mgr + id="colorthemes_shade" + x="50" y="50" + w="200" h="100" + nohscroll="1" + visible="1" + /> + <Button + id="Switch.ct.prev" + action="colorthemes_previous" + action_target="colorthemes_shade" + x="6" y="13" + image="shade.button.ct.prev" + downImage="shade.button.ct.prev.pressed" + hoverImage="shade.button.ct.prev.hover" + tooltip="Previous ColorTheme" + /> + <Button + id="Switch.ct.next" + action="colorthemes_next" + action_target="colorthemes_shade" + x="45" y="13" + image="shade.button.ct.next" + downImage="shade.button.ct.next.pressed" + hoverImage="shade.button.ct.next.hover" + tooltip="Next ColorTheme" + /> + <togglebutton + id="shadeaot" + cfgattrib="{280876CF-48C0-40BC-8E86-73CE6BB462E5};Always on top" + x="7" y="2" + image="shade.button.aot" + downImage="shade.button.aot.pressed" + activeImage="shade.button.aot" + hoverImage="shade.button.aot.hover" + tooltip="Toggle Always on top" + /> + <togglebutton + id="shadeaot" + cfgattrib="{280876CF-48C0-40BC-8E86-73CE6BB462E5};Always on top" + x="42" y="1" + image="shade.led.off" + activeImage="shade.led.on" + tooltip="Toggle Always on top" + /> +</groupdef> + +<groupdef id="shadeX4"> <!-- Always on top --> + <layer + x="0" y="0" + image="shade.bg.X4" + ghost="1" + /> +</groupdef> + + + +<groupdef id="shadedisplay"> <!-- Display--> + <layer + x="0" y="0" + image="shade.display.bg.left" + ghost="1" + /> + <layer + x="10" y="0" + w="-20" + relatw="1" + image="shade.display.bg.center" + ghost="1" + /> + <layer + x="-10" y="0" + relatx="1" + image="shade.display.bg.right" + ghost="1" + /> + <layer + x="3" y="4" + image="shade.display.left" + ghost="1" + /> + <layer + x="13" y="4" + w="-21" + relatw="1" + image="shade.display.center" + ghost="1" + tile="1" + /> + <layer + x="-8" y="4" + relatx="1" + image="shade.display.right" + ghost="1" + /> + + <!-- SEEK SLIDER --> + <slider + id="shadeSeeker2" + action="SEEK" + x="1" y="15" + h="10" w="-1" + relatw="1" + thumb="shade.button.seek" + downThumb="shade.button.seek.pressed" + hoverThumb="shade.button.seek.hover" + tooltip="Seeker" + alpha="100" + /> + <slider + id="shadeSeekerGhost2" + action="SEEK" + x="1" y="15" + h="10" w="-1" + relatw="1" + thumb="shade.button.seek" + downThumb="shade.button.seek.pressed" + hoverThumb="shade.button.seek.hover" + tooltip="Seeker" + /> +</groupdef> + + +<groupdef id="shadedisplay2"> <!-- Display--> + <layer + x="0" y="0" + image="shade.display.bg.left" + ghost="1" + /> + <layer + x="10" y="0" + w="-20" + relatw="1" + image="shade.display.bg.center" + ghost="1" + /> + <layer + x="-21" y="1" + relatx="1" + image="shade.display2.bg.right" + ghost="1" + /> + <layer + x="3" y="4" + image="shade.display.left" + ghost="1" + /> + <layer + x="13" y="4" + w="-32" + relatw="1" + image="shade.display.center" + ghost="1" + tile="1" + /> + <layer + x="-19" y="4" + relatx="1" + image="shade.display.right" + ghost="1" + /> + + <button + id="shade.expand" + x="-10" y="8" + relatx="1" + image="shade.button.expand" + downImage="shade.button.expand.pressed" + hoverImage="shade.button.expand.hover" + tooltip="Expand Display" + rectrgn="1" + /> + <button + id="shade.reduce" + x="-10" y="8" + relatx="1" + image="shade.button.reduce" + downImage="shade.button.reduce.pressed" + hoverImage="shade.button.reduce.hover" + tooltip="Reduce Display / Show more options" + rectrgn="1" + /> + + <!-- SEEK SLIDER --> + <slider + id="shadeSeeker" + action="SEEK" + x="1" y="15" + h="10" w="-11" + relatw="1" + thumb="shade.button.seek" + downThumb="shade.button.seek.pressed" + hoverThumb="shade.button.seek.hover" + tooltip="Seeker" + alpha="100" + /> + <slider + id="shadeSeekerGhost" + action="SEEK" + x="1" y="15" + h="10" w="-11" + relatw="1" + thumb="shade.button.seek" + downThumb="shade.button.seek.pressed" + hoverThumb="shade.button.seek.hover" + tooltip="Seeker" + /> +</groupdef> + +<groupdef id="shadeticker" h="25"> <!-- Songticker --> + <Songticker + id="SongtickerShade" ticker="1" + display="songname" showlen="1" + x="40" y="4" + w="-44" h="13" relatw="1" + leftpadding="5" + rightpadding="-5" + font="shade.songticker.font" + align="left" + rightclickaction="trackmenu" + dblclickaction="trackinfo" + fontsize="13" + color="font.display.songtickershade" + altfont="Arial" + /> + <Text + id="InfotickerShade" + x="40" y="4" + w="-44" h="13" relatw="1" + leftpadding="5" + rightpadding="-5" + font="shade.songticker.font" + align="left" + rightclickaction="trackmenu" + dblclickaction="trackinfo" + fontsize="13" + color="font.display.songtickershade" + altfont="Arial" + visible="0" + /> + <layer + x="40" y="4" + image="shade.display.ticker.overlay" + ghost="1" + /> +</groupdef> + +<groupdef id="shadevis" h="25"> <!-- VIS --> + + <layer + x="0" y="4" + image="shade.display.vis.bg" + ghost="1" + /> + + <vis + id="visual" + x="4" y="4" w="53" h="13" + gammagroup="DisplayVis" + ColorBand1="255,255,255" + ColorBand2="255,255,255" + ColorBand3="255,255,255" + ColorBand4="255,255,255" + ColorBand5="255,255,255" + ColorBand6="255,255,255" + ColorBand7="255,255,255" + ColorBand8="255,255,255" + ColorBand9="255,255,255" + ColorBand10="255,255,255" + ColorBand11="255,255,255" + ColorBand12="255,255,255" + ColorBand13="255,255,255" + ColorBand14="255,255,255" + ColorBand15="255,255,255" + ColorBand16="255,255,255" + + colorbandpeak="255,255,255" + colorosc1="255,255,255" + colorosc2="255,255,255" + colorosc3="255,255,255" + colorosc4="255,255,255" + colorosc5="255,255,255" + /> + + <layer id="main.vis.trigger" x="4" y="4" w="53" h="13" rectrgn="1"/> + + <script file="scripts/visualizer.maki" /> + + <layer + x="0" y="4" + image="shade.display.vis.overlay" + ghost="1" + /> + +</groupdef> + +<groupdef id="shadetimer" h="25"> <!-- Timer --> + + <button id="nowplaying" + x="7" y="6" rectrgn="1" + image="shade.button.nowplaying.normal" + hoverImage="shade.button.nowplaying.hover" + downImage="shade.button.nowplaying.down" + tooltip="More information about this artist" + /> + + <script file="scripts/shadelinks.maki"/> + + <text + id="timer" + display="time" + x="18" y="4" + w="40" h="12" + font="shade.songticker.font" + align="left" + timecolonwidth="2" + timeroffstyle="1" + fontsize="12" + color="font.display" + altfont="Arial" + altfontsize="13" + altbold="1" + /> +</groupdef> + + + +<groupdef id="shademain" name="Shade Main" w="0" h="25" relatw="1"> + + <!-- Background --> + <layer + x="0" y="0" + image="shade.bg.left" + dblClickAction="SWITCH;normal" + /> + <layer + x="303" y="0" + w="-352" + relatw="1" + image="shade.bg.center" + dblClickAction="SWITCH;normal" + /> + <layer + x="-49" y="0" + relatx="1" + image="shade.bg.right" + dblClickAction="SWITCH;normal" + /> + <layer + x="128" y="5" + image="shade.bg.overlay" + dblClickAction="SWITCH;normal" + /> + <layer + x="-54" y="0" + relatx="1" + image="shade.bg.resize" + ghost="1" + /> + <layer + id="shade.region.left" + x="0" y="0" + image="shade.regions.left" + sysregion="-2" + /> + <layer + id="shade.region.right" + x="-5" y="0" + relatx="1" + image="shade.regions.right" + sysregion="-2" + /> + <layer + x="0" y="0" + w="5" h="25" + resize="left" + /> + <layer + x="-5" y="0" + relatx="1" + w="5" h="25" + resize="right" + /> + + + <!-- Sysmenu --> + <button + id="shadeSysmenu" + action="SYSMENU" + x="6" y="4" + image="shade.button.sysmenu" + downImage="shade.button.sysmenu.pressed" + hoverImage="shade.button.sysmenu.hover" + tooltip="Main Menu" + /> + + + <!-- PREVIOUS --> + <button + id="shadePrevious" + action="PREV" + x="29" y="6" + image="shade.button.previous" + downImage="shade.button.previous.pressed" + hoverImage="shade.button.previous.hover" + tooltip="Previous" + rectrgn="1" + /> + <!-- Playback Button Status --> + <status + id="shadestatus" + x="54" y="8" + stopBitmap="shade.button.status.stop" + playBitmap="shade.button.status.play" + pauseBitmap="shade.button.status.pause" + ghost="1" + /> + + <!-- PLAY --> + <button + id="shadePlay" + action="PLAY" + x="49" y="4" + image="shade.button.play" + downImage="shade.button.play.pressed" + hoverImage="shade.button.play.hover" + status="shade.button.play.active" + tooltip="Play" + rectrgn="1" + /> + + <!-- PAUSE --> + <button + id="shadePause" + action="PAUSE" + x="71" y="4" + image="shade.button.pause" + downImage="shade.button.pause.pressed" + hoverImage="shade.button.pause.hover" + tooltip="Pause" + rectrgn="1" + /> + + <!-- STOP --> + <button + id="shadeStop" + action="STOP" + x="93" y="4" + image="shade.button.stop" + downImage="shade.button.stop.pressed" + hoverImage="shade.button.stop.hover" + tooltip="Stop" + rectrgn="1" + /> + + <!-- NEXT --> + <button + id="shadeNext" + action="NEXT" + x="116" y="6" + image="shade.button.next" + downImage="shade.button.next.pressed" + hoverImage="shade.button.next.hover" + tooltip="Next" + rectrgn="1" + /> + + + <!-- VOLUME --> + <layer + id="volumebarShade" + x="168" y="17" + w="10" + image="player.volumebar" + /> + <slider + id="shadeVolume" + action="VOLUME" + x="164" y="12" + w="56" h="11" + thumb="shade.button.volume" + downThumb="shade.button.volume.pressed" + hoverThumb="shade.button.volume.hover" + tooltip="Volume" + /> + + <!-- MUTE --> + <togglebutton + id="shademute" + x="148" y="8" + image="shade.button.mute.off" + downImage="shade.button.mute.on.pressed" + hoverImage="shade.button.mute.on.hover" + activeImage="shade.button.mute.on" + tooltip="Toggle Mute" + rectrgn="1" + /> + + <!-- EJECT/PL/ML --> + <button + id="shadeEJECT" + action="EJECT" + x="229" y="10" + image="shade.button.eject" + downImage="shade.button.eject.pressed" + hoverImage="shade.button.eject.hover" + tooltip="Open file(s)" + /> + <layer + x="249" y="10" + image="shade.button.pl" + /> + <layer + x="267" y="10" + image="shade.button.ml" + /> + + <button + id="shadepl" + action="TOGGLE" param="guid:pl" + x="249" y="10" + image="shade.button.pl" + downImage="shade.button.pl.pressed" + hoverImage="shade.button.pl.hover" + activeImage="shade.button.pl.active" + tooltip="Playlist Editor" + /> + <button + id="shademl" + action="TOGGLE" param="guid:ml" + x="267" y="10" + image="shade.button.ml" + downImage="shade.button.ml.pressed" + hoverImage="shade.button.ml.hover" + activeImage="shade.button.ml.active" + tooltip="Media Library" + /> + + <!-- Resizer --> + <layer + x="-54" y="1" + w="9" h="23" + relatx="1" + image="shade.pl.resize" + resize="right" + rectrgn="1" + /> + + <!-- CLOSE/SHADE/MINIMIZE --> + <button + id="shadeMinimize" + action="MINIMIZE" + x="-41" y="4" + relatx="1" + image="shade.button.minimize" + downImage="shade.button.minimize.pressed" + hoverImage="shade.button.minimize.hover" + tooltip="Minimize Winamp" + /> + <button + id="shadeClose" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="shade.button.close" + downImage="shade.button.close.pressed" + hoverImage="shade.button.close.hover" + tooltip="Exit Winamp" + /> + <button + id="shadeWinshade" + action="SWITCH" param="normal" + x="-29" y="4" + relatx="1" + image="shade.button.winshade" + downImage="shade.button.winshade.pressed" + hoverImage="shade.button.winshade.hover" + tooltip="Return to Normal Mode" + /> + + <group id="shadedisplay" x="299" y="0" w="150" visible="0"/> + <group id="shadedisplay2" x="299" y="0" w="150" visible="0"/> + <group id="shadeticker" x="312" y="0" w="40" visible="0"/> + <group id="shadevis" x="299" y="0" w="60" relatx="1" visible="0"/> + <group id="shadetimer" x="299" y="0" w="53" visible="0"/> + <group id="shadeX1" x="-237" y="0" relatx="1" visible="0"/> + <group id="shadeX2" x="-195" y="0" relatx="1" visible="0"/> + <group id="shadeX3" x="-174" y="1" relatx="1" visible="0"/> + <group id="shadeX4" x="-130" y="0" relatx="1" visible="0"/> + + <script id="seekshade.script" file="scripts/seekshade.maki" /> + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/player-shade.xml b/Src/resources/skins/Winamp Modern/xml/player-shade.xml new file mode 100644 index 00000000..6fc87018 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player-shade.xml @@ -0,0 +1,27 @@ +<!-- player-shade.xml creates the layout of the Winamp Shade Window. --> + + <include file="player-shade-group.xml"/> + + <layout + id="shade" + minimum_w="354" + minimum_h="25" + h="25" + w="354" + droptarget="pldr" + background="wasabi.frame.basetexture" + linkwidth="normal" appbar="top|bottom" + > + + + <!--<group id="shadedrawer" x="215" y="0" sysregion="1" move="1"/>--> + <group id="shademain" x="0" y="0" sysregion="1"/> + + <script id="shadecontrol.script" file="scripts/shadesizepos.maki" /> + <script id="shadecontrol.script" file="scripts/shadecontrol.maki" /> + + +</layout> + + + diff --git a/Src/resources/skins/Winamp Modern/xml/player.xml b/Src/resources/skins/Winamp Modern/xml/player.xml new file mode 100644 index 00000000..6a3d81e4 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/player.xml @@ -0,0 +1,11 @@ +<include file="player-elements.xml"/> +<include file="player-elements-shade.xml"/> + +<container id="main" name="Player Window" default_x="0" default_y="0" default_h="164" default_visible="1"> + + <include file="player-normal.xml"/> + <include file="player-shade.xml"/> + <include file="playlistpro.xml"/> + +</container> + diff --git a/Src/resources/skins/Winamp Modern/xml/playlistpro.xml b/Src/resources/skins/Winamp Modern/xml/playlistpro.xml new file mode 100644 index 00000000..339a227d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/playlistpro.xml @@ -0,0 +1,62 @@ +<groupdef id="PlaylistPro.list.group" minimum_h="64" background="studio.BaseTexture"> + + <grid + fitparent="1" + topleft="sui.pl.search.box.1" + top="sui.pl.search.box.2" + topright="sui.pl.search.box.3" + left="sui.pl.search.box.4" + middle="sui.pl.search.box.5" + right="sui.pl.search.box.6" + bottomleft="sui.pl.search.box.7" + bottom="sui.pl.search.box.8" + bottomright="sui.pl.search.box.9" + sysregion="1" + /> + + <list id="PlaylistPro.list" x="4" y="0" w="-6" h="-24" relatw="1" relath="1" nocolheader="1" antialias="1" font="arial" multiselect="1"/> + <text id="PlaylistPro.list.news" x="3" y="-22" w="-6" h="20" relaty="1" relatw="1" text="Results found: 22 items" font="arial" color="wasabi.list.text" align="center" antialias="1" fontsize="17"/> + <layer x="0" y="-1" relaty="1" w="0" relatw="1" h="20" resize="bottom" /> + +</groupdef> + +<container id="searchresults" name="Search Results" dynamic="1" default_visible="0" nomenu="1" nofocusapponclose="1" autoclose="1"> + <layout id="normal" noparent="1" ontop="1" noactivation="1" nodock="1" move="0" autoclose="1"> + <group id="PlaylistPro.list.group" x="1" y="0" h="0" w="-12" relath="1" relatw="1"/> + <layer id="1px.patch" x="-11" y="0" w="1" relath="1" relatx="1" h="20" image="sui.pl.search.box.6" sysregion="1"/> + </layout> +</container> + + +<groupdef id="wasabi.edits" xuitag="Wasabi:EditBox2" embed_xui="wasabi.edit.box" h="24"> + <button id="pl.search.edit.rect" x="3" y="6" w="-4" h="18" relatw="1" relath="0" rectrgn="1" tooltip="Click to search the playlist (Right-Click for search history)" cursor="IDC_IBEAM"/> + <text id="pl.search.edit.searchhelp" x="1" y="3" w="-5" h="19" relatw="1" antialias="1" color="wasabi.list.text" text="Search in Playlist" ghost="1" font="arial" alpha="230" fontsize="16"/> + <edit id="wasabi.edit.box" x="3" y="4" w="-21" h="18" relatw="1" relath="0" autoselect="1" visible="0"/> + +<button id="pl.search.edit.clear.text" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.bgv" visible="0"/> +<button id="pl.search.edit.clear" x="-20" y="2" h="19" w="20" relatx="1" rectrgn="1" image="sui.pl.search.stop.1" hoverimage="sui.pl.search.stop.1" downimage="sui.pl.search.stop.3" cursor="IDC_HAND" tooltip="Clear Search" visible="0"/> +</groupdef> + +<groupdef id="player.component.playlist.searchbar.search" h="31"> + <grid x="0" y="0" h="31" w="0" relatw="1" + left="sui.pl.search.bgv.1" middle="sui.pl.search.bgv.2" right="sui.pl.search.bgv.3"/> + + <grid x="0" y="0" h="30" w="0" relatw="1" + left="sui.pl.search.bg.1" middle="sui.pl.search.bg.2" right="sui.pl.search.bg.3"/> + + <button id="pl.search.go" x="-26" y="4" h="19" w="20" relatx="1" image="sui.pl.search.go.1" hoverimage="sui.pl.search.go.2" downimage="sui.pl.search.go.3" tooltip="Go Search" rectrgn="1"/> + <Wasabi:EditBox2 id="pl.search.edit" x="4" y="4" relatw="1" w="-10" h="20" text=""/> +</groupdef> +<groupdef id="PlaylistPro.topbar"> + <group id="player.component.playlist.searchbar.search" x="0" y="0" w="0" relatw="1"/> +</groupdef> + +<groupdef id="PlaylistPro.xui" wantfocus="1" rectrgn="1" xuitag="PlaylistPro" embed_xui="wdh.playlist"> + <!--rect fitparent="1" filled="1" color="wasabi.window.background"/--> + + <windowholder id="wdh.playlist" h="0" x="0" w="0" relath="1" relatw="1" autofocus="0" wantfocus="0" autoclose="1" autoopen="1" autoavailable="1" hold="guid:{45f3f7c1-a6f3-4ee6-a15e-125e92fc3f8d}"/> + +<group id="PlaylistPro.topbar" x="0" y="0" w="0" h="30" relatw="1" visible="0"/> + <script file="scripts/playlistpro.maki"/> +</groupdef> + diff --git a/Src/resources/skins/Winamp Modern/xml/pledit-normal.xml b/Src/resources/skins/Winamp Modern/xml/pledit-normal.xml new file mode 100644 index 00000000..27de17cd --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/pledit-normal.xml @@ -0,0 +1,259 @@ +<groupdef id="pledit.buttons.group" relatw="1" w="0" h="21"> + <layer + x="0" y="0" + image="player.pl.button.add.bg" + /> + <button + id="pl.add" + action="PE_Add" + x="3" y="4" + image="player.pl.button.add" + downImage="player.pl.button.add.pressed" + hoverImage="player.pl.button.add.hover" + tooltip="Add Files to Playlist" + /> + + <layer + x="42" y="0" + image="player.pl.button.rem.bg" + /> + <button + id="pl.rem" + action="PE_Rem" + x="46" y="4" + image="player.pl.button.rem" + downImage="player.pl.button.rem.pressed" + hoverImage="player.pl.button.rem.hover" + tooltip="Remove Files from Playlist" + /> + + <layer + x="86" y="0" + image="player.pl.button.sel.bg" + /> + <button + id="pl.sel" + action="PE_Sel" + x="90" y="4" + image="player.pl.button.sel" + downImage="player.pl.button.sel.pressed" + hoverImage="player.pl.button.sel.hover" + tooltip="Select Files in Playlist" + /> + + <layer + x="123" y="0" + image="player.pl.button.misc.bg" + /> + <button + id="pl.misc" + action="PE_Misc" + x="127" y="4" + image="player.pl.button.misc" + downImage="player.pl.button.misc.pressed" + hoverImage="player.pl.button.misc.hover" + tooltip="Misc Actions" + /> + + <layer + x="-119" y="0" + relatx="1" + image="player.pl.button.list.bg" + /> + <button + id="pl.list" + action="PE_List" + x="-115" y="4" + relatx="1" + image="player.pl.button.list" + downImage="player.pl.button.list.pressed" + hoverImage="player.pl.button.list.hover" + tooltip="Manage Playlist" + /> + + <layer + x="-187" y="1" + relatx="1" + image="player.pl.time" + /> + <layer + x="-182" y="5" + relatx="1" + image="player.pl.time.display" + /> + <layer + id="player.pl.time.left" + x="-227" y="1" + relatx="1" + image="player.pl.time.left" + visible="0" + /> + <layer + id="player.pl.time.display.left" + x="-222" y="5" + relatx="1" + image="player.pl.time.display.left" + visible="0" + /> + <text + id="PLTime" + ticker="1" + display="PE_Info" + x="-180" y="7" w="55" h="8" + relatx="1" + font="player.pe.time.font" + align="left" + valign="top" + fontsize="8" + color="font.display" + /> + + <layer + x="-24" y="4" + relatx="1" + image="player.pl.resizer" + resize="bottomright" + /> +</groupdef> + + +<groupdef id="pl.frame.layout" relatw="1" relath="1" w="0" h="-35" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.pl.topleft" + resize="topleft" + /> + <layer + x="6" y="0" + w="-12" + relatw="1" + image="player.pl.topcenter" + resize="top" + /> + <layer + x="-6" y="0" + relatx="1" + image="player.pl.topright" + resize="topright" + /> + <layer + x="0" y="5" + relath="1" + h="-50" + image="player.pl.left" + resize="left" + /> + <layer + x="-6" y="5" + relatx="1" + relath="1" + h="-50" + image="player.pl.right" + resize="right" + /> + <layer + x="0" y="-67" + relaty="1" + image="player.pl.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-25" + w="-40" + relatw="1" + relaty="1" + image="player.pl.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-67" + relatx="1" + relaty="1" + image="player.pl.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + <group id="pledit.buttons.group" x="5" y="-23" relaty="1"/> +</groupdef> + +<groupdef id="player.content.pl.dummy.group" name="PlaylistDummyGroup" relatw="1" relath="1" w="0" h="0"> + <group id="pl.frame.layout" x="0" y="1"/> + + <group id="playlistpro" y="6" h="-65" x="6" w="-12" relath="1" relatw="1"/> + <!--component + x="6" + y="6" + w="-12" + relatw="1" + h="-65" + relath="1" + noshowcmdbar="1" + autoopen="1" + autoclose="0" + param="guid:{45F3F7C1-A6F3-4ee6-A15E-125E92FC3F8D}" + /--> +</groupdef> + +<groupdef id="pledit.content.group" name="PlaylistContent"> + <group id="player.content.pl.dummy.group" x="0" y="17" sysregion="1"/> + <script id="plmenu.script" file="scripts/plmenu.maki" /> + <script id="pltime.script" file="scripts/pltime.maki" /> +</groupdef> + +<layout id="normal" minimum_w="354" minimum_h="164" h="164" w="436" linkwidth="shade" appbar="left|top|right|bottom"> + <Wasabi:PlaylistFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="pledit.content.group" + padtitleleft="10" + padtitleright="12" + /> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + + <layer + x="-30" y="4" + relatx="1" + image="wasabi.button.bg.title" + /> + <button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade.inactive" + tooltip="Windowshade Mode" + activeAlpha="0" + /> + <button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade" + downImage="wasabi.button.winshade.pressed" + hoverImage="wasabi.button.winshade.hover" + tooltip="Windowshade Mode" + inactiveAlpha="0" + /> + +</layout> + + + + + + + diff --git a/Src/resources/skins/Winamp Modern/xml/pledit-normal_2.xml b/Src/resources/skins/Winamp Modern/xml/pledit-normal_2.xml new file mode 100644 index 00000000..7f0a2f47 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/pledit-normal_2.xml @@ -0,0 +1,259 @@ +<groupdef id="pledit.buttons.group" relatw="1" w="0" h="21"> + <layer + x="0" y="0" + image="player.pl.button.add.bg" + /> + <button + id="pl.add" + action="PE_Add" + x="3" y="4" + image="player.pl.button.add" + downImage="player.pl.button.add.pressed" + hoverImage="player.pl.button.add.hover" + tooltip="Add Files to Playlist" + /> + + <layer + x="42" y="0" + image="player.pl.button.rem.bg" + /> + <button + id="pl.rem" + action="PE_Rem" + x="46" y="4" + image="player.pl.button.rem" + downImage="player.pl.button.rem.pressed" + hoverImage="player.pl.button.rem.hover" + tooltip="Remove Files from Playlist" + /> + + <layer + x="86" y="0" + image="player.pl.button.sel.bg" + /> + <button + id="pl.sel" + action="PE_Sel" + x="90" y="4" + image="player.pl.button.sel" + downImage="player.pl.button.sel.pressed" + hoverImage="player.pl.button.sel.hover" + tooltip="Select Files in Playlist" + /> + + <layer + x="123" y="0" + image="player.pl.button.misc.bg" + /> + <button + id="pl.misc" + action="PE_Misc" + x="127" y="4" + image="player.pl.button.misc" + downImage="player.pl.button.misc.pressed" + hoverImage="player.pl.button.misc.hover" + tooltip="Misc Actions" + /> + + <layer + x="-119" y="0" + relatx="1" + image="player.pl.button.list.bg" + /> + <button + id="pl.list" + action="PE_List" + x="-115" y="4" + relatx="1" + image="player.pl.button.list" + downImage="player.pl.button.list.pressed" + hoverImage="player.pl.button.list.hover" + tooltip="Manage Playlist" + /> + + <layer + x="-187" y="1" + relatx="1" + image="player.pl.time" + /> + <layer + x="-182" y="5" + relatx="1" + image="player.pl.time.display" + /> + <layer + id="player.pl.time.left" + x="-227" y="1" + relatx="1" + image="player.pl.time.left" + visible="0" + /> + <layer + id="player.pl.time.display.left" + x="-222" y="5" + relatx="1" + image="player.pl.time.display.left" + visible="0" + /> + <text + id="PLTime" + ticker="1" + display="PE_Info" + x="-180" y="7" w="55" h="8" + relatx="1" + font="player.pe.time.font" + align="left" + valign="top" + fontsize="8" + color="font.display" + /> + + <layer + x="-24" y="4" + relatx="1" + image="player.pl.resizer" + resize="bottomright" + /> +</groupdef> + + +<groupdef id="pl.frame.layout" relatw="1" relath="1" w="0" h="-35" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.pl.topleft" + resize="topleft" + /> + <layer + x="6" y="0" + w="-12" + relatw="1" + image="player.pl.topcenter" + resize="top" + /> + <layer + x="-6" y="0" + relatx="1" + image="player.pl.topright" + resize="topright" + /> + <layer + x="0" y="5" + relath="1" + h="-50" + image="player.pl.left" + resize="left" + /> + <layer + x="-6" y="5" + relatx="1" + relath="1" + h="-50" + image="player.pl.right" + resize="right" + /> + <layer + x="0" y="-67" + relaty="1" + image="player.pl.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-25" + w="-40" + relatw="1" + relaty="1" + image="player.pl.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-67" + relatx="1" + relaty="1" + image="player.pl.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + <group id="pledit.buttons.group" x="5" y="-23" relaty="1"/> +</groupdef> + +<groupdef id="player.content.pl.dummy.group" name="PlaylistDummyGroup" relatw="1" relath="1" w="0" h="0"> + <group id="pl.frame.layout" x="0" y="1"/> + <!--component + x="6" + y="6" + w="-12" + relatw="1" + h="-65" + relath="1" + noshowcmdbar="1" + autoopen="1" + autoclose="0" + param="guid:{45F3F7C1-A6F3-4ee6-A15E-125E92FC3F8D}" + /--> + + <group id="playlistpro" y="6" h="-65" x="6" w="-12" relath="1" relatw="1"/> +</groupdef> + +<groupdef id="pledit.content.group" name="PlaylistContent"> + <group id="player.content.pl.dummy.group" x="0" y="17" sysregion="1"/> + <script id="plmenu.script" file="scripts/plmenu.maki" /> + <script id="pltime.script" file="scripts/pltime.maki" /> +</groupdef> + +<layout id="normal" minimum_w="354" minimum_h="164" h="164" w="436" linkwidth="shade" appbar="left|top|right|bottom"> + <Wasabi:PlaylistFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="pledit.content.group" + padtitleleft="10" + padtitleright="12" + /> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + + <layer + x="-30" y="4" + relatx="1" + image="wasabi.button.bg.title" + /> + <button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade.inactive" + tooltip="Windowshade Mode" + activeAlpha="0" + /> + <button + id="winshade" + action="SWITCH" param="shade" + x="-29" y="4" + relatx="1" + image="wasabi.button.winshade" + downImage="wasabi.button.winshade.pressed" + hoverImage="wasabi.button.winshade.hover" + tooltip="Windowshade Mode" + inactiveAlpha="0" + /> + +</layout> + + + + + + + diff --git a/Src/resources/skins/Winamp Modern/xml/pledit-shade-group.xml b/Src/resources/skins/Winamp Modern/xml/pledit-shade-group.xml new file mode 100644 index 00000000..307c90d3 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/pledit-shade-group.xml @@ -0,0 +1,161 @@ +<groupdef id="plshade" name="Playlist Shade" w="0" h="25" relatw="1"> + + <!-- BACKGROUND --> + <layer + x="0" y="0" + image="shade.pl.bg.left" + dblClickAction="SWITCH;normal" + resize="left" + /> + <layer + x="30" y="0" + w="-104" relatw="1" + image="shade.pl.bg.center" + dblClickAction="SWITCH;normal" + /> + <layer + x="-74" y="0" + relatx="1" + image="shade.pl.bg.right" + dblClickAction="SWITCH;normal" + /> + <layer + x="-10" y="0" + w="10" h="25" + relatx="1" + dblClickAction="SWITCH;normal" + resize="right" + /> + <layer + x="-40" y="1" + w="9" h="23" + relatx="1" + image="shade.pl.resize" + resize="right" + rectrgn="1" + /> + + <layer + id="shade.pl.region.left" + x="0" y="0" + image="shade.regions.left" + sysregion="-2" + /> + <layer + id="shade.pl.region.right" + x="-5" y="0" + relatx="1" + image="shade.regions.right" + sysregion="-2" + /> + + <!-- DISPLAY --> + <layer + x="23" y="4" + image="shade.pl.display.left" + ghost="1" + /> + <layer + x="33" y="4" + w="-105" relatw="1" + image="shade.pl.display.center" + tile="1" + ghost="1" + /> + <layer + x="-72" y="4" + relatx="1" + image="shade.pl.display.right" + ghost="1" + /> + + <!-- SEEK SLIDER --> + <slider + id="plshadeSeeker" + action="SEEK" + x="22" y="15" + h="9" w="-87" + relatw="1" + thumb="shade.pl.seek" + downThumb="shade.pl.seek.pressed" + hoverThumb="shade.pl.seek.hover" + tooltip="Seeker" + alpha="100" + /> + <slider + id="plshadeSeekerGhost" + action="SEEK" + x="22" y="15" + h="9" w="-87" + relatw="1" + thumb="shade.pl.seek" + downThumb="shade.pl.seek.pressed" + hoverThumb="shade.pl.seek.hover" + tooltip="Seeker" + /> + + <!-- LIST BUTTON --> + <button + id="plshadeMLList" + action="PE_ListOfLists" + x="-59" y="5" + relatx="1" + image="shade.pl.button.list" + downImage="shade.pl.button.list.pressed" + activeImage="shade.pl.button.list" + hoverImage="shade.pl.button.list.hover" + tooltip="Library's Playlists" + /> + + <!-- Songticker --> + <Songticker + id="PESongticker" ticker="1" + x="26" y="4" + w="-95" h="13" relatw="1" + leftpadding="5" + rightpadding="-5" + font="shade.songticker.font" + align="left" + dblClickAction="SWITCH;normal" + rightclickaction="trackmenu" + fontsize="13" + color="font.display" + altfont="Arial" + /> + + + <!-- CLOSE/SHADE/SYSTEM --> + <button + id="plshadeClose" + action="CLOSE" + x="-17" y="4" + relatx="1" + image="shade.button.close" + downImage="shade.button.close.pressed" + hoverImage="shade.button.close.hover" + tooltip="Close Window" + /> + <button + id="plshadeWinshade" + action="SWITCH" param="normal" + x="-29" y="4" + relatx="1" + image="shade.button.winshade" + downImage="shade.button.winshade.pressed" + hoverImage="shade.button.winshade.hover" + tooltip="Return to Normal Mode" + /> + <button + id="plshadeSysmenu" + action="SYSMENU" + x="6" y="4" + image="shade.button.sysmenu" + downImage="shade.button.sysmenu.pressed" + hoverImage="shade.button.sysmenu.hover" + tooltip="Main Menu" + /> + + + + +</groupdef>
\ No newline at end of file diff --git a/Src/resources/skins/Winamp Modern/xml/pledit-shade.xml b/Src/resources/skins/Winamp Modern/xml/pledit-shade.xml new file mode 100644 index 00000000..cb2c2544 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/pledit-shade.xml @@ -0,0 +1,22 @@ +<!-- pledit-shade.xml creates the layout of the Playlist Shade Window. --> + + <include file="pledit-shade-group.xml"/> + + <layout + id="shade" + minimum_w="354" + minimum_h="25" + h="25" + w="436" + droptarget="pldr" + background="wasabi.frame.basetexture" + linkwidth="normal" +appbar="top|bottom" + > + + <group id="plshade" x="0" y="0" sysregion="1" w="0" relath="1"/> + +</layout> + + + diff --git a/Src/resources/skins/Winamp Modern/xml/pledit.xml b/Src/resources/skins/Winamp Modern/xml/pledit.xml new file mode 100644 index 00000000..8e971c5f --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/pledit.xml @@ -0,0 +1,5 @@ +<container id="Pledit" name="Playlist Editor" dynamic="1" component="guid:{45F3F7C1-A6F3-4ee6-A15E-125E92FC3F8D}" default_x="354" default_y="0" default_visible="1"> + <include file="pledit-normal.xml"/> + <include file="pledit-shade.xml"/> + <include file="playlistpro.xml"/> +</container> diff --git a/Src/resources/skins/Winamp Modern/xml/system-colors.xml b/Src/resources/skins/Winamp Modern/xml/system-colors.xml new file mode 100644 index 00000000..4d0cd580 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/system-colors.xml @@ -0,0 +1,58 @@ +<!-- + + system-colors.xml + + this file contains all the static color definitions for Wasabi. An objects that does not rely on a group will use + one of these elements to decide what color to use. + +--> + + +<elements> + + <!-- Winamp Modern Skin custom colors - use your own instead --> + + <color id="font.display" value="255,255,255" gammagroup="DisplayElements"/> + <color id="font.display.songticker" value="255,255,255" gammagroup="DisplaySongticker"/> + <color id="font.display.songtickershade" value="255,255,255" gammagroup="DisplaySongtickerShade"/> + <color id="titlebar.text.color" value="255,255,255" gammagroup="TitlebarText"/> + <color id="drawer.color.text.dark" value="0,0,0" gammagroup="TextDark"/> + + <!-- Generic Lists --> + <color id="wasabi.list.text" value="255,255,255" gammagroup="ListText"/> <!--lists/trees item foreground (also edit text) --> + <color id="wasabi.list.background" value="28,61,125" gammagroup="ListBackground"/> <!--lists/trees item background (also bg for edit) --> + <color id="wasabi.list.text.alternate" value="255,255,255" gammagroup="ListText"/> + <color id="wasabi.list.background.alternate" value="38,71,135" gammagroup="ListBackground"/> + + <color id="wasabi.list.text.selected" value="214,228,255" gammagroup="ListTextSelected"/> <!--listview/treeview selection bar text color --> + <color id="wasabi.list.text.selected.background" value="103,136,201" gammagroup="ListSelBackground"/> <!--listview/treeview selection bar backcolor --> + <color id="studio.list.item.selected" value="103,136,201" gammagroup="ListSelBackground"/> + <color id="studio.list.item.focused" value="103,136,201" gammagroup="ListSelBackground"/> + + + <color id="wasabi.list.text.current" value="187,210,255" gammagroup="ListTextCurrent"/> <!-- currently playing item in lists --> + <color id="wasabi.list.text.selected.inactive" value="214,228,255" gammagroup="ListTextSelected"/> <!-- listview/treeview selection bar textcolor (inactive) --> + <color id="wasabi.list.text.selected.background.inactive" value="68,90,133" gammagroup="ListSelBackground"/> <!-- listview/treeview selectionbar back color (inactive) --> + + <color id="wasabi.list.column.background" value="204,208,217" gammagroup="Backgrounds"/> <!-- listview header background color --> + <color id="wasabi.list.column.text" value="0,0,0" gammagroup="ListColumnText"/> <!-- listview header text color --> + <color id="wasabi.list.column.frame.top" value="246,246,248" gammagroup="Backgrounds"/> // listview header frame top color + <color id="wasabi.list.column.frame.middle" value="142,150,163" gammagroup="Backgrounds"/> // listview header frame middle color + <color id="wasabi.list.column.frame.bottom" value="0,0,0" gammagroup="Backgrounds"/> // listview header frame bottom color + <color id="wasabi.list.column.empty" value="142,150,163" gammagroup="Backgrounds"/> // listview header empty color (beyond the columns + + <!-- edit wnds --> + <color id="wasabi.window.background" value="127,135,149" gammagroup="Backgrounds"/> <!--window background. - If this color is not defined, a whole container is created in memory to extract a pixel, so specifying it makes skin loading faster --> + <color id="wasabi.window.text" value="255,255,255" gammagroup="listText"/> <!--text color within windows --> + <color id="wasabi.border.sunken" value="204,208,217" gammagroup="Backgrounds"/> // color of dividers and sunken borders + + <color id="wasabi.scrollbar.foreground" value="28,61,125" gammagroup="ListBackground"/> <!-- scrollbar foreground color --> + <color id="wasabi.scrollbar.background" value="0,0,0" gammagroup="ListBackground"/> <!-- scrollbar background color --> + <color id="wasabi.scrollbar.foreground.inverted" value="0,0,0" gammagroup="ListBackground"/> <!-- inverse scrollbar foreground color --> + <color id="wasabi.scrollbar.background.inverted" value="0,0,0" gammagroup="ListBackground"/> <!-- inverse scrollbar background color --> + + <color id="wasabi.button.text" value="0,0,0" gammagroup="ButtonText"/> <!-- Buttons text color --> + <color id="wasabi.button.hiliteText" value="0,0,0" gammagroup="ButtonText"/> <!-- Buttons hilite text color, used by tab windows--> + <color id="wasabi.button.dimmedText" value="149,156,169" gammagroup="ButtonText"/> <!-- Buttons dimmed text color, when disabled --> + +</elements> diff --git a/Src/resources/skins/Winamp Modern/xml/video-normal.xml b/Src/resources/skins/Winamp Modern/xml/video-normal.xml new file mode 100644 index 00000000..bfabaa39 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/video-normal.xml @@ -0,0 +1,234 @@ +<groupdef id="video.buttons.group" relatw="1" w="0" h="21"> + <layer + x="0" y="0" + image="player.button.video.bg.detached.left" + /> + <layer + x="74" y="0" + relatw="1" w="-264" + image="player.button.video.bg.detached.center" + /> + <layer + x="-190" y="0" + relatx="1" + image="player.button.video.bg.detached.right" + /> + + <button + id="button.vid.fs" + action="VID_FS" + x="3" y="3" + image="player.button.video.fs" + downImage="player.button.video.fs.pressed" + hoverImage="player.button.video.fs.hover" + tooltip="Fullscreen" + rectrgn="1" + /> + + <button + id="button.vid.1x" + action="VID_1X" + x="26" y="3" + image="player.button.video.s1x" + downImage="player.button.video.s1x.pressed" + hoverImage="player.button.video.s1x.hover" + tooltip="Normal Size" + rectrgn="1" + /> + + <button + id="button.vid.2x" + action="VID_2X" + x="49" y="3" + image="player.button.video.s2x" + downImage="player.button.video.s2x.pressed" + hoverImage="player.button.video.s2x.hover" + tooltip="Double Size" + rectrgn="1" + /> + + + <!--<button + id="button.vid.tv" + action="VID_TV" + x="-183" y="3" + relatx="1" + image="player.button.video.tv" + downImage="player.button.video.tv.pressed" + hoverImage="player.button.video.tv.hover" + tooltip="Internet TV" + rectrgn="1" + />--> + + <button + id="button.vid.misc" + action="VID_Misc" + x="-158" y="3" + relatx="1" + image="player.button.video.misc" + downImage="player.button.video.misc.pressed" + hoverImage="player.button.video.misc.hover" + tooltip="Options" + rectrgn="1" + /> + + + <text + id="wasabi.statusbar.text" + x="75" y="3" + w="-265" h="12" + relatw="1" + font="arial" + color="drawer.color.text.dark" fontsize="14" + display="VID_Info" wrap="0" + ghost="1" + /> + + + <layer + x="-128" y="0" + relatx="1" + image="player.button.video.reattach.bg" + /> + <button + id="button.video.reattach" + x="-124" y="4" + relatx="1" + image="player.button.video.reattach" + downImage="player.button.video.reattach.pressed" + hoverImage="player.button.video.reattach.hover" + tooltip="Reattach Video" + rectrgn="1" + /> + + <layer + x="-24" y="4" + relatx="1" + image="player.pl.resizer" + resize="bottomright" + /> + +</groupdef> + + +<groupdef id="video.frame.layout" relatw="1" relath="1" w="0" h="-18" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.pl.topleft" + resize="topleft" + /> + <layer + x="6" y="0" + w="-12" + relatw="1" + image="player.pl.topcenter" + resize="top" + /> + <layer + x="-6" y="0" + relatx="1" + image="player.pl.topright" + resize="topright" + /> + <layer + x="0" y="5" + relath="1" + h="-50" + image="player.pl.left" + resize="left" + /> + <layer + x="-6" y="5" + relatx="1" + relath="1" + h="-50" + image="player.pl.right" + resize="right" + /> + <layer + x="0" y="-67" + relaty="1" + image="player.pl.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-25" + w="-40" + relatw="1" + relaty="1" + image="player.pl.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-67" + relatx="1" + relaty="1" + image="player.pl.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + <group id="video.buttons.group" x="5" y="-22" relaty="1"/> +</groupdef> + +<groupdef id="player.content.video.dummy.group" name="VideoDummyGroup" relatw="1" relath="1" w="0" h="0"> + <group id="video.frame.layout" x="0" y="0"/> + <component + x="6" + y="5" + w="-12" + relatw="1" + h="-48" + relath="1" + noshowcmdbar="1" + autoopen="1" + autoclose="1" + param="{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" + /> +</groupdef> + +<groupdef id="video.content.group" name="PlaylistContent"> + <group id="player.content.video.dummy.group" x="0" y="0" sysregion="1"/> + <script id="video.script" file="scripts/video.maki" /> +</groupdef> + + +<layout id="normal" minimum_w="354" minimum_h="164" h="280" w="354"> + + <Wasabi:VISFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="video.content.group" + padtitleleft="10" + padtitleright="0" + /> + + <sendparams target="window.titlebar.title" default="VIDEO"/> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + + <layer + x="0" y="0" w="0" h="3" + relatw="1" + resize="top" + /> + +</layout> + + + + + + + diff --git a/Src/resources/skins/Winamp Modern/xml/video.xml b/Src/resources/skins/Winamp Modern/xml/video.xml new file mode 100644 index 00000000..b7c6498d --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/video.xml @@ -0,0 +1,3 @@ +<container id="Video" name="Video" dynamic="1" component="guid:{F0816D7B-FFFC-4343-80F2-E8199AA15CC3}" default_visible="0" default_x="0" default_y="0" default_w="354"> + <include file="video-normal.xml"/> +</container> diff --git a/Src/resources/skins/Winamp Modern/xml/vis-normal.xml b/Src/resources/skins/Winamp Modern/xml/vis-normal.xml new file mode 100644 index 00000000..c2bffb69 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/vis-normal.xml @@ -0,0 +1,223 @@ +<groupdef id="vis.buttons.group" relatw="1" w="0" h="21"> + <layer + x="0" y="0" + image="player.button.vis.bg.detached.left" + /> + + <button + id="button.vid.fs" + action="VIS_FS" + x="3" y="3" + image="player.button.video.fs" + downImage="player.button.video.fs.pressed" + hoverImage="player.button.video.fs.hover" + tooltip="Fullscreen" + rectrgn="1" + /> + + <button + id="button.vis.prev" + action="VIS_Prev" + x="28" y="3" + image="player.button.vis.prev" + downImage="player.button.vis.prev.pressed" + hoverImage="player.button.vis.prev.hover" + tooltip="Previous Visualization" + rectrgn="1" + /> + + <button + id="button.vis.next" + action="VIS_Next" + x="74" y="3" + image="player.button.vis.next" + downImage="player.button.vis.next.pressed" + hoverImage="player.button.vis.next.hover" + tooltip="Next Visualization" + rectrgn="1" + /> + + <togglebutton + id="button.vis.random" + x="122" y="3" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + image="player.button.vis.random" + downImage="player.button.vis.random.pressed" + hoverImage="player.button.vis.random.hover" + tooltip="Toggle Random Visualization" + rectrgn="1" + /> + <togglebutton + id="led.vis.random" + cfgattrib="{0000000A-000C-0010-FF7B-01014263450C};Random" + x="180" y="-1" + image="player.led.off" + downImage="player.led.on" + activeImage="player.led.on" + rectrgn="1" + /> + + + <layer + x="193" y="0" + image="player.button.vis.bg.detached.right" + /> + <button + id="button.vis.misc" + action="Vis_Menu" + x="196" y="3" + image="player.button.video.misc" + downImage="player.button.video.misc.pressed" + hoverImage="player.button.video.misc.hover" + tooltip="Options" + rectrgn="1" + /> + + + <layer + x="-136" y="0" + relatx="1" + image="player.button.vis.reattach.bg" + /> + <button + id="button.vis.reattach" + x="-132" y="4" + relatx="1" + image="player.button.vis.reattach" + downImage="player.button.vis.reattach.pressed" + hoverImage="player.button.vis.reattach.hover" + tooltip="Reattach Visualizations" + rectrgn="1" + /> + + <layer + x="-24" y="4" + relatx="1" + image="player.pl.resizer" + resize="bottomright" + /> + +</groupdef> + + +<groupdef id="vis.frame.layout" relatw="1" relath="1" w="0" h="-18" background="wasabi.frame.basetexture"> + <layer + x="0" y="0" + image="player.pl.topleft" + resize="topleft" + /> + <layer + x="6" y="0" + w="-12" + relatw="1" + image="player.pl.topcenter" + resize="top" + /> + <layer + x="-6" y="0" + relatx="1" + image="player.pl.topright" + resize="topright" + /> + <layer + x="0" y="5" + relath="1" + h="-50" + image="player.pl.left" + resize="left" + /> + <layer + x="-6" y="5" + relatx="1" + relath="1" + h="-50" + image="player.pl.right" + resize="right" + /> + <layer + x="0" y="-67" + relaty="1" + image="player.pl.bottomleft" + resize="bottomleft" + /> + <layer + x="20" y="-25" + w="-40" + relatw="1" + relaty="1" + image="player.pl.bottomcenter" + resize="bottom" + /> + <layer + x="-20" y="-67" + relatx="1" + relaty="1" + image="player.pl.bottomright" + resize="bottomright" + /> + <layer + x="0" y="-6" + relaty="1" + image="player.main.left.region" + resize="left" + sysregion="-2" + /> + <layer + x="-6" y="-6" + relaty="1" + relatx="1" + image="player.main.right.region" + sysregion="-2" + /> + <group id="vis.buttons.group" x="5" y="-22" relaty="1"/> +</groupdef> + +<groupdef id="player.content.vis.dummy.group" name="AVSDummyGroup" relatw="1" relath="1" w="0" h="0"> + <group id="vis.frame.layout" x="0" y="0"/> + <component + x="6" + y="5" + w="-12" + relatw="1" + h="-48" + relath="1" + noshowcmdbar="1" + autoopen="1" + autoclose="1" + param="{0000000A-000C-0010-FF7B-01014263450C}" + /> +</groupdef> + +<groupdef id="vis.content.group" name="PlaylistContent"> + <group id="player.content.vis.dummy.group" x="0" y="0" sysregion="1"/> + <script id="vis.script" file="scripts/vis.maki" /> +</groupdef> + + +<layout id="normal" minimum_w="354" minimum_h="164" h="280" w="354"> + + <Wasabi:VISFrame:NoStatus + x="0" y="0" w="0" h="0" relatw="1" relath="1" + content="vis.content.group" + padtitleleft="10" + padtitleright="0" + /> + + <sendparams target="window.titlebar.title" default="VISUALIZER"/> + <sendparams target="mousetrap" dblClickAction="SWITCH;shade"/> + <sendparams target="window.top.left;window.top;window.top.right;window.left;window.right;window.bottom.left.top;window.bottom.left;window.bottom.left.bottom;window.bottom.top;window.bottom;window.bottom.bottom;window.bottom.right.top;window.bottom.right;window.bottom.right.bottom;" resize="0"/> + + <layer + x="0" y="0" w="0" h="3" + relatw="1" + resize="top" + /> + +</layout> + + + + + + + diff --git a/Src/resources/skins/Winamp Modern/xml/vis.xml b/Src/resources/skins/Winamp Modern/xml/vis.xml new file mode 100644 index 00000000..0d4c9a14 --- /dev/null +++ b/Src/resources/skins/Winamp Modern/xml/vis.xml @@ -0,0 +1,3 @@ +<container id="AVS" name="Visualizations" dynamic="1" component="guid:{0000000A-000C-0010-FF7B-01014263450C}" default_visible="0" default_x="0" default_y="0" default_w="354"> + <include file="vis-normal.xml"/> +</container> |