
Some UI Processing Code
You may remember when I shared the markup for the MOOVPAD Web App calendar control, as seen in the screenshot to the left, and that I mentioned my approach to minimising the number of event handlers needed from 1,512 to just 66 by using the "onmouseover" and "onmouseout" event handlers for the months to set a context... blah blah...

The large screenshot above shows first how the calendar control is built on the UI screen, starting from the point where the relevant "FormatScr" task is called. I've left the calls for the tasks handling each month separate for now. However since the code for each of these is very similar, I'll be combining all of these later into a single task. That new task will use nested for loops to change the relevant source file names for the months and day slots as necessary. This will significantly reduce the total code needed for this control even further.


And that leads us to the second large screenshot above. The "BoxOverOutClick"... desperately needing a new name when I'm more functional mentally... receives input from the relevant methods below it, handling the mouse over, out and click events. This task then uses the month context (set as seen above this task), the particular "box" number for the day slot, and the relevant "op" that's required, and combines this info to index the UI Interop calendar object and concatenate the strings for the relevant sources. This approach significantly reduces the overall code even further again, as you can imagine. Still though, I only have the overall approach highlighted in the image, using one day slot as an example. Many more to write before I can start on the next UI screen.
When I'm mentally functional... because that's supposed to happen eventually at some point 🙂
Stay awesome,
EMH

HOW MOOVPAD IS BEING BUILT
For the overview of how MOOVPAD apps are being developed, the reasoning behind particular decisions during development, policies, and more in relation to all the technical things, please see the link to the left.
This will be an ongoing work in progress, and will always be linked to the bottom of each upcoming Blog post.