Re: [patch] fix for inlied ERT

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 10:32:48PM +0200, Martin Vermeer wrote:
 -
 @@ -1620,7 +1624,7 @@ void LyXText::metrics(MetricsInfo  mi,
 // final dimension
 dim.asc = firstRow()-ascent_of_text();
 dim.des = height - dim.asc;
 -   dim.wid = std::max(mi.base.textwidth, int(width));
 +   dim.wid = width;
  }
 -
 
 Does this now mean that LyXText returns proper widths again?

Probably, yes.

Urm... I just found out that short open footnotes are now 'semi
inline' but I think I even like this. So everybody please have a look
before shouting 'regression'.

 In that case I'll have to have a look at inlined CharStyles again ;-)

Good idea...

Andre'


-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:

 + [...] 'psuedo' [...]

The truoble with that langauge of yuors is that their is no ricognizible
pattern in the youse of vowils.

Andre'



Re: Python warnings from lyx2lyx

2003-12-02 Thread Jose' Matos
On Saturday 29 November 2003 10:04, Ronald Florence wrote:
 I am seeing warnings from the lyx2lyx scripts:

[ python error/warning ]

 If I understand the web page recommended in the warnings, they want lines
 like

 # -*- coding: iso-latin-1-unix -*-

 inserted at the top of the Python files because of José Matos' name.

  True, that is fixed in 1.4 and probably 1.3.4 (if ever) will have the 1.4 
lyx2lyx so that will fix the bug in 1.3.x

 This is with LyX/Mac-1.3.3 on MacOS-10.3.1.

  In this case that happens everywhere. :-)
-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: LyX 1.4 task list

2003-12-02 Thread Jose' Matos
On Monday 01 December 2003 09:48, Michael Schmitt wrote:
 Hello,

 I still do not give up hope that LyX 1.4 will eventually become reality.

 Since http://www.devel.lyx.org/roadmap.php3 is totally outdated (it
 lists some features that were initially planned for 1.2), I started to
 set up a new task list covering the remaining open issues of LyX 1.4.

  I really think that you intended to write 0.12 and not 1.2. ;-)

 Beside the usual bug fixing, I see the following open issues:

 ***

 Mandatory tasks

   - LyX2LyX
  - Vspace conversion
- convertion of emphasis and noun to the new logical char styles
- revert of vspace, line and pagebreak for 1.3

 Of course, this is just my personal opinion...

 Michael

-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 09:20:33PM +, Angus Leeming wrote:
 Cheers, Georg. Applied, although I suspect that someone will now try 
 and factorize all these pieces of code handling 'end_inset'...

At least making the LyXLex interface a bit similar to the std::streams
would make me feel better. 

Patch attached.

Andre'
Index: lyxlex.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.C,v
retrieving revision 1.46
diff -u -p -r1.46 lyxlex.C
--- lyxlex.C6 Oct 2003 15:42:26 -   1.46
+++ lyxlex.C2 Dec 2003 08:58:33 -
@@ -254,3 +254,61 @@ int LyXLex::findToken(char const * str[]
 
return i;
 }
+
+
+LyXLex::operator void *() const
+{
+   return isOK() ? const_castLyXLex *(this) : 0;
+}
+
+
+LyXLex  LyXLex::operator(std::string  s)
+{
+   if (isOK()) {
+   next();
+   s = getString();
+   }
+   return *this;
+}
+
+
+LyXLex  LyXLex::operator(float  s)
+{
+   if (isOK()) {
+   next();
+   s = getFloat();
+   }
+   return *this;
+}
+
+
+LyXLex  LyXLex::operator(int  s)
+{
+   if (isOK()) {
+   next();
+   s = getInteger();
+   }
+   return *this;
+}
+
+
+LyXLex  LyXLex::operator(unsigned int  s)
+{
+   if (isOK()) {
+   next();
+   s = getInteger();
+   }
+   return *this;
+}
+
+
+LyXLex  LyXLex::operator(bool  s)
+{
+   if (isOK()) {
+   next();
+   s = getBool();
+   }
+   return *this;
+}
+
+
Index: lyxlex.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.h,v
retrieving revision 1.36
diff -u -p -r1.36 lyxlex.h
--- lyxlex.h7 Oct 2003 06:45:24 -   1.36
+++ lyxlex.h2 Dec 2003 08:58:33 -
@@ -57,6 +57,8 @@ public:
 
/// file is open and end of file is not reached
bool isOK() const;
+   /// file is open and end of file is not reached
+   operator void *() const;
/// return true if able to open file, else false
bool setFile(std::string const  filename);
///
@@ -110,8 +112,7 @@ public:
///
int findToken(char const * str[]);
 
-   /** Pushes a token list on a stack and replaces it with a new one.
-*/
+   /// Pushes a token list on a stack and replaces it with a new one.
void pushTable(keyword_item *, int);
 
/** Pops a token list into void and replaces it with the one now
@@ -125,10 +126,22 @@ public:
*/
void printError(std::string const  message) const;
 
-   /**
-  Prints the current token table on the supplied ostream.
-   */
+   /// Prints the current token table on the supplied ostream.
void printTable(std::ostream );
+
+   /// extract string
+   LyXLex  operator(std::string );
+   /// extract float
+   LyXLex  operator(float );
+   /// extract double
+   LyXLex  operator(double );
+   /// extract integer
+   LyXLex  operator(int );
+   /// extract unsigned integer
+   LyXLex  operator(unsigned int );
+   /// extract bool
+   LyXLex  operator(bool );
+
 private:
struct Pimpl;
///
Index: insets/insetvspace.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetvspace.C,v
retrieving revision 1.4
diff -u -p -r1.4 insetvspace.C
--- insets/insetvspace.C1 Dec 2003 21:19:16 -   1.4
+++ insets/insetvspace.C2 Dec 2003 08:58:33 -
@@ -246,18 +246,10 @@ void InsetVSpaceMailer::string2params(st
istringstream data(in);
LyXLex lex(0,0);
lex.setStream(data);
-
-   if (lex.isOK()) {
-   lex.next();
-   string const name = lex.getString();
-   }
-
-   // This is part of the inset proper that is usually swallowed
-   // by Buffer::readInset
-   if (lex.isOK()) {
-   lex.next();
-   vspace = VSpace(lex.getString());
-   }
+   string name, vsp;
+   lex  name  vsp; 
+   if (lex)
+   vspace = VSpace(vsp);
 }
 
 


Re: A working InsetVSpace

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:
 At least making the LyXLex interface a bit similar to the
 std::streams would make me feel better.
 
 Patch attached.

 +/// file is open and end of file is not reached
 +operator void *() const;

I don't like this. We already have problems catching implicit 
conversions. Witness all those (bv()) arguments that are slowly being 
changed to (true) or (false) and have nothing to do with the 
existence of a BufferView anymore.

From a less political, more coding, point of view, why not 'operator 
bool() const;' if that is what you actually use it for?
+if (lex)
+vspace = VSpace(vsp);

However, this isn't std::stream-like. The std::stream-like interface 
would be
if (lex.good())
vspace = VSpace(vsp);

Nonetheless, it does look a lot nicer. It also doesn't address the 
'end_inset' thingy at all ;-)

-- 
Angus



Re: [patch] Qt scrolling

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:

 On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:
 
 + [...] 'psuedo' [...]
 
 The truoble with that langauge of yuors is that their is no
 ricognizible pattern in the youse of vowils.

And the azamnig tnhig aobut Egnlsih is taht tehre dosen't need to be 
to mkae snese of it so lnog as I get the frsit and lsat ltetres 
rhgit.

But, granted, I'll fix it up.

-- 
Angus



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:17:31AM +, Angus Leeming wrote:
 Andre Poenitz wrote:
  At least making the LyXLex interface a bit similar to the
  std::streams would make me feel better.
  
  Patch attached.
 
  +/// file is open and end of file is not reached
  +operator void *() const;
 
 I don't like this.

But that's what std::iostream does.

 We already have problems catching implicit 
 conversions. Witness all those (bv()) arguments that are slowly being 
 changed to (true) or (false) and have nothing to do with the 
 existence of a BufferView anymore.
 
  From a less political, more coding, point of view, why not 'operator 
  bool() const;' if that is what you actually use it for?

Exactly for the reason you mention: A void * is convertable to a
bool, but not an integer (without cast). So this is safer.

 +if (lex)
 +vspace = VSpace(vsp);
 
 However, this isn't std::stream-like.

Of course it is.

  27.4.5.3  basic_ios iostate flags functions[lib.iostate.flags]

  operator void*() const

  Returns:
If fail() then a null pointer; otherwise some  non-null  pointer  to
indicate success.

Btw, I forgot to implement bool operator!() const.

 The std::stream-like interface would be
 if (lex.good())
 vspace = VSpace(vsp);

I think  if (!lex.fail())  is the correct idiom, at least that's what is
required for the implementation of  'operator void *'. But I never
needed to understand these details as  if (is)  and  if (!is)  do what
is needed.

 Nonetheless, it does look a lot nicer. It also doesn't address the 
 'end_inset' thingy at all ;-)

Surprise.

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:22:03AM +, Angus Leeming wrote:
 Andre Poenitz wrote:
 
  On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:
  
  + [...] 'psuedo' [...]
  
  The truoble with that langauge of yuors is that their is no
  ricognizible pattern in the youse of vowils.
 
 And the azamnig tnhig aobut Egnlsih is taht tehre dosen't need to be 
 to mkae snese of it so lnog as I get the frsit and lsat ltetres 
 rhgit.

Srue. Wrkos eevn in Grmaen.

The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'

Andre'


Re: Python warnings from lyx2lyx

2003-12-02 Thread Jean-Marc Lasgouttes
 Jose' == Jose' Matos [EMAIL PROTECTED] writes:

Jose' On Saturday 29 November 2003 10:04, Ronald Florence wrote:
 I am seeing warnings from the lyx2lyx scripts:
 
Jose' [ python error/warning ]
  If I understand the web page recommended in the warnings, they
 want lines like
 
 # -*- coding: iso-latin-1-unix -*-
 
 inserted at the top of the Python files because of José Matos'
 name.

Jose'   True, that is fixed in 1.4 and probably 1.3.4 (if ever) will
Jose' have the 1.4 lyx2lyx so that will fix the bug in 1.3.x

What about submitting patches, then ;)

JMarc



Re: The current char style UI

2003-12-02 Thread Helge Hafting
Martin Vermeer wrote:
On Mon, Dec 01, 2003 at 12:20:33PM +0100, Helge Hafting spake thusly:
 

Of course code for deleting or unapplying an inset (e.g., backspace
in pos 0, like in math) could be created as well. But what you will
never be able to do in this paradigm is unapplying a charstyle for a
piece in the middle of an applied charstyle, as you can do with
physical attributes -- or more generally, creating arbitrary bit
patterns of attributes. (But then I would argue why would you want
to?)
Because people work that way?  


Eh, people also insert empty paragraphs and expect them to be there
when they come back :-)
This rarely turns out to be a problem, for me at least.  The advantage
of never having to remove extraneous empty paragraphs is substantial.
There is of course nothing wrong in changing the way people work,
as long as the new way is equally efficient.

Example:
I paste two big quotes from other text into my document. Between them
is a and or something that isn't part of the quote. 

(Because of blablablah and blablah we see that . . .)

I could mark each quote in turn and set them to some quote style.  It might be
easier to mark everything and then unapply the and in the middle though.
 
Not easier, same number of steps. Only easier if it is the way we've
always done it, which I don't really accept as an argument.

Same number of steps, sure.  Maybe the example wasn't that good,
but I believe unapplying style is necessary.  Perhaps I didn't
want that paragraph marked up after all, or perhaps I copied
it and don't want the markup in the copy.  
And people really do get the mouse wrong from time to time,
marking too much only to realize it later. It is at least
nice to be able to unapply markup at the ends of marked
text.  Unapplying in the middle is a nice extra, unless it is
much more difficult.


I do realize that near all (other) word processors use the independent
character attribute bits mental model, which works and is consistent
but somewhat messy to implement. This however is the text objects with
properties mental model, which is quite different, but I would claim
just as easy to learn and more logical/realistic. Which is perhaps why
LaTeX uses it.
At least latex lets me change from \emph{This is marked} to
\emph{This} is \emph{marked} without retyping any text. :-)
The only thing really that is wrong with the current representation of
these objects as insets is how they look. A text containing even many
of them should look continuous and fluently legible on the screen,
across inset boundaries. We aren't there yet.

