View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006016 | MMW v4 | Framework: Scripts/Extensions | public | 2009-10-05 03:40 | 2010-11-10 22:50 |
Reporter | peke | Assigned To | |||
Priority | high | Severity | feature | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Target Version | 3.2.3 | Fixed in Version | 3.2.3 | ||
Summary | 0006016: Player.StopAfterCurrent Property GET/LET is missing | ||||
Description | Hotkey is available but it can't be read by scripts. It would be nice to have isStopAfterCurrent Property GET/LET is Boolean available in http://www.mediamonkey.com/wiki/index.php/SDBPlayer | ||||
Tags | No tags attached. | ||||
Fixed in build | 1301 | ||||
|
I would rather call it just Player.StopAfterCurrent GET/LET property? |
|
Added in build 1272. |
|
Verified 1276 |
|
I think this doesn't work, I just tried with 3.2.0.1294. Playback continues after the current track when I set it to True and even more with: SDB.Player.StopAfterCurrent = True MsgBox SDB.Player.StopAfterCurrent I got message box saying False. |
|
Zvezdan, could this be only a test error? I have just tested 3.2.0.1294 by using following script and works fine for me: ------------------------------------------------------------ Option Explicit Dim UI : Set UI = SDB.UI Sub OnStartUp() Dim mnuTest Set mnuTest = SDB.UI.AddMenuItem(SDB.UI.Menu_Play, 0, 0) mnuTest.Caption = SDB.Localize("Stop After Current2") mnuTest.OnClickFunc = "SDBOnClick" mnuTest.UseScript = Script.ScriptPath End Sub Sub SDBOnClick(Item) if SDB.Player.StopAfterCurrent = False Then MsgBox( "Disabled") End If SDB.Player.StopAfterCurrent = True if SDB.Player.StopAfterCurrent = True Then MsgBox( "Enabled") End If End Sub |
|
Sorry, I suppose it is my fault since I had something like this: SDB.Player.Play SDB.Player.StopAfterCurrent = True It seems fine if I use: SDB.Player.Play SDB.ProcessMessages SDB.Tools.Sleep 10 SDB.Player.StopAfterCurrent = True |
|
Just to clarify SDB.Player.StopAfterCurrent value is reset to false each time when playback state is changed (except after Pause/UnPause) on current track. Example: 'true SDB.Player.Play SDB.Player.StopAfterCurrent = True MsgBox( "Enabled") 'false SDB.Player.Stop SDB.Player.StopAfterCurrent = True SDB.Player.Play MsgBox( "Disabled") |
|
Verified 1315 I also updated Wiki with example. |
|
Well, I don't know about 1315 build, but with 1294 your example is not working correctly - you need to use some delay between Play and StopAfterCurrent as I explained: Option Explicit Sub OnStartUp() Dim mnuTest Set mnuTest = SDB.UI.AddMenuItem(SDB.UI.Menu_Play, 0, 0) mnuTest.Caption = SDB.Localize("Play and Stop After Current without Delay") mnuTest.OnClickFunc = "SDBOnClick1" mnuTest.UseScript = Script.ScriptPath Set mnuTest = SDB.UI.AddMenuItem(SDB.UI.Menu_Play, 0, 0) mnuTest.Caption = SDB.Localize("Play and Stop After Current with Delay") mnuTest.OnClickFunc = "SDBOnClick2" mnuTest.UseScript = Script.ScriptPath End Sub Sub SDBOnClick1(Item) SDB.Player.Play SDB.Player.StopAfterCurrent = True End Sub Sub SDBOnClick2(Item) SDB.Player.Play SDB.ProcessMessages SDB.Tools.Sleep 10 SDB.Player.StopAfterCurrent = True End Sub With the first option the next track will play after the current one, but with the second option the playback will stop after the current track. |
|
Zvezdan, you are right, I can reproduce with your script on both 3.2 and 4.0 versions. Fixed in version 3.2.3 and 4.0.0.1317 |
|
Verified 3.2.3.1301 |