Points to address about Issue 47600
Detailed specification on Regina's page
- 1 new behaviour of the application (Consensus OK)
- 2 Interface (to be further discussed)
- 3 Legacy files handling (to be further discussed)
- 4 Steps to implement the behaviour (to be further discussed)
new behaviour of the application (Consensus OK)
- When you create a new file : table:print should be set to true (or not set) on every sheet.
- When adding a print range on a sheet, other sheets should not be altered.
Interface (to be further discussed)
Format > Print Range > Define Add Remove ------- Edit
Format > Sheet Print Settings (tbd : or keep the initial item "Print range") > Add print range Define print range (tbd : remove it to unclutter the menu / keep it, as it's often used cf. Feedback data) Edit print ranges... [x]Default print range (tbd : Undo Print Range or Remove or Delete or Print entire sheet) ------------ [x]Don't print this sheet (tbd : Use affirmative sentence "Print this sheet", or "Exclude sheet" Replace this with two menu items Enable Print - Disable Print
If it is agreed to exclude the repeat column/row options from the Edit print ranges dialogue (see below), the menu will have to be updated accordingly.
Edit print ranges dialogue
- Remove the "none" option
- Put the repeat row/columns options in a different dialogue : cf. Regina's proposal
Context Menu > Define Print Range Add Print Range (Undo Print Range)
Legacy files handling (to be further discussed)
According to the ODF spec, sheets with the table:print attribute set to false should not be printed. Unfortunately, OOo currently sets this attribute to false for every sheet of a new file. It has been decided to fix this in order to have a behaviour of the app which is more predictable and compliant to the specs. The problem is that if the application behaves correctly, the files created with a previous version of the app without any print range, won't print at all. This is the majority of the files.
- Solution A : when all the sheets of a spreadsheet have their attribute table:print set to false, automagically set them to true. Pros: it will fix the problem seamlessly for most cases. Cons: it becomes impossible to have a spreadsheet with all sheets excluded from printing (but who would do that?)
- Solution A1: test the version of the last editor of the document. Pros: it allows the new application to have files with all sheets set to "don't print" Cons : more code complexity, slows the opening process.
- Solution A2: don't test it.Pros : no impact on perfomance and complexity of code. Cons : impossible to have a spreadsheet with all sheets excluded from printing (but who would do that?)
- Solution B : Inform the user why it spreadsheet won't print. Pros: nothing is done automatically to the file. Every user will get the warning, which can be very disturbing and
- Don't touch existing documents when opened (One reason is that people would open a document and instantly get a "changed" notification without doing anything. From experience it is known that people can get really angry ;-))
- The code changes for the print dialog can be re-used for numerous other print problems. They are not specific to any ODFversion.