getmusicbee.com

Support => Developers' Area => TheaterMode => Topic started by: redwing on June 02, 2016, 04:00:14 AM

Title: TM Requests
Post by: redwing on June 02, 2016, 04:00:14 AM
Two more wishes related to this:

1. Expressions like widthDock="Panel.Height.25" support only panel and album cover type. Can you support block type too?

2. If you use the following:
 
widthDock="Panel.Height.75" width="0" heightDock="Panel.Height.25" height="0"

it draws a square with each side length of "Panel.Height.25". Can you make it draw a non-square rectangle when different values are used?

Bump. I've got ideas about new TM views but can't start without this support.

Also, please support the following requests.

- Currently the only unscalable element in Rdio Style view is "AlbumTracks" type because its child elements only work with fixed values, as in <child id="Title" width="260" />. Not to mention percentage values, even (width-/height-) dock attributes don't work with its child elements. Probably it's not just about AlbumTracks type but child elements in general.

- New onClick functions for "PlayPreviousAlbum" and "PlayNextAlbum" command, which would be useful for album art centered skins.
Title: Re: TM Requests
Post by: Steven on June 02, 2016, 06:33:49 PM
Two more wishes related to this:

1. Expressions like widthDock="Panel.Height.25" support only panel and album cover type. Can you support block type too?

2. If you use the following:
 
widthDock="Panel.Height.75" width="0" heightDock="Panel.Height.25" height="0"

it draws a square with each side length of "Panel.Height.25". Can you make it draw a non-square rectangle when different values are used?

Bump. I've got ideas about new TM views but can't start without this support.

Also, please support the following requests.

- Currently the only unscalable element in Rdio Style view is "AlbumTracks" type because its child elements only work with fixed values, as in <child id="Title" width="260" />. Not to mention percentage values, even (width-/height-) dock attributes don't work with its child elements. Probably it's not just about AlbumTracks type but child elements in general.

- New onClick functions for "PlayPreviousAlbum" and "PlayNextAlbum" command, which would be useful for album art centered skins.
I will do 1 & 2.
For the album tracks, i can easily add support for % values eg. widthDock="Panel.Width.10"
For "PlayPreviousAlbum" and "PlayNextAlbum", I will do that but it requires an API enhancement so wont be avilable until v3.1
Title: Re: TM Requests
Post by: Steven on June 02, 2016, 08:03:29 PM
http://www.mediafire.com/download/2fcq0c05qche3jv/mb_TheaterModePlugin.zip
Title: Re: TM Requests
Post by: redwing on June 02, 2016, 09:45:57 PM
Thanks for the support!

I will do 1 & 2.

Working great.

For the album tracks, i can easily add support for % values eg. widthDock="Panel.Width.10"

It works. But it requires reloading of the skin to display correctly whenever resizing the window.
Also can you support widthDock="x:Panel.80" too for child elements?
Title: Re: TM Requests
Post by: redwing on June 03, 2016, 04:26:53 PM
To implement just put which track the album cover is for in the id attribute
<element type="AlbumCover" id="Tracks[1]" x="0" y="53" width="80" height="80" brightness="1.0" ></element>
<element type="AlbumCover" id="Tracks[2]" x="0" y="143" width="80" height="80" brightness="1.0" ></element>

This indexed cover works only upto "Tracks[20]". After 20, it returns playing track's album cover. Can you support upto Tracks[50]? It seems other fields are working fine even after 20.
Title: Re: TM Requests
Post by: Steven on June 04, 2016, 10:30:06 AM
For the album tracks, i can easily add support for % values eg. widthDock="Panel.Width.10"

It works. But it requires reloading of the skin to display correctly whenever resizing the window.
Also can you support widthDock="x:Panel.80" too for child elements?
i can do something where the X value used is the parent element location (eg. the AlbumTracks element itself). Would that work for what you have in mind?
Title: Re: TM Requests
Post by: redwing on June 04, 2016, 10:54:31 AM
Yep, that'd be great.
Title: Re: TM Requests
Post by: Steven on June 04, 2016, 11:43:18 AM
these are done apart from the "PlayPreviousAlbum" and "PlayNextAlbum" commands - they can be included but wont function until v3.1
http://www.mediafire.com/download/2fcq0c05qche3jv/mb_TheaterModePlugin.zip
Title: Re: TM Requests
Post by: redwing on June 04, 2016, 12:05:16 PM
Thanks! But this issue persists.

This indexed cover works only upto "Tracks[20]". After 20, it returns playing track's album cover. Can you support upto Tracks[50]? It seems other fields are working fine even after 20.
Title: Re: TM Requests
Post by: Steven on June 04, 2016, 12:15:31 PM
try again now
Title: Re: TM Requests
Post by: redwing on June 04, 2016, 12:17:11 PM
Working now. Thanks a lot!
Title: Re: TM Requests
Post by: redwing on June 10, 2016, 04:19:43 PM
Can you do something about those thick, obtrusive scroll bars in TM panels?

http://i.imgur.com/PuKx8Nu.png

If you support a new attribute for it, it's fine. But I think you could just automate it with much narrower and blend-in colored ones.
Title: Re: TM Requests
Post by: Steven on June 11, 2016, 04:59:02 PM
i have changed the scrollbar to be narrower and blend in a bit more. Its included in the latest patch build
Title: Re: TM Requests
Post by: redwing on June 11, 2016, 05:13:30 PM
Thanks! I think it could be blended in a little more, but still a great improvement!
Title: Re: TM Requests
Post by: Jubs v2 on June 15, 2016, 08:49:17 AM
Any chance we could get more options/support for the SpectrumVisualizer? It is a great piece to making the theme a little more dynamic. Stuff like bar width, smoothing(if possible), min height for the bars.

