[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GUI tasks
From: |
Ben Pfaff |
Subject: |
Re: GUI tasks |
Date: |
Fri, 21 Jul 2006 21:21:01 -0700 |
User-agent: |
Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux) |
First: should we file each of these as a separate Task on
Savannah? They seem to be well-separated.
John Darrington <address@hidden> writes:
> Better Toolbar Icons
> ====================
> I've checked in some toolbar icons which allows one to see what all the
> buttons are for. But they're not very good ones. [...]
I actually think your icons are not so bad. I hope they don't
look like the SPSS icons, by the way: that seems like it could be
a copyright issue.
> Online Manual
> =============
> I was suprised to find that there is no GtkWidget to display Info
> files. But it wouldn't be too difficult to make one. Then a online
> reference manual would be easy.
I don't think that Info is a very good way to present an online
manual, outside of a terminal or another context that requires
fixed-width fonts. You can't usefully adjust the width of a
window displaying an Info manual.
I'd suggest using "makeinfo --html" to convert the manual to HTML
and then displaying the HTML in a control instead.
> Context-Sensitive Help
> ======================
> All the "help" buttons are linked to a common callback. It'd be quite
> easy to make a framework to give more helpful hints. Somebody just
> has to write it.
This sounds good but I wouldn't know where to start.
> Output Driver
> =============
> At some stage, the GUI will be able to actually run statistical
> procedures, and make the results available. Before this can happen,
> we need an output driver that the GUI can display. Writing a driver
> for either Gdk or Cairo graphics would be a straightforward (but not
> altogether trivial).
This is something I'd be willing to take a stab at, time
permitting.
> Printing
> ========
> Printing out the data and variable sheets. Printing support in Gtk
> was introduces only in version 2.10 I have patch which demonstrates
> very roughly how it could be done. But it's a substantial sub-project
> in its own right. Basically somebody will have to write a cairo
> renderer of the sheets.
My guess is that this is a pretty low priority. After all, you
can always just run LIST or DISPLAY DICTIONARY and print the
output.
> Flexifile Implementation
> ========================
> src/ui/flexifile.[ch] contains a very naive implementation of the
> 'flexifile' --- the object we use for displaying data in the data
> sheet and for participating in procedures. This naive implementation
> will not scale well. A proper implementation is needed if the gui is
> to be useable with large data sets. We could either use Berkely DB from
> http://dev.sleepycat.com/ or write our own immitation.
This is another feature I'd enjoy working on, time permitting. I
am not yet sure whether Berkeley DB is the best choice. I think
that I'm inclined to ask around in a few newsgroups to figure out
whether there is a specialized database, or a specialized data
structure, that might better suit our needs.
> An optional feature we might consider: The GUI has a "Find" button, to
> find strings/numbers in a casefile. We could either do this with a
> linear search, or we could implement some kind of index which would
> enable lightening fast searching.
I doubt that users would search often enough to make an index
useful, but it's something to think about.
> Undo/Redo
> =========
> The GUI has Undo/Redo buttons. We need to devise a way to represent
> differences between dictionaries and casefiles. Then we have a stack
> of these. Spss clears the stack whenever a procedure is run;
> presumably because the storage is intractable for differences between
> arbitrarily sized casefiles.
I don't think I have any comments on this. I don't find the
prospect of writing this kind of code exciting.
> Cut/Paste
> =========
> The ability to cut and paste data between two running Psppire
> instances would be nice. But probably more usefull would be the
> ability to paste from Gnumeric. It shouldn't be too difficult.
Also, perhaps, to cut and paste between comma or tab separated
data and Psppire?
--
"Let others praise ancient times; I am glad I was born in these."
--Ovid (43 BC-18 AD)
- GUI tasks, John Darrington, 2006/07/21
- Re: GUI tasks,
Ben Pfaff <=