Perhaps I even want to add the non-quote and _after_ pasting in the
stuff and setting the style.  I.e. break up the quote, just as I
occationally break up a paragraph.


Perhaps. Or perhaps you should just get used to the reality that *this
is a different paradigm* and you use it best on its own terms. Just
playing the devil's advocate here.
 
Well, a new way of working is ok, as long as it doesn't restrict me
after learning the details.  I guess I don't do that much unapplying
in the middle but I certainly turn off markup from time to time.
such as too many emphasized words in a paragraph turns out ugly,
lets keep only the most important one.  Or I might have an
emphasized sentence somewhere, extend it and then find that
there is now too much italic and decide to clean it up.
Or I might get to clean up a text by someone else, with way too much
markup.
This must be possible without retyping. Selective unapplying
is probably the most user friendly.  At the very least an ability
to remove all markup in a selection that doesn't end in the middle
of some inset.  

Don't get me wrong, I believe the new style system is a good thing.
I just got scared by the impression of not being able to turn
off text properties.  Authors don't get everything right the first
time, thats why a document processor beats the typewriter. :-)
Helge Hafting



Re: The current char style UI

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 10:53:26AM +0100, Helge Hafting wrote:
 At least latex lets me change from \emph{This is marked} to
 \emph{This} is \emph{marked} without retyping any text. :-)

This is implementable with 'boxes in boxes', too.

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 00:11, Angus Leeming wrote:
  Try 3, Kornel.
 
  This one should feel much smoother when you move the mouse back into
  the work area. In fact, I thnk that this is ready to go into the
  sources (and, indeed, be ported to 1.3.x) but I'd value it if you
  road-tested it for me one more time.

 Actually, try this. Factually the same but the debug output is gone,
 the comments reflect reality and it'll actually apply against current
 cvs ;-)

Sorry for the late reply .. I had to support a customer ..

Yes, selecting above and/or below the workarea is smoother. This I like.
But, may it be possible to disable the timer while selecting inside the workarea?
It is a little annoying to have to wait for the selection, even if you are
selecting only some few characters.

But even so, this is far better then before, so I vote for apply it.

Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xf4bewfbDGmeqhAQF2/AP+PnfF/cYWByQxlqnVNI3t3Bd07Xbd24ZH
fX0RxFi8k9R0Bza4Sd9DI/0OUnVr0ZlmcXBwDB6agEeDgOHJDxJw3l0a+RRgMUNU
xgEnkBH9cmTPHVGEEncJJMOfSLbAMCkfh+ANVrSn5f/PjfFa9arMPmu6GhOiLmiP
wSrz6dVmmg8=
=LmbA
-END PGP SIGNATURE-



Re: A working InsetVSpace

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:

 +if (lex)
 +vspace = VSpace(vsp);
 
 However, this isn't std::stream-like.
 
 Of course it is.
 
   27.4.5.3  basic_ios iostate flags functions   
   [lib.iostate.flags]
 
   operator void*() const
 
   Returns:
 If fail() then a null pointer; otherwise some  non-null  pointer
  to indicate success.

Ok, thank you.

 Btw, I forgot to implement bool operator!() const.

So, now you need two operators to replace a single isOk()...

But, I'm arguing for the sake of it and will stop. Your interface is 
much more user-friendly than the old one: thanks.

-- 
Angus



Re: [patch] Qt scrolling

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:
 Srue. Wrkos eevn in Grmaen.
 
 The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'

...which goes to prove something or other ;-)

Incidentally, how long did it take you to rearrange the letters in 
alphabetical order?

-- 
Angus



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:52:47AM +, Angus Leeming wrote:
  Btw, I forgot to implement bool operator!() const.
 
 So, now you need two operators to replace a single isOk()...

That's what the std::streams do. Usage is more concise, btw.

Andre' 


Cursor positioning with Pointer/Keys from minipage

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-


There seems to be a new effect.

1.) Position the cursor via pointer inside a minipage
2.) move the cursor down via a key until you leave the minipage
3.) repeat 1. and 2. (one or more times)

Each time the cursor leaves the minipage, it is one row farther in text.
(The very first time it is on row 1, even if the minipage starts at say row 20)

Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xi8LewfbDGmeqhAQFQjgQAl3217jSbuPNs4V8hwUdBHJT9thTukYQo
eDlzGLKnHKlXLsMXQFAEY/ZGJHcxK1pq/72qnyPHQ+E40EO0Ej8y1CCFyFCwBYq/
gjKFq6XdEQPO7rQfPh0otDtgSpjaiHOxoo2IKJ1M6dKyXYWi6AUA0seR5DoU8rl9
dAU94usmke4=
=/Yac
-END PGP SIGNATURE-



Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 10:55, Angus Leeming wrote:
 Andre Poenitz wrote:
  Srue. Wrkos eevn in Grmaen.
 
  The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'

 ...which goes to prove something or other ;-)

 Incidentally, how long did it take you to rearrange the letters in
 alphabetical order?

Not long, about 10 seconds.
Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xjILewfbDGmeqhAQGp8wP/RbdlRm6ksRuwqqAjjGvoIFxY1UGM0E/M
7zgm/0U4jWBHb27wzoilCLBhBY9e7acmeIguAcerkoyHf7ZkrsGViF+iZdxD9lWI
Fs7ihXheWurXmOMitvyHiiSuFhsAzuI9HlzNnMffQieVj8nL93cMtSINPG8LesI9
gKSkpP5QgtY=
=qgE/
-END PGP SIGNATURE-



Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:55:23AM +, Angus Leeming wrote:
 Andre Poenitz wrote:
  Srue. Wrkos eevn in Grmaen.
  
  The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'
 
 ...which goes to prove something or other ;-)
 
 Incidentally, how long did it take you to rearrange the letters in 
 alphabetical order?

Less than a minute I suppose.

 echo D o n   | tr ' ' '\n' | sort | tr -d '\n'

Andre'


Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 11:02:08AM +0100, Kornel Benko wrote:
   The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'
 
  ...which goes to prove something or other ;-)
 
  Incidentally, how long did it take you to rearrange the letters in
  alphabetical order?
 
 Not long, about 10 seconds.

That's not bad. How did you do that?

Andre'


Re: [patch] Qt scrolling

2003-12-02 Thread Angus Leeming
Kornel Benko wrote:
 Sorry for the late reply .. I had to support a customer ..

;-)

 Yes, selecting above and/or below the workarea is smoother. This I
 like. But, may it be possible to disable the timer while selecting
 inside the workarea? It is a little annoying to have to wait for the
 selection, even if you are selecting only some few characters.

The timeout _is_ disabled when selecting inside the work area. Only 
when you return from outside is there a delay (of duration one 
timeout (400ms)). This delay is a feature rather than a bug; it gives 
us the smooth feel when returning from outside rather than the really 
jumpy feel we had before as we handled (say) 10 QmouseMove events.

 But even so, this is far better then before, so I vote for apply it.

Nonetheless, I have reduced the timeout to 200ms (same as that in the 
xforms frontend). Personally I think that this gives us both smooth, 
controllable scrolling and instant response.

I've committed the patch to cvs. See what you think; we can always 
return to 400ms if you find that you prefer the current feel.

Once the feel has stabilized, I'll prepare a patch for 1.3.x.

-- 
Angus



Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 11:09, Andre Poenitz wrote:
  Not long, about 10 seconds.

 That's not bad. How did you do that?

It was a very long word. There are not too many long-word-examples. Some of them
are starting with Donau ...
One of them ends with kajüte ...
So not too difficult to compare the rest.

Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xlhLewfbDGmeqhAQE2GwP+Ncy4VtXFkwdZXCzYSFQWl0LgDuUCrXXJ
sc6Pn5GlCnvd5UxCdEoX9Z/D6BmCsvnCA6Msnh8urXUggD7L+j7Q2sgdKdc2d7UC
obbId0ScFhBuJagQ6YOuabP+f4e8WTAqYjBKvxDXxmQ1ghQr+Y1qljlC2zyHqaLV
6hyuKMY8dzo=
=MhaV
-END PGP SIGNATURE-



Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 11:12:20AM +0100, Kornel Benko wrote:
 -BEGIN PGP SIGNED MESSAGE-
 
 On Dienstag, 2. Dezember 2003 11:09, Andre Poenitz wrote:
   Not long, about 10 seconds.
 
  That's not bad. How did you do that?
 
 It was a very long word. There are not too many long-word-examples.
 Some of them are starting with Donau ...  One of them ends with
 kajüte ...  So not too difficult to compare the rest.

Ahm... I thought Angus was asking how to create the example, not how to
recreate the original word...

Andre'


Re: Python warnings from lyx2lyx

2003-12-02 Thread Jose' Matos
On Tuesday 02 December 2003 09:41, Jean-Marc Lasgouttes wrote:

 What about submitting patches, then ;)

  I will add the missing convertions to 1.4.x and then prepare a patch for 
1.3. :-)
 JMarc

-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 11:18, Andre Poenitz wrote:
 Ahm... I thought Angus was asking how to create the example, not how to
 recreate the original word...

Oh, you are right.
Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xqPbewfbDGmeqhAQGaEgQAr/Dw6vib0ZWyHAXGH5C8DexGMi50wqH8
uQt6X1RNmVu4x8JzWhmFfqFYnzdRf77WfJX3KNaKV9kl0a+86QM+uBeqX85nLj/a
YTTAZYFhlgUhxDYfbAEU+SXVBlwVPecHDLfKpcyA14sUo/bbSudIPqJeusOlcK4T
HiYUmFxhnwA=
=B/WG
-END PGP SIGNATURE-



Re: LyX 1.4 task list

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 06:33:59PM +, Angus Leeming wrote:
 You have my vote too. Which reminds me: I like the mathed approach to 
 tables ;-)

But it's harder to move the outer world tables that way...

Andre'


Can't read InsetVSpace from the dialog...

2003-12-02 Thread Angus Leeming
André, this (in InsetVSpaceMailer::string2params) fails to fill 
'vspace':

lex  name  vsp;
if (lex)
vspace = VSpace(vsp);

because we have reached the end of the stream, so this fails:
bool LyXLex::isOK() const
{
return pimpl_-is.good();
}

as, therefore, does this:
LyXLex::operator void *() const
{
return isOK() ? const_castLyXLex *(this) : 0;
}

isOK() is documented as 
/// stream is open and end of stream is not reached

so I think that we should change the operator void *() above to:
LyXLex::operator void *() const
{
return pimpl_-is.fail() ? 0 : const_castLyXLex *(this);
}

Ok? (Ditto with operator!(). I'll make the changes 'cos I have also 
made InsetVSpace::space_ private...)

-- 
Angus



Re: [PATCH] fix exit crash

2003-12-02 Thread Andre Poenitz
On Sun, Nov 30, 2003 at 03:41:15AM +, John Levon wrote:
 
 -text() is NULL when you're shutting down with a discarded document
 open.
 
 Fix accesses

Btw, the 'resize' problem is fixed now, too.

Andre'


Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 11:14:45AM +, Angus Leeming wrote:
 André, this (in InsetVSpaceMailer::string2params) fails to fill 
 'vspace':
 
 lex  name  vsp;
 if (lex)
 vspace = VSpace(vsp);
 
 because we have reached the end of the stream, so this fails:
 bool LyXLex::isOK() const
 {
 return pimpl_-is.good();
 }

IIRC: The stream should be good after reading the vsp item.  It should
go to 'eof' and 'fail' _after_ one tries to read beyond the last item.
 
 as, therefore, does this:
 LyXLex::operator void *() const
 {
 return isOK() ? const_castLyXLex *(this) : 0;
 }
 
 isOK() is documented as 
 /// stream is open and end of stream is not reached
 
 so I think that we should change the operator void *() above to:
 LyXLex::operator void *() const
 {
 return pimpl_-is.fail() ? 0 : const_castLyXLex *(this);
 }


return pimpl_-operator void*()

should do the trick Likewise for operator!.

I wonder why it failed though, I inserted a VSpace inset using the menu
and as this got it right I assumed the mailer worked...

 Ok? (Ditto with operator!(). I'll make the changes 'cos I have also 
 made InsetVSpace::space_ private...)

Do the changes...