Unless there are some parameters that I can't find anywhere.
Title: Re: TM Requests
Post by: redwing on September 07, 2016, 01:00:28 PM
Can you support scroll bar for "album tracks" panel and "now playing list" panel?

Currently to navigate to previous/next page of the list, you have to click on (play) a top/bottom track.


(http://i.imgur.com/hFMjzTS.png)
Title: Re: TM Requests
Post by: redwing on October 26, 2016, 02:58:31 AM
these are done apart from the "PlayPreviousAlbum" and "PlayNextAlbum" commands - they can be included but wont function until v3.1

Just tested the two new commands but they don't seem to work with v3.1.
Title: Re: TM Requests
Post by: Steven on October 30, 2016, 09:36:16 PM
PlayPreviousAlbum should work.
PlayNextAlbum is fixed now



http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: redwing on October 31, 2016, 06:43:54 AM
PlayNextAlbum is now working fine.

But PlayPreviousAlbum doesn't work. If I click on it, playback stops and nothing happens.
Title: Re: TM Requests
Post by: Steven on October 31, 2016, 09:37:39 AM
thats fixed for the next patch update
Title: Re: TM Requests
Post by: redwing on November 01, 2016, 02:49:35 AM
It's fixed. Thanks!
Title: Re: TM Requests
Post by: Bee-liever on January 23, 2017, 12:22:06 AM
Could we please have a setting to automatically adjust the font size to fit the text to a given area.
Maybe like this example:
Code
<element type="Field" name="NowPlayAr" xAnchor="#postoverlay.Left" x="5" yAnchor="#postoverlay.15" y="0" widthDock="x:#postoverlay.Right" width="-5" font="Headline One" style="Bold" align="center" size="0" fg="0,0,0" >
    <child id="Artist" ></child>
  </element>
setting font size to 0 would make the the font adjust to use the largest possible size so the artist name fits in the space, rather then being truncated.

Or like this:
Code
<element type="Field" name="NowPlayTr" xAnchor="#postoverlay.Left" x="5" yAnchor="#postoverlay.89" y="0" widthDock="x:#postoverlay.Right" width="-5" font="Headline One" style="Regular" align="Dynamic" size="36" fg="0,0,0" >
    <child id="Title" ></child>
  </element>
setting the align attribute to Dynamic would keep the font at 36pt unless the title was to long, then it would be adjusted to fit the available space.
Title: Re: TM Requests
Post by: redwing on May 09, 2017, 05:08:17 AM
Can you support scroll bar for "album tracks" panel and "now playing list" panel?

Currently to navigate to previous/next page of the list, you have to click on (play) a top/bottom track.


(http://i.imgur.com/hFMjzTS.png)

Bump.
Title: Re: TM Requests
Post by: redwing on May 18, 2017, 07:24:41 PM
Would it be possible to support a sequential execution of onclick events?
Rdio Style view has three views that can be switched by OpenAutoHidePanel onclick command.
XBox Music Style 2 view has six overlays with OpenAutoHidePanel onclick command for each.
Then if there's another onclick command that defines a sequence and interval, they can be changed automatically.
So it would list:
- target onclick commands in order that were already set in the code
- choose random or sequential order
- interval by minutes or a specific number of played tracks.
Title: Re: TM Requests
Post by: Steven on May 18, 2017, 07:32:41 PM
i will look at the TM requests in the next couple of weeks i think
Title: Re: TM Requests
Post by: redwing on May 18, 2017, 07:40:51 PM
Yep, thanks!
Title: Re: TM Requests
Post by: Steven on June 17, 2017, 09:18:34 PM
Can you support scroll bar for "album tracks" panel and "now playing list" panel?

Currently to navigate to previous/next page of the list, you have to click on (play) a top/bottom track.
scrollbar (to the left of the tracks as i felt it worked better with the various skins) and mouse wheel now supported:
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: Steven on June 17, 2017, 09:29:10 PM
Could we please have a setting to automatically adjust the font size to fit the text to a given area.
...
setting the align attribute to Dynamic would keep the font at 36pt unless the title was to long, then it would be adjusted to fit the available space.
do you still want this?
Title: Re: TM Requests
Post by: redwing on June 17, 2017, 09:59:55 PM
Can you support scroll bar for "album tracks" panel and "now playing list" panel?

Currently to navigate to previous/next page of the list, you have to click on (play) a top/bottom track.
scrollbar (to the left of the tracks as i felt it worked better with the various skins) and mouse wheel now supported:
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

Thanks! It's working well with "album tracks" panel. But "now playing list" panel only shows scroll bar that can't be dragged. Mouse scroll doesn't work either. Try with Compact View (https://getmusicbee.com/forum/index.php?topic=18757.0) (click on album name to show now playing list).
Title: Re: TM Requests
Post by: Steven on June 17, 2017, 10:36:35 PM
it should be working now
Title: Re: TM Requests
Post by: Bee-liever on June 17, 2017, 11:47:47 PM
Could we please have a setting to automatically adjust the font size to fit the text to a given area.
...
setting the align attribute to Dynamic would keep the font at 36pt unless the title was to long, then it would be adjusted to fit the available space.
do you still want this?
Yes please!
I gave up on a new TM 'cause this didn't exist.
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 12:06:54 AM
it should be working now

It's working, but it can load only 32 tracks at a time. To go to the 33rd track you still have to click on the last track, then it loads another 32 tracks.
Album Tracks panel seems loading more than that. It loads all 154 tracks at one time with my biggest album. Though I don't know it has a limit, it would be enough for listing tracks in an album. But Now Playing List panel sometimes needs to show thousands of or more tracks than that.
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 09:25:46 AM
for the next update i have bumped the max to 200 for the playing tracks list. Album lists are unlimited
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 10:34:11 AM
Could we please have a setting to automatically adjust the font size to fit the text to a given area.
...
setting the align attribute to Dynamic would keep the font at 36pt unless the title was to long, then it would be adjusted to fit the available space.
do you still want this?
Yes please!
I gave up on a new TM 'cause this didn't exist.
i am ok to do the 2nd but even then wouldnt it make sense to restrict the font size range eg. minSize="99" maxSize="99", where most names would use the maxSize but with scope to reduce down to minSize.
I dont see how the first could work well eg. if you have a 3 letter artist name vs. a 50 letter artist name, the font size would vary massively.
Title: Re: TM Requests
Post by: Bee-liever on June 18, 2017, 12:11:05 PM
i am ok to do the 2nd but even then wouldnt it make sense to restrict the font size range eg. minSize="99" maxSize="99", where most names would use the maxSize but with scope to reduce down to minSize.
I dont see how the first could work well eg. if you have a 3 letter artist name vs. a 50 letter artist name, the font size would vary massively.
Here's a pic of what I'm trying to achieve.
I'll leave it to you to work out the best way to achive the result.
(http://i.imgur.com/eC3X03w.jpg) (http://imgur.com/eC3X03w)
This is part of the TM.
The artist and title are "multiLine" fields so that long titles will wrap.
They are currently set to align="Center"
What I want is to be able to set a preferred font size, but if the full field won't fit in the allocated space, MB will calculate the font size that will allow the field to fit (only just!) in that space.
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 12:33:09 PM
for the next theatermode update, minSize="99" is supported ie. size is used but if it wont fit then a lessor size is used so the text fits, with the cutoff for the size reduction at minSize

edit:
if you have a skin already prepared, would you mind sending it so i can test this?
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 12:50:54 PM
Would it be possible to support a sequential execution of onclick events?
Rdio Style view has three views that can be switched by OpenAutoHidePanel onclick command.
XBox Music Style 2 view has six overlays with OpenAutoHidePanel onclick command for each.
Then if there's another onclick command that defines a sequence and interval, they can be changed automatically.
So it would list:
- target onclick commands in order that were already set in the code
- choose random or sequential order
- interval by minutes or a specific number of played tracks.
in you compact view skin, currently you have to click 3 different places to switch the views. And if i understand your first request correctly then you want to have just one place thats clicked and it cycles through the 3 commands. I am happy to look at doing that one
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 01:10:37 PM
Yes, then I will need to add one more button for "auto-switch" apart from the existing two buttons for switching views.
Title: Re: TM Requests
Post by: Bee-liever on June 18, 2017, 03:22:27 PM
if you have a skin already prepared, would you mind sending it so i can test this?
PM sent
It's not finished, but OK for testing
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 05:15:15 PM
Tested with your skin. When multi-line is enabled, the algorithm is a little crude so if a field can be done on a single line (such as Artist) then you should get a more optimal result.
I will make the update available later today
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 05:56:17 PM
Does anyone have views on the theater mode visualiser? Looking at it now, i dont really like it but wondering if others feel the same
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 07:12:18 PM
Yes, then I will need to add one more button for "auto-switch" apart from the existing two buttons for switching views.
anywhere a function is referenced by onClick, you can now enter multiple functions separated by ";" eg.
Code
<element type="Field"  id="Album" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" onClick="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel;OpenAutoHidePanel:#ArtistInfoPanel">
the reason "OpenAutoHidePanel:#ArtistInfoPanel" is repeated is so you the last click in the sequence hides the panel - its not required to do that. The next click will restart the sequence.

http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 08:41:09 PM
Thanks, but this requires you keep clicking it manually. What I wanted was automatic change between listed functions.

Then if there's another onclick command that defines a sequence and interval, they can be changed automatically.
So it would list:
- target onclick commands in order that were already set in the code
- choose random or sequential order
- interval by minutes or a specific number of played tracks.
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 08:45:58 PM
i know - i thought you wanted both the manual click (which i did) and some automatic which i guess my earlier post didnt make clear i wasnt planning to do. Wouldnt the automatic be annoying anyway? eg. if you were reading the lyrics and it changed by itself
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 08:51:57 PM
for the next update i have bumped the max to 200 for the playing tracks list.

Working better.
One problem with Now Playing List panel is it colors only last digit for track# for mouseOverFg.

(http://i.imgur.com/5HqPzRx.png)

As you can see 817 is still colored "200,200,200" whereas the rest is correctly colored "255,255,255".
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 08:57:32 PM
i know - i thought you wanted both the manual click (which i did) and some automatic which i guess my earlier post didnt make clear i wasnt planning to do. Wouldnt the automatic be annoying anyway? eg. if you were reading the lyrics and it changed by itself

Of course, it doesn't make sense using it for lyrics or artist bio panel. As I said, Xbox Music Style's overlay change would be the perfect example. Also a member requested auto changing views for Rdio Style. It can be extended to new views based on the auto-changing function.
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 09:16:20 PM
Does anyone have views on the theater mode visualiser? Looking at it now, i dont really like it but wondering if others feel the same

Do you mean spectrum visualizer? Compact View shows it at the bottom.
It would be great if it could look like the one in the main player (that can be added from panel arrangement dialog).
Also wave bar in TM can't show inner color.
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 09:21:32 PM
i know - i thought you wanted both the manual click (which i did) and some automatic which i guess my earlier post didnt make clear i wasnt planning to do. Wouldnt the automatic be annoying anyway? eg. if you were reading the lyrics and it changed by itself

Of course, it doesn't make sense using it for lyrics or artist bio panel. As I said, Xbox Music Style's overlay change would be the perfect example. Also a member requested auto changing views for Rdio Style. It can be extended to new views based on the auto-changing function.
you can now have multiple commands from a single button or text onClick. If another attribute was added that had a time interval such that the button/text was automatically clicked, would that work for you?
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 09:31:17 PM
Interval between each listed commands, not the interval between the new command's clicks.

[edit] I guess it would be the same in most cases.
Title: Re: TM Requests
Post by: Steven on June 18, 2017, 10:19:23 PM
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

using the example from before
Code
<element type="Field"  id="Album" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" onClick="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel;OpenAutoHidePanel:#ArtistInfoPanel" autoClickInterval="20000">
this will cause the autohide panels to toggle every 20 secs
Title: Re: TM Requests
Post by: redwing on June 18, 2017, 10:29:58 PM
Working great! Thanks!
Title: Re: TM Requests
Post by: Bee-liever on June 18, 2017, 11:34:29 PM
Does anyone have views on the theater mode visualiser? Looking at it now, i dont really like it but wondering if others feel the same

Do you mean spectrum visualizer? Compact View shows it at the bottom.
It would be great if it could look like the one in the main player (that can be added from panel arrangement dialog).
Also wave bar in TM can't show inner color.
as redwing said but would like to have the centered frequencies view for the spectrum
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 12:18:39 AM
this will cause the autohide panels to toggle every 20 secs

Did more tests, and there are some issues that need to be addressed.

1. If it's included in the code, it gets turned on when the TM starts without having to click on it.
2. There's no way to stop the auto-changing unless closing the view.
3. Even if it would be possible to start and stop it, it would be hard to know which state it is on especially with a long interval.

For #1, It shouldn't get turned on when TM starts and only get turned on with a click. Maybe separating this into a new onClick command (AutoSwitch) would work better.
For #2, It should toggle to on and off upon clicking on it.
For #3, visibleTrigger="AutoSwitchOn" and "AutSwitchOff" are needed to indicate the status of the button or text.
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 05:16:33 AM
Try with Rdio Style view, and you will see the scroll bar of Album Tracks panel is still visible when you switch to album list view and gallery view. Only the scroll bar is visible.
Title: Re: TM Requests
Post by: Freddy Barker on June 19, 2017, 01:48:47 PM
this will cause the autohide panels to toggle every 20 secs

1. If it's included in the code, it gets turned on when the TM starts without having to click on it.


Would be super-awesome-useful and add more functionality if it could:-
1) - The setting, WHEN MUSIC STARTS - then Switch to Theatre Mode.
2) - A check-box option to auto-activate and cycle through the TM views!

For those of us that start MB PC, then sit back to enjoy music via remote App :-)

Best regards....
Title: Re: TM Requests
Post by: Steven on June 19, 2017, 07:44:00 PM
Try with Rdio Style view, and you will see the scroll bar of Album Tracks panel is still visible when you switch to album list view and gallery view. Only the scroll bar is visible.
this might be tricky as the tracks list is still visible but what is happening is the artist picture is covering the tracks list so you only see the scroll bar. I will think about what could be done but there might be something you can do as well eg. just reducing the width of the tracks list should do the trick

edit:
although i dont have a solution yet, i do think its probably something the plugin needs to correct
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 08:18:51 PM
eg. just reducing the width of the tracks list should do the trick

I don't see how that can help.

I tried adding bg="0,0,0" to autoHide panel definition but it didn't help. Can you add an attribute for autoHide panel that clears the area it covers so that Album Tracks panel is not drawn beneath it?
Title: Re: TM Requests
Post by: Steven on June 19, 2017, 08:20:15 PM
i have made a change to address it - the scrollbar now is placed inside the element bounds. It wont affect your skins but i will need to make some minor adjustments to the Album and Tracks skin
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 08:23:30 PM
OK, I'll test it later when it's available.
Title: Re: TM Requests
Post by: Steven on June 19, 2017, 08:47:40 PM
this will cause the autohide panels to toggle every 20 secs

Did more tests, and there are some issues that need to be addressed.

1. If it's included in the code, it gets turned on when the TM starts without having to click on it.
2. There's no way to stop the auto-changing unless closing the view.
3. Even if it would be possible to start and stop it, it would be hard to know which state it is on especially with a long interval.

For #1, It shouldn't get turned on when TM starts and only get turned on with a click. Maybe separating this into a new onClick command (AutoSwitch) would work better.
For #2, It should toggle to on and off upon clicking on it.
For #3, visibleTrigger="AutoSwitchOn" and "AutSwitchOff" are needed to indicate the status of the button or text.
I dont really want to invest a lot of time in this. I am happy to do something such that the switching only is active while the track plays. Also I would be ok to add another command to stop/start all autoclick timers. If either of those is useful let me know.

also re: the scrollbar, i think your embeded rdio style needs some tweaking for the overall width of the tracks list eg. if you make the compact player narrower then the scrollbar cuts into the track time field (the scrollbar is placed to the right edge of the overall width of the tracks list element)
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 09:05:56 PM
the switching only is active while the track plays.

It won't be useful without having control over it.

Also I would be ok to add another command to stop/start all autoclick timers.

You mean add one more button? Then what should the original button do when autoclick is set?
That's why I requested that it should toggle to on and off when autoclick is set. If it's not set, it can run the listed commands one by one upon clicking.

also re: the scrollbar, i think your embeded rdio style needs some tweaking for the overall width of the tracks list eg. if you make the compact player narrower then the scrollbar cuts into the track time field (the scrollbar is placed to the right edge of the overall width of the tracks list element)

Yes, I noticed that. Will make adjustments to most of my skins.
Title: Re: TM Requests
Post by: Steven on June 19, 2017, 10:04:19 PM
for the bug fix:
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: redwing on June 19, 2017, 10:23:15 PM
Thanks! Now the scrollbar is no longer visible.

Also confirm the following issue is fixed:

One problem with Now Playing List panel is it colors only last digit for track# for mouseOverFg.

(http://i.imgur.com/5HqPzRx.png)

As you can see 817 is still colored "200,200,200" whereas the rest is correctly colored "255,255,255".
Title: Re: TM Requests
Post by: Steven on June 20, 2017, 07:58:17 PM
this will cause the autohide panels to toggle every 20 secs

Did more tests, and there are some issues that need to be addressed.

1. If it's included in the code, it gets turned on when the TM starts without having to click on it.
2. There's no way to stop the auto-changing unless closing the view.
3. Even if it would be possible to start and stop it, it would be hard to know which state it is on especially with a long interval.

For #1, It shouldn't get turned on when TM starts and only get turned on with a click. Maybe separating this into a new onClick command (AutoSwitch) would work better.
For #2, It should toggle to on and off upon clicking on it.
For #3, visibleTrigger="AutoSwitchOn" and "AutSwitchOff" are needed to indicate the status of the button or text.
For the next update I have made the following changes:
1. autoSwitch="command1;command2;etc" autoSwitchInterval="20000" - on clicking the text/button, the commands are invoked automatically in sequence where autoSwitchInterval is the milliseconds gap
2. visibleTrigger="AutoSwitchOn" and "AutoSwitchOff" is also supported but the trigger is global so that means its only useful if you have one autoSwitch element
3. and a new command: StopAutoSwitch

this is how it could look:
Code
	<element type="Text" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" autoSwitch="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel" autoSwitchInterval="2000" visibleTrigger="AutoSwitchOff" >Start</element>
<element type="Text"  xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" onClick="StopAutoSwitch" visibleTrigger="AutoSwitchOn" >Off</element>

the following from yesterday's version is still supported:
onClick="command1;command2;etc"  - in this case the user clicking the same text/button will toggle between the auto-hide panels in sequence
Code
	<element type="Text" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220"onClick="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel">Next</element>
Title: Re: TM Requests
Post by: Steven on June 20, 2017, 08:24:22 PM
Does anyone have views on the theater mode visualiser? Looking at it now, i dont really like it but wondering if others feel the same

Do you mean spectrum visualizer? Compact View shows it at the bottom.
It would be great if it could look like the one in the main player (that can be added from panel arrangement dialog).
Also wave bar in TM can't show inner color.
as redwing said but would like to have the centered frequencies view for the spectrum
for the next update, the spectrum visualiser is now centered and displayed more like the main player visualiser
Title: Re: TM Requests
Post by: Steven on June 20, 2017, 09:18:52 PM
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

i will probably also look at the wavebar but there is more to it than i first thought
Title: Re: TM Requests
Post by: redwing on June 20, 2017, 09:50:11 PM
Working great! Thanks!
Title: Re: TM Requests
Post by: Steven on June 20, 2017, 10:23:36 PM
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

now has support for fg2 on the sound graph
Code
<element type="SoundGraph" x="30"  yAnchor="Panel.Bottom" y="-70" widthDock="X:#Position.Left" width="0" height="45" fg="255,230,230,230" fg2="255,255,255,255" bg="8,250,250,250" ></element>

and also fixes a debugging code bug with the last update that causes the right side of the first line of a track list to not show
Title: Re: TM Requests
Post by: redwing on June 21, 2017, 12:02:57 AM
now has support for fg2 on the sound graph
Code
<element type="SoundGraph" x="30"  yAnchor="Panel.Bottom" y="-70" widthDock="X:#Position.Left" width="0" height="45" fg="255,230,230,230" fg2="255,255,255,255" bg="8,250,250,250" ></element>

There are some issues with this:

- Exiting from full screen mode or resizing the window removes inner colors from the wave bar.

- Can't use alpha channel for fg & fg2 because it paints over bg colors.

(http://i.imgur.com/q1CUsKe.png)
Code
bg="50,255,255,255" fg="100,255,85,0" fg2="230,255,85,0"
where the left part is it's properly painted and the right part shows the bg colors. Restarted the paused track from the middle, and it shows mixed colors of fg & bg. If I use solid colors without alpha channel for fg & fg2, then it works fine. But then it completely covers background image like artist picture.
Title: Re: TM Requests
Post by: Bee-liever on June 21, 2017, 08:09:14 AM
Tested with your skin. When multi-line is enabled, the algorithm is a little crude so if a field can be done on a single line (such as Artist) then you should get a more optimal result.
I will make the update available later today
Testing some with the variable font size, only problem I can find is if artist or track title is only one word.
Appears that scaling algorithm isn't applied and max font size only is used.
Title: Re: TM Requests
Post by: Steven on June 21, 2017, 07:05:55 PM
There are some issues with this:

- Exiting from full screen mode or resizing the window removes inner colors from the wave bar.

- Can't use alpha channel for fg & fg2 because it paints over bg colors.
those are fixed for the next plugin update

http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: Steven on June 21, 2017, 07:07:40 PM
Testing some with the variable font size, only problem I can find is if artist or track title is only one word.
Appears that scaling algorithm isn't applied and max font size only is used.
yes i believe that would be the case when using multi-line. I will see if anything reasonable can be done
Title: Re: TM Requests
Post by: Steven on June 21, 2017, 09:40:13 PM
Testing some with the variable font size, only problem I can find is if artist or track title is only one word.
Appears that scaling algorithm isn't applied and max font size only is used.
yes i believe that would be the case when using multi-line. I will see if anything reasonable can be done
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

MB will reduce the font size but such that it fits to one line. I know thats not ideal
Title: Re: TM Requests
Post by: Bee-liever on June 22, 2017, 12:13:26 AM
MB will reduce the font size but such that it fits to one line. I know thats not ideal
Actually, it seems to be working well  :)
Title: Re: TM Requests
Post by: redwing on June 22, 2017, 04:57:20 AM
There are some issues with this:

- Exiting from full screen mode or resizing the window removes inner colors from the wave bar.

- Can't use alpha channel for fg & fg2 because it paints over bg colors.
those are fixed for the next plugin update

Both issues are fixed, thanks!
Title: Re: TM Requests
Post by: Steven on July 21, 2017, 07:24:03 PM
for the next update i have made a small change so that the scrollbar only displays for the playing tracks/ album tracks panel when the mouse is over the panel

http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip
Title: Re: TM Requests
Post by: redwing on July 24, 2017, 07:42:12 PM
Can you support opacity setting for BackgroundAlbumCover element so that it can be used as an overlay over artist pictures?
Title: Re: TM Requests
Post by: Steven on July 24, 2017, 08:28:26 PM
i will look at this over the next week but not promising until i have seen what is involved
Title: Re: TM Requests
Post by: redwing on July 24, 2017, 08:57:42 PM
Sure. Thanks!
Title: Re: TM Requests
Post by: Steven on July 25, 2017, 08:17:12 PM
http://musicbee.niblseed.com/V3_1/MusicBee31_Patched.zip

add an alpha attribute with a value between 0 and 1
Code
	<element type="BackgroundAlbumCover" brightness="0.2" alpha="0.5" refreshInterval="20"></element>
Title: Re: TM Requests
Post by: redwing on July 25, 2017, 08:36:55 PM
Working great. Thanks!

BTW I see the 45 seconds at minimum interval restriction is still enforced for gallery element. Can you remove it?
Title: Re: TM Requests
Post by: Steven on July 25, 2017, 09:34:54 PM
i have reduced it to 30 seconds
Title: Re: TM Requests
Post by: redwing on July 25, 2017, 10:09:21 PM
Thanks!
Title: Re: TM Requests
Post by: redwing on January 15, 2018, 09:19:03 PM
the spectrum visualiser is now centered and displayed more like the main player visualiser

Can you add an option to use "low to high" style instead? That will offer more varied looks to TM views.
Title: Re: TM Requests
Post by: Tybot on April 30, 2018, 11:40:47 PM
I've decided to modify my initial request as it did have some flaws to it.

When it comes to the element type "ArtistPicture". Could we get the option to search for local pictures in "C:\Users\Admin\Music\MusicBee\Artist Pictures\Thumb" first and then default to "C:\Users\Admin\AppData\Local\MusicBee\InternalCache\ArtistThumbs" if no artist picture were found in the first location? That would cause the high-res pictures to be displayed if such ones exist and then default to low-res if not.

Currently, by using an online provider for these images, it causes you to be at the mercy of them when it comes to aspect ratio and resolution which causes results like this:

https://i.imgur.com/lLZwN4s.jpg

Instead of this:

https://i.imgur.com/C56bTnL.jpg
Title: Re: TM Requests
Post by: Freddy Barker on March 10, 2019, 12:34:04 PM
Code
	<element type="Text" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" autoSwitch="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel" autoSwitchInterval="2000" visibleTrigger="AutoSwitchOff" >Start</element>
<element type="Text"  xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220" onClick="StopAutoSwitch" visibleTrigger="AutoSwitchOn" >Off</element>
onClick="command1;command2;etc"  - in this case the user clicking the same text/button will toggle between the auto-hide panels in sequence
Code
	<element type="Text" xAnchor="Panel.5" x="0" yAnchor="#Cover.Bottom" y="140" widthDock="#Cover.Right" width="0" align="center" font="Segoe UI" style="Regular" size="8" fg="220,220,220"onClick="OpenAutoHidePanel:#NowPlayingListPanel;OpenAutoHidePanel:#ArtistInfoPanel">Next</element>

@steven,
Not sure if you have any more great ideas in the bag for TM, but following on from the functions (above).
I've tried produce an "Artist Info" view, that initiates "OpenAutoHidePanel" to show ":#ArtistInfoPanel" after autoSwitchInterval="8000" and then HIDE it again after autoSwitchInterval="28000", then re-cycle on the start of the next track..

Any ideas please?
Regards: Freddy
Title: Re: TM Requests
Post by: redwing on June 14, 2019, 07:27:32 AM
to retrieve square artist pictures (from last.fm)
<element type="ArtistPicture" artistType="Artist" pictureSize="Square" ...

Let me know if you are interested to have the ability to show a square artist thumbnail from last.fm - a downside is they are only 126x126

Can you support the square artist picture in TM views to use, if present, full-size images instead of the cache?
Currently the user has to maximize picture size setting in album covers/artists view to get the largest cache image (which is still small) in TM views.
Title: Re: TM Requests
Post by: Bee-liever on August 23, 2020, 04:00:29 AM
Could substitution anchors/docks be added to panels/blocks when an autohide panel overlaps that panel.

For example:
Code
<!-- Artist Pic -->
  <element type="Gallery" name="#ArtPics" xAnchor="Panel.27" x="0" yAnchor="Panel.14" y="0" widthDock="X:Panel.87" width="0" heightDock="Y:#Cover.Top" height="-20" aspectRatio="zoomKeep" fillColor="0,0,0,0" fade="0.0" interval="40" tags="artist" >
  </element>
 
  <!--Lyrics Panel-->
  <autoHide name="#LyricsPanel" gammaCorrected="true" xAnchor="Panel.70" x="0" yAnchor="#ArtPics.Top" y="0" widthDock="X:Panel.Right" width="-7" heightDock="Y:#ArtPics.Bottom" height="0" bg="13,TrackAndArtistPanel(60)" allowPinning="true" resizePictures="false" >
  <element type="Lyrics" gammaCorrected="true" xAnchor="#LyricsPanel.Left" x="10" yAnchor="#LyricsPanel.Top" y="20" widthDock="X:#LyricsPanel.Right" width="-10" heightDock="Y:#LyricsPanel.Bottom" height="-5" align="center" font="Segoe UI" style="Bold" size="9.5" fg="180,TrackAndArtistPanel(90)" fg2="250,TrackAndArtistPanel(bdr)" ></element>
  </autoHide>

The Lyrics Panel overlays the RH end of the Artist Pic panel when displayed.
What I'd like to achieve is for the Artist Pic Panel to resize when Lyrics Panel is called.

Maybe adding:
Code
<!-- Artist Pic -->
  <element type="Gallery" name="#ArtPics" xAnchor="Panel.27" x="0" yAnchor="Panel.14" y="0" widthDock="X:Panel.87" width="0" {sub="#LyricsPanel" widthDock="X:#LyricsPanel.Left" width="0"} heightDock="Y:#Cover.Top" height="-20" aspectRatio="zoomKeep" fillColor="0,0,0,0" fade="0.0" interval="40" tags="artist" >
  </element>
 
  <!--Lyrics Panel-->
  <autoHide name="#LyricsPanel" gammaCorrected="true" xAnchor="Panel.70" x="0" yAnchor="#ArtPics.Top" y="0" widthDock="X:Panel.Right" width="-7" heightDock="Y:#ArtPics.Bottom" height="0" bg="13,TrackAndArtistPanel(60)" allowPinning="true" resizePictures="false" >
  <element type="Lyrics" gammaCorrected="true" xAnchor="#LyricsPanel.Left" x="10" yAnchor="#LyricsPanel.Top" y="20" widthDock="X:#LyricsPanel.Right" width="-10" heightDock="Y:#LyricsPanel.Bottom" height="-5" align="center" font="Segoe UI" style="Bold" size="9.5" fg="180,TrackAndArtistPanel(90)" fg2="250,TrackAndArtistPanel(bdr)" ></element>
  </autoHide>

or maybe like in a skin file:
Code
<!-- Artist Pic -->
  <element type="Gallery" name="#ArtPics" xAnchor="Panel.27" x="0" yAnchor="Panel.14" y="0" widthDock="X:Panel.87" width="0" heightDock="Y:#Cover.Top" height="-20" aspectRatio="zoomKeep" fillColor="0,0,0,0" fade="0.0" interval="40" tags="artist" >
  </element>
 
  <!--Lyrics Panel-->
  <autoHide name="#LyricsPanel" gammaCorrected="true" xAnchor="Panel.70" x="0" yAnchor="#ArtPics.Top" y="0" widthDock="X:Panel.Right" width="-7" heightDock="Y:#ArtPics.Bottom" height="0" bg="13,TrackAndArtistPanel(60)" allowPinning="true" resizePictures="false" >
  <element type="Lyrics" gammaCorrected="true" xAnchor="#LyricsPanel.Left" x="10" yAnchor="#LyricsPanel.Top" y="20" widthDock="X:#LyricsPanel.Right" width="-10" heightDock="Y:#LyricsPanel.Bottom" height="-5" align="center" font="Segoe UI" style="Bold" size="9.5" fg="180,TrackAndArtistPanel(90)" fg2="250,TrackAndArtistPanel(bdr)" ></element>

<subsElement id="#ArtPics" replaceWith="xAnchor="Panel.27" x="0" yAnchor="Panel.14" y="0" widthDock="X:#LyricsPanel.Left" width="0" heightDock="Y:#Cover.Top" height="-20"" />
  </autoHide>
Title: Re: TM Requests
Post by: Bee-liever on August 25, 2020, 12:57:38 AM
to use - in any colour attribute:
 bg="TrackAndArtistPanel(bg)"
 bg="TrackAndArtistPanel(20)"
 fg="TrackAndArtistPanel(fg)"
 fg="TrackAndArtistPanel(90)"
 bdr="TrackAndArtistPanel(bdr)"

where a number between 0 and 100 means a %mix of bg and fg, where a lower number is more bg and higher number more fg

edit:
also added alpha support for background colours, where alpha is between 0 and 255 (unlike the weight parameter)
eg.
 bg="190,TrackAndArtistPanel(20)"

These colours are pulled from <element id="Panel.ChildBody.Default" />
Would it be possible to add:

hi="TrackAndArtistPanel(hi)" derived from <element id="Panel.ChildBody.Highlight" fg="X,X,X" />
lo="TrackAndArtistPanel(lo)" derived from <element id="Panel.ChildBody.Lowlight" fg="X,X,X" />

Thank you
Title: Re: TM Requests
Post by: Steven on August 29, 2020, 07:14:08 AM
The latest v3.4 patch version has an updated plugin that accepts:
TrackAndArtistPanel.LowLight(fg)
TrackAndArtistPanel.HighlightLight(fg)
Title: Re: TM Requests
Post by: Steven on August 29, 2020, 07:17:00 AM
I dont think its likely for me to be able to do this in the near term. Its quite complex and I find making changes to the plugin quite hard and time consuming. Perhaps if there is a bunch of changes people ask for then I can make a one-off effort to do as many changes at the same time
Title: Re: TM Requests
Post by: Bee-liever on August 31, 2020, 12:33:05 AM
The latest v3.4 patch version has an updated plugin that accepts:
TrackAndArtistPanel.LowLight(fg)
TrackAndArtistPanel.HighlightLight(fg)

Thank you
Title: Re: TM Requests
Post by: Bee-liever on August 31, 2020, 12:35:45 AM
OK. Will wait to see what happens with this one.

BTW. Could you merge this thread into the TM Requests please.  I missed that one when I posted this request.
Title: Re: TM Requests
Post by: The Incredible Boom Boom on August 31, 2020, 03:21:20 AM
Would it be possible to get the previous tracks' album covers?

id="Tracks[-1]"
id="Tracks[-2]"

...and so on.
Title: Re: TM Requests
Post by: mmakes on September 03, 2020, 03:30:57 AM
Is there a way for TheaterModes to scale properly to different windows scaling?

For example, I'm on 150% window scaling on Windows 10. And pretty much all TMs that come with MB don't scale correctly - everything is too small and spaced incorrectly.

The reverse is also a problem. Since I created most of my TMs in 150% scale, users on 100% or 125% window scaling are seeing everything in the wrong place also.

I fixed this by basically releasing multiple versions of the same TM, each with different font sizes, and x and y coordinates. I wish there's a way not to do that though.
Title: Re: TM Requests
Post by: Steven on September 03, 2020, 08:56:33 AM
Is there a way for TheaterModes to scale properly to different windows scaling?
I did the TM plugin many years ago when high-dpi screens werent a thing and there is no handling for that. To properly handle high-dpi screens would likely require a substantial effort, but i will have a look on the weekend how hard it would be to get reasonable results
Title: Re: TM Requests
Post by: HirriAshana92 on September 03, 2020, 12:06:23 PM
Is there a way for TheaterModes to scale properly to different windows scaling?

For example, I'm on 150% window scaling on Windows 10. And pretty much all TMs that come with MB don't scale correctly - everything is too small and spaced incorrectly.

The reverse is also a problem. Since I created most of my TMs in 150% scale, users on 100% or 125% window scaling are seeing everything in the wrong place also.

I fixed this by basically releasing multiple versions of the same TM, each with different font sizes, and x and y coordinates. I wish there's a way not to do that though.

I am not a big user of TM but what you describe sounds similar to problems I had with some of Clarence's skins. At different scaling settings things were moved and became misplaced.

This post has solved the problem for me and the skins line up perfectly no matter what scaling I use.

I wonder if this might help what you describe?

FIX: DISTORTED GRAPHICS ON WINDOWS10 (https://getmusicbee.com/forum/index.php?topic=31199.0)
Title: Re: TM Requests
Post by: Steven on September 05, 2020, 12:17:28 PM
Is there a way for TheaterModes to scale properly to different windows scaling?
try this version:
http://www.mediafire.com/file/7a5la3o0j9khtgz/mb_TheaterModePlugin.zip/file

however if you build a skin to meet a dpi setting > 100% then use this setting at the top of the skin just below enableScaling
Code
    <settings dpiScale="150" />
if you developed your skin against the normal 100% windows dpi setting then you dont need this

anyone who has developed a skin, please let me know if it causes any issues when you set your screen dpi > 100% (its very easy to do in windows 10)
Title: Re: TM Requests
Post by: Steven on September 06, 2020, 10:33:49 AM
I made quite a few corrections so should be downloaded again.
http://www.mediafire.com/file/7a5la3o0j9khtgz/mb_TheaterModePlugin.zip/file
Title: Re: TM Requests
Post by: mmakes on September 16, 2020, 04:51:07 PM
I made quite a few corrections so should be downloaded again.
http://www.mediafire.com/file/7a5la3o0j9khtgz/mb_TheaterModePlugin.zip/file
It fixes everything!!!! Even my most complicated TMs!!!!

Thank you Thank you Thank you  :-*  :-*  :-*  :-*  :-*
Title: Re: TM Requests
Post by: Crosswise on September 18, 2020, 11:24:31 AM
Hi there,

first of all: I am quite new to MusicBee and really love it. I am trying to generate a TM, which fits my needs and therefor there are only 2 things missing (or I did not find, how to achieve):

1) Would it be possible to get the Rating in AlbumTracks element show as stars rather than numbers? Works well in other elements...

2) Can I get a list element for Albums by AlbumArtist (like the Tracks-Element for showing upcoming tracks)? I would like to have a list of Album covers visible by the currently playing track's artist.

Thanks for your reply and keep up the good work! Much appreciated.
Title: Re: TM Requests
Post by: brainfryd on September 29, 2020, 07:44:50 AM
This has bugged me for months.. this now seems to work on my Win10 1080p @ 150%
Thanks very much again...

Regards
brainfryd