| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
| <HTML> |
| <head> |
| <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8"> |
| <TITLE>Developer projects</TITLE> |
| <META NAME="GENERATOR" CONTENT="StarOffice 8 (Linux)"> |
| <META NAME="CREATED" CONTENT="20070211;19270200"> |
| <META NAME="CHANGEDBY" CONTENT="Kai Ahrens"> |
| <META NAME="CHANGED" CONTENT="20070211;19485000"> |
| <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"> |
| <SCRIPT SRC="/js/dba_default.js"></SCRIPT> |
| <STYLE TYPE="text/css"> |
| <!-- |
| H2 { background: transparent; page-break-before: auto } |
| H2.western { font-family: "Albany", sans-serif; font-size: 14pt; font-style: italic } |
| H2.cjk { font-family: "HG Mincho Light J"; font-size: 14pt; font-style: italic } |
| H2.ctl { font-family: "Arial Unicode MS"; font-size: 14pt; font-style: italic } |
| H2.ueberschrift-western { font-family: "Albany", sans-serif; font-size: 14pt; font-style: italic } |
| H2.ueberschrift-cjk { font-family: "HG Mincho Light J"; font-size: 14pt; font-style: italic } |
| H2.ueberschrift-ctl { font-family: "Arial Unicode MS"; font-size: 14pt; font-style: italic } |
| --> |
| </STYLE> |
| </head> |
| <body LANG="de-DE" DIR="LTR"> |
| <P STYLE="margin-bottom: 0cm"><B>Project Sections</B>: <A HREF="../index.html">Home</A> |
| | <A HREF="index.html"><B>Development</B></A><BR><B>Development |
| Sections</B>: <A HREF=""><B>Developer Projects</B></A> |
| </P> |
| <HR> |
| <H1><A NAME="dba_dev_projects"></A>Developer Projects</H1> |
| <P>Below is a list of projects which could be implemented by |
| interested developers. Most of these projects are relatively |
| self-contained, and do not require too much knowledge about OOo's |
| code infrastructure.</P> |
| <P>Note that this list doesn't claim to be a complete repository of |
| what will be done in the near/medium future. There may be items on |
| the list which will never be realized, and there definately are items |
| which are not on the list, but will be implemented.</P> |
| <P>If you are interested in anything from the list, please speak at |
| <A HREF="mailto:dev@graphics.openoffice.org">dev@graphics.openoffice.org.</A> |
| We'll gladly help you to get started on this.</P> |
| <P>Also, make sure you don't miss <A HREF="http://development.openoffice.org/todo.html">OpenOffice.org's |
| global TODO list</A>, which also contains interesting projects for |
| developers.</P> |
| <H3>General Notes</H3> |
| <P>Whenever we talk about user interface work, this implies working |
| with VCL, the Visual Class Library in OpenOffice.org. If you are not |
| familar with it, you will curse it, since especially some of the |
| older parts never heard the word "documentation". On the |
| other hand: In opposite to the native platform controls, everything |
| is there as source code, so if you like "learning by debugging", |
| you will love VCL |
| <IMG SRC="../images/smile.gif" NAME="Grafik1" ALT="smile" ALIGN=BOTTOM WIDTH=19 HEIGHT=19 BORDER=0>.</P> |
| <P>Additionally, be aware of the fact that feature implementations in |
| OpenOffice.org require a specification (you may visit <A HREF="http://specs.openoffice.org/">the |
| specifications project</A> for more information). There's a rule that |
| nothing is checked into the master branch which doesn't have a |
| specification which all stakeholders agreed upon - so unlike other |
| open source projects you may know, the specification really is an |
| important part. Stakeholders are: the documentation team, the user |
| experience team, the quality assurance team, and development. |
| Usually, one representative from every team needs to accept your |
| specification.</P> |
| <P>Well, don't let this hinder you in starting. Just be aware that |
| there will be a time when a specification is finally needed. Most |
| developers don't like writing such documents (and some people even |
| claim that <A HREF="http://www.joelonsoftware.com/articles/fog0000000034.html">they |
| shouldn't</A>). Thus, you need to clarify who will take this for you, |
| if you can't/don't want.</P> |
| <P>A note about the effort: This is a rather rough guess at the |
| moment. In general, it may be a good idea to add two or more weeks or |
| so simply for becoming familar with the code and some concepts, so if |
| it is "2 weeks", don't expect to start today and finish it |
| in 14 days ...</P> |
| <HR> |
| <H2 CLASS="ueberschrift-western">Creating a Visio filter for OOo Draw</H2> |
| <P>OOo currently lacks support for a Visio import filter, so that it |
| would be good to have someone starting to write such a filter from |
| scratch utilizing the OOo API for direct creation of the document or |
| the ODF format as input format to be loaded by the OOo application. |
| Although a full blown filter seems to be unrealistic to be written |
| within the short timeframe, large parts of Visio documents should be |
| able to be filtered correctly.</P> |
| <P><I>Required skills/knowledge:</I> good C++ or Java expertise, |
| graphics programming</P> |
| <P><I>Recommendend skills/knowledge:</I> Visio file format / ODF or |
| OOo API</P> |
| <P><I>Contact:</I> <A HREF="mailto:Sven.Jacobi@Sun.COM">Sven.Jacobi@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="ueberschrift-western">Creating a Freelance Graphics filter |
| for OOo Draw</H2> |
| <P>OOo currently lacks support for a Lotus freelance import filter, |
| so that it would be good to have someone starting to write such a |
| filter from scratch utilizing the OOo API for direct creation of the |
| document or the ODF format as input format to be loaded by the OOo |
| application. Although a full blown filter seems to be unrealistic to |
| be written within the short timeframe, large parts of Freelance |
| documents should be able to be filtered correctly.</P> |
| <P><I><SPAN STYLE="text-decoration: none"><SPAN STYLE="font-weight: medium">Required |
| skills/knowledge</SPAN></SPAN></I>: good C++ or Java expertise, |
| graphics programming</P> |
| <P><I>Recommendend skills/knowledge:</I> Freelance Graphics file |
| format / ODF or OOo API</P> |
| <P><I>Contact:</I> <A HREF="mailto:Sven.Jacobi@Sun.COM">Sven.Jacobi@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="ueberschrift-western">Creating an OrgChart component</H2> |
| <P>Currently, the OpenOffice.org package does not have a tool to |
| allow users to easily create and manipulate organizational charts. |
| OpenOffice.org's main competitor, the Microsoft Office suite, does |
| provide such a capability for its users. Therefore the addition of |
| such a tool to OpenOffice.org will help.</P> |
| <P>OpenOffice.org to attract new users and retain current users. The |
| user will be able to create org charts using a library of pre-defined |
| objects. These objects will support multiple user-definable fields. |
| Objects will be manipulated using a drag-and-drop interface. An |
| auto-alignment function will allow the user to place objects easily. |
| </P> |
| <UL> |
| <LI><P>The following features should be included in the OrgChart |
| component:</P> |
| <LI><P>A library of pre-defined object shapes that can be used</P> |
| <LI><P>A drag-and-drop interface for manipulating objects</P> |
| <LI><P>An auto-alignment function</P> |
| <LI><P>A library of chart templates</P> |
| <LI><P>"Smart" connectors to allow users to easily connect |
| objects</P> |
| </UL> |
| <P><I>Required skills/knowledge:</I> good C++ / Java expertise, |
| graphics programming</P> |
| <P><I>Recommendend skills/knowledge:</I> ODF or OOo API</P> |
| <P><I>Contact:</I> <A HREF="mailto:Christian.Lippka@Sun.COM">Christian.Lippka@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="ueberschrift-western">Creating a native Quartz2D canvas |
| for Mac OSX</H2> |
| <P>The current presentation module relies on a component model, |
| allowing to use different backends for rendering purposes. Currently, |
| there are backends available for MS DirectX and for the internally |
| used VCL graphics layer. For Mac users, it would be great to have an |
| optimized rendering backend using the Quartz2D API.</P> |
| <P><I>Required skills/knowledge:</I> MacOSX and Quartz2D API</P> |
| <P><I>Recommendend skills/knowledge:</I> enhanced graphics |
| programming</P> |
| <P><I>Contact:</I> <A HREF="mailto:Thorsten.Behrens@Sun.COM">Thorsten.Behrens@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="western">Creating a MultiPage-Tiff importer</H2> |
| <P>MultiPage-Tiff files are oftenly generated from FAX documents and |
| sent via Email, in case the recipient doesn'n own a FAX machine by |
| herself, or to just embed it into the final document.</P> |
| <P>The current TIFF filter is able to import such files. We now need |
| to ask the user what the destination for his Multipage TIFF file |
| should be: just a simple graphics import or a more sophisticated |
| graphics import, assigning each of the several frames of the TIFF |
| file to a consecutive page of the current/new document.</P> |
| <P><BR><BR> |
| </P> |
| <P><I>Required skills/knowledge:</I> C++</P> |
| <P><I>Recommendend skills/knowledge:</I> TIFF format knowledge, OOo |
| internals about the filtering process</P> |
| <P><I>Contact:</I> <A HREF="mailto:Sven.Jacobi@Sun.COM">Sven.Jacobi@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="ueberschrift-western">Enhanced SVG export filter</H2> |
| <P>Due to the limitations the old export filter has, there have been |
| made some efforts in the past to create an optimized export filter. |
| This already available filter offers the possibility to create SVG's |
| containing multiple slides, that you can navigate trough with mouse |
| or key events. The functionality of this filter module is comparable |
| with the functionality of the Flash export filter contained in |
| StarOffice 7, which means that it doesn't offer any slide |
| transitioning effects, object animations or sound support at the |
| moment although the current internal structure of the new filter has |
| been prepared to handle such topics more easily.</P> |
| <P>Availability in this case means that there exist some source code |
| inside the filter project of StarOffice, that can be build upon |
| request. Due to the fact that there have been strong requests for a |
| filter containing such functionality for quite a long time, the |
| suggestion in this case would be to release a development snapshot |
| on OOo within a package component.</P> |
| <P><I>Required skills/knowledge:</I> good C++, graphics programming</P> |
| <P><I>Recommendend skills/knowledge:</I> SVG specification, OOo API</P> |
| <P><I>Contact:</I> <A HREF="mailto:Kai.Ahrens@Sun.COM">Kai.Ahrens@Sun.COM</A></P> |
| <HR> |
| <H2 CLASS="western">SVG Tiny import filter</H2> |
| <P>Their have been several inquiries in the past, asking for a SVG |
| import support in StarOffice. Beside integrating SVG graphics into a |
| document, people are also asking for a vector based interchange |
| format that doesn't rely on the proprietary WMF/EMF |
| (WindowsMetafile/EnhancedMetafile) format offered by MS. This format |
| could be used to store OLE replacement graphics within our XML file |
| format or to offer SVG content via Clipboard.</P> |
| <P>Due to the fact, that SVG itself is a very complex format, |
| offering support for stylesheets, scripting, animations, complex |
| clipping, (clip) pathes and many more sophisticated features, the |
| effort to create a full featured SVG import would be way beyond our |
| current possibilities reagarding development resources. But taking |
| into account, that such a full blown feature set is not needed for |
| interchange features, a possible way to go would be to write a SVG |
| import filter on our own, that offers support for the 'SVG Tiny' |
| format, that is a subset of the pure SVG specification, concentrating |
| mostly on graphics primitives, which is exactly what we need in this |
| case. |
| </P> |
| <P>Taking a look at the export side, we should take care of offering |
| the possibility to save content only with respect to this special |
| 'Tiny' subset, so that we're able to read our own created SVG files.</P> |
| <P><I>Required skills/knowledge:</I> good C++, graphics programming</P> |
| <P><I>Recommendend skills/knowledge:</I> SVG specification, OOo API</P> |
| <P><I>Contact:</I> <A HREF="mailto:Kai.Ahrens@Sun.COM">Kai.Ahrens@Sun.COM</A></P> |
| </body> |
| </HTML> |