[..., but I am not happy with the semantics of 'isOK'.  'is.good()' is
rarely needed when handling streams, yet it seems to play a major role
in LyXLex. No need to act right now, though...]

Andre' 

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: Python warnings from lyx2lyx

2003-12-02 Thread Jean-Marc Lasgouttes
 Jose' == Jose' Matos [EMAIL PROTECTED] writes:

Jose' On Tuesday 02 December 2003 09:41, Jean-Marc Lasgouttes wrote:
  What about submitting patches, then ;)

Jose'   I will add the missing convertions to 1.4.x and then prepare
Jose' a patch for 1.3. :-)

Thanks.

JMarc


Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:

 because we have reached the end of the stream, so this fails:
 bool LyXLex::isOK() const
 {
 return pimpl_-is.good();
 }
 
 IIRC: The stream should be good after reading the vsp item.  It
 should go to 'eof' and 'fail' after one tries to read beyond the
 last item.

which depends on the implementation of getStream() doesn't it?

Here this:
lex  name  vsp;

std::istream  is = lex.getStream();
lyxerr  is.good   is.good()  '\n';
lyxerr  is.bad   is.bad()  '\n';
lyxerr  is.eof   is.eof()  '\n';
lyxerr  is.fail   is.fail()  '\n';

lyxerr  name = \  name  \ vspace = \  vsp
\ lex \  bool(lex)  ''  std::endl;
if (lex)
vspace = VSpace(vsp);

gives this output:
is.good 0
is.bad 0
is.eof 1
is.fail 1
name = vspace vspace = medskip lex 0

So, it seems that we need
LyXLex::operator void *() const
{
return pimpl_-is.bad() ? 0 : const_castLyXLex *(this);
}

LyXLex::operator!() const
{
return pimpl_-is.bad();
}


-- 
Angus



Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Angus Leeming
Angus Leeming wrote:
 IIRC: The stream should be good after reading the vsp item.  It
 should go to 'eof' and 'fail' after one tries to read beyond the
 last item.

 which depends on the implementation of getStream() doesn't it?

Sorry. That's 'getString()'

-- 
Angus



copyrights and Lyx wiki site

2003-12-02 Thread Christian Ridderström
Hi

I just put up some notes regarding copyrights and the LyX wiki site here:

http://wiki.lyx.org/pmwiki.php/Site/Copyrights

I've more or less used something I found for the documetation of the wiki 
software, so please have a look at it and comment/object if you'd like.

/Christian

PS. I wonder if maybe the copyright page is one of the rare pages where 
editing should be restricted...


-- 
Christian Ridderström   http://www.md.kth.se/~chr




Re: copyrights and Lyx wiki site

2003-12-02 Thread Angus Leeming
Christian Ridderström wrote:

 Hi
 
 I just put up some notes regarding copyrights and the LyX wiki site
 here:
 
 http://wiki.lyx.org/pmwiki.php/Site/Copyrights
 
 I've more or less used something I found for the documetation of the
 wiki software, so please have a look at it and comment/object if
 you'd like.

Seems sensible to me.

 /Christian
 
 PS. I wonder if maybe the copyright page is one of the rare pages
 where editing should be restricted...

Then you should get the spelling right. documentats?

-- 
Angus



Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 11:44:10AM +, Angus Leeming wrote:
 Andre Poenitz wrote:
 
  because we have reached the end of the stream, so this fails:
  bool LyXLex::isOK() const
  {
  return pimpl_-is.good();
  }
  
  IIRC: The stream should be good after reading the vsp item.  It
  should go to 'eof' and 'fail' after one tries to read beyond the
  last item.
 
 which depends on the implementation of getStream() doesn't it?
 
 Here this:
 lex  name  vsp;
 
 std::istream  is = lex.getStream();
 lyxerr  is.good   is.good()  '\n';
 lyxerr  is.bad   is.bad()  '\n';
 lyxerr  is.eof   is.eof()  '\n';
 lyxerr  is.fail   is.fail()  '\n';
 
 lyxerr  name = \  name  \ vspace = \  vsp
 \ lex \  bool(lex)  ''  std::endl;
 if (lex)
 vspace = VSpace(vsp);
 
 gives this output:
 is.good 0
 is.bad 0
 is.eof 1
 is.fail 1
 name = vspace vspace = medskip lex 0

Ah, so 'getStream' reads on and causes eof() to be set.
It should not do that...

 So, it seems that we need
 LyXLex::operator void *() const
 {
 return pimpl_-is.bad() ? 0 : const_castLyXLex *(this);
 }
 
 LyXLex::operator!() const
 {
 return pimpl_-is.bad();
 }

Ok, use this if it works but please place a warning there that this is
not the behaviour of std::stream.

Btw::

std::filebuf fb__;
/// gz__ is only used to open files, the stream is accessed through is.
gz::gzstreambuf gz__;

double underscores in identifiers are not ours to use...

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Angus Leeming
Angus Leeming wrote:
 so I think that we should change the operator void *() above to:
 LyXLex::operator void *() const
 {
 return pimpl_-is.fail() ? 0 : const_castLyXLex *(this);
 }

Incidentally, why not 'void const *'? It compiles...

LyXLex::operator void const *() const
{
return pimpl_-is.fail() ? 0 : this;
}

-- 
Angus



Re: Can't read InsetVSpace from the dialog...

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 11:54:45AM +, Angus Leeming wrote:
 Angus Leeming wrote:
  so I think that we should change the operator void *() above to:
  LyXLex::operator void *() const
  {
  return pimpl_-is.fail() ? 0 : const_castLyXLex *(this);
  }
 
 Incidentally, why not 'void const *'? It compiles...

Good question. Because the std::stream uses a void * there...

Andre'


[patch]: lyxlex changes

2003-12-02 Thread Angus Leeming
Ok? It works fine but I'm not sure whether I should revert the 
LyxLex::operator void const *()...

I've also made InsetVSpace::read use the new syntax.

-- 
AngusIndex: src/lyxlex.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.C,v
retrieving revision 1.47
diff -u -p -r1.47 lyxlex.C
--- src/lyxlex.C	2 Dec 2003 10:19:51 -	1.47
+++ src/lyxlex.C	2 Dec 2003 12:09:09 -
@@ -256,15 +256,19 @@ int LyXLex::findToken(char const * str[]
 }
 
 
-LyXLex::operator void *() const
+LyXLex::operator void const *() const
 {
-	return isOK() ? const_castLyXLex *(this) : 0;
+	// This behaviour is NOT the same as the std::streams which would
+	// use fail() here. However, our implementation of getString() et al.
+	// can cause the eof() and fail() bits to be set, even though we
+	// haven't tried to read 'em.
+	return pimpl_-is.bad() ? 0 : this;
 }
 
 
 bool LyXLex::operator!() const
 {
-	return !isOK();
+	return pimpl_-is.bad();
 }
 
 
@@ -316,5 +320,4 @@ LyXLex  LyXLex::operator(bool  s)
 	}
 	return *this;
 }
-
 
Index: src/lyxlex.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.h,v
retrieving revision 1.37
diff -u -p -r1.37 lyxlex.h
--- src/lyxlex.h	2 Dec 2003 10:19:51 -	1.37
+++ src/lyxlex.h	2 Dec 2003 12:09:09 -
@@ -55,10 +55,10 @@ public:
 		LEX_TOKEN = -4
 	};
 
-	/// straem is open and end of straem is not reached
+	/// stream is open and end of stream is not reached
 	bool isOK() const;
 	/// stream is ok
-	operator void *() const;
+	operator void const *() const;
 	/// stream is not ok
 	bool operator!() const;
 	/// return true if able to open file, else false
Index: src/insets/insetvspace.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetvspace.C,v
retrieving revision 1.5
diff -u -p -r1.5 insetvspace.C
--- src/insets/insetvspace.C	2 Dec 2003 10:19:51 -	1.5
+++ src/insets/insetvspace.C	2 Dec 2003 12:09:10 -
@@ -15,6 +15,7 @@
 
 #include buffer.h
 #include BufferView.h
+#include debug.h
 #include dispatchresult.h
 #include funcrequest.h
 #include gettext.h
@@ -78,21 +79,21 @@ InsetVSpace::priv_dispatch(FuncRequest c
 		return InsetOld::priv_dispatch(cmd, idx, pos);
 	}
 }
