Calligra/Words: Difference between revisions

From KDE Community Wiki
No edit summary
Line 1: Line 1:
[[Category:Words]]
[[Category:Words]]
'''Calligra Words''' is an application that uses the text (flake) shape to show text-based documents with arbitairy page sizes and it can do a lot of DTP-like functionality due to the featureset that Flake brings to the table.
'''Calligra Words''' is an application that uses the text (flake) shape to show text-based documents with arbitairy page sizes and it can do a lot of DTP-like functionality due to the featureset that Flake brings.
Since the main text layout and rendering core is moved into a flake plugin this can be used by any KOffice application and thus most of the KWord functionality is available across all apps. How this is done is to use the KoText library to contain the text loading code and various interfaces (APIs) for using text in an application.  Most of the functionality is kept out of the KoText library to keep it small to link to and the real code all lives in the text shape (which can be found in the koffice plugins dir).
Since the main text layout and rendering core is moved into a flake plugin this can be used by any Calligra application and thus most of the Words functionality is available across all apps.
KoText allows the placement of the text-lines to be reimplemented differently, so KoText has a powerful, but not very featurful version that is used everywhere except for KWord. KWord implements its own text layout class which has additional features that only a word processor needs.


After this 10km overview here are some pages with more details and design documents;
How this is done is to use the KoText library to contain the text loading code and various interfaces (APIs) for using text in an application.  Most of the functionality is kept out of the KoText library to keep it small to link to and the real code all lives in the text shape (which can be found in the plugins dir).
 
Here are some pages with more details and design documents;


=Text engine restructuring=
=Text engine restructuring=
Line 10: Line 11:


=Current Design Explanation=
=Current Design Explanation=
* [[Calligra/Words/Tutorials]] List of tutorials relating to ODF and KWord
* [[Calligra/Words/Tutorials]] List of tutorials relating to ODF and Words
* [[Calligra/Words/Tables]] The tables in KWord can be based on Qt tables, here is how Qt tables work at the low low level.
* [[Calligra/Words/Tables]] The tables in Words are based on Qt tables, here is how Qt tables work at the low low level.
* [[Calligra/Words/RequirementSpecifications/ChangeTracking]] Requirement specifications for Change tracking.
 
=Text Engine restructuring=
* [[Calligra/Words/LayoutRestructurings]] List of tutorials relating to ODF and KWord
* [[Calligra/Words/Tables]] The tables in KWord can be based on Qt tables, here is how Qt tables work at the low low level.
* [[Calligra/Words/RequirementSpecifications/ChangeTracking]] Requirement specifications for Change tracking.
* [[Calligra/Words/RequirementSpecifications/ChangeTracking]] Requirement specifications for Change tracking.
* [[Calligra/Words/LayoutRestructurings]] How we are going to bring more functionality from Words to the textshape


=Future Design=
=User interface Design=
* [[Calligra/Words/Text_Styles_UI_Mockup]] A UI mockup for a re-work of the text styles tree.
* [[Calligra/Words/Text_Styles_UI_Mockup]] A UI mockup for a re-work of the text styles tree.


Line 29: Line 26:


=End User Ready=
=End User Ready=
In order to make KWord end user ready we have to know who the end user is. Turns out that there are different definitions which give different answers. The full details can be found at [[Calligra/Words/EndUserReady/Personas]]
In order to make Words end user ready we have to know who the end user is. Turns out that there are different definitions which give different answers. The full details can be found at [[Calligra/Words/EndUserReady/Personas]]


=Bug processing =
=Bug processing =

Revision as of 22:54, 3 January 2011

Calligra Words is an application that uses the text (flake) shape to show text-based documents with arbitairy page sizes and it can do a lot of DTP-like functionality due to the featureset that Flake brings. Since the main text layout and rendering core is moved into a flake plugin this can be used by any Calligra application and thus most of the Words functionality is available across all apps.

How this is done is to use the KoText library to contain the text loading code and various interfaces (APIs) for using text in an application. Most of the functionality is kept out of the KoText library to keep it small to link to and the real code all lives in the text shape (which can be found in the plugins dir).

Here are some pages with more details and design documents;

Text engine restructuring

Calligra/Words/Layout restructuring To do list

Current Design Explanation

User interface Design

Usecases for new tech or 'in-development' stuff

End User Ready

In order to make Words end user ready we have to know who the end user is. Turns out that there are different definitions which give different answers. The full details can be found at Calligra/Words/EndUserReady/Personas

Bug processing

The Calligra Words bugs are first triaged and prioritized. Depending on interest from developers (often related to priority but not nessessarily so) the fixing will start. This can be anywhere from immidiately to several years later

Prioritization is based on being ready for a basic user like Susan or for a more specilized user like A.D.Vance.

Right now we have plenty to do to support Susan, so it's quite unlikely the advanced cases will have much interest, but this is open source, and everybody is free to do what they want, so you never know ;)

See also