Jump to content
LaunchBox Community Forums

Request and Question for Custom Logic


CriticalCid

Recommended Posts

Firstly I want to thank you Jason for your awesome new tutorial! It helped me to clear some questions I had about the bindings but I have a request for expanding the Custom Logic feature.

The new custom logic is great but for my needs a little bit too inflexible. As you already know I want to create a view which uses recorded HyperSpin themes. As they will only look good on the one specific view for them I would want to keep the EmuMovies snaps for the other views as well. I could probably use the method that you have shown for this but hardcoding the paths for over 2000 videos is way to hardcore for my taste. What I would need is something like a variable I could use for paths in my view. For example something like this:


Source="pack://siteoforigin:,,,/Videos/HSThemes/MAME/%ROMNAME%.mp4"

In this case the %ROMNAME% would be automatically replaced with the name of the ROM file of the current selected game. Other values I could use as variables would be useful as well. :)

 

I also have a question for XAML in general. Would it be possible to use something like if-then conditions within XAML? Because I don’t have a HS theme for every game I would want to check if a theme videos exists and if not the view should use the standard Video for it instead.

Link to comment
Share on other sites

Yeah, I had thought about that, Cid. I'm not sure the best solution for that as of yet, other than to add proper multi-video support to LaunchBox. I think there may be a way to do the variable replacement type thing in XAML, but to be honest I haven't figured it out yet.

Per if-then statements though, the data binding approach that I took in the tutorial video is unfortunately as close as we're gonna get to doing actual if-then logic in XAML (as of course it's really not meant for that). That said, I would expect that most, if not all if-then requirements could be implemented the same way I implemented the platform name stuff in the tutorial. Though of course it may be tricky.

  • Like 1
Link to comment
Share on other sites

I think that could work absolutely great! :)

The only issue that would be left is that the view wouldn’t show anything if there’s no theme video for the game. I searched on Google for the usage of If-Conditions in XAML and this was the first search result. Could that be useful for custom themes?

http://blogs.u2u.be/diederik/post/2015/01/28/Using-Conditional-XAML-in-Universal-Windows-Apps.aspx

 

Edit: I just thought of something. BigBox already uses screenshots when there’s no video available. Maybe you could add another condition to that logic so that when there’s no video in the overwritten video folder BigBox is looking in the normal folder instead?

Edited by CriticalCid
Link to comment
Share on other sites

Sorry to bother you again Jason but I’m currently working on my theme and I already ran into some features that I'm missing. So I  thought that I just post you my current “wishlist” of things I would need to create my theme exactly as I intend to. I have also included the requests that I already posted in this thread to make it more easy for you to keep track of my “needs”


1.    Property for the ImageVideoView tag to override the video folder + when there’s no video in that custom folder for the current selected platform/game it should search for a video in the standard folder instead.


2.    Fixing the resizing problem with the WMP engine on the platform views.


3.    Is it currently possible to get a horizontal logo wheel? In fact, my platform view which uses a horizontal wheel is already finished and the only thing what is missing now is the wheel itself.


4.    The possibility to rename and add new views.


5.    Usage of self-created .xaml files as data binding elements.


6.    Not really a theming feature but very important for my own theme: BigBox should memorize the last used view on a per-platform base (similar like it does with ImageTypes)

  • Like 2
Link to comment
Share on other sites

That's Great,

Hi all, I'm from spain (sorry for my english) and i've just join to LaunchBox a few days ago. As always i expend more time customizing themes and trying all the posibilities the FE offers that playing :D.

I'm only testing what can i do with the bigbox theme, so i were doing the tutoriasl by my side while watching, then i notice on the last tutorial that we can access to some codes Variables, on the tutorial yo use the "PlatformTitle" var.

Here is my question. Is there any way trought Visual Studio to know all the variables we can access to? On my concept of the Platform view i want to split the Details View between different parts of the screen, not all together and i wondered is there is something like "PlatformReleaseYear", "PlatformCPU", "PlatformTotalGames", etc...

If there's not such thing, Jason, are you planing to publish a list of avaliable vars coded we can bind?

P.S. Looking for an horizontal wheel too 9_9

 

Edited by elborra
  • Like 1
Link to comment
Share on other sites

Regarding my post

I think the override new feature is great but as images must match with the particular platforms directories the user has, the feature became a little limited, making users having to rename the images to fit the platform name (even for new themes that would use this overriding feature).

I wondering if Launchbox keeps an internal platform id that always is the same, for example that "Neo Geo" has internally assigned "23" and "Nintendo Game Boy" always be "8".... The id could be numeric or not it doesn't matter.

If this kind on fix index already exists on the code, Jason/developers could add a condition to override the default images not only with directory name matches but with their id (to give both options) At the end theme developers would call their images with the id and users would not need to make changes inside or outside Bibgox to enjoy the full concept of the theme the developer made. Finally the distribution of themes would be more compacted and "ready to go".

If it doesn't exists probably it is not worth to do the job.

Link to comment
Share on other sites

Hi @elborra, there is what's considered the "correct" platform name for each platform and we use alternate platform names in order to match them up as best we can. We also have the "Scrape As" option so I agree that it would make the most sense to change this to support those implementations. I'll see if I can tweak this soon. :)

Link to comment
Share on other sites

Yes, that's true, but even so usually there would be people who prefered "Sega Mega Drive" in favour to "Sega Genesis" for example.

Only to clarify when i said " If it doesn't exists probably it is not worth to do the job." on the last post i meant the job to code it on launchbox not to do themes. Of course if you support the implementation it would make the distribution and "installation" easier. :D

  • Like 1
Link to comment
Share on other sites

Hi! nice recently updates with the themes, @niglurion with the Metallic Theme and @Grila with the MinimalHD :D , both themes are awesome!

Also the new Attract mode is amazing! i will spend a lot of time only looking to the tv from now xD

Well, i shoud say that i'm not a pure theme creator as i'm not specially good doing arts and those kind of things. I really like the coding part of if  trying to do new things and explore the posibilities.

Having said that, this post is also a request for @Jason Carr and LaunchBox developers: On previous email we discuss about how to override some transitions over the bigbox configuration, but at the end if theme makers override those ones by code the final user would not be able to change them (if they want other tansition) without coding. I think a great solution to these would be to add inside the Bigbox transition menu a checkbox with "Use Theme Transitions". Of course Bigbox would need to override the default transitions with those from the theme.

I'm not sure what would be the best way to do it, but probably as defaults transitions are saved in the launchbox.xml, @Jason Carr can do his magic and Bigbox would detect when a this is load if a "transition.xml" file exists on the theme folder and use those values to override defaults when binding, as it does now with platform Images folder.

Edited by elborra
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...