-		
+
 
 void InsetVSpace::read(Buffer const , LyXLex  lex)
 {
-	if (lex.isOK()) {
-		lex.next();
-		space_ = VSpace(lex.getString());
-	}
-
-	if (lex.isOK())
-		lex.next();
-	if (lex.getString() != \\end_inset) {
+	BOOST_ASSERT(lex.isOK());
+	string vsp;
+	lex  vsp;
+	if (lex)
+		space_ = VSpace(vsp);
+
+	string end_token;
+	lex  end_token;
+	if (end_token != \\end_inset)
 		lex.printError(Missing \\end_inset at this point. 
 			   Read: `$$Token');
-	}
 }
 
 
@@ -232,7 +233,7 @@ InsetVSpaceMailer::InsetVSpaceMailer(Ins
 
 string const InsetVSpaceMailer::inset2string(Buffer const ) const
 {
-	return params2string(inset_.space_);
+	return params2string(inset_.space());
 }
 
 
@@ -247,7 +248,7 @@ void InsetVSpaceMailer::string2params(st
 	LyXLex lex(0,0);
 	lex.setStream(data);
 	string name, vsp;
-	lex  name  vsp; 
+	lex  name  vsp;
 	if (lex)
 		vspace = VSpace(vsp);
 }
Index: src/insets/insetvspace.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetvspace.h,v
retrieving revision 1.2
diff -u -p -r1.2 insetvspace.h
--- src/insets/insetvspace.h	28 Nov 2003 17:38:39 -	1.2
+++ src/insets/insetvspace.h	2 Dec 2003 12:09:10 -
@@ -36,19 +36,21 @@ public:
 		  OutputParams const ) const;
 	///
 	int plaintext(Buffer const , std::ostream ,
-	OutputParams const ) const;
+		  OutputParams const ) const;
 	///
 	int linuxdoc(Buffer const , std::ostream ,
-	OutputParams const ) const;
+		 OutputParams const ) const;
 	///
 	int docbook(Buffer const , std::ostream ,
-	OutputParams const ) const;
+		OutputParams const ) const;
 	///
 	void read(Buffer const , LyXLex  lex);
 	///
 	void write(Buffer const  buf, std::ostream  os) const;
 	///
 	bool display() const { return true; }
+	/// How much?
+	VSpace const  space() const { return space_; }
 
 protected:
 	///
@@ -56,8 +58,8 @@ protected:
 	DispatchResult
 	priv_dispatch(FuncRequest const  cmd, idx_type , pos_type );
 
-public:
-	/// how much
+private:
+	///
 	VSpace space_;
 };
 


Re: [patch]: lyxlex changes

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 12:12:22PM +, Angus Leeming wrote:
 Ok? It works fine but I'm not sure whether I should revert the 
 LyxLex::operator void const *()...

Very well.

Andre'


[patch] a bit consolitation

2003-12-02 Thread Andre Poenitz

Moves idetical code from InsetText and Buffer to LyXText

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)
Index: buffer.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/buffer.C,v
retrieving revision 1.546
diff -u -p -r1.546 buffer.C
--- buffer.C1 Dec 2003 13:35:37 -   1.546
+++ buffer.C2 Dec 2003 12:24:23 -
@@ -839,19 +839,13 @@ bool Buffer::do_writeFile(ostream  ofs)
  created this file. For more info see http://www.lyx.org/\n;
 \\lyxformat   LYX_FORMAT  \n;
 
-   // now write out the buffer paramters.
+   // now write out the buffer parameters.
params().writeFile(ofs);
 
ofs  \\end_header\n;
 
-   Paragraph::depth_type depth = 0;
-
-   // this will write out all the paragraphs
-   // using recursive descent.
-   ParagraphList::const_iterator pit = paragraphs().begin();
-   ParagraphList::const_iterator pend = paragraphs().end();
-   for (; pit != pend; ++pit)
-   pit-write(*this, ofs, params(), depth);
+   // write the text
+   text().write(*this, ofs);
 
// Write marker that shows file is complete
ofs  \n\\end_document  endl;
Index: lyxtext.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxtext.h,v
retrieving revision 1.265
diff -u -p -r1.265 lyxtext.h
--- lyxtext.h   1 Dec 2003 13:35:39 -   1.265
+++ lyxtext.h   2 Dec 2003 12:24:23 -
@@ -25,6 +25,8 @@
 
 #include insets/inset.h
 
+#include iosfwd
+
 class Buffer;
 class BufferParams;
 class BufferView;
@@ -389,6 +391,8 @@ public:
///
bool checkAndActivateInset(bool front);
 
+   ///
+   void write(Buffer const  buf, std::ostream  os) const;
 
 public:
///
Index: text.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/text.C,v
retrieving revision 1.505
diff -u -p -r1.505 text.C
--- text.C  2 Dec 2003 07:15:40 -   1.505
+++ text.C  2 Dec 2003 12:24:24 -
@@ -1757,3 +1757,13 @@ void LyXText::getWord(LyXCursor  from, 
to.pos(to.pos() + 1);
}
 }
+
+
+void LyXText::write(Buffer const  buf, std::ostream  os) const
+{
+   ParagraphList::const_iterator pit = paragraphs().begin();
+   ParagraphList::const_iterator end = paragraphs().end();
+   Paragraph::depth_type dth = 0;
+   for (; pit != end; ++pit)
+   pit-write(buf, os, buf.params(), dth);
+}
Index: insets/insetcaption.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetcaption.C,v
retrieving revision 1.51
diff -u -p -r1.51 insetcaption.C
--- insets/insetcaption.C   5 Nov 2003 12:06:07 -   1.51
+++ insets/insetcaption.C   2 Dec 2003 12:24:24 -
@@ -52,7 +52,7 @@ InsetCaption::InsetCaption(BufferParams 
 void InsetCaption::write(Buffer const  buf, ostream  os) const
 {
os  Caption\n;
-   writeParagraphData(buf, os);
+   text_.write(buf, os);
 }
 
 
Index: insets/insetcollapsable.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetcollapsable.C,v
retrieving revision 1.219
diff -u -p -r1.219 insetcollapsable.C
--- insets/insetcollapsable.C   2 Dec 2003 07:15:42 -   1.219
+++ insets/insetcollapsable.C   2 Dec 2003 12:24:24 -
@@ -79,7 +79,7 @@ bool InsetCollapsable::insertInset(Buffe
 void InsetCollapsable::write(Buffer const  buf, ostream  os) const
 {
os  collapsed   (status_ == Collapsed ? true : false)  \n;
-   inset.writeParagraphData(buf, os);
+   inset.text_.write(buf, os);
 }
 
 
Index: insets/insettext.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insettext.C,v
retrieving revision 1.557
diff -u -p -r1.557 insettext.C
--- insets/insettext.C  1 Dec 2003 13:35:46 -   1.557
+++ insets/insettext.C  2 Dec 2003 12:24:24 -
@@ -143,18 +143,7 @@ auto_ptrInsetBase InsetText::clone() c
 void InsetText::write(Buffer const  buf, ostream  os) const
 {
os  Text\n;
-   writeParagraphData(buf, os);
-}
-
-
-void InsetText::writeParagraphData(Buffer const  buf, ostream  os) const
-{
-   ParagraphList::const_iterator it = paragraphs().begin();
-   ParagraphList::const_iterator end = paragraphs().end();
-   Paragraph::depth_type dth = 0;
-   for (; it != end; ++it) {
-   it-write(buf, os, buf.params(), dth);
-   }
+   text_.write(buf, os);
 }
 
 
Index: insets/insettext.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insettext.h,v
retrieving 

Re: Python warnings from lyx2lyx

2003-12-02 Thread Michael Schmitt
On Saturday 29 November 2003 10:04, Ronald Florence wrote:

I am seeing warnings from the lyx2lyx scripts:

[ python error/warning ]
If I understand the web page recommended in the warnings, they want lines
like
# -*- coding: iso-latin-1-unix -*-

inserted at the top of the Python files because of José Matos' name.
  True, that is fixed in 1.4 and probably 1.3.4 (if ever) will have the 1.4 
lyx2lyx so that will fix the bug in 1.3.x
I don't think it is fixed in 1.4...

Michael




Re: copyrights and Lyx wiki site

2003-12-02 Thread Christian Ridderström
On Tue, 2 Dec 2003, Angus Leeming wrote:

 Christian Ridderström wrote:
 
  PS. I wonder if maybe the copyright page is one of the rare pages
  where editing should be restricted...
 
 Then you should get the spelling right. documentats?
 
thx

/C

-- 
Christian Ridderström   http://www.md.kth.se/~chr




Re: Python warnings from lyx2lyx

2003-12-02 Thread Jose' Matos
On Tuesday 02 December 2003 11:40, Michael Schmitt wrote:
 
True, that is fixed in 1.4 and probably 1.3.4 (if ever) will have the
  1.4 lyx2lyx so that will fix the bug in 1.3.x

 I don't think it is fixed in 1.4...

  Does this fix it?

Index: lyx2lyx
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/lib/lyx2lyx/lyx2lyx,v
retrieving revision 1.15
diff -u -p -r1.15 lyx2lyx
--- lyx2lyx 13 Oct 2003 09:50:10 -  1.15
+++ lyx2lyx 2 Dec 2003 13:47:37 -
@@ -1,5 +1,5 @@
 #! /usr/bin/env python
-# -*- coding: iso-8859-1 -*-
+# -*- coding: iso8859-1 -*-
 # Copyright (C) 2002 José Matos [EMAIL PROTECTED]
 #
 # This program is free software; you can redistribute it and/or

 Michael

-- 
José Abílio



[PATCH Pot file generation

2003-12-02 Thread Michael Schmitt
Dear Jean-Marc,

have you seen my pot file generation patches? Finally my files match 
with yours...

Patches for 1.3 and 1.4 are attached.

Michael
Index: lyx-devel-1.3.Xcvs/po/ChangeLog
===
RCS file: /cvs/lyx/lyx-devel/po/ChangeLog,v
retrieving revision 1.156.2.45
diff -u -r1.156.2.45 ChangeLog
--- lyx-devel-1.3.Xcvs/po/ChangeLog 2003/11/24 17:00:38 1.156.2.45
+++ lyx-devel-1.3.Xcvs/po/ChangeLog 2003/12/02 11:53:58
@@ -1,3 +1,7 @@
+2003-11-28  Michael Schmitt  [EMAIL PROTECTED]
+
+   * Makefile.in.in: always create pot files with LC_ALL=C
+
 2003-11-24  Jean-Marc Lasgouttes  [EMAIL PROTECTED]
 
* Makefile.in.in (*l10n.pot): fix the file names when building
Index: lyx-devel-1.3.Xcvs/po/Makefile.in.in
===
RCS file: /cvs/lyx/lyx-devel/po/Makefile.in.in,v
retrieving revision 1.28.2.4
diff -u -r1.28.2.4 Makefile.in.in
--- lyx-devel-1.3.Xcvs/po/Makefile.in.in2003/11/24 17:00:39 1.28.2.4
+++ lyx-devel-1.3.Xcvs/po/Makefile.in.in2003/12/02 11:53:59
@@ -197,11 +197,12 @@
   $(SHELL) ./config.status
 
 ${srcdir}/POTFILES.in: $(POTFILE_IN_DEPS)
+   export LC_ALL=C ; \
rm -f [EMAIL PROTECTED] \
 ( cd $(top_srcdir); \
 grep -l _(\.*\) `find src -name \*.[hHC] -print` |\
 sed -e '/xforms.forms/d' | \
-LC_COLLATE=C sort | uniq )  [EMAIL PROTECTED] \
+sort | uniq )  [EMAIL PROTECTED] \
 mv [EMAIL PROTECTED] $@
 
 
@@ -211,6 +212,7 @@
 
 $(srcdir)/xforms_l10n.pot: $(top_srcdir)/src/frontends/xforms/forms/*.fd
cd ${srcdir} ; \
+   export LC_ALL=C ; \
awk ' \
 BEGIN { \
 print #, fuzzy; \
@@ -236,6 +238,7 @@
 
 $(srcdir)/qt_l10n.pot: $(top_srcdir)/src/frontends/qt2/ui/*.ui
cd ${srcdir} ; \
+   export LC_ALL=C ; \
awk ' \
 /string/ { \
 line=$$0; \
@@ -252,6 +255,7 @@
 
 $(srcdir)/layouts_l10n.pot: $(top_srcdir)/lib/layouts/*.layout 
$(top_srcdir)/lib/layouts/*.inc
cd ${srcdir} ; \
+   export LC_ALL=C ; \
awk ' \
/^Style / { \
line=$$0; \
Index: lyx-devel-1.3.Xcvs/po/de.po
===
RCS file: /cvs/lyx/lyx-devel/po/de.po,v
retrieving revision 1.79.2.16
diff -u -r1.79.2.16 de.po
--- lyx-devel-1.3.Xcvs/po/de.po 2003/11/24 17:01:45 1.79.2.16
+++ lyx-devel-1.3.Xcvs/po/de.po 2003/12/02 11:54:24
@@ -54,9 +54,10 @@
 #
 msgid 
 msgstr 
-Project-Id-Version: LyX 1.3.0\n
-POT-Creation-Date: 2003-11-24 15:57+0100\n
-PO-Revision-Date: 2003-09-13 15:00+0100\n
+Project-Id-Version: LyX 1.3.4\n
+Report-Msgid-Bugs-To: \n
+POT-Creation-Date: 2003-11-28 23:38+0100\n
+PO-Revision-Date: 2003-11-24 24:00+0100\n
 Last-Translator: Michael Schmitt [EMAIL PROTECTED]\n
 Language-Team: German [EMAIL PROTECTED]\n
 MIME-Version: 1.0\n
@@ -789,7 +790,7 @@
 
 #: ../src/frontends/xforms/forms/form_graphics.fd:560
 msgid Clip to bounding box|#C
-msgstr Auf Box zuschneiden|#z
+msgstr Auf Begrenzungsbox zuschneiden|#z
 
 #: ../src/frontends/xforms/forms/form_graphics.fd:578
 msgid Get from file|#G
@@ -1739,7 +1740,6 @@
 
 #: ../src/frontends/xforms/forms/form_tabular.fd:284
 #: ../src/frontends/xforms/forms/form_tabular.fd:1200
-#, fuzzy
 msgid Rotate 90 deg|#9
 msgstr 90° drehen|#9
 
@@ -2681,7 +2681,7 @@
 
 #: ../src/frontends/qt2/ui/QDocumentDialogBase.ui:278
 msgid Reset default params of the current class
-msgstr 
+msgstr Setzen Sie die Standardparameter der aktuellen Klasse zurück
 
 #: ../src/frontends/qt2/ui/QDocumentDialogBase.ui:296
 msgid Save as Document Defaults
@@ -2977,7 +2977,7 @@
 
 #: ../src/frontends/qt2/ui/QGraphicsDialogBase.ui:622
 msgid Clip to bounding box
-msgstr Auf Box zuschneiden
+msgstr Auf Begrenzungsbox zuschneiden
 
 #: ../src/frontends/qt2/ui/QGraphicsDialogBase.ui:626
 msgid Clip to bounding box values
@@ -3019,7 +3019,7 @@
 
 #: ../src/frontends/qt2/ui/QGraphicsDialogBase.ui:891
 msgid Is this just one part of a figure float ?
-msgstr 
+msgstr Ist dies nur ein Teil eines Abbildungs-Gleitobjekts?
 
 #: ../src/frontends/qt2/ui/QGraphicsDialogBase.ui:902
 msgid Don't unzip on export
@@ -3166,9 +3166,8 @@
 msgstr Mathe-Schrift festlegen
 
 #: ../src/frontends/qt2/ui/QMathDialogBase.ui:213
-#, fuzzy
 msgid Insert fraction
-msgstr Bruch einfügen (\frac)
+msgstr Bruch einfügen
 
 #: ../src/frontends/qt2/ui/QMathDialogBase.ui:239
 msgid Toggle between display mode
@@ -3907,7 +3906,7 @@
 
 #: ../src/frontends/qt2/ui/QPrefPrinterModule.ui:508
 msgid Specify the command option names for your printer command
-msgstr 
+msgstr Geben Sie die Befehlsoptions-Namen für ihren Druckbefehl an
 
 #: ../src/frontends/qt2/ui/QPrefScreenFontsModule.ui:22
 #: src/frontends/xforms/FormPreferences.C:231
@@ -4257,6 +4256,8 @@
 #: ../src/frontends/qt2/ui/QSendtoDialogBase.ui:168
 msgid 

Re: [PATCH Pot file generation

2003-12-02 Thread Jean-Marc Lasgouttes
 Michael == Michael Schmitt [EMAIL PROTECTED] writes:

Michael Dear Jean-Marc, have you seen my pot file generation patches?
Michael Finally my files match with yours...

Michael Patches for 1.3 and 1.4 are attached.

Dear Michael,

Yes, I have seen them, and I am sorry for the delay in answering.
Actually I am currently looking at the issue. The problems that I am
looking at are:

- why do you set LC_ALL instead of LC_COLLATE? Does this make a
  difference? If LC_COLLATE is already set, I do not think that LC_ALL
  overrides it.

- I am not sure that export FOO=bar is portable. The portable way
  seems to be FOO=bar ; export FOO, which is arguably a bit odd.

JMarc



[patch] LyXText::read

2003-12-02 Thread Andre Poenitz

Can anybody see anything wrogn with this?
[It works, just asking...]

Counting the unknown tokes seems to be broken (before and after applying
this patch)

Andre'
Index: buffer.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/buffer.C,v
retrieving revision 1.547
diff -u -p -r1.547 buffer.C
--- buffer.C2 Dec 2003 12:39:10 -   1.547
+++ buffer.C2 Dec 2003 14:00:04 -
@@ -390,6 +390,7 @@ void unknownClass(string const  unknown
 
 } // anon
 
+
 int Buffer::readHeader(LyXLex  lex)
 {
int unknown_tokens = 0;
@@ -435,9 +436,8 @@ int Buffer::readHeader(LyXLex  lex)
 // if par = 0 normal behavior
 // else insert behavior
 // Returns false if \end_document is not read (Asger)
-bool Buffer::readBody(LyXLex  lex, ParagraphList::iterator pit)
+bool Buffer::readBody(LyXLex  lex, ParagraphList::iterator)
 {
-   Paragraph::depth_type depth = 0;
bool the_end_read = false;
 
if (paragraphs().empty()) {
@@ -458,67 +458,10 @@ bool Buffer::readBody(LyXLex  lex, Para
tmpbuf.readHeader(lex);
}
 
-   while (lex.isOK()) {
-   lex.nextToken();
-   string const token = lex.getString();
-
-   if (token.empty())
-   continue;
-
-   lyxerr[Debug::PARSER]  Handling token: `
-  token  '\''  endl;
-
-   if (token == \\end_document) {
-   the_end_read = true;
-   continue;
-   }
-
-   readParagraph(lex, token, paragraphs(), pit, depth);
-   }
+   if (text().read(*this, lex))
+   the_end_read = true;
 
return the_end_read;
-}
-
-
-int Buffer::readParagraph(LyXLex  lex, string const  token,
- ParagraphList  pars, ParagraphList::iterator  pit,
- lyx::depth_type  depth)
-{
-   static Change current_change;
-   int unknown = 0;
-
-   if (token == \\begin_layout) {
-   lex.pushToken(token);
-
-   Paragraph par;
-   par.params().depth(depth);
-   if (params().tracking_changes)
-   par.trackChanges();
-   LyXFont f(LyXFont::ALL_INHERIT, params().language);
-   par.setFont(0, f);
-
-   // insert after
-   if (pit != pars.end())
-   ++pit;
-
-   pit = pars.insert(pit, par);
-
-   // FIXME: goddamn InsetTabular makes us pass a Buffer
-   // not BufferParams
-   ::readParagraph(*this, *pit, lex);
-
-   } else if (token == \\begin_deeper) {
-   ++depth;
-   } else if (token == \\end_deeper) {
-   if (!depth) {
-   lex.printError(\\end_deeper:  depth is already null);
-   } else {
-   --depth;
-   }
-   } else {
-   ++unknown;
-   }
-   return unknown;
 }
 
 
Index: buffer.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/buffer.h,v
retrieving revision 1.174
diff -u -p -r1.174 buffer.h
--- buffer.h28 Nov 2003 15:08:38 -  1.174
+++ buffer.h2 Dec 2003 14:00:04 -
@@ -96,12 +96,6 @@ public:
*/
bool readBody(LyXLex , ParagraphList::iterator pit);
 
-   /// This parses a single token
-   int readParagraph(LyXLex , std::string const  token,
- ParagraphList  pars,
- ParagraphList::iterator  pit,
- lyx::depth_type  depth);
-
///
void insertStringAsLines(ParagraphList::iterator , lyx::pos_type ,
 LyXFont const , std::string const );
Index: lyxtext.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxtext.h,v
retrieving revision 1.266
diff -u -p -r1.266 lyxtext.h
--- lyxtext.h   2 Dec 2003 12:39:11 -   1.266
+++ lyxtext.h   2 Dec 2003 14:00:04 -
@@ -393,6 +393,8 @@ public:
 
///
void write(Buffer const  buf, std::ostream  os) const;
+   /// returns whether we've seen our usual 'end' marker
+   bool read(Buffer const  buf, LyXLex  lex);
 
 public:
///
Index: paragraph_funcs.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/paragraph_funcs.C,v
retrieving revision 1.90
diff -u -p -r1.90 paragraph_funcs.C
--- paragraph_funcs.C   28 Nov 2003 15:53:25 -  1.90
+++ paragraph_funcs.C   2 Dec 2003 14:00:04 -
@@ -303,7 +303,8 @@ int getEndLabel(ParagraphList::iterator 
 
 namespace {
 
-int readParToken(Buffer  buf, Paragraph  par, LyXLex  lex, string const  token)
+int readParToken(Buffer const  buf, Paragraph  par, LyXLex  lex,
+   string const  token)

Re: [patch] LyXText::read

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 03:14:37PM +0100, Andre' Poenitz wrote:
 
 Can anybody see anything wrogn with this?
 [It works, just asking...]
 
 Counting the unknown tokes seems to be broken (before and after applying
 this patch)

Maybe two note on what I did _not_ change:


 + if (in_inset_) {
 +
 + if (token == \\end_inset) {
 + the_end_read = true;
 + break;
 + }
 +
 + if (token == \\end_document) {
 + lex.printError(\\end_document read in inset! Error in 
 document!);
 + return false;
 + }
 +
 + } else {
 +
 + if (token == \\end_document) {
 + the_end_read = true;
 + continue;
 + }

Why should we read on after \\end_document?

 +
 + }
 +
 + // FIXME: ugly.
 + int unknown = 0;

And essentially unused...

Andre'


Re: LyX 1.4 task list

2003-12-02 Thread Jean-Marc Lasgouttes
 Angus == Angus Leeming [EMAIL PROTECTED] writes:

 What we could do is have
 
 - a text field for the file name, with a browse button
 
 - a combox (less clutter that a list like we have now) with the
 list of types (== templates), which is set initially to 'auto' (or
 'default'). The user can choose to override the template guessed by
 the dialog.

Angus I think that we're getting ahead of ourselves. This is the
Angus UI-equivalent of syntatic sugar. Worse, we're sweetening an
Angus interface that isn't used yet by the vast majority of our
Angus users.

What I mean is that, with such an interface, I would agree with the
merging of insetexternal and insetgraphics.

Angus Let me finish the all singing, all dancing inset I have been
Angus promising you and then we can discuss this.

Sure.

JMarc


Re: Right address is horked

2003-12-02 Thread Jean-Marc Lasgouttes
 Andre == Andre Poenitz [EMAIL PROTECTED] writes:

Andre On Mon, Dec 01, 2003 at 02:50:42PM +0100, Jean-Marc Lasgouttes
Andre wrote:
  Andre == Andre Poenitz [EMAIL PROTECTED] writes:
 
Andre This would be some kind of solution, too, but I don't really
Andre like this kind of special casing in the core...
  Come on...

Andre Hm. What about

I have to admit that I prefer that to one-another-inset-just-to-hide-code.

Nevertheless, it strikes me as a bit extreme and I would appreciate some
visual clue...

JMarc


Re: [JMarc]: xforms/Makefile.am

2003-12-02 Thread Jean-Marc Lasgouttes
 Angus == Angus Leeming [EMAIL PROTECTED] writes:

  I am not really used to this {} syntax (I did not know it existed,
 actually).

Angus Wow! You introduced it to me! (Remember some mails long ago
Angus about ways to improve our shell-scripting?) In this particular
Angus instance, the 'Useless use of 'test' idea is that we don't
Angus need if test return status; then... fi but can use the return
Angus status direct.

I meant this use of {} for grouping commands (especially when the
opening and closing brackets are not on the same line). 

Angus I shall leave that to you, if you don't mind. I'm reaching
Angus auto-magic saturation point ;-)

But the goal here is to remove some auto-magic :)

JMarc



Re: Right address is horked

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 03:19:31PM +0100, Jean-Marc Lasgouttes wrote:
 I have to admit that I prefer that to one-another-inset-just-to-hide-code.

It's pretty much the purpose of insets to encapsulate special code
related to a specify area on the LyX canvas, isn't it?

 Nevertheless, it strikes me as a bit extreme and I would appreciate some
 visual clue...

There is already a visual clue in form of the layout drop-down...

Andre'
-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: The current char style UI

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 10:46:35AM +0100, Andre Poenitz wrote:

 On Tue, Dec 02, 2003 at 10:53:26AM +0100, Helge Hafting wrote:
  At least latex lets me change from \emph{This is marked} to
  \emph{This} is \emph{marked} without retyping any text. :-)
 
 This is implementable with 'boxes in boxes', too.

