GSoC 2011 Ideas: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
No edit summary
m (Protected "GSoC 2011 Ideas": Application period is over ([edit=sysop] (indefinite) [move=sysop] (indefinite)))
 
(16 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:GSOC]][[Category:GSOC 2011]][[Category:EN]]
[[Category:GSOC]][[Category:GSOC 2011]][[Category:EN]]
{{Archive}}
'''Minimum Requirements'''
* C++
* Scribus uses the Qt toolkit, so knowledge of it would be of significant advantage, but could be learnt. STL is not used much.
* Python if you want to do any major scripting work
* Visit [[GSoC_2011_Student_Requirements]] for others
* Further questions can be posed to the team, please review [[GSoC_2011_Contact_Information]].
'''List ideas for prospective Google Summer of Code 2011 projects here...'''
'''List ideas for prospective Google Summer of Code 2011 projects here...'''


=Real table support=
[http://lists.scribus.info/mailman/listinfo/scribus-dev scribus-dev mailling list]
* Skills required: C++, Qt4 knowledge
 
* Scribus lacks real table support. Currently if one wants to have a table he will need to make it in external application and paste it as PS.
=Project ideas=
* Tables need to become a new kind of object (aside from image and text objects).
 
#  Scribus should do the layouting, including ensuring row height is big enough to provide enough room for the text, the same for columns (plus text wrapping and/or eliding).
==#1 - Tables support==
  A possibility for table to flow over several pages should be available.
 
#  Scribus should allow importing data from CSV [and other sorts of data] easily (like specifying delimiter, " symbol handling -- see how openoffice.org it does).
===Introduction===
# Easy way to navigate through the cells, and doing table-wide formatting (of all features, text, lines, background...) are much needed.
This project aims to bring basic support for loading, layout, drawing, editing and saving of tables to Scribus, while at the same time keeping extendibility and good design in mind for more advanced features to come. The new tables will be distict objects alongside text frames and other objects.
* Completing at least first item of this list will count as a success for the project.
 
===Rationale===
Scribus currently stands without proper support for tables. There is rudimentary support for table-like objects, but these tables are "faked" using a group of text frames. This is awkward and doesn't support editing of tables as objects in their own right.
 
===Deliverables===
Features that are considered basic, and mandatory for the project to be considered a success, include:
 
* Loading, editing and saving of basic properties such as width, height, margin, padding, border and background of the tables, rows, columns and cells, where applicable.
* Intuitive keyboard and mouse navigation of table cells.
* Correct layout of text and other objects into the table cells. This includes, among other things, growing of cell heights to accomodate new contents and text wrapping/eliding.
 
Features that are considered optional, but nice to have, include:
 
* CSV / ODF import.
* Table breaking across pages.
 
===Time scale===
Tentative schedule to be determined.
 
===Skills required===
C++, Qt 4
 
(Note: Student Elvis Stansvik, with proven track record of implementing tables (successful GSoC 2009 participant), has shown interest in the tables project and is working on an official project proposal. See the [http://lists.scribus.info/pipermail/scribus-dev/2011-March/000833.html mailing list discussion] for details.)
 
==#2 - Extend the Property Palette for better text management==
* First line indent must be available in the PP (and everything that's available in the Styles must be in the PP too)
* PP and Styles sorted out (see above)
 
==#3 - Improvement of the Undo/Redo system==
* Recent work by Cezary has provided a new impetus for making the Undo system more comprehensive and on par with commercial software. However, more work is required. A GSoC project could provide a lot of benefit in this area in a reasonable time frame.
 
==#4 - Additional import filters to clean-up the Get Text==
* Take a look at RTF import and see what similar work needs to be done.
 
==#5 - Improve Hyphenation Settings ==
* This could also be discussed with many of the teams working on word processors (LibreOffice?).
* Include a hyphenation exception list (from a text file, not like it is now — remember, too many clicks...)
 
==#6 - Allow thin space in Short Words ==
* Use short workds or any other automated way. This is a must in French typography and a blocking issue for pros while having a great scope for a GSoC project.
 
==#7 - Improve the handling of the text flow around an image==
* The current handling is inadequate.
 
==#8 - Clean-up the UI so we have less clicks and overall a much smoother workspace==
 
==#9 - Add missing bits in the interactive PDF (this is a very powerful tool)==
 
==#10 - Add export to PDF/X-1a (de facto standard in Norh America)==
 
==#11 - Add perl scripting support==
* The current python scripter can be used as an example.


=Project 1=
[[User:Malex|malex]] 19:30, 10 March 2011 (CET)
=Template=
==#xx - title==
* Introduction
* Introduction
* Rationale
* Rationale

Latest revision as of 16:29, 11 April 2011


Archive icon.png
This article is ARCHIVED. It is a part of the Scribus Community's history and is kept here for reference and as a representation of the contributed efforts. It is protected from editing, but its source can be copied.

Minimum Requirements

  • C++
  • Scribus uses the Qt toolkit, so knowledge of it would be of significant advantage, but could be learnt. STL is not used much.
  • Python if you want to do any major scripting work
  • Visit GSoC_2011_Student_Requirements for others
  • Further questions can be posed to the team, please review GSoC_2011_Contact_Information.

List ideas for prospective Google Summer of Code 2011 projects here...

scribus-dev mailling list

Project ideas

#1 - Tables support

Introduction

This project aims to bring basic support for loading, layout, drawing, editing and saving of tables to Scribus, while at the same time keeping extendibility and good design in mind for more advanced features to come. The new tables will be distict objects alongside text frames and other objects.

Rationale

Scribus currently stands without proper support for tables. There is rudimentary support for table-like objects, but these tables are "faked" using a group of text frames. This is awkward and doesn't support editing of tables as objects in their own right.

Deliverables

Features that are considered basic, and mandatory for the project to be considered a success, include:

  • Loading, editing and saving of basic properties such as width, height, margin, padding, border and background of the tables, rows, columns and cells, where applicable.
  • Intuitive keyboard and mouse navigation of table cells.
  • Correct layout of text and other objects into the table cells. This includes, among other things, growing of cell heights to accomodate new contents and text wrapping/eliding.

Features that are considered optional, but nice to have, include:

  • CSV / ODF import.
  • Table breaking across pages.

Time scale

Tentative schedule to be determined.

Skills required

C++, Qt 4

(Note: Student Elvis Stansvik, with proven track record of implementing tables (successful GSoC 2009 participant), has shown interest in the tables project and is working on an official project proposal. See the mailing list discussion for details.)

#2 - Extend the Property Palette for better text management

  • First line indent must be available in the PP (and everything that's available in the Styles must be in the PP too)
  • PP and Styles sorted out (see above)

#3 - Improvement of the Undo/Redo system

  • Recent work by Cezary has provided a new impetus for making the Undo system more comprehensive and on par with commercial software. However, more work is required. A GSoC project could provide a lot of benefit in this area in a reasonable time frame.

#4 - Additional import filters to clean-up the Get Text

  • Take a look at RTF import and see what similar work needs to be done.

#5 - Improve Hyphenation Settings

  • This could also be discussed with many of the teams working on word processors (LibreOffice?).
  • Include a hyphenation exception list (from a text file, not like it is now — remember, too many clicks...)

#6 - Allow thin space in Short Words

  • Use short workds or any other automated way. This is a must in French typography and a blocking issue for pros while having a great scope for a GSoC project.

#7 - Improve the handling of the text flow around an image

  • The current handling is inadequate.

#8 - Clean-up the UI so we have less clicks and overall a much smoother workspace

#9 - Add missing bits in the interactive PDF (this is a very powerful tool)

#10 - Add export to PDF/X-1a (de facto standard in Norh America)

#11 - Add perl scripting support

  • The current python scripter can be used as an example.

malex 19:30, 10 March 2011 (CET)

Template

#xx - title

  • Introduction
  • Rationale
  • Deliverables
  1. Part
  2. Part
  • Time scale
  • Skills required
  • Summary