It is currently April 19th, 2024, 3:31 am

Need help modifying a skin to support iTunes

Get help with creating, editing & fixing problems with skins
Necrophantasia
Posts: 2
Joined: July 4th, 2010, 5:53 pm

Need help modifying a skin to support iTunes

Post by Necrophantasia »

Hey everyone,

I realize that a lot of skins for rainmeter are written to pull track info from winamp, but I use iTunes as my primary music player. I found a skin I really like and unfortunately it only supports winamp using the windows message plugin, and I was wondering if someone would be nice enough to help me and make it so it can pull the info from itunes using the itunes plugin already in rainmeter 1.2.

I'm still new to rainmeter and I've tried to get it to work myself, but to no avail. So I've come here as a bit of a last resort.

The skin is here:
http://kazasou.wordpress.com/2010/02/14/desktop-goodies-hatsune-miku-2-rainmeter/

Code: Select all

; Hatsune Miku 2 Rainmeter
; Author - Kaza-SOU (kazasou.wordpress.com)
; Email  - kaza_sou_luv45@yahoo.com
;Metadata added by RainBrowser
;http://rainmeter.net/cms/Rainmeter101-EditingSkins

[Metadata]
Name=
Config=
Description=
Instructions=
Version=
Tags=
License=
Variant=
Preview=

;End of added Metadata


[Variables]
WinampFolder=c:\progra~1\winamp\

[MeasureWinamp]
Measure=Plugin
Plugin=Plugins\WindowMessagePlugin.dll
WindowClass=Winamp v1.x
Substitute="[Paused]":""," - Winamp":"","[Stopped]":""

[MeasureWinampJump10]
Measure=Calc
Formula=MeasureWinampFull*120
[MeasureWinampJump20]
Measure=Calc
Formula=MeasureWinampFull*240
[MeasureWinampJump30]
Measure=Calc
Formula=MeasureWinampFull*360
[MeasureWinampJump40]
Measure=Calc
Formula=MeasureWinampFull*480
[MeasureWinampJump50]
Measure=Calc
Formula=MeasureWinampFull*600
[MeasureWinampJump60]
Measure=Calc
Formula=MeasureWinampFull*720
[MeasureWinampJump70]
Measure=Calc
Formula=MeasureWinampFull*840

[Chara]
Meter=IMAGE
X=100
Y=0
ImageName=miku.png

[MeterBox]
Meter=IMAGE
X=0
Y=70
ImageName=meterBox1.png

[MeterWaBar]
Meter=BAR
MeasureName=MeasureWinampDuration
X=105
Y=382
W=230
H=6
BarOrientation=HORIZONTAL
BarColor=161,202,211,250
SolidColor=161,202,211,90
GradientAngle=90
Scale=1000

[WaRew5s]
Meter=BUTTON
X=0r
Y=-2r
ButtonImage=wa_ctrl_-5.png
ButtonCommand=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40061 0"

[WaJump10]
Meter=BUTTON
X=12r
Y=3r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump10] 106"]

[WaJump20]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump20] 106"]

[WaJump30]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump30] 106"]

[WaJump40]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump40] 106"]

[WaJump50]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump50] 106"]

[WaJump60]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump60] 106"]

[WaJump70]
Meter=BUTTON
X=30r
Y=0r
ButtonImage=wa_ctrl_Jump.png
ButtonCommand=!execute [!RainmeterPluginBang "MeasureWinamp SendMessage 1024 [MeasureWinampJump70] 106"]

[WaFwd5s]
Meter=BUTTON
X=29r
Y=-3r
ButtonImage=wa_ctrl_+5.png
ButtonCommand=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40060 0"

[MeterBox2]
Meter=IMAGE
X=90
Y=333
ImageName=meterBox2.png

;Winamp-------------------------------------

[MeterWATitle]
Meter=STRING
MeasureName=MeasureWinamp
X=107
Y=354
H=18
W=230
FontColor=13,56,109,255
StringStyle=NORMAL
FontSize=10
StringAlign=LEFT
FontFace=Impact
AntiAlias=1
ClipString=1

[MeasureWinampFull]
Measure=Plugin
Plugin=Plugins\WindowMessagePlugin.dll
WindowClass=Winamp v1.x
WindowMessage=1024 1 105

[MeasureWinampCurr]
Measure=Plugin
Plugin=Plugins\WindowMessagePlugin.dll
WindowClass=Winamp v1.x
WindowMessage=1024 0 105

[MeasureWinampDuration]
Measure=Calc
Formula=MeasureWinampCurr/(MeasureWinampFull*1000+1)