The question isn't whether it's implementable, it's whether it's natural
UI to present to the user. And it's not, regardless of what the
implementation looks like.

Otherwise Helge would  have written \emph{This \nonemph{is} marked}

john

-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: [PATCH] fix exit crash

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 12:20:24PM +0100, Andre Poenitz wrote:

 Btw, the 'resize' problem is fixed now, too.

That it doesn't actually resize the buffer at all ?

good

john
-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: Right address is horked

2003-12-02 Thread Jean-Marc Lasgouttes
 Andre == Andre Poenitz [EMAIL PROTECTED] writes:

Andre On Tue, Dec 02, 2003 at 03:19:31PM +0100, Jean-Marc Lasgouttes
Andre wrote:
 I have to admit that I prefer that to
 one-another-inset-just-to-hide-code.

Andre It's pretty much the purpose of insets to encapsulate special
Andre code related to a specify area on the LyX canvas, isn't it?

The inset would do absolutely nothing useful, would it? 

 Nevertheless, it strikes me as a bit extreme and I would appreciate
 some visual clue...

Andre There is already a visual clue in form of the layout
Andre drop-down...

I do not think that drawing a couple lines (I am not sure which
ones...) would be very expensive as far as the core is concerned.

I agree though that the current code for right margin is really too
ugly wrt its usefulness.

JMarc


Re: [PATCH] fix exit crash

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 02:29:23PM +, John Levon wrote:
 On Tue, Dec 02, 2003 at 12:20:24PM +0100, Andre Poenitz wrote:
 
  Btw, the 'resize' problem is fixed now, too.
 
 That it doesn't actually resize the buffer at all ?

For the humour impaired: Example please.

Andre'


Re: Right address is horked

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 03:32:06PM +0100, Jean-Marc Lasgouttes wrote:
  Andre == Andre Poenitz [EMAIL PROTECTED] writes:
 
 Andre On Tue, Dec 02, 2003 at 03:19:31PM +0100, Jean-Marc Lasgouttes
 Andre wrote:
  I have to admit that I prefer that to
  one-another-inset-just-to-hide-code.
 
 Andre It's pretty much the purpose of insets to encapsulate special
 Andre code related to a specify area on the LyX canvas, isn't it?
 
 The inset would do absolutely nothing useful, would it? 

It wraps its contents and draws itself close to the right margin of the
text. That's pretty similar to what the RootInset does: Draw its
contents at a suitable place.
 
  Nevertheless, it strikes me as a bit extreme and I would appreciate
  some visual clue...
 
 Andre There is already a visual clue in form of the layout
 Andre drop-down...
 
 I do not think that drawing a couple lines (I am not sure which
 ones...) would be very expensive as far as the core is concerned.

