mozdev.org


The Mozdev Group Inc.
status:
version:
resources:
Last Modified: April 15, 2003
Using XPTK

GUI toolkits are designed to make life easier for an application developer who's application will be used in a graphical environment. The reason for xptk is so that you, as a cross platform rich client developer can build your application easily without having to worry about building widgets by hand or reinventing the wheel.

But Mozilla already has a toolkit right?
Yes, Mozilla already has a toolkit. However, the toolkit is designed around the notion of "theme switching". So because of this, the widgets, which are implemented in xbl by default point to a global stylesheet which is a variable based on the theme the curent user has chosen which could be either "Modern" or "Classic" or a third party theme.

Themes are cool, why is this a problem?
This becomes a problem when you build your application and the current theme was authored to accommodate the Mozilla or Netscape browser suite. Your application doesn't really fit into the picture. So what ends up happening is, you write your app say over the "Classic" theme, build it out, tweak the UI so the app looks slick and professional. Then, a user who installs your app is runnning a theme like Modern or perhaps a third party theme. Your app now has the appearence of a big horked UI at best.

So just tell users to run "Classic" of "Modern" right?
Sure that is a solution. However, you are not insured they will follow your instructions. Also, wouldn't it be nice it there was a toolkit you could use that is WYSIWYG? So when you choose a button for your app it will be that exact button. If you tweak that button, it will always be there, and not another styled button that render your tweaks meaningless. You need a solid foundation on which to build your app. This is one of the main reasons xptk was started. In addition, how could Mozilla be considered a serious and viable platform if there isn't a standardized toolkit to choose from?

How do I use xptk?
Simply just point to xptk from the top of your xul document.

eg "myfile.xul": <?xml version="1.0"?> <?xml-stylesheet href="chrome://xptk/content/xptk.css" type="text/css"?>

Is xptk based on the existing Mozilla toolkit?
Indeed it is. Right now it is primary the existing Mozilla/Phoenix toolkit using mostly the "Classic" theme as a starting point. This will all change in time as the toolkit evolves, matures and becomes stable and dependable.

How do I see sample widgets like <miniwindow> in action?
Just run Mozilla from the test-suite.

on windows: mozilla.exe -nosplash -P myprofile -chrome chrome://xptk/content/test-suite/miniwindow.xul on unix type systems: ./mozilla -P myprofile -chrome chrome://xptk/content/test-suite/miniwindow.xul


The xptk project can be contacted through the mailing list or the member list.
Copyright © 2000-2009. All rights reserved. Terms of Use & Privacy Policy.