pspp-dev
[Top][All Lists]
Advanced

[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)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]