by shemait » Wed Nov 26, 2008 2:00 pm
I actually figured this out on my own, so I will post it here, although it may not be very useful to many people, since it is based on setting the Tempo with ONLY letters. Example: I select a song that I think is "Upbeat" and click the letter "u." This changes that songs Tempo to "Upbeat." Of course, this is modifiable. For example, I made one that changes the Mood based on keyboard letters, as well.
Hope it helps someone!
Code: Select all
'==========================================================================
'
' MediaMonkey Script
'
' NAME: Predefined Tempo Script v1.0
'
' AUTHOR: Peke
' DATE : 18.05.2005
'
' INSTALL: Change Defaults in "Variable Configuration" Section of this file
'
'==========================================================================
'==========================================================================
' Variable Definition (Do Not Change)
'==========================================================================
' Tempo Variables
Dim Str_Tempo1, Str_Tempo2, Str_Tempo3, Str_Tempo4, Str_Tempo5, Str_Tempo6, Str_Tempo7,
Str_Tempo8, Str_Tempo9, Str_Tempo10
' Hotkey Variables
Dim Use_Shift, Use_Ctrl, Use_Alt
'==========================================================================
' Variable Configuration
'==========================================================================
'Set Value to TRUE/FALSE if you want to it use in HotKey
Use_Shift = FALSE
Use_Ctrl = FALSE
Use_Alt = FALSE
'Change Tempos According to your needs
Str_Tempo1 = "Upbeat"
Str_Tempo2 = "Medium"
Str_Tempo3 = "Mellow"
Str_Tempo4 = "Country"
Str_Tempo5 = "Reggae"
Str_Tempo6 = "Hip-Hop"
Str_Tempo7 = "Alternative"
Str_Tempo8 = "Comedy"
Str_Tempo9 = "Sountrack"
Str_Tempo10 = "Pop"
'===< CONFIGUTARTION ENDED >===============================================
'==========================================================================
' MediaMonkey On Start Procedure
'==========================================================================
Sub OnStartup
Dim HotKeyRing
HotKeyRing = ""
If Use_Shift Then
HotKeyRing = HotKeyRing&"Shift+"
End if
If Use_Ctrl Then
HotKeyRing = HotKeyRing&"Ctrl+"
End if
If Use_Alt Then
HotKeyRing = HotKeyRing&"Alt+"
End if
Dim ETempo
Set ETempo = SDB.UI.addMenuItemSub(SDB.UI.Menu_Edit,0,0)
ETempo.caption = "Change Tempo"
ETempo.IconIndex = 58
ETempo.useScript = Script.ScriptPath
Dim Tempo1
Set Tempo1 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo1.Caption = "#1 "&Str_Tempo1
Tempo1.OnClickFunc = "PredefinedTempo"
Tempo1.UseScript = Script.ScriptPath
Tempo1.IconIndex = 18
Tempo1.ShortCut = HotKeyRing&"u"
Dim Tempo2
Set Tempo2 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo2.Caption = "#2 "&Str_Tempo2
Tempo2.OnClickFunc = "PredefinedTempo"
Tempo2.UseScript = Script.ScriptPath
Tempo2.IconIndex = 18
Tempo2.ShortCut = HotKeyRing&"e"
Dim Tempo3
Set Tempo3 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo3.Caption = "#3 "&Str_Tempo3
Tempo3.OnClickFunc = "PredefinedTempo"
Tempo3.UseScript = Script.ScriptPath
Tempo3.IconIndex = 18
Tempo3.ShortCut = HotKeyRing&"m"
Dim Tempo4
Set Tempo4 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo4.Caption = "#4 "&Str_Tempo4
Tempo4.OnClickFunc = "PredefinedTempo"
Tempo4.UseScript = Script.ScriptPath
Tempo4.IconIndex = 18
Tempo4.ShortCut = HotKeyRing&"4"
Dim Tempo5
Set Tempo5 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo5.Caption = "#5 "&Str_Tempo5
Tempo5.OnClickFunc = "PredefinedTempo"
Tempo5.UseScript = Script.ScriptPath
Tempo5.IconIndex = 18
Tempo5.ShortCut = HotKeyRing&"5"
Dim Tempo6
Set Tempo6 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo6.Caption = "#6 "&Str_Tempo6
Tempo6.OnClickFunc = "PredefinedTempo"
Tempo6.UseScript = Script.ScriptPath
Tempo6.IconIndex = 18
Tempo6.ShortCut = HotKeyRing&"6"
Dim Tempo7
Set Tempo7 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo7.Caption = "#7 "&Str_Tempo7
Tempo7.OnClickFunc = "PredefinedTempo"
Tempo7.UseScript = Script.ScriptPath
Tempo7.IconIndex = 18
Tempo7.ShortCut = HotKeyRing&"7"
Dim Tempo8
Set Tempo8 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo8.Caption = "#8 "&Str_Tempo8
Tempo8.OnClickFunc = "PredefinedTempo"
Tempo8.UseScript = Script.ScriptPath
Tempo8.IconIndex = 18
Tempo8.ShortCut = HotKeyRing&"8"
Dim Tempo9
Set Tempo9 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo9.Caption = "#9 "&Str_Tempo9
Tempo9.OnClickFunc = "PredefinedTempo(9)"
Tempo9.UseScript = Script.ScriptPath
Tempo9.IconIndex = 18
Tempo9.ShortCut = HotKeyRing&"9"
Dim Tempo0
Set Tempo0 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo0.Caption = "#10 "&Str_Tempo10
Tempo0.OnClickFunc = "PredefinedTempo"
Tempo0.UseScript = Script.ScriptPath
Tempo0.IconIndex = 18
Tempo0.ShortCut = HotKeyRing&"0"
End Sub
Sub EditTempo(Str_Tempo)
Dim list, itm, i
If SDB.SelectedSongList.count = 0 Then
Result = SDB.MessageBox( "No tracks Selected!", mtError, Array(mbOk))
Exit Sub
End If
Set list = SDB.SelectedSongList
For i=0 To list.count-1
Set itm = list.Item(i)
itm.Tempo = Str_Tempo
itm.UpdateDB
Next
End Sub
Sub PredefinedTempo(Item)
If Left(Item.Caption,3) = "#10" Then
EditTempo(Right(Item.Caption,Len(Item.Caption)-4))
Else
EditTempo(Right(Item.Caption,Len(Item.Caption)-3))
End If
End Sub
I actually figured this out on my own, so I will post it here, although it may not be very useful to many people, since it is based on setting the Tempo with ONLY letters. Example: I select a song that I think is "Upbeat" and click the letter "u." This changes that songs Tempo to "Upbeat." Of course, this is modifiable. For example, I made one that changes the Mood based on keyboard letters, as well.
Hope it helps someone!
[code]'==========================================================================
'
' MediaMonkey Script
'
' NAME: Predefined Tempo Script v1.0
'
' AUTHOR: Peke
' DATE : 18.05.2005
'
' INSTALL: Change Defaults in "Variable Configuration" Section of this file
'
'==========================================================================
'==========================================================================
' Variable Definition (Do Not Change)
'==========================================================================
' Tempo Variables
Dim Str_Tempo1, Str_Tempo2, Str_Tempo3, Str_Tempo4, Str_Tempo5, Str_Tempo6, Str_Tempo7,
Str_Tempo8, Str_Tempo9, Str_Tempo10
' Hotkey Variables
Dim Use_Shift, Use_Ctrl, Use_Alt
'==========================================================================
' Variable Configuration
'==========================================================================
'Set Value to TRUE/FALSE if you want to it use in HotKey
Use_Shift = FALSE
Use_Ctrl = FALSE
Use_Alt = FALSE
'Change Tempos According to your needs
Str_Tempo1 = "Upbeat"
Str_Tempo2 = "Medium"
Str_Tempo3 = "Mellow"
Str_Tempo4 = "Country"
Str_Tempo5 = "Reggae"
Str_Tempo6 = "Hip-Hop"
Str_Tempo7 = "Alternative"
Str_Tempo8 = "Comedy"
Str_Tempo9 = "Sountrack"
Str_Tempo10 = "Pop"
'===< CONFIGUTARTION ENDED >===============================================
'==========================================================================
' MediaMonkey On Start Procedure
'==========================================================================
Sub OnStartup
Dim HotKeyRing
HotKeyRing = ""
If Use_Shift Then
HotKeyRing = HotKeyRing&"Shift+"
End if
If Use_Ctrl Then
HotKeyRing = HotKeyRing&"Ctrl+"
End if
If Use_Alt Then
HotKeyRing = HotKeyRing&"Alt+"
End if
Dim ETempo
Set ETempo = SDB.UI.addMenuItemSub(SDB.UI.Menu_Edit,0,0)
ETempo.caption = "Change Tempo"
ETempo.IconIndex = 58
ETempo.useScript = Script.ScriptPath
Dim Tempo1
Set Tempo1 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo1.Caption = "#1 "&Str_Tempo1
Tempo1.OnClickFunc = "PredefinedTempo"
Tempo1.UseScript = Script.ScriptPath
Tempo1.IconIndex = 18
Tempo1.ShortCut = HotKeyRing&"u"
Dim Tempo2
Set Tempo2 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo2.Caption = "#2 "&Str_Tempo2
Tempo2.OnClickFunc = "PredefinedTempo"
Tempo2.UseScript = Script.ScriptPath
Tempo2.IconIndex = 18
Tempo2.ShortCut = HotKeyRing&"e"
Dim Tempo3
Set Tempo3 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo3.Caption = "#3 "&Str_Tempo3
Tempo3.OnClickFunc = "PredefinedTempo"
Tempo3.UseScript = Script.ScriptPath
Tempo3.IconIndex = 18
Tempo3.ShortCut = HotKeyRing&"m"
Dim Tempo4
Set Tempo4 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo4.Caption = "#4 "&Str_Tempo4
Tempo4.OnClickFunc = "PredefinedTempo"
Tempo4.UseScript = Script.ScriptPath
Tempo4.IconIndex = 18
Tempo4.ShortCut = HotKeyRing&"4"
Dim Tempo5
Set Tempo5 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo5.Caption = "#5 "&Str_Tempo5
Tempo5.OnClickFunc = "PredefinedTempo"
Tempo5.UseScript = Script.ScriptPath
Tempo5.IconIndex = 18
Tempo5.ShortCut = HotKeyRing&"5"
Dim Tempo6
Set Tempo6 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo6.Caption = "#6 "&Str_Tempo6
Tempo6.OnClickFunc = "PredefinedTempo"
Tempo6.UseScript = Script.ScriptPath
Tempo6.IconIndex = 18
Tempo6.ShortCut = HotKeyRing&"6"
Dim Tempo7
Set Tempo7 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo7.Caption = "#7 "&Str_Tempo7
Tempo7.OnClickFunc = "PredefinedTempo"
Tempo7.UseScript = Script.ScriptPath
Tempo7.IconIndex = 18
Tempo7.ShortCut = HotKeyRing&"7"
Dim Tempo8
Set Tempo8 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo8.Caption = "#8 "&Str_Tempo8
Tempo8.OnClickFunc = "PredefinedTempo"
Tempo8.UseScript = Script.ScriptPath
Tempo8.IconIndex = 18
Tempo8.ShortCut = HotKeyRing&"8"
Dim Tempo9
Set Tempo9 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo9.Caption = "#9 "&Str_Tempo9
Tempo9.OnClickFunc = "PredefinedTempo(9)"
Tempo9.UseScript = Script.ScriptPath
Tempo9.IconIndex = 18
Tempo9.ShortCut = HotKeyRing&"9"
Dim Tempo0
Set Tempo0 = SDB.UI.AddMenuItem(ETempo,0,0)
Tempo0.Caption = "#10 "&Str_Tempo10
Tempo0.OnClickFunc = "PredefinedTempo"
Tempo0.UseScript = Script.ScriptPath
Tempo0.IconIndex = 18
Tempo0.ShortCut = HotKeyRing&"0"
End Sub
Sub EditTempo(Str_Tempo)
Dim list, itm, i
If SDB.SelectedSongList.count = 0 Then
Result = SDB.MessageBox( "No tracks Selected!", mtError, Array(mbOk))
Exit Sub
End If
Set list = SDB.SelectedSongList
For i=0 To list.count-1
Set itm = list.Item(i)
itm.Tempo = Str_Tempo
itm.UpdateDB
Next
End Sub
Sub PredefinedTempo(Item)
If Left(Item.Caption,3) = "#10" Then
EditTempo(Right(Item.Caption,Len(Item.Caption)-4))
Else
EditTempo(Right(Item.Caption,Len(Item.Caption)-3))
End If
End Sub[/code]