Education ClassRoom/Previous Logs/gsl

From Apache OpenOffice Wiki
Jump to: navigation, search

[10:59] <PhilippL> Hi everybody

[10:59] * lgodard (n=lgodard@gateway.nuxeo.com) has joined #education.openoffice.org

[11:00] <PhilippL> I have uploaded some slides to http://gsl.openoffice.org/files/documents/16/4245/gsl_overview.odp

[11:00] <PhilippL> Which may be illustrating to what I'm going to say.

[11:00] <PhilippL> So, I'm here to talk a little about the gsl project.

[11:00] <ericb2> hello PhilippL , thank you very much for presenting us the GSL project

[11:01] <PhilippL> First, what does it mean ? GSL stands for Graphics System Layer.

[11:02] <PhilippL> Actually there are some modules in it that have not so much to do with graphics, but essentially GSL is about binding to the graphical subsystems of the system OOo runs on.

[11:02] * PhilippL switches to slide # 2

[11:02] <PhilippL> The core functionality of GSL is providing OOo's toolkit functionality.

[11:03] <PhilippL> Toolkit meaning what gtk is for Gnome, Qt for KDE or Swing / AWT for Java.

[11:03] <PhilippL> The parts of gsl I'm going to talk about a little are mainly located in the vcl, toolkit, dtrans and rsc modules of gsl.

[11:04] <PhilippL> VCL (Visual Control Layer) is the traditional toolkit of OOo.

[11:04] <PhilippL> In use basically since 1997 (meaning in StarOffice before OOo went OpenSource in 2001).

[11:05] <PhilippL> VCL is a C++ toolkit, based heavily on C++ inheritance mechanisms.

[11:05] <PhilippL> Since these are not so easily help binary compatibly.

[11:06] <PhilippL> toolkit was invented, which as a stable UNO API.

[11:06] <PhilippL> UNO meaning (Unified Network Objects)

[11:06] <PhilippL> which is OOo's kind of distributed objects (think Corba or .NET)

[11:07] <PhilippL> toolkit is supposed to be a thin wrapper around vcl that binds the (changing) vcl interface to UNO based services which stay binary compatible.

[11:08] <PhilippL> Then there is the rsc (resource compiler), currently still OOo's most heavily used method of doing localization.

[11:08] * PhilippL switches to slide 3

[11:08] <PhilippL> So let's talk a little more about vcl.

[11:09] <PhilippL> vcl is the core of gsl, providing the main event loop, everything that produces output (Windows, virtua devices, printers,...), most controls (Edit fields, buttons, ...)

[11:10] <PhilippL> it also does a lot for reading system specific settings like theme colors, does native looking widget rendering (NWF).

[11:10] <PhilippL> Basically without vcl you wouldn't see a single pixel.

[11:10] <PhilippL> And at some point it is presumed to go away :-)

[11:10] <PhilippL> But more to that later.

[11:11] * PhilippL switches to slide 4

[11:11] <PhilippL> A little more on toolkit: toolkit is your way to go if you want to write UI code that is going to be binary compatible.

[11:12] <PhilippL> A conditio sine qua non if you're writing extensions.

[11:12] <PhilippL> There are other ways, like using java, of course, but the UNO services provided by toolkit are going to stay for a while.

[11:12] <PhilippL> Making sure that your extension won't only run in OOo 3.0, but 3.1, 3.2 and whatever is going to follow.

[11:13] * PhilippL switches to slide 5

[11:13] <PhilippL> Then there is clipboard and drag&drop functionality.

Personal tools