[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    Re: Formal GSoC Proposal [Second Draft]: Basic tables support for
From:       Elvis Stansvik <elvstone () gmail ! com>
Date:       2009-04-02 7:39:31
Message-ID: 751a4f870904020039r6abe0402lb5d2ce2b9d05a04a () mail ! gmail ! com
[Download RAW message or body]

2009/3/30 Elvis Stansvik <elvstone@gmail.com>:
> 2009/3/26 Elvis Stansvik <elvstone@gmail.com>:
>> Below is a second draft of my formal GSoC proposal. Please point out
>> if you think there's anything that I should leave out or if there's
>> any glaring inaccuracies. I plan on submitting my proposal on Monday.
>
> My formal proposal is now submitted to Google:
>
> http://socghop.appspot.com/student_proposal/show/google/gsoc2009/estan/t123842684104

Just want to remind everyone that tomorrow proposals will be locked
for editing, in case someone has any further comments.

Also congrats to everyone on the RC tagging, and special thanks to
Cyrille for his release work!

Elvis

>
> Elvis
>
>>
>> Regards,
>> Elvis
>>
>> DRAFT
>>
>> Name:
>> Elvis Stansvik
>>
>> Email Address:
>> elvstone@gmail.com
>>
>> Freenode IRC Nick:
>> estan
>>
>> Location (City, Country and/or Time Zone):
>> Örebro, Sweden, GMT+1
>>
>> Proposal Name:
>> Basic tables support for KWord
>>
>> Motivation for Proposal / Goal:
>> Tables are common in many documents, and can be considered a key
>> feature of a word processor. KWord currently lacks a competitive
>> implementation of tables in its latest iteration, the upcoming 2.0
>> release. In this project, I will try to build a basic and robust
>> implementation of editable tables, including loading and saving, that
>> can later be extended to a more competitive implementation.
>>
>> I'm fully aware that this is an ambitious task that might be more
>> suited for one of the core developers, but I think this year's Summer
>> of Code could be a good opportunity to get the ball rolling on this,
>> because let's face it; it will have to be done at one point or another.
>>
>> Implementation Details:
>> My implementation will use the built-in support for tables in Qt's
>> Scribe framework. I will modify the text layout engine in KOffice's
>> kotext library to support layout of text into table cells instead of
>> into the normal document flow of the text shape.
>>
>> I'll also add loading and saving code and will try to map as many
>> of the ODF table related style attributes in the ODF specification to
>> properties of KOffice's and Qt's style (/format) classes as possible,
>> extending them where necessary. I'll do this in order of importance,
>> starting with the attributes required for a very basic table
>> implementation first.
>>
>> I will ensure correct cursor and selection behavior during
>> keyboard/mouse interaction as well as correct table breaking at page
>> boundaries. The table editing functionality will most likely be part
>> of one or several tools working with the text shape and will allow
>> the user to split/merge cells, resize rows/columns, edit the table
>> heading et.c.
>>
>> I'll put quite some focus on documenting my implementation and,
>> together with my mentor and other KOffice developers, making sure that
>> it will scale well to meet the demands of a future full implementation
>> of ODF tables, and possibly also taking into account the requirements
>> of tables as they are specified by the Microsoft Office .DOC format.
>>
>> Tentative Timeline:
>>
>>  June 1-June 30 - Basic functionality
>>   I will begin by implementing minimal loading/saving as well as basic
>>   display and editing. Using this first iteration, the user should be
>>   able to load a document containing a very basic 3x3 table [1], and
>>   remove and add columns and rows to it and save the document. More
>>   specifically I will add basic support for the following ODF elements:
>>
>>     o <table:table>
>>     o <table:table-columns>
>>     o <table:table-rows>
>>     o <table:table-row>
>>     o <table:table-column>
>>
>>   along with a basic subset of the properties of their corresponding
>>   style families:
>>
>>     o <style:style ... style:family="table">
>>     o <style:style ... style:family="table-column">
>>     o <style:style ... style:family="table-row">
>>
>>   Such as e.g. <style:table-row-properties fo:background-color="..."/>
>>
>>  July 1-August 10 - Extended functionality
>>   In this second step, I will:
>>
>>     o Add support for row and column span.
>>     o Add support for splitting/merging of cells.
>>     o Improve the behavior of tables breaking across multiple pages
>>       by duplicating the cell position/size calculations performed
>>       inside Qt in order to determine where the break will occur
>>       and be able to do the break myself at a desired location.
>>     o Make sure shapes can be put into table cells, possibly by
>>       creating a new kind of anchoring mechanism in kotext for
>>       cells which are not allowed to contain any text.
>>     o Add support for more of the table related style properties
>>       of the ODF specification.
>>
>>  August 10-August 16 - Finishing up
>>   Fix any outstanding bugs and write missing unit tests and
>>   documentation.
>>
>> Do you have other obligations from late May to early August (school,
>> work, etc.)?:
>> My studies ends on May 31, so I can't really start full-time coding
>> until then. During the summer I may have to do some part time work for
>> a publishing company to be able to pay my June rent, but it's flexible
>> hours and I'll essentially be able to work 100% with my project
>> throughout the summer.
>>
>> About Me (let us know who you are!):
>> My name is Elvis Stansvik. I'm 25 years old. Most of you probably know
>> me as 'estan' on FreeNode. I live in the nice little town Örebro, about
>> 200 km west of Stockholm, Sweden. I've been tinkering with free software
>> for about 10 years and I've had an increased interest in programming in
>> the last 4-5 years. I already have a handful of commits to KOffice. They
>> would be many more had I not been so busy with work and studies.
>>
>> My past experiences are quite varied and include working with a small
>> non profit wireless ISP in the rural town of Nora, running my own book
>> shop and later book café and working as an IT technician at a book
>> publishing company.
>>
>> Currently I'm brushing up my old high school (gymnasium) grades at a local
>> school, and after this summer I'll be in uni. Things I enjoy other than free
>> software include traveling, swimming, the occasional painting session (oil
>> or acrylics on canvas), hiking the Swedish mountains and hanging out with
>> friends in my home town.
>>
>> [1] Roughly the minimal example at the very end of 8.1 Basic Table Model in
>>    the ODF (v1.1) specification.
>>
>
_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic