Your Universal Remote Control Center
RemoteCentral.com
Philips Pronto Professional Forum - View Post
Up level
Up level
The following page was printed from RemoteCentral.com:

Login:
Pass:
 
 

Original thread:
Post 67 made on Tuesday August 20, 2013 at 02:20
Lowpro
Select Member
Joined:
Posts:
March 2004
2,081
Will take a look at your suggestion tomorrow with respects to my configuration file and see if I can wrap my head around it. :-P That being said, when testing the optimized version of my code I had posted earlier I realized that I had forgotten to account for an exception to the rule. In cases where there is only one cover image button on the given page I like being able to select the cover image using the OK hard button even in cases where there is no highlight present. The exception here was covered prior as I used to be basing things off the page cover count (pcc). Having changed things up to key off the level highlight position (L0H-L3H) instead I found of course that if the highlight wasn't present the OK hard button could no longer be used to select a given cover image in cases where there was only the one cover image on the page. As such, I've worked the exception back in. In the process I realized as well that I wasn't preventing my doOk() function from running in cases where there were multiple cover images on a given page, but no highlight present. In this case I don't want the doOk() function to do anything, but it was running anyway passing the buck to the function, doDCL() which in turn was erroring out as nothing had actually been selected. Wasn't breaking the activity, but still something that needed fixed, so I resolved that issue as well. Still ended up reducing the amount of ProntoScript by over 50%, so I'd call that a win. Images and links updated per my previous post to reflect the updates made.

Will mention as well, the function doDCL() which ultimately doOk() invokes is what has replaced the 4,800 disc confirmation pages (400 slots per changer, 12 changers total) and buttons used to store the page jumps to each of the pages which used to be part of my configuration file. Now when selecting a given disc the function doDCL() runs transforming the page you are presently on into the disc confirmation page. The function doEndDCL() in turn restores the page to it's original state if you decide to back out from there not confirming your selection. If you confirm your selection the function doDLM() runs which has replaced the 4,800 disc loading macros that used to be part of my configuration file, the disc loading macros now being run solely using ProntoScript based on the label of the cover image button you had selected.

Each cover image button throughout my configuration file now contains a label which I store when the given page is initially displayed, then clearing the label so you don't actually see it on the remote. The same thing is actually happening with the cover image buttons. When a given page is displayed I'm populating the cover images to labels on the System page identical in size and position. I'm then replacing the cover images on the current page with fully clickable transparent images after which I'm populating additional labels on the System page to display the cover image highlight when used and frame overlay which appears on top of the cover images. When leaving the current page and going to another page within the same device I'm then putting things back as they originally were before allowing the paging to take place, that way things are back where they need to be per the process starting all over again in the event you return to said page not having left the current device in the interim.

Of course all of this takes place instantly as a given page is being displayed which in turn provides the illusion that each physical page consists of the cover image buttons at the bottom of the z order, the cover image highlight, then the frame overlay. More importantly, this has allowed me to present the cover image pages just as I had been before, but without needing to have a copy of the cover image highlight and frame overlay image on each of the cover image pages, the primary benefit here being that the size of the binary file which gets downloaded to the remote has been substantially reduced freeing up additional memory. Having only the cover image buttons themselves on the cover image pages of course has also simplified the process of adding new cover image buttons as I no longer have to first move the "cover image highlight/frame overlay" group to the back, then back to the front again when I'm done. Plus, if I ever want to change the images used for the cover image highlight or frame overlay I can now do so by updating the one copy of the images kept on the resources page of the activity. Beats replacing the images stored within the configuration file outside the editor which would be the only sensible way to update the images otherwise. It's nice also now that when adding a new cover image button I just need to give the button the appropriate label, then updating the ProntoScript for the button through the rest of the particular letter, a process which I've completely automated using EventGhost.

In any event, when selecting a cover image button if the label contained the value, "JUMP" that means that the particular title contains more than one disc to choose from. In this case the function doDCL() executes the action list of the button, said action list consisting of a page jump taking you to a page or series of pages per browsing the discs which make up the title. If the cover image button label contained the value, "CS" this is one of cover image buttons that states, "Coming Soon" used to fill the empty spots on the last cover image page of a particular letter. In this case doDCL() runs playing the stock "error" sound. If the cover image button label didn't contain the value, "JUMP" or "CS" then it's an actual disc in one of the changers, the label having called out the particular changer and slot number. If the label read, "2b196" for example that means the particular disc resides in slot 196 of my 2nd Blu-ray changer. If the label read, "5d377" that would mean the disc resides in slot 377 of my 5th DVD changer. The function doDLC() in this case generates the disc confirmation page which now also calls out the changer and slot number. If confirming your selection from there the function doDLM() then runs which based on the label from the cover image button knows exactly which changer and slot to queue up. As with my prior configuration file, the same loading pages are displayed while the system is being setup to play the particular disc though just as with the disc confirmation page, the current page is simply updated to display the loading screens, the only page jump that actually takes place being when the last of the loading screens is displayed and you're then taken to the activity per controlling the particular changer.

Last edited by Lowpro on October 2, 2014 21:40.
LP Related Links:
View my profile to access various
links to key posts and downloads.


Hosting Services by ipHouse