[MeasureWinampCountM]
Measure=Calc
Formula=((MeasureWinampCurr/1000)-29.5)/60
Substitute="-":""

[MeasureWinampCountS]
Measure=Calc
Formula=((MeasureWinampCurr/1000)%60)/10
Substitute="-":"",".":"","60":"00"

[WaCounterM]
Meter=STRING
MeasureName=MeasureWinampCountM
X=292
Y=401
FontColor=13,56,109,255
StringStyle=NORMAL
FontSize=10
StringAlign=LEFT
FontFace=Impact
AntiAlias=1
Postfix=":"

[WaCounterS]
Meter=STRING
MeasureName=MeasureWinampCountS
X=10r
Y=0r
FontColor=13,56,109,255
StringStyle=NORMAL
FontSize=10
StringAlign=LEFT
FontFace=Impact
AntiAlias=1
NumOfDecimals=1

;Winamp Button------------------------------

[MeterPrevIMG]
Meter=IMAGE
X=107
Y=400
W=21
H=21
ImageName=prevbtn.png
Hidden=1

[MeterPrevIMGDown]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
ImageName=prevbtn.png
Hidden=1

[MeterPrev]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21

MouseOverAction=!execute [!RainmeterShowMeter MeterPrevIMG]  [!RainmeterRedraw]

LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40044 0" 

MouseLeaveAction=!execute [!RainmeterHideMeter MeterPrevIMG]  [!RainmeterRedraw]

--------------

[MeterPlayIMG]
Meter=IMAGE
X=20r
Y=0r
W=21
H=21
ImageName=playbtn.png
Hidden=1

[MeterPlayIMGDown]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
ImageName=playbtn.png
Hidden=1

[MeterPlay]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21

MouseOverAction=!execute [!RainmeterShowMeter MeterPlayIMG]  [!RainmeterRedraw]

LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40045 0"

MouseLeaveAction=!execute [!RainmeterHideMeter MeterPlayIMG]  [!RainmeterRedraw]

-------------------------

[MeterPauseIMG]
Meter=IMAGE
X=20r
Y=0r
W=21
H=21
ImageName=pausebtn.png
Hidden=1

[MeterPauseIMGDown]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
ImageName=pausebtn.png
Hidden=1

[MeterPause]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21

MouseOverAction=!execute [!RainmeterShowMeter MeterPauseIMG]  [!RainmeterRedraw]

LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40046 0"

MouseLeaveAction=!execute [!RainmeterHideMeter MeterPauseIMG]  [!RainmeterRedraw]

-------------------------

[MeterStopIMG]
Meter=IMAGE
X=21r
Y=0r
W=21
H=21
ImageName=Stopbtn.png
Hidden=1

[MeterStopIMGDown]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
ImageName=Stopbtn.png
Hidden=1

[MeterStop]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21

MouseOverAction=!execute [!RainmeterShowMeter MeterStopIMG]  [!RainmeterRedraw]

LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40047 0"

MouseLeaveAction=!execute [!RainmeterHideMeter MeterStopIMG]  [!RainmeterRedraw]


-------------------------

[MeterNextIMG]
Meter=IMAGE
X=21r
Y=0r
W=21
H=21
ImageName=nextbtn.png
Hidden=1

[MeterNextIMGDown]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
ImageName=nextbtn.png
Hidden=1

[MeterNext]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21

MouseOverAction=!execute [!RainmeterShowMeter MeterNextIMG]  [!RainmeterRedraw]

LeftMouseDownAction=!RainmeterPluginBang "MeasureWinamp SendMessage 273 40048 0"

MouseLeaveAction=!execute [!RainmeterHideMeter MeterNextIMG]  [!RainmeterRedraw]

-------------------------

[MeterPowerIMG]
Meter=IMAGE
X=20r
Y=0r
W=21
H=21
ImageName=openbtn.png
Hidden=1

[MeterPower]
Meter=IMAGE
X=0r
Y=0r
W=21
H=21
MouseOverAction=!execute [!RainmeterShowMeter MeterPowerIMG] [!RainmeterShowMeter MeterTooltipBKG] [!RainmeterShowMeter MeterPower_txt] [!RainmeterRedraw]