Probably not. But I still don't think it belongs in the core...
 
 I agree though that the current code for right margin is really too
 ugly wrt its usefulness.

Andre'


Re: [PATCH] fix exit crash

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 03:44:28PM +0100, Andre Poenitz wrote:

   Btw, the 'resize' problem is fixed now, too.
  
  That it doesn't actually resize the buffer at all ?
 
 For the humour impaired: Example please.

When you change the width of the lyx window the buffer doesn't change. I
assume that's what you were referring to as being fixied somehow

john
-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: [PATCH] fix exit crash

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 02:56:32PM +, John Levon wrote:
 On Tue, Dec 02, 2003 at 03:44:28PM +0100, Andre Poenitz wrote:
 
Btw, the 'resize' problem is fixed now, too.
   
   That it doesn't actually resize the buffer at all ?
  
  For the humour impaired: Example please.
 
 When you change the width of the lyx window the buffer doesn't change. I
 assume that's what you were referring to as being fixied somehow

I can't reproduce this with current cvs.  What version are you using?

Andre'


Re: [PATCH] fix exit crash

2003-12-02 Thread Jose' Matos
On Tuesday 02 December 2003 14:56, John Levon wrote:

 When you change the width of the lyx window the buffer doesn't change. I
 assume that's what you were referring to as being fixied somehow

  I don't see that with xforms, gtk or qt...

  Maybe it is ncurses frontend that is broke. ;-)

 john

-- 
José Abílio

LyX and docbook, a perfect match. :-)



Inline-Mode for InsetCollapsable

2003-12-02 Thread Michael Schmitt
Hello,

since Andre started to move code from InsetERT to InsetCollapsable, I 
will try finish this project (inline mode also for other insets).

Just in case somebody had the same idea and already started work, please 
let me know so that we don't do the same work twice.

Michael



Re: [patch] move ParagraphList of InsetText and Buffer to LyXText

2003-12-02 Thread Lars Gullik Bjønnes
Andre Poenitz [EMAIL PROTECTED] writes:

| Step 2. Almost mechanical.

I wonder why this is a good move.

-- 
Lgb



Re: [PATCH] fix exit crash

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 04:08:07PM +0100, Andre Poenitz wrote:

  When you change the width of the lyx window the buffer doesn't change. I
  assume that's what you were referring to as being fixed somehow
 
 I can't reproduce this with current cvs.  What version are you using?

It has very recently been fixed (i.e. current CVS works). You've
confused me a little bit now, since your reply just said that it *had*
been fixed :)

john

-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: [patch] move text from BufferView to Buffer

2003-12-02 Thread Lars Gullik Bjønnes
Andre Poenitz [EMAIL PROTECTED] writes:

| [We had discussed this already once, but as this is 'fundamental' I
| thought we'd better agree explicitly on it ;-)]


| This replaces the LyXText 'semi member' of BufferView by a real LyXText
| member of Buffer.

And multiple views? View/Data separation?

Where did the explict agreement on this change enter the stage?

-- 
Lgb



Re: LyX 1.4 task list

2003-12-02 Thread Christian Ridderström
On Mon, 1 Dec 2003, Michael Schmitt wrote:

 ***
 
 Did I miss anything? Or is anybody working on some pet project that 
 shall be included in LyX 1.4?

I'm working (ok was working before the wiki-stuff sidetracked me) on 
Herbert's listings (support for the listings package). This ought to 
be ready (long) before 1.4 I believe. Basically I have a bug in the 
1.3.3-version that makes the inset not actually being inserted into 
the document :-(, other than that I just have to port it.

/Christian

-- 
Christian Ridderström   http://www.md.kth.se/~chr




What on earth happened to document switching ?

2003-12-02 Thread John Levon

I switch from one doc to the other, switch back, and I have to wait 10
seconds for some kind of rebuild, and my position in the document is
lost ! What happened ?

john
-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: LyX 1.4 task list

2003-12-02 Thread Angus Leeming
Christian Ridderström wrote:
 Did I miss anything? Or is anybody working on some pet project that
 shall be included in LyX 1.4?
 
 I'm working (ok was working before the wiki-stuff sidetracked me) on
 Herbert's listings (support for the listings package). This ought to
 be ready (long) before 1.4 I believe. Basically I have a bug in the
 1.3.3-version that makes the inset not actually being inserted into
 the document :-(, other than that I just have to port it.

Do you want me to look at it? I understand this side of things quite 
well ;-)

The downside (from your point of view) is that this interface code 
between frontend and core has been changed totally in 1.4.x.

Maybe for better of course ;-)

-- 
Angus



the recent changes to footnote widths etc.

2003-12-02 Thread John Levon

Have broken several things, including :

o selections inside a footnote expand past the border
o text inside a footnote expands past  the border
o footnotes still take up a full row, but because their actual width
  is less, row breaking gets confused and half the text is off the
  screen past the footnote

btw, text selection seems much slower

regards
john
-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Listings patch (was Re: LyX 1.4 task list)

2003-12-02 Thread Christian Ridderström
On Tue, 2 Dec 2003, Angus Leeming wrote:

 Christian Ridderström wrote:
  
  I'm working (ok was working before the wiki-stuff sidetracked me) on
  Herbert's listings (support for the listings package). This ought to
  be ready (long) before 1.4 I believe. Basically I have a bug in the
  1.3.3-version that makes the inset not actually being inserted into
  the document :-(, other than that I just have to port it.
 
 Do you want me to look at it? I understand this side of things quite 
 well ;-)

Hmm.. maybe, I guess that depends on if there's a point in back-porting 
it to 1.3-x if not, I might as well start porting it to 1.4.x.

 The downside (from your point of view) is that this interface code 
 between frontend and core has been changed totally in 1.4.x.

Actually, the problem can't be that difficult since I had Herbert's patch 
working in Xforms, and it is only since I started over by first adding 
a patch I got form Juergen (for Qt) that nothing is inserted. 

So... do you think it will/should be back-ported to 1.3.x?

/Christian

-- 
Christian Ridderström   http://www.md.kth.se/~chr




Re: Listings patch (was Re: LyX 1.4 task list)

2003-12-02 Thread Juergen Spitzmueller
Christian Ridderström wrote:
 Actually, the problem can't be that difficult since I had Herbert's patch
 working in Xforms, and it is only since I started over by first adding
 a patch I got form Juergen (for Qt) that nothing is inserted.

Does that problem (nothing inserted) only occur in the qt version? If so, it 
might well be that you need to (re)connect the signals and slots first. Do 
you get any console output?

 So... do you think it will/should be back-ported to 1.3.x?

I don't think so. 1.3.x is a stable release. Only bugfixes, no new features.

Regards,
Jürgen.



Re: Inline-Mode for InsetCollapsable

2003-12-02 Thread Martin Vermeer
On Tue, Dec 02, 2003 at 04:18:27PM +0100, Michael Schmitt spake thusly:
 
 Hello,
 
 since Andre started to move code from InsetERT to InsetCollapsable, I 
 will try finish this project (inline mode also for other insets).
 
 Just in case somebody had the same idea and already started work, please 
 let me know so that we don't do the same work twice.
 
 Michael

I would like to see inline mode for CharStyle insets with a bool
option in the .layout file. That way we can have the elements in XML
behave just like collapsable insets (which is fine and natural IMHO;
just Conglomerate upside down ;-) while the character styles in
LaTeX can be made to behave in a way that almost hides their
collapsable inset nature (just a box with text in-line, no label)
which I hope would make John happy. And me too.

I haven't started yet, and now will wait to see how your work turns
out first.

At a later stage I would then like to add inset melting: backspace
in pos = 0 removes the surrounding inset, which addresses one of
Helge's peeves. Like in math. (André, which files should I study to
learn how to do this?)

Does this sound like a plan?

- Martin



pgp0.pgp
Description: PGP signature


Small fix for docbook example file. (CharStyle)

2003-12-02 Thread Jose' Matos
Hi Martin,
did you forgot to apply this?

Index: lib/examples/docbook_article.lyx
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/lib/examples/docbook_article.lyx,v
retrieving revision 1.5
diff -u -p -r1.5 docbook_article.lyx
--- lib/examples/docbook_article.lyx12 Nov 2003 14:38:22 -  1.5
+++ lib/examples/docbook_article.lyx2 Dec 2003 18:10:21 -
@@ -122,7 +122,7 @@ It is always possible to have more than
 \begin_layout Author


-\begin_inset FirstName
+\begin_inset CharStyle Firstname
 collapsed true

 \begin_layout Standard
@@ -133,7 +133,7 @@ Jose'
 \end_inset


-\begin_inset Surname
+\begin_inset CharStyle Surname
 collapsed true

 \begin_layout Standard
@@ -319,7 +319,7 @@ The only fonts supported are
 Emphasis
 \emph default
  and
-\begin_inset Literal
+\begin_inset CharStyle Literal
 collapsed true

 \begin_layout Standard

-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: Inline-Mode for InsetCollapsable

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 08:17:34PM +0200, Martin Vermeer wrote:

 I would like to see inline mode for CharStyle insets with a bool
 option in the .layout file. That way we can have the elements in XML
 behave just like collapsable insets (which is fine and natural IMHO;
 just Conglomerate upside down ;-) while the character styles in
 LaTeX can be made to behave in a way that almost hides their
 collapsable inset nature (just a box with text in-line, no label)
 which I hope would make John happy. And me too.

ish

Cursor behaviour is also a factor, along with partial selection. But
this stuff is well known and I've argued it into the ground already.

 At a later stage I would then like to add inset melting: backspace
 in pos = 0 removes the surrounding inset, which addresses one of

Good

regards
john

-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: Inline-Mode for InsetCollapsable

2003-12-02 Thread Michael Schmitt
Martin Vermeer wrote:

I would like to see inline mode for CharStyle insets with a bool
option in the .layout file.
Please let us discuss this before you start working on this. My plan is 
 to move some code from InsetERT to InsetCollapsable. As a consequence, 
we can support the inline mode also for other inset. But that is all.

It _may_ be useful to declare which inset is allowed to have which 
display mode in the layout files. However, I rather doubt if 
hyper-configurability is a desired goal. In the end, everything is 
configurable but also everything is highly unusable. Do we really need 
new options in the layout files?

I haven't started yet, and now will wait to see how your work turns
out first.
Give me a few hours or days please...

Michael



Recent inset changes and ERT

2003-12-02 Thread Kayvan A. Sylvan
ERT insets no longer have the nice special labels when they are closed.
Can this be put back please?

If you don't know what I mean: If the ERT was short, the label
was the actual contents of the inset. Now, this is no longer the case
and instead the label is ERT.

Also, wrap:Figure insets do not display right (textual contents run right
off the edge of the inset). This is probably similar to what I see with 
footnotes.


-- 
Kayvan A. Sylvan  | Proud husband of   | Father to my kids:
Sylvan Associates, Inc.   | Laura Isabella Sylvan  | Katherine Yelena (8/8/89)
http://sylvan.com/~kayvan | crown of her husband | Robin Gregory (2/28/92)


Re: The current char style UI

2003-12-02 Thread Helge Hafting
On Tue, Dec 02, 2003 at 02:28:26PM +, John Levon wrote:
 On Tue, Dec 02, 2003 at 10:46:35AM +0100, Andre Poenitz wrote:
 
  On Tue, Dec 02, 2003 at 10:53:26AM +0100, Helge Hafting wrote:
   At least latex lets me change from \emph{This is marked} to
   \emph{This} is \emph{marked} without retyping any text. :-)
  
  This is implementable with 'boxes in boxes', too.
 
 The question isn't whether it's implementable, it's whether it's natural
 UI to present to the user. And it's not, regardless of what the
 implementation looks like.
 
 Otherwise Helge would  have written \emph{This \nonemph{is} marked}

That is not how I think about editing or styles.
If I unapply some style in the middle, then I split the
styled part, I do not add a layer of non-style.

In the latex case, I inserted  } and \emph{, even if such
actions looks unbalanced and iffy to a highly organized mind. :-)

If this sort of thing won't be possible, how will the alternative
way be to edit?  How will a user remove wrong markup, for
this will be necessary at times.

What do you consider the natural UI?  
Delete  rewrite the text? (too much work)
Use some way of undo a whole piece of markup, then
re-mark pieces if necessary?

Something else?

Helge Hafting


Re: The current char style UI

