[webkit-dev] Directories and KWQ
David Hyatt
hyatt at apple.com
Fri Feb 10 03:22:00 PST 2006
On Feb 9, 2006, at 10:56 PM, Kevin Ollivier wrote:
> Hi all,
>
> I've been watching the directory moves, and I was wondering if
> there were any plans on what to do about the KWQ dir, as portions
> of that will definitely need to be migrated to platform-specific code.
>
KWQ is going to go away completely.
We basically have two new directories that will ultimately be crucial
to building a port. These are very much under construction right
now. Files are moving around a lot.
The first is "platform" and this consists of all the low-level
constructs that sit underneath the engine. This includes most of the
old Qt classes from KWQ as well as some additional data structures
and classes. Most of this directory is cross-platform, and platform-
specific implementations of objects (like widgets, timers, etc.) go
under respective platform directories. Right now we have two sub-
directories for specific operating systems under platform, called mac
and win.
In addition we have two graphics libraries we are using now:
CoreGraphics and Cairo. Cairo is itself a cross-platform graphics
layer, and so we didn't just stick it under the Windows directory.
Instead we put it under a cairo subdirectory in platform.
A given port can then pick technology pieces it needs based off both
the target OS (e.g., the mac/win directory) or a particular
technology like Cairo. For example Windows is using Cairo right now
but could in theory be plugged into something else. In theory the
Mac could be plugged into Cairo instead of CoreGraphics.
A wxWidgets port would presumably put low-level code that used
wxWidgets classes in a wxWidgets subdirectory under platform.
We are also in the process of developing a bridge directory. This
directory is about the engine communicating "up and out" to an
enclosing layer. In the Mac's case that layer is WebKit. We have
native code subdirectories here too (only mac currently).
dave
(hyatt at apple.com)
More information about the webkit-dev
mailing list