Hi, Now that the basic architecture has been decided, I start to work on the actual coding. The code will be pushed to the menu branch of my gitbub: repo: http://github.com/bean123/grub/.
First version is done, this implements the low level region API, no component yet, but you can construct the ui manually, I've added a menutest command to run some test. It can be started in grub.cfg like this (should be run in console mode); set gfxmode="640x480" loadfont /unifont.pf2 ismod vbe insmod png menutest It runs four tests, it would pause after each test, press any key to continue. 1, It starts with text mode with three rects, the second rect have 3 texts, but the last one is outside the view port and therefore not visible. 2. It moves the second rect to the top and change the view port, now the third text is visible but the first is hidden. 3-4 rerun the following test in graphic mode. If /r1.png, /r2.png, or /r3.png exists, the image will replace the corresponding rect box. BTW, I've disabled double buffer temperately for testing purpose. The new algorithm ensures that only the necessary region would be updated, the screen shouldn't blink even without double buffer support. -- Bean gitgrub home: http://github.com/grub/grub/ my fork page: http://github.com/bean123/grub/ _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel