LCDInfo.com
http://forum.lcdinfo.com/

Let's object orientate screen building....
http://forum.lcdinfo.com/viewtopic.php?f=17&t=1061
Page 1 of 1

Author:  Syridian [ Wed Feb 16, 2005 7:10 ]
Post subject:  Let's object orientate screen building....

Never one to shy away from offering idea's to discuss, here the latest one for the mind of Syridian.

Wouldn't it be nice if the XML codes for screens allowed you to group objects together into one combined object, that could then be placed somewhere on the screen. Then Screens could be constructed from pre-made objects that include a smaller background pic, plugin data, bargraphs, and animations.

This would of course be easier if we weren't restricted to the character and line positioning for text mode... Which would in turn be possible I'm guessing by parsing all plugin textual data to a function that turns the text into a graphical representation of the text, much like the drivers for LCDs without a text mode do.

Anyway... More to think about... more to discuss... more stress for Henri. ;) Mean aren't I? ;)

Author:  Henri [ Sat Feb 19, 2005 18:10 ]
Post subject: 

Sounds good and shouldn't even require that much changes in LCDInfo. All this work would be in the reading of the screen items and files.

Author:  Syridian [ Tue Feb 22, 2005 2:37 ]
Post subject: 

OK... I thought about it some more, and it would be easier than I thought..

Aside from the easy way out, of just using an new tag to just group things, and having to re-adjust all of the positional information manually. Which I'm guessing would be possible with a very minor change, by just adding the tag, and getting LCDinfo to ignore it.

The better option would be to create an <object> tag. Which could be used for the Object origin point, and all items within that <object> tag are referanced to the object origin. Simple maths within the core could just add the x and y of the Object to the x and y of the item to position each item on the screen. Below is a quick example, bear in mind, it is quick, so there might be mistakes.
Code:

<screen>
   <name>Winamp2</name>

   <action>
      <id>Core.ChangeScreen</id>
      <parameter>System</parameter>
      <delay>5000</delay>
   </action>

   <object x="10" y="20">
   <item type="text" x="0" y="0">
      <scrolltype>none</scrolltype>
      <textpos>left</textpos>
      <fieldsize>5</fieldsize>
      <textdata>Total</textdata>
      <refresh>500</refresh>
   </item>

   <item type="plugintext" x="8" y="0">
      <scrolltype>none</scrolltype>
      <textpos>left</textpos>
      <fieldsize>5</fieldsize>
      <varid>fraps_fps</varid>
      <refresh>500</refresh>
   </item>
   </object>

</screen>


And of course While I say easier than I thought... I only mean that I thought there might be more changes needed... I'm still not at a stage where I am tempted to start playing with the core source yet. ;) Still getting my head arround the plug-ins.

Page 1 of 1 All times are UTC + 2 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/