eatkinola Posted February 17, 2019 Share Posted February 17, 2019 Ao.Bigbox Customs View File Ao.Bigbox Customs is a collection of LB/BB plugins. The Themer library contains custom controls useful for theme developers. The Dropins library contains true plugins you can just drop into the LB plugins folder. By default, the only drop-in enabled is WootLauncher; enabling the other drop-ins is easy (see the PDF doc download). Here are the included drop-ins: GameManualViewer: Adds menu item "Game Manual 8D" (string is customizable) to the game details menu in BB, if the game has an associated PDF manual. When activated, the PDF will be read and converted to images on the fly for display within BigBox; it will not launch an external program. As occasionally some manuals take a few seconds to load, an animated GIF is displayed while you wait. The gif is currently a space invader, but I might add customization in the future. When viewing the PDF manual, use the standard keys (or gamepad buttons) used to navigate around BigBox. PlatformAuditor: Adds another media audit tool for LB with support for OCD-type personalities. This can help you quickly find a platform's missing game media and rename media according to the game's title. It can also be used to delete superfluous media. It works for images, manuals, music, and videos. As with any tool that potentially modifies your library, consider backing up your media folders before using this. PlatformExporter: Adds a simple way to export games including metadata and boxart to other applications. Currently, the only application to which it exports is EmulationStation. Support for other applications might be added in the future, if there is enough demand and I have enough time and interest in doing so. PlaylistGenerator: Adds playlists to your library but does not otherwise alter your library. Playlists are regenerated each time LB/BB is started. You can add your own media (videos, banners, etc) for the playlist, in the same way you would for manually generated playlists in LaunchBox. This media will not be overwritten when the playlists are regenerated. You can customize the names of these playlists and number of games added to each. WootLauncher: Adds game load/exit screens, pause screens including support for viewing PDF manuals and save/load states, and bezels/overlays (useful for emulators which do not themselves support overlays). There is a separate download page dedicated to WL: Spoiler Here are some of the themes that use Ao.Bigbox.Themer FluxCRT - videos displayed within a mock CRT including curvature effect MinimalX - simple but very flexible (skinnable) theme with some cool controls Nostalgia - videos displayed within viking's clean and nostalgic platform images Refaktor - clean view suited for 16:9 or 4:3 displays and videos/screenshots of all sizes Submitter eatkinola Submitted 02/17/2019 Category Third-party Apps and Plugins 3 1 Quote Link to comment Share on other sites More sharing options...
eatkinola Posted March 17, 2019 Author Share Posted March 17, 2019 Updated dropins, including a new one called PlatformExporter -- created to export LB platform libraries for use by EmulationStation. I built a little retropie box and wanted a quick way to export the games including metadata I had curated within LB. Quote Link to comment Share on other sites More sharing options...
Lordmonkus Posted March 17, 2019 Share Posted March 17, 2019 Damn dude, while I don't have particular use for any of these myself they all look like very handy additions to LB for people. 1 Quote Link to comment Share on other sites More sharing options...
wallmachine Posted April 13, 2019 Share Posted April 13, 2019 i was advised 'that muting sound to videos doesn't work and it doesn't obey default bigbox sound priority rules' Quote Link to comment Share on other sites More sharing options...
eatkinola Posted April 13, 2019 Author Share Posted April 13, 2019 10 hours ago, wallmachine said: i was advised 'that muting sound to videos doesn't work and it doesn't obey default bigbox sound priority rules' You're referring to Ao.Bigbox.Themer? Please point me to who reported this so I can get more details and perhaps an example where it does not work? Quote Link to comment Share on other sites More sharing options...
wallmachine Posted April 14, 2019 Share Posted April 14, 2019 8 hours ago, eatkinola said: You're referring to Ao.Bigbox.Themer? Please point me to who reported this so I can get more details and perhaps an example where it does not work? 'yes, referring to ao.bigbox.themer. Trying to mute video but vid music still plays along with default bigbox integrated game music. And music from video doesn't mute bigbox music if priority is changed. Both musics just play at the same time.' Here is as an example: <aop:AutopathVideoLooper Name="GameVid" Shuffle="False" PlayerImplPooled="True" PlayerImplLazily="True" Autoplay="True" Grid.Row="4" Grid.RowSpan="2" Grid.Column="2" Grid.ColumnSpan="6" Height="{Binding ElementName=GameVidFrame, Path=ActualHeight}" Width="{Binding ElementName=GameVidFrame, Path=ActualWidth}" ClipToBounds="True" Visibility="Collapsed" Stretch="Fill" Repeat="True" Medium="Video" Fallback="StopAfterTry3" Autopath="Context" cal:Bind.AtDesignTime="True" Muted="True"/> Quote Link to comment Share on other sites More sharing options...
eatkinola Posted April 14, 2019 Author Share Posted April 14, 2019 9 hours ago, wallmachine said: 'yes, referring to ao.bigbox.themer. Trying to mute video but vid music still plays along with default bigbox integrated game music. And music from video doesn't mute bigbox music if priority is changed. Both musics just play at the same time.' Thanks for the example. I tried to slice it every which way but did not detect a problem with muting videos. Perhaps I'm not fully understanding the reported problem. Appreciate your pm; I don't use discord, so if whoever reported this problem to you wants to post additional details here on the forums that might be helpful. Quote Link to comment Share on other sites More sharing options...
wallmachine Posted April 15, 2019 Share Posted April 15, 2019 On 4/14/2019 at 11:20 PM, eatkinola said: Thanks for the example. I tried to slice it every which way but did not detect a problem with muting videos. Perhaps I'm not fully understanding the reported problem. Appreciate your pm; I don't use discord, so if whoever reported this problem to you wants to post additional details here on the forums that might be helpful. They ended up updating BB as quite a few updates behind and it fixed the mute issue. Also when using vids in BB on the marquee screen it causes a hard lock on pc. However, using vids with your plugin on the marquee screen and your video method does not cause a lock up like default BB, which is great! But it does slow down things a little bit in BB. Is there anyway you can put some magic on it, or more cache, or whatever you can do to try to prevent that bit of slowdown? Thanks in advance. Quote Link to comment Share on other sites More sharing options...
eatkinola Posted April 15, 2019 Author Share Posted April 15, 2019 2 hours ago, wallmachine said: They ended up updating BB as quite a few updates behind and it fixed the mute issue. Thanks for the update, was scratching my head over that one. 2 hours ago, wallmachine said: Also when using vids in BB on the marquee screen it causes a hard lock on pc. However, using vids with your plugin on the marquee screen and your video method does not cause a lock up like default BB, which is great! But it does slow down things a little bit in BB. Is there anyway you can put some magic on it, or more cache, or whatever you can do to try to prevent that bit of slowdown? Thanks in advance. Glad to hear it works! -- I didn't design or test it with marquees in mind. Unfortunately, I cannot think of any way to further optimize the video engine. Could it be related to your CPU or video card? Running videos can be pretty taxing, especially if another application is also running. Might it work better if you used smaller video files for the marquee? Quote Link to comment Share on other sites More sharing options...
wallmachine Posted May 1, 2019 Share Posted May 1, 2019 @eatkinola taking the textbox out of the viewbox makes the translate transform not work properly because the resolution is not in 4k which means distance is doubled and since it isn't in the viewbox anymore, the viewbox can't lock it's resolution. if I wrap my whole theme in a viewbox, all the graphics scale properly on any resolution EXCEPT the text and translate transform values. If I lock the resolution to 1080p view the viewbox, in 4k, the theme stretches correctly and everything looks correct except the text gets bigger because the viewbox doesn't seem to lock it's resolution to text. So the text still grows with the higher resolution while everything else stays at 1080p. Can you make this converter (https://stackoverflow.com/questions/50805106/xaml-change-resolution-changes-the-views-size) into a plugin so that it can tell the text to not grow with the resolution? This would also work: https://stackoverflow.com/questions/2013854/how-do-i-keep-a-constant-fontsize-in-wpf-viewbox Quote Link to comment Share on other sites More sharing options...
eatkinola Posted May 2, 2019 Author Share Posted May 2, 2019 19 hours ago, wallmachine said: @eatkinola taking the textbox out of the viewbox makes the translate transform not work properly because the resolution is not in 4k which means distance is doubled and since it isn't in the viewbox anymore, the viewbox can't lock it's resolution. Viking and I discussed a very similar (the same?) issue in the XAML Tips & Tricks thread. To handle various resolutions and aspect ratios gracefully, I had made two plugins: (1) AutoscaleTextBlock, and (2) DimensionW3840Converter. There are examples for both of these on page 30 of that thread: https://forums.launchbox-app.com/topic/28698-xaml-tips-and-tricks/page/30/ Check it out -- might solve your issue. I didn't look at the stackoverflow examples closely, but my approach with the converter seems similar. 1 Quote Link to comment Share on other sites More sharing options...
Fry Posted September 7, 2019 Share Posted September 7, 2019 Hi Eatkinola, Thanks so much for sharing these! I'm wondering if you could show a little sample code on how to use ActiveGameCustomFields from the SelectionSnoopVMP? If it's not too much trouble, would you mind showing a simple xaml snippet on how to display the text from a custom field in a text block? Quote Link to comment Share on other sites More sharing options...
eatkinola Posted September 7, 2019 Author Share Posted September 7, 2019 11 hours ago, Fry said: I'm wondering if you could show a little sample code on how to use ActiveGameCustomFields from the SelectionSnoopVMP? If it's not too much trouble, would you mind showing a simple xaml snippet on how to display the text from a custom field in a text block? Try this -- been awhile since I tested this myself but it should still work. Please note since Ao.Bigbox.Themer depends on LB libs, it's updated every now and then to work with LB updates (only needs to be done when the LB libs change significantly). The current version of Ao.Bigbox.Themer works with LB 9.10+, and I have a new version ready to upload once LB 10 is released. For updates, you would need to change the part of the xmlns string (see below) that refers to the Ao.Bigbox.Themer version. ...add this reference at the top of the XAML xmlns:aov="clr-namespace:Ao.Bigbox.ViewModels;assembly=Ao.Bigbox.Themer.v3_9_6" ...SelectionSnoopVMP object gathers the data <aov:SelectionSnoopVMP x:Name="SelectionSnoop" /> ...display properties from SelectionSnoop, e.g. <TextBlock Text="{Binding ActiveGameCustomFields[MyCustomFieldFoo], ElementName=SelectionSnoop}" /> <TextBlock Text="{Binding ActiveGameCustomFields[MyCustomFieldBar], ElementName=SelectionSnoop}" /> <TextBlock Text="{Binding ActiveGameCustomFields[MyCustomFieldBaz], ElementName=SelectionSnoop}" /> <TextBlock Text="{Binding ActiveGame.Title, ElementName=SelectionSnoop}" /> ... Hope you find this helpful -- let me know if you run into any snags. 1 Quote Link to comment Share on other sites More sharing options...
Fry Posted September 7, 2019 Share Posted September 7, 2019 Thanks a lot man! I did have a problem though. I'm running LB 9.10. The Ao.Bigbox.Themer version that I got from here is v3_9_4: So I'm getting an error in visual studio when I try to reference v3_9_6 because I don't have that version. I tried to go ahead with the reference to v3_9_4 but then I'm getting an error in visual studio on this line <aov:SelectionSnoopVMP x:Name="SelectionSnoop" /> It says: The name "SelectionSnoopVMP" does not exist in the namespace "clr-namespace:Ao.Bigbox.ViewModels;assembly=Ao.Bigbox.Themer.v3_9_4". Do I need to upgrade to 3.9.6? If so, is it available to download? I only saw 3.9.4 here on the site. Thanks again for your help, this plug-in looks awesome. Quote Link to comment Share on other sites More sharing options...
eatkinola Posted September 8, 2019 Author Share Posted September 8, 2019 7 hours ago, Fry said: I tried to go ahead with the reference to v3_9_4... Yes, that was the right thing to do to match the version of the DLL you have. 3.9.6 is my current development version for LB 10+; 3.9.4 should work for LB 9.10. 7 hours ago, Fry said: ...but then I'm getting an error in visual studio on this line <aov:SelectionSnoopVMP x:Name="SelectionSnoop" /> It says: The name "SelectionSnoopVMP" does not exist in the namespace "clr-namespace:Ao.Bigbox.ViewModels;assembly=Ao.Bigbox.Themer.v3_9_4". I'm not sure why you're getting that error. While I use visual studio to develop the plugin, I don't actually use it to work on themes; I just use notepad for that. Does the theme work despite this error in VS, e.g., perhaps you could ignore the error? The syntax looks correct to me. 1 Quote Link to comment Share on other sites More sharing options...
Fry Posted September 8, 2019 Share Posted September 8, 2019 No, unfortunately it doesn’t work to display the text of my custom fields. I’m not sure if I have something wrong in my syntax. Is there a special place where this chunk of code needs to go? I just have it right above my grid definition: <aov:SelectionSnoopVMP x:Name="SelectionSnoop" /> I’ve got a text block and I can display a hard coded string and I can bind to the active game properties and display the game name and other properties like that. When I switched the binding to try to display the custom fields, nothing appears in that space when I run BigBox. It’s not giving any error, it just doesn’t display anything. I am super new to WPF and XAML but I’m trying to learn. I have a hunch it’s a problem with the DLL reference not resolving for whatever reason and that error that visual studio is displaying is legit because any time VS showed an error like this and said my markup was invalid, I’ve seen a similar result where that thing VS complained about just doesn’t display when I run BigBox. I will try some stuff like making sure I’ve got the themer DLL in the right place and unblocked and make sure there’s nothing wrong with the reference and maybe play around with the location of that selection snoop declaration line. Quote Link to comment Share on other sites More sharing options...
eatkinola Posted September 8, 2019 Author Share Posted September 8, 2019 38 minutes ago, Fry said: I’m not sure if I have something wrong in my syntax. If you want to pm me the current version of your theme I can take a look. Or you can pm just the xaml file in question. 1 Quote Link to comment Share on other sites More sharing options...
Fry Posted September 9, 2019 Share Posted September 9, 2019 (edited) Thank you so much, I've sent you my xaml file and some screen shots to show you what I'm running into. Really appreciate you looking into this for me! Edited September 9, 2019 by Fry Quote Link to comment Share on other sites More sharing options...
wallmachine Posted November 6, 2019 Share Posted November 6, 2019 (edited) Would it be possible to have MarqueeTextBlock to only scroll on ListBox selected item? Please see my video example below, it scrolls all game titles that are long. As well have AutoscaleTextBlock and texttrimming working all.mp4 Edited November 6, 2019 by wallmachine Quote Link to comment Share on other sites More sharing options...
eatkinola Posted November 6, 2019 Author Share Posted November 6, 2019 54 minutes ago, wallmachine said: Would it be possible to have MarqueeTextBlock to only scroll on ListBox selected item? Please see my video example below, it scrolls all game titles that are long. As well have AutoscaleTextBlock and texttrimming working Thanks for the example. Are you using AutoscrollListBox? I agree the marquee scrolling is a bit off -- would be better to only scroll the selected item. Also, it seems to get confused by the arrow graphic and does not scroll as much as it should. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.