Re: GtkGrid design document



Lorenzo Gil Sanchez wrote:
If all we really want is a GtkTreeView with different editing behavior,
then it seems to me we should just build those capabilities into
GtkTreeView.

I'd love to see that in GtkTreeView since that is what I was asking for
some time ago. Don't get me wrong, I have enjoyed and learned a lot
while writting the grid widget but at the beginning the only reason I
start writing was because it was absolutely needed in my project and I
got frustrated with the TreeView.

I suppose I was (and I am) too unexperienced to add such behaviour to
the TreeView but it people think it is worthy I will be happy to help
enhacing the TreeView this way.

On the other hand, there are certainly cases where you want something
different from GtkTreeView:

- Efficient handling of many columns and sparse data

Do you mean here that the header shouldn't be made from GtkButtons and
only made of a regular gdkwindow? I guess that would allow to have 10k
columns without memory worries.

- Row headers as well as column headers

Sorry, I forgot to mention that GtkGrid has row headers

- Rectangular selection

This is planned but still need to be studied since all the cells of the
same column share the same type it will be difficult to allow random
copy and paste of rectangular selections.

But I don't have a good sense of what apps would use such a widget
at the moment. Having that idea is core to designing the widget.


Ok, Sven and John Cupitt have already pointed two possible uses of the
Grid. I think it would be also nice for Gnucash and for most ERP
(Enterprise-Resource-Planning) programms.

As far as I know the only two ERP programms for GNOME are the GNUe
project [1] and Fisterra [2] and they both lack the grid widget. GNUe
uses GTK+1.X IIRC and Fisterra 2 is being developed and I have talked
with its developers and they told me a grid will be useful.

Basically what an ERP program does is manipulate database data and it
does need an easy way to edit big chunks of data. That is what my
project is all about, and that is why I need the grid.

Just because we don't have any famous GNOME application that need it I
don't think there is no neccesity for such a widget. Maybe home users
don't really need this kind of programs but they are a must for company
users. Here in Spain most of the small and medium size companies use
some Access customized program to solve their needs so I guess the user
base is potentially pretty big.

I couldn't find any simple database widget with adequate documentation that
i could understand and use, so i've been writing one. You can write a simple
text file description of how data should be displayed in a gtktable, such as
data type (label, editable, combo-box, etc), format (text/numeric etc),
font size/colour, background/foreground table cell colours, row/column
spacing, and how to extract/enter/validate the data from a postgresql database using an sql statement. By reading the text description file, the widget parses
it then fills itself in (a gtktable). It avoids having to use gui editing
to make such a table as in other database apps. The idea is to have a
basic widget that can be used in any gtk app, and that cuts out all the
tediousness of making a pretty table.



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