GtkSheet is a Matrix/Table widget for Gtk+ Originally, it was a variant of GtkClist widget (by Jay Painter) but it became more than I expected, and actually it has almost nothing to do with it. This distribution includes a demo program where you can see many of the widget's features. BRIEF DESCRIPTION ================= GtkSheet is a matrix where you can allocate cells of text. Cell contents can be edited interactively with an specially designed entry, based on GtkEntry (so it has the same features). You can parse text connecting a parser to the "set cell" signal. (See example 2 in the demo program) You can change width, height, background color, foreground color, border color, border style, and many other attributes of the cells. (see examples in the demo program) You can use the matrix as a browser with gtk_sheet_new_browser, and the cell contents could not be edited. ** READ THE HEADERS FOR MORE INFORMATION ** TO DEVELOPERS ============== GtkSheet is a composite widget: scrollbars, entry, and a button. I realized that I can gain a lot of time and memory replacing button widgets with button emulating gadgets. This is one of the main differences with GtkClist GUI, and I don't use windows to resize rows/columns. To allocate memory, I used an array of pointers. I could used a linked list or a hash table, but I was originally inspired in SC (I wanted to do a Gtk port for it), so memory allocation routines are inspired on SC's. I didn't take advantage of the use of glibs, maybe many features could be optimized in this way. GtkSheetEntry is based on the gtk+-0.99.3 realease of GtkEntry, so many bugs must be fixed, and features must be updated. I have no experience on XFonts, so I left this part of the attributes setting to be done by anyone who wants to.