[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Report Line


https://gambas-fr.org/code-266-editeur-detat-reportline.html


About this code
A preview of my new project

Here is LineReport...

Well the name is out of date and the code still needs long hours of
cleaning.
It is first and foremost a concept and an idea. Generate a document with a
philosophy the most KISS (Tein Zou Simp', Couillon)

The principle is simple there are only 2.5 types of objects.

- ReportCell
- ReportLine
- Report that inherits from reportCell

All these objects inherit from _ReportObject

Whose properties are:

- Width Width of the object
- Height Height of the object
- Border ReportBorder (defines the behavior of the object in its frame)
- font Font of the object and its descendants
- foreground character color of the object and its descendants
- background color of the object and its descendants
- expand The object is expanded
- visible ...
- Tag Informative marking

ReportLine Implements

- Display Condition for displaying the line (not yet implemented)
- Count number of elements in the line
- DataCount number of repetitions of the line

ReportCell Implements

- Count number of lines in the cell
- Text Text of the cell
- Warp Is the text cut off
- Image If the image is defined it replaces the text
- Alignment Alignment of the image or text (Not yet done for the image)
(shortcut ctrl+shift+arrow for fun)
- Stretch The content takes the space
- Proportional but Proportionally
- Rotation turns the content (not yet implemented)
- Key Naming of an element for later use
- DataType Type of content of the element (Only in CAD text mode if the
image is not defined)

ReportBorder Implemented

- {side}Padding
- {side}Margin
- {side}Width
- {side}Color
- {side}Style

So a line contains cells that can contain lines ... etc

Some shortcuts

SHift + LMouse adds in selection
Alt + LMouse selection of the parent

Enter enters the child
Alt + Enter goes to the parent
if shift held then we add to the selection

directional keys to move in the elements

"+" to add a sibling element
"-" to delete a selected element
ctrl + "+" to add a first line in a cell

Ultimately this small editor could be integrated or attached to the ide to
make reports or presentations in two spoonfuls.

But is still in heavy develloppment

so fill free to share your ideas


-- 
Fabien Bodard