Using the Wt Web Toolkit to build a Cross Platform Graphical User Interface

Date and Time: 
2010 Mar 30th @ 3:30pm
Location: 
FL2-1022 Large Auditorium
Speaker: 
Joseph VanAndel

When building a graphical user interface to run on multiple operating systems, there are many toolkits to choose from. Many traditional toolkits require deploying object code or byte-code to each computer, which requires periodically updating each computer with the latest code. Since nearly all computers have web browsers, an alternative is to write a GUI using a web browser. Current web browsers now support HTML/XHTML, JavaScript, CSS, AJAX, Forms, DHTML, SVG/VML/Canvas that provide a high level of interactivity.

Therefore, I chose to use a web-based toolkit to write a GUI to control the S-Pol and CHILL radars. There are also many web-based toolkits I could have used to write the radar control GUI. I chose the Wt toolkit. One advantage of using Wt was that I could write my application in C++, allowing me to use existing C/C++ libraries for communication to other applications. Another advantage of Wt is that Wt generates the secure, browser specific, JavaScript and AJAX code required for dynamically updating web pages. Writing a web application that avoids security issues, such as "Cross Site Scripting" can be challenging, but Wt generates its own secure and browser-portable code. Wt provides a set of widgets and a signal/slot implementation that closely resembles the Qt toolkit, which makes it fairly straightforward to generate a complex program that decouples the user interface from the data model. Wt allowed me to write a GUI that runs on a single server, yet provides remote or local access from Windows, Linux, or Mac computers.

I will demonstrate a GUI written in Wt for the S-Pol and CHILL radars, with many of the usual "widgets", along with a "drag-and-drop" interface.

Speaker Description: 

Joe VanAndel graduated from Calvin College, Grand Rapids, MI with a double major of mathematics and physics in 1978. He earned his master's degree in computer science at University of California at Berkeley in 1980. Joe worked at AT&T Bell Laboratories in Westminster, CO on a real-time operating system called Oryx/Pecos. His next job was with Cadnetix, where he worked on porting Unix to proprietary workstations and servers, computer aided design tools, and software configuration management. In 1988, Joe started working at NCAR/EOL. His initial job was to lead a software team that transformed a prototype radar into a research testbed that served the FAA and the National Weather Service. Since this project, Joe has mostly worked on remote sensing with radars and lidars. He also worked on Driftsonde - a stratospheric balloon system that drops sondes from 90,000 feet in remote areas of the planet.

Video recorded: 

view with Real Player or VLC Player: rtsp://real.ucar.edu/mms/eol/joe_vanandel.mp4
view with QuickTime: http://www.fin.ucar.edu/it/mms/webcasts/eol/joe_vanandel.mov
view offline: http://real.ucar.edu/mms/eol/joe_vanandel.mp4 (right-click and select "Save Link as...")

There are a few known bugs: if your players refuse to play the presentation, this is usually due to the version software you are using and could also be related to your OS.  Some known recent issues are with Snow Leopard Quicktime compatibility with the new streaming server or a delayed green screen of 10 seconds before the video resolves to full screen. We are working on a completely browser-based solution to overcome these bugs

Event Category: