Hi,

here are some ideas for 1.0.1 to improve the user interface:

1. To make life easier for beginners, why not tell them they can't insert 2
spaces at one position if they try? A patch is appended. The same could be
done for 2 returns etc (haven't found where to put that yet).

2. A history of the messages in the minibuffer, so you can't miss anything.

3. A 'splash document'. It loads on startup if no filename is given.
Contents (it should be very short, IMHO): Welcome the new user and
strongly recommend to read the documentation. Hint to take a look at the
bottom line for messages ...

I guess I could implement #3 if you like it, so tell me. #2 is a little
bit to difficult for me since I don't know XForms etc.

#2 came up to my mind reading this text:
http://www.sylvantech.com/~talin/projects/ui_design.html. I think there
are many good ideas in that document. If you are interested in UI stuff
(and probably every software developer should be) it surely won't hurt to
read it.

Finally, a question: How can I set the wait mousepointer (that one that
shows the watch)? It should be displayed while 'replace all' is in action.

Regards
 Daniel

-- 
PGP Key fingerprint = 3D 98 9E D2 00 B6 E0 9D  7E B9 77 23 17 E2 11 6A
--- lyx1.0.0/src/text.C Sun Jan 31 18:19:43 1999
+++ lyx/src/text.C      Tue Feb  2 22:41:01 1999
@@ -26,6 +26,7 @@
 #include "bufferparams.h"
 #include "buffer.h"
 #include "lyxscreen.h"
+#include "minibuffer.h"
 
 //     $Id: text.C,v 1.9 1998/10/16 16:59:02 larsbj Exp $      
 
@@ -45,6 +46,8 @@
 // ale070405
 extern int bibitemMaxWidth(const class LyXFont &);
 
+// dnaber 1999-02-02
+extern MiniBuffer *minibuffer;
 
 int LyXText::SingleWidth(LyXParagraph *par, int pos)
 {
@@ -2280,6 +2283,7 @@
                         * blank at the end of a row we have to force
                         * a rebreak.*/ 
           
+                       minibuffer->Set(_("You cannot insert two spaces, please read 
+the documentation."));
                        if (cursor.pos == RowLast(cursor.row)
                            && !IsLineSeparatorChar(c))
                                cursor.row->fill = -1;    /* force rebreak  */
@@ -2294,8 +2298,10 @@
                           || (cursor.pos == 0
                               && !(cursor.par->Previous()
                                    && cursor.par->Previous()->footnoteflag
-                                   == LyXParagraph::OPEN_FOOTNOTE)))
+                                   == LyXParagraph::OPEN_FOOTNOTE))) {
+                       minibuffer->Set(_("You cannot insert two spaces, please read 
+the documentation."));
                        goto out;
+               }
        } else if (IsNewlineChar(c)) {
                if (cursor.par->FirstPhysicalPar() == cursor.par
                    && cursor.pos <= BeginningOfMainBody(cursor.par))

Reply via email to