Page 1 of 1

New Project: Windowing Library...

Posted: Tue Nov 25, 2003 11:56 am
by effin_hard
Hello All. :D I really enjoy the forums here so far after two days of lurking. Some good stuff. I thought I would introduce myself now, and the project I'm working on, cause Im guessing Ill be spending a considerable amount of time here over the next month.

We have been using the matrix orbital display for over two years now on one of our devices to display some internal operating data in a simple text mode operation. We have a keypad that allows the user to enter in a password / change some operating parameters - very minute capabilities. The ui development was quite simple and hasnt been a focus but now Ive been tasked with improving it, and its capabilities. We are using the GLK24064-25.

Our system operates under qnx 4.25 so our code is written in watcom C. 4.25 also supports watcom C++ (lucky me, i need a break from straight c, flex my oop legs). I've written some simple UI stuff before (DOS graphics / text mode) but that was in college.

At this point I'm scoping out the possibility of writing a windowing library to work with our LCD. Features like scrolling, menus. From the basic API's already provided to draw lines / pixels / bar graphs / charts I dont really think its goign to be a big problem for me. This will be a fun little project. PLus all the base serial code has already been written, I'll just end up wrapping it differently.

As with any one of my developments, I will ask my very first question...
"Has this been done before?"

If anyone knows of any projects that offer similar functionality, I'd be interested in knowing. Why make my own mistakes when I can quickly learn from other's.

Cheers.
Ryan B.

Posted: Fri Dec 05, 2003 10:49 am
by Paradigm
I haven't heard of a project like this. The first thing that jumped to mind is nix windows managers, but those are useless to you as they use X11. So I think you are breaking new ground here.

The project sounds very interesting. How much complexity are you thinkng about? I can picture everything from simple text/graphics menus to a full system with overlapping windows and a widget set. I'm very interested in hearing any details or thoughts you have.

Posted: Mon Dec 08, 2003 8:07 am
by effin_hard
My intention is to replicate something you might see on an Allen Bradley PLC system.

Windowing system would be pretty muh independant of the LCD Screen (Model) except for a ScreenMetrics definition and the Comm. Library (definition of putting a pixel, line, box, char, etc.).

A windows Manager would control the redrawing / refreshing of the screen, which window has the current focus, and if possible it would handle active regions (only redraw area within (x1,y1,x2,y2)).

The remainder would be a series of window classes : a kind of desktop class, with a menu, possible icon support and scrolling support; a menu class (appears on desktop), and the data_window class would be a display that populates over the desktop, and derived from that would be a series of pre-fabbed "dialogs". Also, a button class, MessageBox.

My UI would require most of this functionality, so it has to get done anyway.

My first tests are to see what the responsiveness of the graphics mode will be in refreshing the screen, as well as a test of the system resource usage. (Always important in embedded systems).