2003-12-02 Thread Martin Vermeer
On Tue, Dec 02, 2003 at 09:35:42PM +0100, Helge Hafting spake thusly:
 
 If this sort of thing won't be possible, how will the alternative
 way be to edit?  How will a user remove wrong markup, for
 this will be necessary at times.
 
 What do you consider the natural UI?  
 Delete  rewrite the text? (too much work)
 Use some way of undo a whole piece of markup, then
 re-mark pieces if necessary?

That's what I was thinking of, yes. A way to remove the inset from
inside without removing the text. Melting.
 
 Something else?
 
 Helge Hafting

- Martin 



pgp0.pgp
Description: PGP signature


Re: Inline-Mode for InsetCollapsable

2003-12-02 Thread Martin Vermeer
On Tue, Dec 02, 2003 at 08:11:21PM +0100, Michael Schmitt spake thusly:
 Martin Vermeer wrote:
 
  I would like to see inline mode for CharStyle insets with a bool
  option in the .layout file.
 
 Please let us discuss this before you start working on this. My plan is 
   to move some code from InsetERT to InsetCollapsable. As a consequence, 
 we can support the inline mode also for other inset. But that is all.
 
 It _may_ be useful to declare which inset is allowed to have which 
 display mode in the layout files. However, I rather doubt if 
 hyper-configurability is a desired goal. In the end, everything is 
 configurable but also everything is highly unusable. Do we really need 
 new options in the layout files?

That's precisely why I want it this way. The .layout file is
configurability not seen by the end user. If we want in inset to be
switchable among the three: open/closed/inline, we would need a dialog
to go with it (like insetert). CharStyle does not have one and that's
fine with me. (If you ask me also the ERT dialog is excessive :-)
 
  I haven't started yet, and now will wait to see how your work turns
  out first.
 
 Give me a few hours or days please...

Sure! Better do it right than do it now.
 
 Michael

- Martin 



pgp0.pgp
Description: PGP signature


Re: Recent inset changes and ERT

2003-12-02 Thread Kayvan A. Sylvan
On Tue, Dec 02, 2003 at 11:45:15AM -0800, Kayvan A. Sylvan wrote:
 ERT insets no longer have the nice special labels when they are closed.
 Can this be put back please?
 
 If you don't know what I mean: If the ERT was short, the label
 was the actual contents of the inset. Now, this is no longer the case
 and instead the label is ERT.

This is not quite accurate. The labels show up correctly upon closing and
reloading the document, but they don't update when you edit them.

-- 
Kayvan A. Sylvan  | Proud husband of   | Father to my kids:
Sylvan Associates, Inc.   | Laura Isabella Sylvan  | Katherine Yelena (8/8/89)
http://sylvan.com/~kayvan | crown of her husband | Robin Gregory (2/28/92)


Re: feature request

2003-12-02 Thread Moritz Moeller-Herrmann
Markus B. wrote:

 Dear John, dear Andre,
 
 I'm writing my PhD Thesis using Lyx. Sometimes I would like to read
 quickly throung the last paragraphs. On the other hand I have to fill in
 footnotes all the time. So closing all the footnotes manually just to get
 a better view of the text is a bit complicated.
 
 I believe that the result of your discussion - a view of all the footnotes
 open - would be an ideal solution for my problem.

I can add the opinion of me and one of my colleagues. We both write our PHDs
in lyx and we both miss the open/close all functionality regarding
footnotes.

I don't understand at all, why the state of viewing footnotes has to be
persistent. Either you want to see all of them or none, normally.

BTW, what has happened to the footnote numbering patch? Is the latex counter
implementation up to the task now?

-- 
Moritz Moeller-Herrmann [EMAIL PROTECTED] wiss. Mitarbeiter, IMGB
La loi, dans un grand souci d'égalité, interdit aux riches comme aux
pauvres de coucher sous les ponts, de mendier dans les rues et de voler
du pain. 
(ANATOLE FRANCE)
 



Re: The current char style UI

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 09:35:42PM +0100, Helge Hafting wrote:

 That is not how I think about editing or styles.

Absolutely, this is my point.

 What do you consider the natural UI?  

Select-and-apply. Like current physical styles work.

john

-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


[13x] build failure

2003-12-02 Thread Angus Leeming
Jean-Marc,
make is currently failing in the po directory when I try compiling 
under Tru64 unix, (running ksh fwiw).

$ cd po
$ make
Make: Unrecognized modifier '/src -name Makefile.am'.  Stop.
$ grep '/src -name Makefile.am' Makefile
POTFILE_IN_DEPS = $(shell find $(top_srcdir)/src -name Makefile.am)

I have no idea why $(top_srcdir) isn't being expanded to anything 
meaningful. Perhaps something to do with being wrapped up inside a 
variable?

Going to bed,
Angus



Re: Format=Document=Page size not working

2003-12-02 Thread John Levon
On Tue, Dec 02, 2003 at 10:53:49PM +0100, Herbert Vo? wrote:

 Marko wrote:
 
 when trying to set the page size of a document to a custom size I notized 
 that this does not work in Lyx 1.3.2 (QT frontend). Any custom size seems 
 to be completely ignored! 
 Attached are two small examples: test1 uses page size A5 (which works); 
 test2 uses a custom page size of 13x18cm (which does not work).
 Any ideas?
 
 enable the custom margins, then LyX enables the use
 of the geometry package. But This is still a bug.

I don't understand, what is the bug ? I just set custom margin with
4inches top, and it worked fine (lyx 1.3.3)

john
-- 
Khendon's Law:
If the same point is made twice by the same person, the thread is over.


Re: [patch] fix for inlied ERT

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 10:32:48PM +0200, Martin Vermeer wrote:
> -
> @@ -1620,7 +1624,7 @@ void LyXText::metrics(MetricsInfo & mi,
> // final dimension
> dim.asc = firstRow()->ascent_of_text();
> dim.des = height - dim.asc;
> -   dim.wid = std::max(mi.base.textwidth, int(width));
> +   dim.wid = width;
>  }
> -
> 
> Does this now mean that LyXText returns proper widths again?

Probably, yes.

Urm... I just found out that short open footnotes are now 'semi
inline' but I think I even like this. So everybody please have a look
before shouting 'regression'.

> In that case I'll have to have a look at inlined CharStyles again ;-)

Good idea...

Andre'


-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:

> + [...] 'psuedo' [...]

The truoble with that langauge of yuors is that their is no ricognizible
pattern in the youse of vowils.

Andre'



Re: Python warnings from lyx2lyx

2003-12-02 Thread Jose' Matos
On Saturday 29 November 2003 10:04, Ronald Florence wrote:
> I am seeing warnings from the lyx2lyx scripts:
>
[ python error/warning ]
>
> If I understand the web page recommended in the warnings, they want lines
> like
>
> # -*- coding: iso-latin-1-unix -*-
>
> inserted at the top of the Python files because of José Matos' name.

  True, that is fixed in 1.4 and probably 1.3.4 (if ever) will have the 1.4 
lyx2lyx so that will fix the bug in 1.3.x

> This is with LyX/Mac-1.3.3 on MacOS-10.3.1.

  In this case that happens everywhere. :-)
-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: LyX 1.4 task list

2003-12-02 Thread Jose' Matos
On Monday 01 December 2003 09:48, Michael Schmitt wrote:
> Hello,
>
> I still do not give up hope that LyX 1.4 will eventually become reality.
>
> Since http://www.devel.lyx.org/roadmap.php3 is totally outdated (it
> lists some features that were initially planned for 1.2), I started to
> set up a new task list covering the remaining open issues of LyX 1.4.

  I really think that you intended to write 0.12 and not 1.2. ;-)

> Beside the usual bug fixing, I see the following open issues:
>
> ***
>
> Mandatory tasks
>
>   - LyX2LyX
>  - Vspace conversion
- convertion of emphasis and noun to the new logical char styles
- revert of vspace, line and pagebreak for 1.3

> Of course, this is just my personal opinion...
>
> Michael

-- 
José Abílio

LyX and docbook, a perfect match. :-)



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Mon, Dec 01, 2003 at 09:20:33PM +, Angus Leeming wrote:
> Cheers, Georg. Applied, although I suspect that someone will now try 
> and factorize all these pieces of code handling 'end_inset'...

At least making the LyXLex interface a bit similar to the std::streams
would make me feel better. 

Patch attached.

Andre'
Index: lyxlex.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.C,v
retrieving revision 1.46
diff -u -p -r1.46 lyxlex.C
--- lyxlex.C6 Oct 2003 15:42:26 -   1.46
+++ lyxlex.C2 Dec 2003 08:58:33 -
@@ -254,3 +254,61 @@ int LyXLex::findToken(char const * str[]
 
return i;
 }
+
+
+LyXLex::operator void *() const
+{
+   return isOK() ? const_cast(this) : 0;
+}
+
+
+LyXLex & LyXLex::operator>>(std::string & s)
+{
+   if (isOK()) {
+   next();
+   s = getString();
+   }
+   return *this;
+}
+
+
+LyXLex & LyXLex::operator>>(float & s)
+{
+   if (isOK()) {
+   next();
+   s = getFloat();
+   }
+   return *this;
+}
+
+
+LyXLex & LyXLex::operator>>(int & s)
+{
+   if (isOK()) {
+   next();
+   s = getInteger();
+   }
+   return *this;
+}
+
+
+LyXLex & LyXLex::operator>>(unsigned int & s)
+{
+   if (isOK()) {
+   next();
+   s = getInteger();
+   }
+   return *this;
+}
+
+
+LyXLex & LyXLex::operator>>(bool & s)
+{
+   if (isOK()) {
+   next();
+   s = getBool();
+   }
+   return *this;
+}
+
+
Index: lyxlex.h
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxlex.h,v
retrieving revision 1.36
diff -u -p -r1.36 lyxlex.h
--- lyxlex.h7 Oct 2003 06:45:24 -   1.36
+++ lyxlex.h2 Dec 2003 08:58:33 -
@@ -57,6 +57,8 @@ public:
 
/// file is open and end of file is not reached
bool isOK() const;
+   /// file is open and end of file is not reached
+   operator void *() const;
/// return true if able to open file, else false
bool setFile(std::string const & filename);
///
@@ -110,8 +112,7 @@ public:
///
int findToken(char const * str[]);
 
-   /** Pushes a token list on a stack and replaces it with a new one.
-*/
+   /// Pushes a token list on a stack and replaces it with a new one.
void pushTable(keyword_item *, int);
 
/** Pops a token list into void and replaces it with the one now
@@ -125,10 +126,22 @@ public:
*/
void printError(std::string const & message) const;
 
-   /**
-  Prints the current token table on the supplied ostream.
-   */
+   /// Prints the current token table on the supplied ostream.
void printTable(std::ostream &);
+
+   /// extract string
+   LyXLex & operator>>(std::string &);
+   /// extract float
+   LyXLex & operator>>(float &);
+   /// extract double
+   LyXLex & operator>>(double &);
+   /// extract integer
+   LyXLex & operator>>(int &);
+   /// extract unsigned integer
+   LyXLex & operator>>(unsigned int &);
+   /// extract bool
+   LyXLex & operator>>(bool &);
+
 private:
struct Pimpl;
///
Index: insets/insetvspace.C
===
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetvspace.C,v
retrieving revision 1.4
diff -u -p -r1.4 insetvspace.C
--- insets/insetvspace.C1 Dec 2003 21:19:16 -   1.4
+++ insets/insetvspace.C2 Dec 2003 08:58:33 -
@@ -246,18 +246,10 @@ void InsetVSpaceMailer::string2params(st
istringstream data(in);
LyXLex lex(0,0);
lex.setStream(data);
-
-   if (lex.isOK()) {
-   lex.next();
-   string const name = lex.getString();
-   }
-
-   // This is part of the inset proper that is usually swallowed
-   // by Buffer::readInset
-   if (lex.isOK()) {
-   lex.next();
-   vspace = VSpace(lex.getString());
-   }
+   string name, vsp;
+   lex >> name >> vsp; 
+   if (lex)
+   vspace = VSpace(vsp);
 }
 
 


Re: A working InsetVSpace

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:
> At least making the LyXLex interface a bit similar to the
> std::streams would make me feel better.
> 
> Patch attached.

> +/// file is open and end of file is not reached
> +operator void *() const;

