[Gambas-devel] PrintSource

ron ronstk at ...124...
Fri Oct 29 13:15:51 CEST 2004


On Thursday 28 October 2004 21:59, Carsten Olsen wrote:
> Hello again
> 
> I have added the required line to split procedure, sub and functions,
> and (of course) option for it in the option dialogs print tab.
> 
> Kind regards
> 
> Carsten Olsen
> 

Hi Carsten and Charlie

I install your, Carsten, code in the 0.99RC1 version.

It does the job, however I did not get the colors.
Didn't look in the Options, shame to me.
The chosen font is the default Monospace,10 after install of Gambas.

The empty line I wish to have between the procedures in my paper listing
is a real empty line. No line number too or simple said, a CR/LF only.
Try to read on to the last part and you will see why.
Nice to have the line numbers anyway. :)
 
The choice for 'print' and 'print to file'.

Do the properties of the printer not count even if it is a *.ps file?
The print to file (*.ps) is only to temporary medium before the actual printing is done.
The properties of that printer counts also how the (*.ps) file should be made. 
Think about the print to file because I do not have the printer at home.
I put the file at floppy and go to my work and print it there.
Isn't printing to a ps printer or ps file (for that printer) the same?

The printer listing to choose a printer should always be available
even if I print to file but I can't select if to file is chosen.

Despite the many possible ways with Linux based system for printing I
do use my laptop with win98 for the printing.
It is the only way I get it how it is intent to be. 
Even from Linux-Acrobat I do not get it right.

When I print to file with or without 'relief' I do not see a
difference when the file is shown in KGostscript.
For the 'relief' option I do not use it in the editor.
It looks to me a bit blurry on my LCD monitor.
I belive the option behind it is usefull but more when it
is done with bold or normal font. Then I will use it.


NOTE 1: 
The line is between 'End' and 'Procedure', height 1 pixel in the editor.
The line is not a text line in real, it is a border line of the text container
The editor is/was based on a gridview as told by Benoit a long time back.
This gives the place for adding line numbers but the small line does/can 
not have a number. The line is not part of the text in any respect.
Switch it off in the options and you see why I want that empty line 
to clear out the Procedure separation with it.
The same reason why they are add on request for.

NOTE 2:
To get the line as in the editor it should be equivalent to make the
line width 'End' as long as the paper is width and use the underline
on it.

Note for Charlie, 
I did connect PrettyPrint with the real printing as the name suggest
but not with that it only makes a PrettyLayout, how I should name it.
     
Some examples to clarify my point of view. Hope it will help.
sepline is the line you get if in the gambas options the 'Split procedures' is checked.


List part in editor: (sepline is 'Off')
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


Empty line add as separator (sepline is 'Off') for printing
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END

Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


List part in editor: (sepline is 'On')
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END________________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


Empty line add as separator (sepline is 'On') for printing
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END
__________________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


List part but printed portrait (sepline is 'On')
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad 
if the line is to long"
  Print "Done. :)"
END_______________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


Empty line add (sepline is 'On' but no real need)
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad 
if the line is to long"
  Print "Done. :)"
END
__________________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~


List part but printed landscape (sepline is 'On')
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END_______________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~

Empty line add (sepline is 'On' but no real need)
~~~~~~~~~~~~~~~~~~~
  PRINT "My way of is Printing bad if the line is to long"
  Print "Done. :)"
END
__________________________________
Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~

Printing the 1 pixel line can be done by upperline the line it is 
visible above in the editor. This is consistent the editor works.
The code Carsten wrote for this works OK for me.
Underline the above line, added with spaces to width of paper, does also
the job.

For adding line numbers there are more problems.
First the separators are no real text lines.
Therefore they do not have a line number in the editor at all.


~~~~~~~~~~~~~~~~~~~
0011   PRINT "My way of is Printing
bad if the line is to long"
0012   Print "Done. :)"
0013 END
0014 ___________________________
0015 Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~
This will be the result if line numbers are 'On' and the
current separation is implemented as a line in text form (underlined spaces)
You wil not find line 15 with 'Procedure' on line 15 in the editor!
Imagine the source is 8000 lines of code and contains 200 procedures.
In the last procedure you can substract 200 of the given line, but if you 
do not know in wich of the 200 you are?
Line 14 is now inserted for print with a false line number. 


~~~~~~~~~~~~~~~~~~~
0011   PRINT "My way of is Printing
bad if the line is to long"
0012   Print "Done. :)"
0013 END

0014 Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~

The wrap is solved in landscape printing
~~~~~~~~~~~~~~~~~~~
0011   PRINT "My way of is Printing good if the line is to long"
0012   Print "Done. :)"
0013 END

0014 Procedure Sub bla()
~~~~~~~~~~~~~~~~~~~

Thats why I have a 14" instead the standard 11" width printer :)
And in color not payable if they exist any way.

With al respect to both my 2 eurocents

Ron.









More information about the Devel mailing list