From Apache OpenOffice Wiki
Jump to: navigation, search


Writer ToDo

Pls see the list for the Writer project: Writer To-Dos.

Improve Equation Editor Math


Objectives: Implement missing features in the equations editor Starmath, to make it the best equation editor ever

Context : this application is well targeted for students and does concern an important (the single most one ?) usability problem with Math. It was already attempted to solve at least 3 times but always needed to be dropped because of lack of resources.

The equations editor has some issues (including very old one) and they need to be fixed, because all those issues are a strong brake for acceptance in Education. The main objective here is to implement a new feature for baseline computation.

Concerns: 3.x all versions

Main issues are:

- misalignment. Todo: compute the baseline for equations anchored as character (main case)

- missing symbols ( |-> , <-| , angle A^B .. etc)

- + some other little issues to be fixed in starmath


Skills with languages C/C++ (tokenization, debugging ) maths symbols and good math knowledge (for equations writing ) is a plus.

Good communication skills are expected too (because several modules are concerned )


Familiarize with the starmath editor code. ( see source code documentation online )

Familiarize with links in writer (writer is concerned in some issues)


For issue 972 ( see links Education Project effort for starmath and Math_baseline_alignment )

- code to Implement a new parameter for baseline computation without edit equations

- write specs

- design a proof of concept

- implement it

The task could be completed with other little tasks, depending on the agenda ( e.g.implement missing |-> and <-| symbols .. etc )

Thomas.Lange at Sun dot COM
ericb at openoffice dot org

Impress / Graphics

Improve the Impress slideshow annotation mode

OOo has recently gotten a live annotation mode in the slideshow component, via a sequence of semester projects at Ecole Centrale Nantes. This project is far from done, has been worked on by students previously, and is highly useful in a classroom/education setting.

Tasks :

  • improve the eraser mode
  • fix various bugs around
  • improve the annotation mode

Required skills/knowledge c++ Difficulty medium Contact ericb at openoffice dot org

Extension to add cliparts

Write an extension to add cliparts from a web app, for example flicker.

Christian.Lippka at Sun dot COM

Customizable html export for impress

Write new html export for impress which is customizable by css templates

Christian.Lippka at Sun dot COM

Calc / Chart

Component to check spreadsheet documents for potential errors

Write an extension that checks a spreadsheet document for potential errors in formulas, presents a list of the findings to the user, and allows to correct them.

Things to look for could include

  • Cells that contain numbers stored as text and are used in formulas,
  • Number cells that are not used in any formulas,
  • Empty cells that are used in single-cell formula references.

The list is not meant to be exhaustive.

  • Required skills/knowledge: Java or C++, spreadsheet usage
Niklas.Nebel at

Statistical Data Analysis Tool

Write an extension that allows statistical data analysis (like Anova, t-test, z-test, see Statistical Data Analysis Tool).

  • Required skills/knowledge: Java or C++, statistics
Niklas.Nebel at

Improve numerical stability of spreadsheet functions

Some statistical and financial analysis spreadsheet functions need improvement in numerical stability, for example for very large and/or small values, see issue 18704 and dependencies.

  • Required skills/knowledge: C++, knowledge of numerical analysis and algorithms, mathematical background
Eike.Rathke at sun dot com

Add new spreadsheet functions and parameters according to ODFF

The OpenDocument Format Formula specification (ODFF aka OpenFormula) defines several new spreadsheet functions and new optional parameters to already existing functions that have to be implemented.

  • Required skills/knowledge: C++; for some statistical functions knowledge of numerical algorithms and mathematical background
Eike.Rathke at sun dot com


Framework ToDo

Pls see the list for the Framework project. It is not yet very detailed, but it is a start: Framework To-Dos.

Maxima Integration

Integrate the Maxima symbolic computer algebra system into OOo, to solve calc problems in Writer.

The idea : create a Maxima session inside an OOo Writer document, in an embeded frame, or equivalent.


  • Weekly IRC meetings.
  • Wiki use mandatory.
  • Specifications and documentation MUST be written in parallel, in same time the code is written.
  • Every diff of code will be documented on the wiki.
  • the code must be written in C++ (prefered). A proof of concept using Python would be appreciated.
  • Iterations
  • Step 1
    • Discover and learn UNO API
    • be able to create a Writer document (and play with it)
    • be able to launch an external application using UNO
    • In parallel : learn how a Writer document is structured and how to use it programmaticaly (structure, foundations)
  • Step 2
    • Learn Maxima session requirements
    • implement a way to launch a Maxima session from OOo
    • implement a way to exchange datas with the open Maxima session
    • propose a follow up for the devs who will continue the implementation
  • Estimated Timeline
    • 3 weeks of work = step 1
    • 5 weeks of work = step 2
  • Required skills/knowledge
    • lisp (basics), c++, UNO API knowledge
    • Difficulty: medium
    • Contact

ericb at

Improve Scanner integration inside OOo

Scanner support inside OOo is existing, but neglected functionality. In our increasingly visual oriented world, getting that up to par (across all platforms - though especially lacking on Mac) would make you many friends.

  • analyze the current situation
  • improve (the view, the way the scanner is used .. and so on)
  • propose a proof of concept on Mac OS X (Baseline : Tiger)

Required skills/knowledge c++, Cocoa Difficulty hard Contact ericb at openoffice dot org

Improve OOo usability on small-screen devices

With devices like netbooks, the OLPC or (gasp!) smartphones becoming powerful enough to run OOo (or the stripped-down OOo4Kids), it's becoming critically important to adapt the UI to smaller screen sizes and/or vastly different aspect ratios. This task is about improving OOo4Kids usability on the XO - from better Sugar integration to smaller UI footprint.

  • Required skills/knowledge
    • c++, Sugar/OLPC a bonus
    • Difficulty
    • medium
    • Contact
      • ericb at openoffice dot org

Make OOo UI complexity configurable

The OOo4Kids project has pioneered a way of "dumbing down" the OOo UI, by selectively hiding functionality depending on user proficiency (controlled via three central user levels, beginner, intermediate & expert). This task is to expand on that, cover all five applications, and create a consistent, seamless level of complexity, adapted to the user skill level.

  • Required skills/knowledge
    • c++, UX design
    • Difficulty
    • medium
    • Contact
      • ericb at openoffice dot org

Extended Basic/Dialog Library OXT Export

The OOo Basic Macro Organizer already allows to export a Basic/Dialog Library as extension, but without support for the description.xml file described in:

The goal of this project is to add support for this by creating a corresponding dialog allowing the user to edit all supported elements and by saving the description.xml file into the oxt file afterwards.

  • Required skills/knowledge: C++, Extensions
andreas.bregas at

Improve (Python) scriptability

OOo has a language-agnostic bridge, that permits a host of programming languages (Java, Python, C#, JScript etc etc) to access certain parts of the OOo core. That's nice, but many of the more interesting intestines of the code are not, not easily, or not elegantly usable like that.

This project is about extend OOo with Python :

  • providing a SWIG, or boost::python-based wrapper around un-UNOized OOo core classes.
  • provide organized code samples, and clear examples

Required skills/knowledge c++, python, boost/swig Difficulty medium Contact ericb at openoffice dot org

Personal tools