I don't like this. We already have problems catching implicit 
conversions. Witness all those (bv()) arguments that are slowly being 
changed to (true) or (false) and have nothing to do with the 
existence of a BufferView anymore.

>From a less political, more coding, point of view, why not 'operator 
bool() const;' if that is what you actually use it for?
+if (lex)
+vspace = VSpace(vsp);

However, this isn't std::stream-like. The std::stream-like interface 
would be
if (lex.good())
vspace = VSpace(vsp);

Nonetheless, it does look a lot nicer. It also doesn't address the 
'end_inset' thingy at all ;-)

-- 
Angus



Re: [patch] Qt scrolling

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:

> On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:
> 
>> + [...] 'psuedo' [...]
> 
> The truoble with that langauge of yuors is that their is no
> ricognizible pattern in the youse of vowils.

And the azamnig tnhig aobut Egnlsih is taht tehre dosen't need to be 
to mkae snese of it so lnog as I get the frsit and lsat ltetres 
rhgit.

But, granted, I'll fix it up.

-- 
Angus



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:17:31AM +, Angus Leeming wrote:
> Andre Poenitz wrote:
> > At least making the LyXLex interface a bit similar to the
> > std::streams would make me feel better.
> > 
> > Patch attached.
> 
> > +/// file is open and end of file is not reached
> > +operator void *() const;
> 
> I don't like this.

But that's what std::iostream does.

> We already have problems catching implicit 
> conversions. Witness all those (bv()) arguments that are slowly being 
> changed to (true) or (false) and have nothing to do with the 
> existence of a BufferView anymore.
> 
> > From a less political, more coding, point of view, why not 'operator 
> > bool() const;' if that is what you actually use it for?

Exactly for the reason you mention: A void * is convertable to a
bool, but not an integer (without cast). So this is safer.

> +if (lex)
> +vspace = VSpace(vsp);
> 
> However, this isn't std::stream-like.

Of course it is.

  27.4.5.3  basic_ios iostate flags functions[lib.iostate.flags]

  operator void*() const

  Returns:
If fail() then a null pointer; otherwise some  non-null  pointer  to
indicate success.

Btw, I forgot to implement bool operator!() const.

> The std::stream-like interface would be
> if (lex.good())
> vspace = VSpace(vsp);

I think  if (!lex.fail())  is the correct idiom, at least that's what is
required for the implementation of  'operator void *'. But I never
needed to understand these details as  if (is)  and  if (!is)  do what
is needed.

> Nonetheless, it does look a lot nicer. It also doesn't address the 
> 'end_inset' thingy at all ;-)

Surprise.

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:22:03AM +, Angus Leeming wrote:
> Andre Poenitz wrote:
> 
> > On Mon, Dec 01, 2003 at 09:50:17PM +, Angus Leeming wrote:
> > 
> >> + [...] 'psuedo' [...]
> > 
> > The truoble with that langauge of yuors is that their is no
> > ricognizible pattern in the youse of vowils.
> 
> And the azamnig tnhig aobut Egnlsih is taht tehre dosen't need to be 
> to mkae snese of it so lnog as I get the frsit and lsat ltetres 
> rhgit.

Srue. Wrkos eevn in Grmaen.

The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'

Andre'


Re: Python warnings from lyx2lyx

2003-12-02 Thread Jean-Marc Lasgouttes
> "Jose'" == Jose' Matos <[EMAIL PROTECTED]> writes:

Jose'> On Saturday 29 November 2003 10:04, Ronald Florence wrote:
>> I am seeing warnings from the lyx2lyx scripts:
>> 
Jose'> [ python error/warning ]
>>  If I understand the web page recommended in the warnings, they
>> want lines like
>> 
>> # -*- coding: iso-latin-1-unix -*-
>> 
>> inserted at the top of the Python files because of José Matos'
>> name.

Jose'>   True, that is fixed in 1.4 and probably 1.3.4 (if ever) will
Jose'> have the 1.4 lyx2lyx so that will fix the bug in 1.3.x

What about submitting patches, then ;)

JMarc



Re: The current char style UI

2003-12-02 Thread Helge Hafting
Martin Vermeer wrote:
On Mon, Dec 01, 2003 at 12:20:33PM +0100, Helge Hafting spake thusly:
 

Of course code for deleting or "unapplying" an inset (e.g., backspace
in pos 0, like in math) could be created as well. But what you will
never be able to do in this paradigm is "unapplying" a charstyle for a
piece in the middle of an applied charstyle, as you can do with
physical attributes -- or more generally, creating arbitrary bit
patterns of attributes. (But then I would argue "why would you want
to?")
Because people work that way?  


Eh, people also insert empty paragraphs and expect them to be there
when they come back :-)
This rarely turns out to be a problem, for me at least.  The advantage
of never having to remove extraneous empty paragraphs is substantial.
There is of course nothing wrong in changing the way people work,
as long as the "new" way is equally efficient.

Example:
I paste two big quotes from other text into my document. Between them
is a "and" or something that isn't part of the quote. 

(Because of "blablablah" and "blablah" we see that . . .)

I could mark each quote in turn and set them to some quote style.  It might be
easier to mark everything and then unapply the "and" in the middle though.
 
Not easier, same number of steps. Only easier if it is "the way we've
always done it", which I don't really accept as an argument.

Same number of steps, sure.  Maybe the example wasn't that good,
but I believe "unapplying" style is necessary.  Perhaps I didn't
want that paragraph marked up after all, or perhaps I copied
it and don't want the markup in the copy.  
And people really do get the mouse wrong from time to time,
marking too much only to realize it later. It is at least
nice to be able to unapply markup at the ends of marked
text.  Unapplying in the middle is a nice extra, unless it is
much more difficult.


I do realize that near all (other) word processors use the "independent
character attribute bits" mental model, which works and is consistent
but somewhat messy to implement. This however is the "text objects with
properties" mental model, which is quite different, but I would claim
just as easy to learn and more logical/realistic. Which is perhaps why
LaTeX uses it.
At least latex lets me change from "\emph{This is marked}" to
"\emph{This} is \emph{marked}" without retyping any text. :-)
The only thing really that is wrong with the current representation of
these objects as insets is how they look. A text containing even many
of them should look continuous and fluently legible on the screen,
across inset boundaries. We aren't there yet.

Perhaps I even want to add the non-quote "and" _after_ pasting in the
stuff and setting the style.  I.e. break up the quote, just as I
occationally break up a paragraph.


Perhaps. Or perhaps you should just get used to the reality that *this
is a different paradigm* and you use it best on its own terms. Just
playing the devil's advocate here.
 
Well, a new way of working is ok, as long as it doesn't restrict me
after learning the details.  I guess I don't do that much "unapplying
in the middle" but I certainly turn off markup from time to time.
such as "too many emphasized words in a paragraph turns out ugly,
lets keep only the most important one."  Or I might have an
emphasized sentence somewhere, extend it and then find that
there is now too much italic and decide to clean it up.
Or I might get to clean up a text by someone else, with way too much
markup.
This must be possible without retyping. Selective unapplying
is probably the most user friendly.  At the very least an ability
to remove all markup in a selection that doesn't end in the middle
of some inset.  

Don't get me wrong, I believe the new style system is a good thing.
I just got scared by the impression of not being able to turn
off text properties.  Authors don't get everything right the first
time, thats why a document processor beats the typewriter. :-)
Helge Hafting



Re: The current char style UI

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 10:53:26AM +0100, Helge Hafting wrote:
> At least latex lets me change from "\emph{This is marked}" to
> "\emph{This} is \emph{marked}" without retyping any text. :-)

This is implementable with 'boxes in boxes', too.

Andre'

-- 
Those who desire to give up Freedom in order to gain Security, will not have,
nor do they deserve, either one. (T. Jefferson or B. Franklin or both...)


Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 00:11, Angus Leeming wrote:
> > Try 3, Kornel.
> >
> > This one should feel much smoother when you move the mouse back into
> > the work area. In fact, I thnk that this is ready to go into the
> > sources (and, indeed, be ported to 1.3.x) but I'd value it if you
> > road-tested it for me one more time.
>
> Actually, try this. Factually the same but the debug output is gone,
> the comments reflect reality and it'll actually apply against current
> cvs ;-)

Sorry for the late reply .. I had to support a customer ..

Yes, selecting above and/or below the workarea is smoother. This I like.
But, may it be possible to disable the timer while selecting inside the workarea?
It is a little annoying to have to wait for the selection, even if you are
selecting only some few characters.

But even so, this is far better then before, so I vote for apply it.

Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xf4bewfbDGmeqhAQF2/AP+PnfF/cYWByQxlqnVNI3t3Bd07Xbd24ZH
fX0RxFi8k9R0Bza4Sd9DI/0OUnVr0ZlmcXBwDB6agEeDgOHJDxJw3l0a+RRgMUNU
xgEnkBH9cmTPHVGEEncJJMOfSLbAMCkfh+ANVrSn5f/PjfFa9arMPmu6GhOiLmiP
wSrz6dVmmg8=
=LmbA
-END PGP SIGNATURE-



Re: A working InsetVSpace

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:

>> +if (lex)
>> +vspace = VSpace(vsp);
>> 
>> However, this isn't std::stream-like.
> 
> Of course it is.
> 
>   27.4.5.3  basic_ios iostate flags functions   
>   [lib.iostate.flags]
> 
>   operator void*() const
> 
>   Returns:
> If fail() then a null pointer; otherwise some  non-null  pointer
>  to indicate success.

Ok, thank you.

> Btw, I forgot to implement bool operator!() const.

So, now you need two operators to replace a single isOk()...

But, I'm arguing for the sake of it and will stop. Your interface is 
much more user-friendly than the old one: thanks.

-- 
Angus



Re: [patch] Qt scrolling

2003-12-02 Thread Angus Leeming
Andre Poenitz wrote:
> Srue. Wrkos eevn in Grmaen.
> 
> The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'

...which goes to prove something or other ;-)

Incidentally, how long did it take you to rearrange the letters in 
alphabetical order?

-- 
Angus



Re: A working InsetVSpace

2003-12-02 Thread Andre Poenitz
On Tue, Dec 02, 2003 at 09:52:47AM +, Angus Leeming wrote:
> > Btw, I forgot to implement bool operator!() const.
> 
> So, now you need two operators to replace a single isOk()...

That's what the std::streams do. Usage is more concise, btw.

Andre' 


Cursor positioning with Pointer/Keys from minipage

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-


There seems to be a new effect.

1.) Position the cursor via pointer inside a minipage
2.) move the cursor down via a key until you leave the minipage
3.) repeat 1. and 2. (one or more times)

Each time the cursor leaves the minipage, it is one row farther in text.
(The very first time it is on row 1, even if the minipage starts at say row 20)

Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xi8LewfbDGmeqhAQFQjgQAl3217jSbuPNs4V8hwUdBHJT9thTukYQo
eDlzGLKnHKlXLsMXQFAEY/ZGJHcxK1pq/72qnyPHQ+E40EO0Ej8y1CCFyFCwBYq/
gjKFq6XdEQPO7rQfPh0otDtgSpjaiHOxoo2IKJ1M6dKyXYWi6AUA0seR5DoU8rl9
dAU94usmke4=
=/Yac
-END PGP SIGNATURE-



Re: [patch] Qt scrolling

2003-12-02 Thread Kornel Benko
-BEGIN PGP SIGNED MESSAGE-

On Dienstag, 2. Dezember 2003 10:55, Angus Leeming wrote:
> Andre Poenitz wrote:
> > Srue. Wrkos eevn in Grmaen.
> >
> > The cssliac elpmaxe is 'Dcdhhiikmmnnopprssstttuzäüe'
>
> ...which goes to prove something or other ;-)
>
> Incidentally, how long did it take you to rearrange the letters in
> alphabetical order?

Not long, about 10 seconds.
Kornel
- -- 
Kornel Benko
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iQCVAwUBP8xjILewfbDGmeqhAQGp8wP/RbdlRm6ksRuwqqAjjGvoIFxY1UGM0E/M
7zgm/0U4jWBHb27wzoilCLBhBY9e7acmeIguAcerkoyHf7ZkrsGViF+iZdxD9lWI
Fs7ihXheWurXmOMitvyHiiSuFhsAzuI9HlzNnMffQieVj8nL93cMtSINPG8LesI9
gKSkpP5QgtY=
=qgE/
-END PGP SIGNATURE-



  1   2   >