The attached patch adds a range of extra text controls to freeamp. This enables
the display of track name, artist, album, comments etc, as seperate parts of a
theme. (Like in the ncurses display, which I happen to like quite alot)
If you accept this patch I will update the themehowto and any other relavent
docs.
I've also attached a sample theme.xml file so you can easily test it out, but I
would appreciate someone who knows what they are doing with theme design look at
what to do with the default theme - I think this version is all a bit too
squashed. Maybe a pullout panel with info on it?
I also changed the title text from using a '-' and () to seperate the parts to
using '~'s as these are less likely to appear in a song title. Maybe I should
have used a | ?
Rob
01010010 01101111 01100010 01100101 01110010 01110100
01001000 01100001 01110010 01110100
? freeamp/ReadMe.txt
? freeamp/Copying.txt
? freeamp/Changes.txt
? freeamp/Authors.txt
? freeamp/base/win32/fabaselib.lib
? freeamp/base/win32/prj/FREEAMP.ncb
? freeamp/base/win32/prj/Debug
? freeamp/base/win32/prj/freeamp.plg
? freeamp/base/win32/prj/plugins
? freeamp/base/win32/prj/FREEAMP.opt
? freeamp/base/win32/prj/themes
? freeamp/base/win32/prj/tools
? freeamp/base/win32/prj/musicbrainz.dll
? freeamp/base/win32/prj/portio.sys
? freeamp/base/win32/prj/freeamp.ilk
? freeamp/base/win32/prj/freeamp.m3u
? freeamp/base/win32/prj/id3lib.dll
? freeamp/base/win32/prj/db
? freeamp/base/win32/prj/profiles.txt
? freeamp/dlm/rmp/prj/Debug
? freeamp/dlm/rmp/prj/rmp.ilk
? freeamp/dlm/rmp/prj/rmp.dlf
? freeamp/ftc/winamp/prj/Debug
? freeamp/ftc/winamp/prj/winamp.ilk
? freeamp/ftc/winamp/prj/winamp.ftf
? freeamp/io/cd/win32/prj/Debug
? freeamp/io/cd/win32/prj/cd.ilk
? freeamp/io/cd/win32/prj/cd.pmo
? freeamp/io/http/win32/prj/Debug
? freeamp/io/http/win32/prj/httpinput.ilk
? freeamp/io/http/win32/prj/httpinput.pmi
? freeamp/io/local/win32/prj/Debug
? freeamp/io/local/win32/prj/fileinput.ilk
? freeamp/io/local/win32/prj/fileinput.pmi
? freeamp/io/obs/win32/prj/Debug
? freeamp/io/obs/win32/prj/obsinput.ilk
? freeamp/io/obs/win32/prj/obsinput.pmi
? freeamp/io/signature/win32/prj/Debug
? freeamp/io/signature/win32/prj/signature.ilk
? freeamp/io/signature/win32/prj/signature.pmo
? freeamp/io/soundcard/win32/prj/Debug
? freeamp/io/soundcard/win32/prj/soundcard.ilk
? freeamp/io/soundcard/win32/prj/soundcard.pmo
? freeamp/io/wavout/win32/prj/Debug
? freeamp/io/wavout/win32/prj/wavout.ilk
? freeamp/io/wavout/win32/prj/wavout.pmo
? freeamp/lib/gdbm/gdbm.lib
? freeamp/lib/gdbm/config/config.h
? freeamp/lib/gdbm/prj/Debug
? freeamp/lib/id3/id3lib.dll
? freeamp/lib/unzip/unzip.lib
? freeamp/lib/unzip/prj/Debug
? freeamp/lib/zlib/zlib.lib
? freeamp/lib/zlib/prj/Debug
? freeamp/lmc/cd/win32/prj/Debug
? freeamp/lmc/cd/win32/prj/cd.ilk
? freeamp/lmc/cd/win32/prj/cd.lmc
? freeamp/lmc/vorbis/win32/vorbislib.lib
? freeamp/lmc/vorbis/win32/prj/Debug
? freeamp/lmc/vorbis/win32/prj/vorbis.ilk
? freeamp/lmc/vorbis/win32/prj/vorbis.lmc
? freeamp/lmc/xingmp3/win32/prj/Debug
? freeamp/lmc/xingmp3/win32/prj/xing.ilk
? freeamp/lmc/xingmp3/win32/prj/xing.lmc
? freeamp/plm/metadata/id3v1/prj/Debug
? freeamp/plm/metadata/id3v1/prj/id3v1.ilk
? freeamp/plm/metadata/id3v1/prj/id3v1.mdf
? freeamp/plm/metadata/id3v2/prj/Debug
? freeamp/plm/metadata/id3v2/prj/id3v2.ilk
? freeamp/plm/metadata/id3v2/prj/id3v2.mdf
? freeamp/plm/metadata/misc/prj/Debug
? freeamp/plm/metadata/misc/prj/misc.ilk
? freeamp/plm/metadata/misc/prj/misc.mdf
? freeamp/plm/metadata/vorbis/prj/Debug
? freeamp/plm/metadata/vorbis/prj/vorbismdf.ilk
? freeamp/plm/metadata/vorbis/prj/vorbismdf.mdf
? freeamp/plm/playlist/m3u/prj/Debug
? freeamp/plm/playlist/m3u/prj/m3u.ilk
? freeamp/plm/playlist/m3u/prj/m3u.plf
? freeamp/plm/playlist/pls/prj/Debug
? freeamp/plm/playlist/pls/prj/pls.ilk
? freeamp/plm/playlist/pls/prj/pls.plf
? freeamp/plm/portable/pmp300/prj/Debug
? freeamp/plm/portable/pmp300/prj/pmp300.ilk
? freeamp/plm/portable/pmp300/prj/pmp300.ppp
? freeamp/plm/portable/pmp300/sba/riolib.lib
? freeamp/plm/portable/pmp300/sba/prj/Debug
? freeamp/ui/dde/win32/prj/Debug
? freeamp/ui/dde/win32/prj/dde.ilk
? freeamp/ui/dde/win32/prj/dde.ui
? freeamp/ui/download/win32/prj/Debug
? freeamp/ui/download/win32/prj/download.ilk
? freeamp/ui/download/win32/prj/download.ui
? freeamp/ui/freeamp/tools/win32/Debug
? freeamp/ui/freeamp/tools/win32/MakeTheme.ilk
? freeamp/ui/freeamp/win32/prj/Debug
? freeamp/ui/freeamp/win32/prj/freeamp.ilk
? freeamp/ui/freeamp/win32/prj/freeamp.ui
? freeamp/ui/musicbrowser/win32/prj/Debug
? freeamp/ui/musicbrowser/win32/prj/musicbrowser.ilk
? freeamp/ui/musicbrowser/win32/prj/musicbrowser.ui
? freeamp/ui/toolbar/win32/prj/Debug
? freeamp/ui/toolbar/win32/prj/toolbar.ilk
? freeamp/ui/toolbar/win32/prj/toolbar.ui
? freeamp/update/win32/prj/Debug
? freeamp/update/win32/prj/update.ilk
Index: freeamp/ui/freeamp/include/FreeAmpTheme.h
===================================================================
RCS file: /src/repository/freeamp/ui/freeamp/include/FreeAmpTheme.h,v
retrieving revision 1.37
diff -u -d -r1.37 FreeAmpTheme.h
--- freeamp/ui/freeamp/include/FreeAmpTheme.h 2001/01/11 22:34:08 1.37
+++ freeamp/ui/freeamp/include/FreeAmpTheme.h 2001/01/17 15:32:31
@@ -124,6 +124,8 @@
bool m_bPaused, m_bInOptions, m_bPlayShown;
bool m_bShowBuffers, m_bBufferingUp;
string m_oCurrentWindow, m_oTitle, m_oStreamInfo, m_oHeadlineUrl;
+ string m_oArtist, m_oAlbum, m_oYear, m_oTrackNo,
+m_oTrackName;
+ string m_oGenre, m_oComment;
TimeDisplayState m_eTimeDisplayState;
TitleDisplayState m_eTitleDisplayState;
string m_themeCache;
Index: freeamp/ui/freeamp/src/FreeAmpTheme.cpp
===================================================================
RCS file: /src/repository/freeamp/ui/freeamp/src/FreeAmpTheme.cpp,v
retrieving revision 1.159
diff -u -d -r1.159 FreeAmpTheme.cpp
--- freeamp/ui/freeamp/src/FreeAmpTheme.cpp 2001/01/11 22:34:08 1.159
+++ freeamp/ui/freeamp/src/FreeAmpTheme.cpp 2001/01/17 15:32:39
@@ -1931,20 +1931,80 @@
if (pItem->GetMetaData().Artist().length() > 0 &&
(m_eTitleDisplayState == kNameArtist ||
m_eTitleDisplayState == kNameArtistAlbum))
- m_oTitle += string(" - ") + pItem->GetMetaData().Artist();
+ m_oTitle += string(" ~ ") + pItem->GetMetaData().Artist();
if (pItem->GetMetaData().Album().length() > 0 &&
m_eTitleDisplayState == kNameArtistAlbum)
- m_oTitle += string(" (") + pItem->GetMetaData().Album() +
- string(")");;
+ m_oTitle += string(" ~ ") + pItem->GetMetaData().Album();;
oText = string(BRANDING": ") + m_oTitle;
m_pWindow->SetTitle(oText);
}
else
m_oTitle = "";
-
+
+ if (pItem->GetMetaData().Title().length() > 0)
+ {
+ m_oTrackName = pItem->GetMetaData().Title();
+ }
+ else
+ m_oTrackName = "Unknown";
+
+ if (pItem->GetMetaData().Artist().length() > 0)
+ {
+ m_oArtist = pItem->GetMetaData().Artist();
+ }
+ else
+ m_oArtist = "Unknown";
+
+ if (pItem->GetMetaData().Album().length() > 0)
+ {
+ m_oAlbum = pItem->GetMetaData().Album();
+ }
+ else
+ m_oAlbum = "Unknown";
+
+ if (pItem->GetMetaData().Year() > 0)
+ {
+ char szText[6];
+ sprintf(szText,"%d",pItem->GetMetaData().Year());
+ m_oYear = string(szText);
+ }
+ else
+ m_oYear = "";
+
+ if (pItem->GetMetaData().Track() > 0)
+ {
+ char szText[6];
+ sprintf(szText,"%d",pItem->GetMetaData().Track());
+ m_oTrackNo = string(szText);
+ }
+ else
+ m_oTrackNo = "";
+
+if (pItem->GetMetaData().Genre().length() > 0)
+ {
+ m_oGenre = pItem->GetMetaData().Genre();
+ }
+ else
+ m_oGenre = "";
+
+if (pItem->GetMetaData().Comment().length() > 0)
+ {
+ m_oComment = pItem->GetMetaData().Comment();
+ }
+ else
+ m_oComment = "";
+
+
m_pWindow->ControlStringValue(string("Title"), true, m_oTitle);
+ m_pWindow->ControlStringValue(string("TrackName"), true, m_oTrackName);
+ m_pWindow->ControlStringValue(string("TrackNo"), true, m_oTrackNo);
+ m_pWindow->ControlStringValue(string("Artist"), true, m_oArtist);
+ m_pWindow->ControlStringValue(string("Album"), true, m_oAlbum);
+ m_pWindow->ControlStringValue(string("Year"), true, m_oYear);
+ m_pWindow->ControlStringValue(string("Genre"), true, m_oGenre);
+ m_pWindow->ControlStringValue(string("Comment"), true, m_oComment);
}
void FreeAmpTheme::DropFiles(vector<string> *pFileList)
<Bitmap Name="Background" File="background.bmp" TransColor="#FF0000"/>
<Bitmap Name="Buttons" File="buttons.bmp" TransColor="#FF0000"/>
<Bitmap Name="MiniButtons" File="minibuttons.bmp" TransColor="#FF0000"/>
<Bitmap Name="MiniBackground" File="minibackground.bmp" TransColor="#FF0000"/>
<Bitmap Name="MediumBackground" File="mediumbackground.bmp" TransColor="#FF0000"/>
<Bitmap Name="Equalizer" File="equalizer.bmp" TransColor="#FF0000"/>
<Font Name="Main" File="arial.ttf" Face="Arial"/>
<ThemeInfo Name="FreeAmp Theme" Author="Bill Bull, Robert Kaye & Mark B. Elrod "
EMail="[EMAIL PROTECTED]" WebPage="http://www.freeamp.org"/>
<Window Name="MainWindow">
<Panel Name="PlayerBottom" Bitmap="Background"
Rect="0, 95, 327, 161" Pos="0,95" TogglePos="0,170" ZOrder="2"
OnCloseHide="Equalizer" OnOpenShow="Equalizer">
<Controls>
<ButtonControl Name="Logo" URL="http://www.freeamp.org">
<Info Desc="Go to the FreeAmp web site" Tip="FreeAmp"/>
<Position Pos="7,31"/>
<ControlBitmap Rect="0,236,403,260" Name="Buttons"/>
</ButtonControl>
<MultiStateControl Name="PlayStop" NumStates="2">
<Info Desc="Play the current track||Stop the current track"
Tip="Play||Stop"/>
<Position Pos="228,29"/>
<ControlBitmap Rect="0,96,119,159" Name="Buttons"/>
</MultiStateControl>
<MultiStateControl Name="MPause" NumStates="2">
<Info Desc="Pause the current track||Continue playing"
Tip="Pause||Continue"/>
<Position Pos="258,29"/>
<ControlBitmap Rect="0,282,119,345" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Prev">
<Info Desc="Move to previous track" Tip="Previous"/>
<Position Pos="198,29"/>
<ControlBitmap Rect="0,0,119,31" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Next">
<Info Desc="Move to next track" Tip="Next"/>
<Position Pos="287,29"/>
<ControlBitmap Rect="0,32,119,63" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="MyMusic">
<Info Desc="Browse my music collection" Tip="MyMusic"/>
<Position Pos="44,7"/>
<ControlBitmap Rect="0,172,291,186" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Options">
<Info Desc="Open the options window" Tip="Options"/>
<Position Pos="119,7"/>
<ControlBitmap Rect="0,188,263,202" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Download">
<Info Desc="Open the download manager" Tip="Download"/>
<Position Pos="187,7"/>
<ControlBitmap Rect="0,204,303,218" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Files">
<Info Desc="Open files/playlists to play" Tip="Files"/>
<Position Pos="265,7"/>
<ControlBitmap Rect="0,220,207,234" Name="Buttons"/>
</ButtonControl>
<MultiStateControl Name="Repeat" NumStates="3">
<Info Desc="Play normally (No repeat)||Repeat current track||Repeat
all tracks"
Tip="No Repeat||Repeat current||Repeat all"/>
<Position Pos="151,31"/>
<ControlBitmap Rect="123,11,286,85" Name="Buttons"/>
</MultiStateControl>
<MultiStateControl Name="Shuffle" NumStates="2">
<Info Desc="Play tracks in normal order||Play tracks in random order"
Tip="Normal play||Random play"/>
<Position Pos="109,31"/>
<ControlBitmap Rect="123,87,286,136" Name="Buttons"/>
</MultiStateControl>
</Controls>
</Panel>
<Panel Name="PlayerTop" Bitmap="Background" Rect="0, 0, 327, 95"
Pos="0,0" ZOrder="1">
<Controls>
<ButtonControl Name="ReloadTheme">
<Info Desc="Reload current theme" Tip="Reload theme"/>
<Position Rect="12,0,24,15"/>
<ControlBitmap Rect="53,264,104,272" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Quit">
<Info Desc="Quit FreeAmp" Tip="Quit"/>
<Position Rect="303,0,315,15"/>
<ControlBitmap Rect="212,264,263,272" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Minimize">
<Info Desc="Minimize FreeAmp" Tip="Minimize"/>
<Position Rect="289,0,301,15"/>
<ControlBitmap Rect="159,264,210,272" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="MediumView">
<Info Desc="Change to medium view" Tip="Medium view"/>
<Position Pos="275,0"/>
<ControlBitmap Rect="123,140,174,155" Name="Buttons"/>
<ChangeWindow Window="MediumView"/>
</ButtonControl>
<ButtonControl Name="Help">
<Info Desc="View the FreeAmp player help" Tip="Help"/>
<Position Pos="262,0"/>
<ControlBitmap Rect="106,264,157,279" Name="Buttons"/>
</ButtonControl>
<ButtonControl Name="Equalizer">
<Info Desc="Open equalizer" Tip="Equalizer"/>
<Position Pos="249,0"/>
<ControlBitmap Rect="176,140,227,155" Name="Buttons"/>
<TogglePanel Panel="PlayerBottom"/>
</ButtonControl>
<TextControl Name="TrackName">
<Position Rect="9,23,270,36"/>
<Style Align="Left" Font="Main" Bold="Yes"/>
</TextControl>
<TextControl Name="Info">
<Position Rect="9,55,179,67"/>
<Style Font="Main"/>
</TextControl>
<TextControl Name="Year">
<Position Rect="270,23,317,36"/>
<Style Font="Main" Align="Right"/>
</TextControl>
<TextControl Name="Artist">
<Position Rect="9,40,210,52"/>
<Style Font="Main"/>
</TextControl>
<TextControl Name="Album">
<Position Rect="210,40,317,52"/>
<Style Font="Main" Align="Right"/>
</TextControl>
<TextControl Name="Time">
<Info Desc="Current time/Time remaining"/>
<Position Rect="210,54,317,68"/>
<Style Font="Main" Align="Right" Bold="Yes"/>
</TextControl>
<TextControl Name="TimeRemaining">
<Info Desc="Time remaining/Current time"/>
<Position Rect="210,54,317,68"/>
<Style Font="Main" Align="Right" Bold="Yes" Color="#666666"/>
</TextControl>
<MultiStateControl Name="Mute" NumStates="2">
<Info Desc="Mute sound||Unmute sound"
Tip="Mute||Unmute"/>
<Position Pos="13,78"/>
<ControlBitmap Rect="230,140,293,165" Name="Buttons"/>
</MultiStateControl>
<MultiStateControl Name="SigIndicator" NumStates="3">
<Info Desc="No signatures to generate||Need to generate
signatures||Generating signatures"
Tip="Idle||Pending||Generating"/>
<Position Pos="304,77"/>
<ControlBitmap Rect="216,282,267,320" Name="Buttons"/>
</MultiStateControl>
<SliderControl Name="Volume">
<Info Desc="Change volume" Tip="Volume"/>
<Position Rect="34,80,114,88"/>
<ControlBitmap Rect="136,0,183,8" Name="Buttons"/>
</SliderControl>
<SliderControl Name="Seek">
<Info Desc="Seek in the current track" Tip="Seek"/>
<Position Rect="142,80,299,88"/>
<ControlBitmap Rect="136,0,183,8" Name="Buttons"/>
</SliderControl>
</Controls>
</Panel>
<Panel Name="Equalizer" Bitmap="Equalizer" HideWhenClosed="yes"
Rect="0, 0, 327, 76" Pos="0,95" ZOrder="0">
<Controls>
<SliderControl Name="Balance" Notch="50%" NotchWidth="4">
<Info Desc="Adjust speaker balance" Tip="Balance"/>
<Position Rect="247,50,307,62"/>
<ControlBitmap Rect="289,0,309,12" Name="Buttons"/>
</SliderControl>
<VSliderControl Name="Eq0" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 60Hz" Tip="60Hz"/>
<Position Rect="67,20,79,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq1" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 170Hz" Tip="170Hz"/>
<Position Rect="83,20,95,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq2" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 310Hz" Tip="310Hz"/>
<Position Rect="99,20,111,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq3" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 600Hz" Tip="600Hz"/>
<Position Rect="115,20,127,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq4" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 1kHz" Tip="1kHz"/>
<Position Rect="131,20,143,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq5" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 3kHz" Tip="3kHz"/>
<Position Rect="147,20,159,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq6" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 6kHz" Tip="6kHz"/>
<Position Rect="163,20,175,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq7" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 12kHz" Tip="12kHz"/>
<Position Rect="179,20,191,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq8" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 14kHz" Tip="14kHz"/>
<Position Rect="195,20,207,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Eq9" Notch="50%" NotchWidth="4">
<Info Desc="Equalize 16kHz" Tip="16kHz"/>
<Position Rect="211,20,223,68"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<VSliderControl Name="Preamp" Notch="50%" NotchWidth="4">
<Info Desc="Preamp" Tip="Preamp"/>
<Position Rect="24,15,36,63"/>
<ControlBitmap Rect="227,0,265,6" Name="Buttons"/>
</VSliderControl>
<MultiStateControl Name="EqEnable" NumStates="2">
<Info Desc="Turn off Equalizer||Turn on Equalizer"
Tip="Eq Off||Eq On"/>
<Position Pos="288,12"/>
<ControlBitmap Rect="171,297,214,332" Name="Buttons"/>
</MultiStateControl>
</Controls>
</Panel>
</Window>
<Window Name="Mini-Me">
<BackgroundBitmap Name="MiniBackground" Rect="0, 0, 173, 37"/>
<Controls>
<MultiStateControl Name="PlayStop" NumStates="2">
<Info Desc="Play the current track||Stop the current track"
Tip="Play||Stop"/>
<Position Pos="83,17"/>
<ControlBitmap Rect="0,79,95,116" Name="MiniButtons"/>
</MultiStateControl>
<MultiStateControl Name="MPause" NumStates="2">
<Info Desc="Pause the current track||Continue playing"
Tip="Pause||Continue"/>
<Position Pos="107,17"/>
<ControlBitmap Rect="0,40,95,77" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Prev">
<Info Desc="Move to previous track" Tip="Previous"/>
<Position Pos="59,17"/>
<ControlBitmap Rect="0,0,95,18" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Next">
<Info Desc="Move to next track" Tip="Next"/>
<Position Pos="131,17"/>
<ControlBitmap Rect="0,20,95,38" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Quit">
<Info Desc="Quit FreeAmp" Tip="Quit"/>
<Position Pos="153,0"/>
<ControlBitmap Rect="0,152,47,167" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Minimize">
<Info Desc="Minimize FreeAmp" Tip="Minimize"/>
<Position Pos="139,0"/>
<ControlBitmap Rect="0,118,55,133" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="NormalView">
<Info Desc="Change to normal view" Tip="Normal view"/>
<Position Pos="125,0"/>
<ControlBitmap Rect="0,135,55,150" Name="MiniButtons"/>
<ChangeWindow Window="MainWindow"/>
</ButtonControl>
<TextControl Name="Time">
<Info Desc="Current time/time remaining"/>
<Position Rect="9,19,53,31"/>
<Style Font="Main" Align="Right" Bold="Yes"/>
</TextControl>
<TextControl Name="TimeRemaining">
<Info Desc="Time remaining/Current Time"/>
<Position Rect="9,19,53,31"/>
<Style Font="Main" Align="Right" Bold="Yes" Color="#666666"/>
</TextControl>
<SliderControl Name="Volume">
<Info Desc="Change volume" Tip="Volume"/>
<Position Rect="40,5,66,13"/>
<ControlBitmap Rect="61,118,72,126" Name="MiniButtons"/>
</SliderControl>
<SliderControl Name="Seek">
<Info Desc="Seek in the current track" Tip="Seek"/>
<Position Rect="87,5,113,13"/>
<ControlBitmap Rect="61,118,72,126" Name="MiniButtons"/>
</SliderControl>
</Controls>
</Window>
<Window Name="MediumView">
<BackgroundBitmap Name="MediumBackground" Rect="0, 0, 173, 55"/>
<Controls>
<MultiStateControl Name="PlayStop" NumStates="2">
<Info Desc="Play the current track||Stop the current track"
Tip="Play||Stop"/>
<Position Pos="83,35"/>
<ControlBitmap Rect="0,79,95,116" Name="MiniButtons"/>
</MultiStateControl>
<MultiStateControl Name="MPause" NumStates="2">
<Info Desc="Pause the current track||Continue playing"
Tip="Pause||Continue"/>
<Position Pos="107,35"/>
<ControlBitmap Rect="0,40,95,77" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Prev">
<Info Desc="Move to previous track" Tip="Previous"/>
<Position Pos="59,35"/>
<ControlBitmap Rect="0,0,95,18" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Next">
<Info Desc="Move to next track" Tip="Next"/>
<Position Pos="131,35"/>
<ControlBitmap Rect="0,20,95,38" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Quit">
<Info Desc="Quit FreeAmp" Tip="Quit"/>
<Position Pos="153,0"/>
<ControlBitmap Rect="0,152,47,167" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="Minimize">
<Info Desc="Minimize FreeAmp" Tip="Minimize"/>
<Position Pos="139,0"/>
<ControlBitmap Rect="0,118,55,133" Name="MiniButtons"/>
</ButtonControl>
<ButtonControl Name="MiniView">
<Info Desc="Change to mini view" Tip="Mini view"/>
<Position Pos="125,0"/>
<ControlBitmap Rect="0,135,55,150" Name="MiniButtons"/>
<ChangeWindow Window="Mini-Me"/>
</ButtonControl>
<TextControl Name="Time">
<Info Desc="Current time/time remaining"/>
<Position Rect="9,37,53,49"/>
<Style Font="Main" Align="Right" Bold="Yes"/>
</TextControl>
<TextControl Name="TimeRemaining">
<Info Desc="Time remaining/Current Time"/>
<Position Rect="9,37,53,49"/>
<Style Font="Main" Align="Right" Bold="Yes" Color="#666666"/>
</TextControl>
<TextControl Name="Title">
<Position Rect="7,18,163,34"/>
<Style Align="Left" Font="Main" Color="#DDDDDD"/>
</TextControl>
<SliderControl Name="Volume">
<Info Desc="Change volume" Tip="Volume"/>
<Position Rect="40,5,66,13"/>
<ControlBitmap Rect="61,118,72,126" Name="MiniButtons"/>
</SliderControl>
<SliderControl Name="Seek">
<Info Desc="Seek in the current track" Tip="Seek"/>
<Position Rect="87,5,113,13"/>
<ControlBitmap Rect="61,118,72,126" Name="MiniButtons"/>
</SliderControl>
</Controls>
</Window>