1*b1cdbd2cSJim Jagielski# ************************************************************* 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski# ************************************************************* 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim JagielskiThe new OOo Canvas Framework 23*b1cdbd2cSJim Jagielski============================ 24*b1cdbd2cSJim Jagielski 25*b1cdbd2cSJim JagielskiThe new OpenOffice.org canvas framework is the successor of the system 26*b1cdbd2cSJim JagielskiGUI and graphics backend VCL. Basic functionality is available, 27*b1cdbd2cSJim Jagielskisupplying just as much features as necessary to provide a 28*b1cdbd2cSJim JagielskiVCL-equivalent feature set (except proper BiDi/CTL support). 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim JagielskiFor migration purposes, the new canvas and VCL will be shipped with 31*b1cdbd2cSJim JagielskiOpenOffice.org for quite some time, allowing a step-by-step adaptation 32*b1cdbd2cSJim Jagielskiof the applications. Therefore, the canvas and VCL must somehow 33*b1cdbd2cSJim Jagielskiinteroperate, since new code, using the canvas, typically is embedded 34*b1cdbd2cSJim Jagielskiin a VCL-based environment (for example, the OOo windows are still 35*b1cdbd2cSJim Jagielskiprovided by VCL. To render into such a window via the canvas, a canvas 36*b1cdbd2cSJim Jagielskimust be constructable from a VCL window). Thus, essentially two new 37*b1cdbd2cSJim Jagielskimethods are provided at VCL's window, namely Window::GetCanvas() and 38*b1cdbd2cSJim JagielskiWindow::GetFullScreenCanvas(). Apart from that small link, canvas and 39*b1cdbd2cSJim JagielskiVCL are completely separated. 40*b1cdbd2cSJim Jagielski 41*b1cdbd2cSJim JagielskiThe canvas framework currently consists of the following two new 42*b1cdbd2cSJim JagielskiCVS modules, /gsl/canvas and /gsl/cppcanvas. Additionally, a new 43*b1cdbd2cSJim Jagielskigeneric graphics tooling is used (but not exclusively by the canvas, 44*b1cdbd2cSJim JagielskiArmin's recent drawing layer fixups also make use of it), which 45*b1cdbd2cSJim Jagielskiresides in /graphics/basegfx. From these modules, six libraries are 46*b1cdbd2cSJim Jagielskicurrently delivered, namely vclcanvas.uno.dll, javacanvas.jar, 47*b1cdbd2cSJim Jagielskidirectxcanvas.uno.dll, canvastools680mi.dll, cppcanvas680mi.dll, and 48*b1cdbd2cSJim Jagielskibasegfx680mi.dll. 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim Jagielski 51*b1cdbd2cSJim JagielskiThe new OOo slideshow engine 52*b1cdbd2cSJim Jagielski============================ 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim JagielskiThe new OpenOffice.org slideshow engine will replace the current 55*b1cdbd2cSJim JagielskiImpress-embedded presentation framework with a fully independent UNO 56*b1cdbd2cSJim Jagielskicomponent, and it will be based on the new canvas. In its current 57*b1cdbd2cSJim Jagielskistate, it is able to provide a basic set of functionality, enabling 58*b1cdbd2cSJim Jagielskithe playback of simple presentations. It furthermore provides features 59*b1cdbd2cSJim Jagielskilike double-buffering, hardware-accelerated alpha-blending (currently 60*b1cdbd2cSJim Jagielskinot on all platforms) and anti-aliased rendering of all primitives. 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim JagielskiIn a second step, this new slideshow engine will then be integrated 63*b1cdbd2cSJim Jagielskiwith Impress model enhancements and extended PowerPoint import/export 64*b1cdbd2cSJim Jagielskifilters, to implement nearly all of PowerPoint's set of effects. 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim JagielskiThe new slideshow engine is currently not accessible from the office 67*b1cdbd2cSJim JagielskiUI, but included in the installations sets. Thus, other developers can 68*b1cdbd2cSJim Jagielskistart to use the new functionality, and base their own implementations 69*b1cdbd2cSJim Jagielskion top of that. For the records, the respective UNO implementation of 70*b1cdbd2cSJim Jagielskithe slideshow resides in the slideshow.uno.dll library. 71*b1cdbd2cSJim Jagielski 72