LeftMouseDownAction=!execute [!RainmeterShowMeter MeterPower_txt] [!RainmeterRedraw]
LeftMouseupAction=!execute [!RainmeterRedraw][#WinampFolder#winamp.exe]

MouseLeaveAction=!execute [!RainmeterHideMeter MeterPowerIMG] [!RainmeterHideMeter MeterPower_txt] [!RainmeterHideMeter MeterTooltipBKG] [!RainmeterRedraw]

-----------------------------------

[MeasureCPU]
Measure=CPU

[MeasureUsedMem]
Measure=PhysicalMemory

[MeasureUsedSwap]
Measure=SwapMemory

[MeterCPU%]
Meter=STRING
MeasureName=MeasureCPU
X=52
Y=87
FontColor=13,56,109,255
FontSize=9
Align=CENTER
FontFace=Impact
StringStyle=Normal
AntiAlias=1
AutoScale=1
Angle=0.00
Prefix="CPU: "
Postfix="%"

[MeterUsedMem%]
Meter=STRING
MeasureName=MeasureUsedMem
X=69
Y=248
FontColor=13,56,109,255
FontSize=9
Align=CENTER
FontFace=Impact
StringStyle=Normal
AntiAlias=1
AutoScale=1
Angle=0.00
Prefix="MEM: "
Postfix="%"
Percentual=1

[MeterUsedSwap%]
Meter=STRING
MeasureName=MeasureUsedSwap
X=131
Y=268
FontColor=13,56,109,255
FontSize=9
Align=CENTER
FontFace=Impact
StringStyle=Normal
AntiAlias=1
AutoScale=1
Angle=0.00
Prefix="SWP: "
Postfix="%"
Percentual=1

[MeasureNetIn]
Measure=NetIn

[MeasureNetOut]
Measure=NetOut

[MeterNetIn]
Meter=STRING
MeasureName=MeasureNetIn
X=50
Y=175
FontColor=13,56,109,255
StringStyle=Normal
FontSize=8
StringAlign=center
FontFace=Impact
AntiAlias=1
AutoScale=1
Prefix="IN: "
NumOfDecimals=1
Angle=0.00

[MeterNetOut]
Meter=STRING
MeasureName=MeasureNetOut
X=63
Y=132
FontColor=13,56,109,255
StringStyle=Normal
FontSize=8
StringAlign=center
FontFace=Impact
AntiAlias=1
AutoScale=1
Prefix="Out: "
NumOfDecimals=1
Angle=0.00

[MeasureTime]
Measure=Time
Format=%#H:%M:%S

[MeasureDate]
Measure=Time
Format=%a, %b %#d

[MeterTime]
MeasureName=MeasureTime
Meter=STRING
X=123
Y=165
FontColor=13,56,109,255
FontSize=11
Align=CENTER
FontFace=Impact
StringStyle=Normal
AntiAlias=1
Angle=0.31

[MeterDate]
MeasureName=MeasureDate
Meter=STRING
X=118
Y=135
FontColor=13,56,109,255
FontSize=11
Align=CENTER
FontFace=Impact
StringStyle=Normal
AntiAlias=1
Angle=0.31
Any help would be much appreciated.
User avatar
Chewtoy
Moderator
Posts: 995
Joined: June 10th, 2009, 12:44 pm
Location: Sweden

Re: Need help modifying a skin to support iTunes

Post by Chewtoy »

Here's a list of all iTunes commands you can use: http://rainmeter.net/cms/Plugins-iTunes
Have you read the 101? It's extreamly helpfull.

Basically what you have to do is replace every measure that sends commands (or draws information) to (/from) winamp with the iTunes equivilant.
Some things won't work. But the most hopefully will. Trial and error, best way to learn.
I don't think, therefore I'm not.
Necrophantasia
Posts: 2
Joined: July 4th, 2010, 5:53 pm

Re: Need help modifying a skin to support iTunes

Post by Necrophantasia »

Thanks for the reply. I already realized what I needed to do to get it to work. However, the problem is I'm completely lost by what some of those measure commands mean, and the documentation for the windows message plugin is sketchy at best. That's why I'm not sure how to change the measures.
User avatar
Chewtoy
Moderator
Posts: 995
Joined: June 10th, 2009, 12:44 pm
Location: Sweden

Re: Need help modifying a skin to support iTunes

Post by Chewtoy »

Yeah. That code is not the easiest to pick apart.
I'd suggest that you get the info you want in a basic skin (make it with the iTunes plugin), and then you start to try and copy the layout that the player you want has.
I can see Indexnumber, songtitle, a progress bar, buttons and time of some sort.
Work out how you get those (just simple get them and display it in a simple manor). After you've done that, start wondering about graphics.
This is a great way to learn rainmeter and make a skin that fits your own needs.
I don't think, therefore I'm not.