Re: cmake needs update?

2007-08-24 Thread Abdelrazak Younes

Bo Peng wrote:

It can not provide a platform independent way of distributing lyx,

There is no 'platform independent way of distribution'. Windows won't
like .rpm, Ubuntu won't like .msi.


I meant a uniform interface. I will be able to do 'scons rpm' under
*nix, and 'scons msi' under windows. I do not know what cmake will do.
It is likely to be 'cmake; cpack; rpmbuild'.


More info about CPack here:

http://www.cmake.org/Wiki/CMake:CPackPackageGenerators

Losts of formats supported apparently, we just need Peter (or someone 
else) to use that.


Abdel.


TGZ

Tar GZip compressed packages.
[edit] STGZ

Self extracting Tar GZip compressed packages (needs /bin/sh, tar, gunzip 
and tail for extracting).

[edit] NSIS

Nullsoft Installer. Requires NSIS for creating the package.
[edit] ZIP

ZIP compressed packages. Requires zip, WinZip or 7Zip for creating the 
package.

[edit] TBZ2

Tar BZip2 compressed packages. Requires bzip2 for creating the package.
[edit] TZ

Tar UNIX compress compressed packages.
[edit] PackageMaker (OSX only)

Mac OSX Package Maker packages. Requires Package Maker for creating the 
package.

[edit] OSXX11 (OSX only)

Mac OSX X11 Bundle. Requires hdiutil for creating the package.
[edit] CygwinBinary (Cygwin only)

Tar Bzip2 compressed Cygwin package. Requires bzip2 for creating the 
package.

[edit] CygwinSource (Cygwin only)

Tar Bzip2 compressed Cygwin source package. Requires bzip2 for creating 
the package.

[edit] DEB (UNIX only)

Debian packages. Requires only ar for creating the package. In CMake cvs 
since July 2007, will be in 2.6.0. With CPack 2.4.x you can use the 
approach described in CMakeUserUseDebian .

[edit] RPM

RPM packages are currently not supported, but you should look at the RPM 
module.




Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

On Wed, Aug 22, 2007 at 09:25:12AM +0200, Abdelrazak Younes wrote:


Enrico Forestieri wrote:

Here is another one for you. This happens with Qt 4.1. When loading
a second document, lyx crashes as follows:

Is this on windows?


Yes.


Does this happen on any document?


When trying to load any _second_ document.
Only happens with Qt 4.1, though.

Could you please 
try to disable the pixmap cache in QLPainter.cpp?


Doesn't change anything.

Here is the backtrace (part of it, as it's exceptionally long):


The backtrace is long because there is a recursive loop.


#31 0x00985248 in lyx::frontend::GuiView::update_view_state_qt ()


Ah... this update_view_state_qt() again... This message display handling 
is mess!



#32 0x0087ef89 in lyx::frontend::WorkArea::resizeBufferView ()


OK, should be easy to solve.

Abdel.



Re: Build trouble

2007-08-24 Thread Martin Vermeer
On Thu, Aug 23, 2007 at 11:18:47PM +0200, Enrico Forestieri wrote:
 On Thu, Aug 23, 2007 at 11:53:35PM +0300, Martin Vermeer wrote:
 
  On Thu, Aug 23, 2007 at 10:35:18PM +0200, Enrico Forestieri wrote:
   On Thu, Aug 23, 2007 at 11:00:57PM +0300, Martin Vermeer wrote:

...

Could swear that I had done that... second time around it bit ;-/

Update: At least in src/support. In src/frontends/controllers I still
get makefile errors on MONOLITHIC_CONTROLLERS, and in qt4 on 
MONOLITHIC_FRONTEND_QT4. Even when trying a couple of times. Ah well.
   
   Try also reconfiguring explicitly.
  
  Did that already :-(
 
 Does the attached patch help?

Not really... the above problem went away by itself (probably the moon 
rose). But now I am stuck with the following automake problem:

--
Building Makefile templates...
.
src/support/Makefile.am:104: INSTALL_WINDOWS does not appear in AM_CONDITIONAL
done.
--

... and Makefile.in is not created in src/support.

Commenting out this Windows-specific stanza in src/support/Makefile.am makes
the build succeed. If I don't, it always comes back (even when trying 
make clean) to the above error message.

- Martin
 


Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

Another problem: lyx allows opening multiple times the same file.


Fixed. We could also offer the user a choice to revert to existing 
display or to create a new display for the same document.


Opinions?

Abdel.



Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

Here is another one for you. This happens with Qt 4.1. When loading
a second document, lyx crashes as follows:


Fixed.

Abdel.



Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Martin Vermeer
I suppose attaching the patch would help.

- Martin 

On Fri, Aug 24, 2007 at 12:31:16AM +0300, Martin Vermeer wrote:
 Finally I got where Richard was many weeks ago... the custom inset 'endnote'
 works!
 
 Or would, if I would have endnote.sty on my system.
 
 Finally I got where Richard was many weeks ago... the custom inset 'endnote'
 works!
 
 Or would, if I would have endnote.sty on my system.
 
 What is now not elegant, is that the term 'charstyle' is being used for
 two different things: 1) general user-definable insets, and 2) specific 
 oldfashioned charstyle-type insets (the alternative now being 'custom', 
 but there could be more: 'short element', e.g.)
 
 I think I'll have to rename 'charstyle-1' to something more appropriate
 (suggestions?). That will be a big but near-trivial patch.
 
 - Martin
 
Index: src/MenuBackend.cpp
===
--- src/MenuBackend.cpp	(revision 19756)
+++ src/MenuBackend.cpp	(working copy)
@@ -218,6 +218,7 @@
 		md_documents,
 		md_bookmarks,
 		md_charstyles,
+		md_custom,
 		md_endmenu,
 		md_exportformats,
 		md_importformats,
@@ -240,6 +241,7 @@
 		{ bookmarks, md_bookmarks },
 		{ branches, md_branches },
 		{ charstyles, md_charstyles },
+		{ custom, md_custom },
 		{ documents, md_documents },
 		{ end, md_endmenu },
 		{ exportformats, md_exportformats },
@@ -294,6 +296,10 @@
 			add(MenuItem(MenuItem::CharStyles));
 			break;
 
+		case md_custom:
+			add(MenuItem(MenuItem::Custom));
+			break;
+
 		case md_documents:
 			add(MenuItem(MenuItem::Documents));
 			break;
@@ -613,7 +619,7 @@
 }
 
 
-void expandCharStyleInsert(Menu  tomenu, Buffer const * buf)
+void expandCharStyleInsert(Menu  tomenu, Buffer const * buf, std::string s)
 {
 	if (!buf) {
 		tomenu.add(MenuItem(MenuItem::Command,
@@ -627,8 +633,9 @@
 	CharStyles::iterator end = charstyles.end();
 	for (; cit != end; ++cit) {
 		docstring const label = from_utf8(cit-name);
-		tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, label,
-FuncRequest(LFUN_CHARSTYLE_INSERT,
+		if (cit-lyxtype == s)
+			tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, 
+label, FuncRequest(LFUN_CHARSTYLE_INSERT,
 		label)));
 	}
 }
@@ -877,9 +884,13 @@
 			break;
 
 		case MenuItem::CharStyles:
-			expandCharStyleInsert(tomenu, buf);
+			expandCharStyleInsert(tomenu, buf, charstyle);
 			break;
 
+		case MenuItem::Custom:
+			expandCharStyleInsert(tomenu, buf, custom);
+			break;
+
 		case MenuItem::FloatListInsert:
 			expandFloatListInsert(tomenu, buf);
 			break;
Index: src/MenuBackend.h
===
--- src/MenuBackend.h	(revision 19756)
+++ src/MenuBackend.h	(working copy)
@@ -63,6 +63,9 @@
 		/** This is the list of elements available
 		 * for insertion into document. */
 		CharStyles,
+		/** This is the list of user-configurable
+		insets to insert into document */
+		Custom,
 		/** This is the list of floats that we can
 		insert a list for. */
 		FloatListInsert,
Index: src/TextClass.cpp
===
--- src/TextClass.cpp	(revision 19756)
+++ src/TextClass.cpp	(working copy)
@@ -698,7 +698,7 @@
 		insetlayoutlist_[name] = il;
 
 		// test name for CS:
-		if (il.lyxtype == charstyle) {
+		if (il.lyxtype == charstyle || il.lyxtype == custom) {
 			charstyles().push_back(il);
 		}
 	}
Index: lib/ui/stdmenus.inc
===
--- lib/ui/stdmenus.inc	(revision 19567)
+++ lib/ui/stdmenus.inc	(working copy)
@@ -295,6 +295,7 @@
 		Submenu Float|a insert_float
 		Submenu Note|N insert_note
 		Submenu Branch|B insert_branches
+		Submenu Custom insets insert_custom
 		Submenu File|e insert_file
 		Item Box box-insert Frameless
 		Separator
@@ -404,6 +405,10 @@
 		Branches
 	End
 
+	Menu insert_custom
+		Custom
+	End
+
 #
 # DOCUMENT MENU
 #
Index: lib/layouts/stdcustom.inc
===
--- lib/layouts/stdcustom.inc	(revision 0)
+++ lib/layouts/stdcustom.inc	(revision 0)
@@ -0,0 +1,19 @@
+# Textclass definition file for LaTeX.
+# Author : Martin vermeer [EMAIL PROTECTED]
+# Custom Inset layouts definition
+
+Format 5
+
+InsetLayout Custom:Endnote
+   LyXType	custom
+   LatexName	endnote
+   LatexType	command
+   Font
+ Size	Small
+   EndFont
+   LabelString	foot
+   Preamble
+ \usepackage{endnote}
+   EndPreamble
+End
+


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Georg Baum
Andre Poenitz wrote:

 On Thu, Aug 23, 2007 at 01:11:52PM +0200, Georg Baum wrote:
 You still don't get it. All your arguments including this one and that
 in your other mail are based on the assumption that there were only
 two alternatives: full support or removal from trunk. Under this
 premise I agree completely with the removal, but that is not what has
 been requested.
 
 There was a third alternative that would have solved almost all
 problems: Keep it in trunk (with no obligation of anyone to touch it),
 and let those who care do the work to keep it up to date. With that
 alternative all your arguments are moot.
 
 No. Because even without obligation most people still would have tried to
 to put stuff in both frontends - even if they had no real interest in
 the qt3 frontend - just because they try to be nice.

Of course, because the person who did almost all of the interface changes
(Abdel, I don't count the changes that were done by a script) complained
every few days that he had to care for other frontends when he was still
supposed to care, and he was really tired of caring. The most obvious
reaction to declaring qt3 unsupported would of course have been Oh nice,
now that I don't have to care about this crap anymore that really annoyed
me I will enjoy to do it voluntarily.

Come on, this theory of eating resources is not impossible, but quite
implausible.

 And those resources would not have been available anymore for other
 work.

Do I really have to tell you that not wasted resources are not automatically
available for something else?

 1.5 was the first release in a decade that had lots of new GUI stuff.
 Releases form 0.10 on or so before 1.5 had much smaller GUI changes,
 and that's not just changes for the sake of changes but as real
 improvement. I am pretty sure some of this would not have happened if
 multiple frontends had stayed around.

Me too. Unfortunately you totally ignore the fact that none of the new stuff
that happened after Denmark until 1.5.0 was supposed to happen, and the
stuff that happened before happened _despite_ multiple frontends.

 That alternative would of course not have guaranteed that 1.5.0 would be
 released with qt3. Maybe it would indeed have been too much work to keep
 it up to date, and it would have been abandoned, but this would then have
 been the decision of _those who where doing the work_.
 
 You miss the point that we do not have unlimited resources.
 
 If qt3 lived on for a while and had been killed later even more
 resources would have gone to the kitchen sink.

And of course you are the one to decide who wastes his resources and for
what, and other developers are not entitled to decide themselves whether
they want to be nice and do silly stuff or not. If you are really serious
with that:

- Why did you not remove gtk at the same time as qt3?
- Why did you not work towards one build system far earlier, and why did you
create a fourth one?
- Why don't you stop the windows installer nonsense? The two versions are
wasting far more resouces than qt3 could have ever wasted, because there is
no date in sight for the merging, and because far more people are involved.

 What happened instead is that _you_ dictated that those should stop or
 jump through some extra hoops.
 
 And you haven't been in Greve to prevent it...

Can you please stop repeating this again and again?

You know why I have not been there (for those who don't know: I'd really
liked to be there, but I had a very good reason not to go that has nothing
to do with LyX or LyX developers).


I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.


And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal). Only as a true team you can create a great product. This
involves from time to time doing stuff that you don't like, but that must
be done.
If everybody is working on his pet projects only then the whole product will
fall apart sooner or later.

My impression (which may be wrong, because I did only skim the list from
time to time) is that exactly that happens and a common goal does not
exist.


Georg



Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread José Matos
On Friday 24 August 2007 08:22:38 Abdelrazak Younes wrote:
 Fixed. We could also offer the user a choice to revert to existing
 display or to create a new display for the same document.

 Opinions?

  When in doubt do what emacs does: create a new display for the same 
document.

 Abdel.

--
José Abílio


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Abdelrazak Younes

Georg Baum wrote:


Of course, because the person who did almost all of the interface changes
(Abdel, I don't count the changes that were done by a script) complained
every few days that he had to care for other frontends when he was still
supposed to care, and he was really tired of caring.


I plead guilty :-)


The most obvious
reaction to declaring qt3 unsupported would of course have been Oh nice,
now that I don't have to care about this crap anymore that really annoyed
me I will enjoy to do it voluntarily.


It sure would have stopped me crying if the beast was just declared 
unsupported. Others maybe not...



Do I really have to tell you that not wasted resources are not automatically
available for something else?


I am glad that you say that ;-)


I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.


Why that? The two subjects are unrelated AFAIS.



And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal).


My opinion is that we already have a bunch of new features. So, we 
should do a bit more cleaning, implement context menu and cleanup some 
dialogs (spellchecker first of all); then soft freeze the trunk in a 
month or two. XML can wait for the next round IMHO because we obviously 
don't have enough people caring for now.


Abdel.



Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread Stephan Witt

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:

 
 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager  sm)
+{
+   /// The implementation is required to avoid an application exit
+   /// when session state save is triggered by session manager.
+   /// The default implementation sends a close event to all
+   /// visible top level widgets when session managment allows
+   /// interaction.
+   /// We are changeing that to write all unsaved buffers...
+   if ( sm.allowsInteraction() ) {
+   if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the if (sm.allowsInteraction()) { style?

Stephan


Re: ftp.lyx.org not accessible.

2007-08-24 Thread Anders Ekberg

Bo Peng
Thu, 23 Aug 2007 22:56:42 -0700

anyone else see this?

Bo

Yes, attempting to download ftp://ftp.lyx.org/pub/lyx/bin/1.5.1/ 
LyX-1.5.1-1-Installer.exe from the wiki fails.


Anders


Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread Abdelrazak Younes

Stephan Witt wrote:

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:
  


 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager  sm)
+{
+/// The implementation is required to avoid an application exit
+/// when session state save is triggered by session manager.
+/// The default implementation sends a close event to all
+/// visible top level widgets when session managment allows
+/// interaction.
+/// We are changeing that to write all unsaved buffers...
+if ( sm.allowsInteraction() ) {
+ if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the if (sm.allowsInteraction()) { style?


Yes, that's what he meant. I'll go even further ;-)

if (sm.allowsInteraction()  !theBufferList().quitWriteAll())
sm.cancel();

I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


Abdel.



Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Georg Baum
Abdelrazak Younes wrote:

 Georg Baum wrote:

 I have learned my lesson. If I will fix a bug in my branch I will no more
 bring it to lyx-devel, since it only results in frustration.
 
 Why that? The two subjects are unrelated AFAIS.

No. This thread would not exist if I had not tried to put a mathed fix in
trunk. Me complaining about a compile error with qt 4.2.1 then lead to a
quick fix by Richard, a discussion about the minimum required qt version
and people trying to rewrite history.

 And the rest of you should better get a consensus on the goals for 1.6
 rather soon and then stick to that (even those who do not fully support
 each goal).
 
 My opinion is that we already have a bunch of new features. So, we
 should do a bit more cleaning, implement context menu and cleanup some
 dialogs (spellchecker first of all); then soft freeze the trunk in a
 month or two. XML can wait for the next round IMHO because we obviously
 don't have enough people caring for now.

You see? I doubt that this opinion is consensus.


Georg



Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Abdelrazak Younes

Georg Baum wrote:

Abdelrazak Younes wrote:


Georg Baum wrote:



I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.

Why that? The two subjects are unrelated AFAIS.


No. This thread would not exist if I had not tried to put a mathed fix in
trunk. Me complaining about a compile error with qt 4.2.1 then lead to a
quick fix by Richard, a discussion about the minimum required qt version
and people trying to rewrite history.


I see... difficult to follow :-)


And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal).

My opinion is that we already have a bunch of new features. So, we
should do a bit more cleaning, implement context menu and cleanup some
dialogs (spellchecker first of all); then soft freeze the trunk in a
month or two. XML can wait for the next round IMHO because we obviously
don't have enough people caring for now.


You see? I doubt that this opinion is consensus.


Well, we need to express opinions to reach consensus, don't we? I know 
that my opinions are in general not shared with old devs but this is my 
opinion :-)
I want more frequent releases, this is the only way IMHO to avoid big 
destabilization of the tree. If the XML branch is ready for writing 
_and_ reading, then we should switch now and not wait for another six 
months. If it is not ready, then I think the time frame for inclusion is 
already passed.


Abdel.



An issue about wrong PDF page size, and the hack I used to solve it

2007-08-24 Thread Andrea Censi
After updating to 1.5.0/1 from 1.4.4, I had this same issue:

http://www.mail-archive.com/[EMAIL PROTECTED]/msg55698.html

which persisted even after upgrading ImageMagick to the latest version.


In the end, I solved this problem by editing the file:

 /Applications/LyX-151.app/Contents/Resources/scripts/convertDefault.py

and changing this line:

defopt = -define pdf:use-cropbox=true

to

defopt =  

Hope this helps someone; my pdf images were created using
   pdfeTeX 3.141592-1.21a-2.2 (Web2C 7.5.4)
on Mac OS X.

I have put one such image at this address:
   http://www.dis.uniroma1.it/~acensi/pri/lyx.pdf

By the way, it seems that convertDefault.py does not use the PATH that
I set in the preferences dialog. Or it is set via an environment
variable?

-- 
Andrea Censi
  Life is too important to be taken seriously (Oscar Wilde)
Web: http://www.dis.uniroma1.it/~censi


Re: Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Georg Baum
Abdelrazak Younes wrote:

 Well, we need to express opinions to reach consensus, don't we?

Of course. I simply think that this consensus is still quite a bit away.


Georg



Vertical space in a table cell gives latex errors

2007-08-24 Thread Helge Hafting
I have a table with a tall row, because one cell is fixed-width with 
multiple lines.

In another cell I wanted to place a single symbol, preferably centered
vertically.

I tried changing the column's vertical adjustment, but this had
no effect whatsoever.

So I tried forcing my way with insert-vertical space before
and after the symbol. Latex puked on this.

Perhaps \vfill in a cell isn't supported by latex - then LyX
ought to disable the insertion as well.

Helge Hafting


Re: cmake needs update?

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 07:53:48AM +0200, Abdelrazak Younes wrote:
 Andre Poenitz wrote:
 On Thu, Aug 23, 2007 at 10:19:28PM +0200, Joost Verburg wrote:
 [EMAIL PROTECTED] wrote:
 While cmake can create MSVC projects, the current implementation does 
 not handle all the dependencies like scons does. For example, the 
 thesaurus is not supported. To create Windows releases, scons in the 
 only option right now.
 Umm... sorry if I've asked this before, but I thought the installer 
 could use a Windows executable of LyX that's been created with any build 
 system on Windows?
 Sure. If cmake is able to generate an executable linked to all 
 dependencies, I can use it instead. Currently only scons can do that.
 
 How does an executable look like that's not linked to its dependencies?
 [No joke, I really want to grasp the difference between cmake and scons]
 
 There's no difference, it's just that Thesaurus is not look for by _our_ 
 CMake system, that's all. In effect, this means that the thesaurus is 
 disabled for CMake builds.

Ah.. got it now.

Andre'


Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread Stephan Witt

Abdelrazak Younes schrieb:

Stephan Witt wrote:

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:
  


 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager  sm)
+{
+/// The implementation is required to avoid an application exit
+/// when session state save is triggered by session manager.
+/// The default implementation sends a close event to all
+/// visible top level widgets when session managment allows
+/// interaction.
+/// We are changeing that to write all unsaved buffers...
+if ( sm.allowsInteraction() ) {
+ if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the if (sm.allowsInteraction()) { style?


Yes, that's what he meant. I'll go even further ;-)

if (sm.allowsInteraction()  !theBufferList().quitWriteAll())
 sm.cancel();

I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


I tested this patch with Qt 4.1.2 and it is working without drawbacks.
AFAIK older Qt versions are not supported anymore were I had problems 
with the popping up of the dialog asking the user to confirm the file 
save operation. So two years ago the patch did not work (with Qt 3.x).

I cannot tell anything about the behaviour on Windows.
Do you need a new patch from me or will you change it yourself?
I'm online next week again.

Thanks,
Stephan


Lyx problems in importing txt2tags .tex files

2007-08-24 Thread Alexandre Santos
Hello,

I already submitted this question to the user's mailing list, but the
lack of feed back made me realize that this is probably more
appropriate for the developer's mailing list. So here it goes:

I'm using txt2tags 2.3 for windows, and LyX 1.5 on a WinXP

txt2tags (http://txt2tags.sourceforge.net/) is a python script that
can output .tex files. I would like to produce files with the txt2tags
markup and further refine them on LyX.

However I have a problem importing the .tex files produced by txt2tags
into LyX. The title and author field are missing in the .lyx file,
replaced by a clear page mention. The final .dvi lacks those fields
entirely.

Here follows a txt2tags xp1.tex file:

##
\documentclass[11pt,a4paper]{article}
\usepackage{amsfonts,graphicx}
\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}
\pagestyle{plain}   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\begin{document}
\maketitle
\clearpage

This is standard text


\section*{this is a section*}
This is more text


% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
% cmdline: txt2tags -t tex G:/MPI/xp1.t2t
\end{document}
##

And here is the corresponding xp1.lyx file:

##
#LyX file created by  tex2lyx 0.1.2
\lyxformat 245
\begin_document
\begin_header
\textclass article
\begin_preamble

\usepackage{amsfonts}

\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}

   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}

\end_preamble
\options a4paper
\language english
\inputencoding latin1
\fontscheme default
\graphics default
\paperfontsize 11
\spacing single
\papersize default
\use_geometry false
\use_amsmath 0
\cite_engine basic
\use_bibtopic false
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle plain
\tracking_changes false
\output_changes false
\end_header

\begin_body

\begin_layout Standard


\clearpage

\end_layout

\begin_layout Standard

This is standard text
\end_layout

\begin_layout Section*

this is a section*
\end_layout

\begin_layout Standard

This is more text
\end_layout

\begin_layout Standard


\begin_inset ERT
status collapsed

\begin_layout Standard

% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
\end_layout

\begin_layout Standard


\end_layout

\end_inset


\begin_inset ERT
status collapsed

\begin_layout Standard

% cmdline: txt2tags -t tex G:/MPI/xp1.t2t
\end_layout

\begin_layout Standard


\end_layout

\end_inset


\end_layout

\end_body
\end_document

##

Now, if I insert a date in the txt2tags file, the resulting LyX file
still does not display title and author, but shows the date followed
by the clear page mention. But the .dvi document shows indeed the
title, author and date, in a preceding page. Here are the files:

xp2.tex
##
\documentclass[11pt,a4paper]{article}
\usepackage{amsfonts,graphicx}
\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}
\pagestyle{plain}   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\begin{document}
\date{23.08.2007}
\maketitle
\clearpage

This is standard text


\section*{this is a section*}
This is more text


% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
% cmdline: txt2tags -t tex G:/MPI/xp2.t2t
\end{document}
##
and resulting xp2.lyx
##
#LyX 1.5.1 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
\textclass article
\begin_preamble

\usepackage{amsfonts}

\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}

   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\end_preamble
\options a4paper
\language english
\inputencoding latin1
\font_roman default
\font_sans default
\font_typewriter default
\font_default_family default
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100
\graphics default
\paperfontsize 11
\spacing single
\papersize default
\use_geometry false
\use_amsmath 0
\use_esint 0
\cite_engine basic
\use_bibtopic false

Re: Build trouble

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:17:29AM +0300, Martin Vermeer wrote:
 Commenting out this Windows-specific stanza in src/support/Makefile.am makes
 the build succeed. If I don't, it always comes back (even when trying 
 make clean) to the above error message.

It won't come back after Monday (or maybe Sunday evening). I'll remove
that Windows specific build part with my next commit.

Andre'


Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread Abdelrazak Younes

Stephan Witt wrote:

Abdelrazak Younes schrieb:
I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


I tested this patch with Qt 4.1.2 and it is working without drawbacks.
AFAIK older Qt versions are not supported anymore were I had problems 
with the popping up of the dialog asking the user to confirm the file 
save operation. So two years ago the patch did not work (with Qt 3.x).


OK, thanks for the clarification.


I cannot tell anything about the behaviour on Windows.


I'll try without the #ifdef to test it out.


Do you need a new patch from me or will you change it yourself?


No, that's fine, I'll do it.

Any objection to this patch?

Jose, do you want it for 1.5?

Abdel.



Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:01:16AM +0200, Georg Baum wrote:
  And those resources would not have been available anymore for other
  work.
 
 Do I really have to tell you that not wasted resources are not automatically
 available for something else?

No. I know that's not always the case.

 [...]
 And of course you are the one to decide who wastes his resources and for
 what, and other developers are not entitled to decide themselves whether
 they want to be nice and do silly stuff or not. If you are really serious
 with that:
 
 - Why did you not remove gtk at the same time as qt3?

One reason was that qt4 was supposed to be complete replacement to qt3
and I never really tested Gtk, so I was not sure I was not missing
something important. Another (and probably more important) reason was
that the Gtk frontend did not attract core developers, so it did not eat
the kind of resources I was concerned about.

 - Why did you not work towards one build system far earlier,

Because I did not to too much work on LyX in the last few years so the
build system creep did not really hit me. Apart from that, bot cmake and
scons are more or less invisible if they are not used, and both Peter
and Bo never complained when their respective toy was broken by someone.

The current activity is mainly triggered by my feeling that LyX building 
is so slow that it hampers development. I know for sure that each time 
_I_ tried to do some 'real' LyX work in the last few years I got
distracted by build issues quicker than the work itself was ripe.

   and why did you create a fourth one?

One reason is that I do not want a to start a shoot-out before all
potential contender had a chance to show their nice sides. A second
reason is that qmake has two abilities than none of the other three
systems have: It knows about Qt, so no special code for .ui or such
needed, and it has _real_ MSVS integration including project management,
integrated help, designer and so on based on .pro files as primary
source of information. It was also the easiest way for me to produce
dynamic libraries which I needed to test my hypothesis that using
static liking is part of the current build slowness.

Also, the final solution in the build system arena might as well be some
hybrid solution as e.g. using autoconf for the actual configuration and
using the fastest 'build backend'. 

 - Why don't you stop the windows installer nonsense?

Because I already wasted half a year of my lifetime on Windows installers
and I won't touch them even with a three yard pole unless there was a
_really good reason_. [And I doubt your purse is big enough to qualify
as _really good reason_ ;-}]

 The two versions are wasting far more resouces than qt3 could have
 ever wasted, because there is no date in sight for the merging, and
 because far more people are involved.

You may be right. I ignored that battle so far. Would you think it
helped if I just threw a dice and removed one of them [I am rather 
more than less serious here]?
 
 And the rest of you should better get a consensus on the goals for 1.6
 rather soon and then stick to that (even those who do not fully
 support each goal). 

We started a list, didn't we. What does it look like now?

Andre'


Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:43:09AM +0200, Stephan Witt wrote:
 I'll provide a modified patch when there is a need for.
 Do you want the if (sm.allowsInteraction()) { style?

Yes.

Even if it's not everyones favourite it is very beneficial to have
a uniform style to be able to do certain kinds of refactoring or
searches scriptable.

Andre'


Re: Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 12:11:49PM +0200, Abdelrazak Younes wrote:
 Well, we need to express opinions to reach consensus, don't we? I know 
 that my opinions are in general not shared with old devs but this is my 
 opinion :-)
 I want more frequent releases, this is the only way IMHO to avoid big 
 destabilization of the tree. If the XML branch is ready for writing 
 _and_ reading, then we should switch now and not wait for another six 
 months. If it is not ready, then I think the time frame for inclusion is 
 already passed.

You may actually have point here.

Andre'


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Abdelrazak Younes

Andre Poenitz wrote:

A second
reason is that qmake has two abilities than none of the other three
systems have: It knows about Qt, so no special code for .ui or such
needed, and it has _real_ MSVS integration including project management,
integrated help, designer and so on based on .pro files as primary
source of information.


Are you sure that those feature are available in the open source version 
of Qt? Don't tell your boss but we are not using the official version of 
Qt but a patched version in order to compile with MSVC.




Also, the final solution in the build system arena might as well be some
hybrid solution as e.g. using autoconf for the actual configuration and
using the fastest 'build backend'. 


I'd be OK personally with an autoconf/QMake provided that we make sure 
that the MSYS autoconf works well in this case.




- Why don't you stop the windows installer nonsense?


Because I already wasted half a year of my lifetime on Windows installers
and I won't touch them even with a three yard pole unless there was a
_really good reason_. [And I doubt your purse is big enough to qualify
as _really good reason_ ;-}]


Well, it's not like we are wasting an awful lot of resources here 
either. Up to now only Joost and Uwe are wasting their time in the 
competition. But I don't think their time would get automatically 
invested to core development if they agree (please correct me if I am 
wrong Joost and Uwe). Bo and Christian both tried to get involved and 
failed AFAIK. But I agree that this situation is utterly confusing for 
the end-users.


Abdel.



Re: Release Plan

2007-08-24 Thread Martin Vermeer
On Fri, 24 Aug 2007 14:41:27 +0200
Andre Poenitz [EMAIL PROTECTED] wrote:

 On Fri, Aug 24, 2007 at 12:11:49PM +0200, Abdelrazak Younes wrote:
  Well, we need to express opinions to reach consensus, don't we? I know 
  that my opinions are in general not shared with old devs but this is my 
  opinion :-)
  I want more frequent releases, this is the only way IMHO to avoid big 
  destabilization of the tree. If the XML branch is ready for writing 
  _and_ reading, then we should switch now and not wait for another six 
  months. If it is not ready, then I think the time frame for inclusion is 
  already passed.
 
 You may actually have point here.
 
 Andre'

I didn't expect to be saying this, but hey! Let's take some calculated risk.
José knows what state the XML patch is in, but I would say that even if it 
is only 3/4 ready, it should go in -- now. If we keep the tree compilable, it 
will all be fixed. Having some version of XML, warts-and-all, will place LyX 
closer to the mainstream. It does matter for attracting developer mindshare.

- Martin


Re: [PATCH] Layout Modularity, Part I

2007-08-24 Thread Richard Heck

Andre Poenitz wrote:
If people really want me to change all of these, I'll do so. But this 
was modeled on the existing Layout_ptr.


I guess I'll just rename Layout_ptr into LayoutPtr to avoid this in the
furture.
  
I'll change TextClass_ptr to TextClassPtr later. I don't want to do it 
now as it will involve patching the trunk, merging back into branch, 
etc, which is a pain. It'll be easier later.


Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: [PATCH] Simplify bookmars handling and further improvments...

2007-08-24 Thread Abdelrazak Younes

José Matos wrote:

On Wednesday 22 August 2007 13:40:09 Abdelrazak Younes wrote:

Jose, do you want me to proceed?


  Yes. Please coordinate with Bo since this is his code.


I've committed it.

Abdel.


Author: younes
Date: Fri Aug 24 15:53:45 2007
New Revision: 19770

URL: http://www.lyx.org/trac/changeset/19770
Log:
Bugfix: the current cursor font was not reset when going to a bookmark.


Modified:
lyx-devel/branches/BRANCH_1_5_X/src/BufferView.cpp
lyx-devel/branches/BRANCH_1_5_X/src/frontends/LyXView.cpp
lyx-devel/branches/BRANCH_1_5_X/status.15x

Modified: lyx-devel/branches/BRANCH_1_5_X/src/BufferView.cpp
URL: 
http://www.lyx.org/trac/file/lyx-devel/branches/BRANCH_1_5_X/src/BufferView.cpp?rev=19770

==
--- lyx-devel/branches/BRANCH_1_5_X/src/BufferView.cpp (original)
+++ lyx-devel/branches/BRANCH_1_5_X/src/BufferView.cpp Fri Aug 24 
15:53:45 2007

@@ -546,6 +546,7 @@
break;
}
setCursor(dit);
+   buffer_-text().setCurrentFont(cursor_);
// Note: return bottom (document) level pit.
 			return boost::make_tuple(cursor_.bottom().pit(), 
cursor_.bottom().pos(), top_id);

}
@@ -561,6 +562,7 @@
it.pit() = bottom_pit;
it.pos() = min(bottom_pos, it.paragraph().size());
setCursor(it);
+   buffer_-text().setCurrentFont(cursor_);
return boost::make_tuple(it.pit(), it.pos(),
 it.paragraph().id());
}

Modified: lyx-devel/branches/BRANCH_1_5_X/src/frontends/LyXView.cpp
URL: 
http://www.lyx.org/trac/file/lyx-devel/branches/BRANCH_1_5_X/src/frontends/LyXView.cpp?rev=19770

==
--- lyx-devel/branches/BRANCH_1_5_X/src/frontends/LyXView.cpp (original)
+++ lyx-devel/branches/BRANCH_1_5_X/src/frontends/LyXView.cpp Fri Aug 24 
15:53:45 2007

@@ -244,7 +244,6 @@
if (work_area_-bufferView().moveToPosition(pit, pos, 0, 
0).get1()) {
if (work_area_-bufferView().fitCursor())
work_area_-bufferView().updateMetrics(false);
-   
newBuffer-text().setCurrentFont(work_area_-bufferView().cursor());
updateMenubar();
updateToolbars();
updateLayoutChoice();

Modified: lyx-devel/branches/BRANCH_1_5_X/status.15x
URL: 
http://www.lyx.org/trac/file/lyx-devel/branches/BRANCH_1_5_X/status.15x?rev=19770

==
--- lyx-devel/branches/BRANCH_1_5_X/status.15x (original)
+++ lyx-devel/branches/BRANCH_1_5_X/status.15x Fri Aug 24 15:53:45 2007
@@ -80,6 +80,8 @@

 - Fix crash when using down cursor in an empty math subscript (Bug 4117).

+- Reset current cursor font when going to a bookmark.
+
 * DOCUMENTATION

 - Fix installation links for Hebrew (bug 4165)





Re: [PATCH] Layout Modularity, Part I

2007-08-24 Thread Richard Heck

Abdelrazak Younes wrote:

Abdelrazak Younes wrote:

Richard Heck wrote:
(iii) remember layout base class _and_ module in BufferParams. 
Maybe the solution is to have a global TextClassModule along the 
global TextClassList instead of having local copies of TextClass? 
Or integrate the module access to the TextClassList itself?
Changes to BufferParams don't help. The problem is in CutAndPaste, 
where we keep a copy of the TextClass in use with a given selection. 


Yes, the copy is in fact in the temporary Buffer created in 
put/pasteClipbaord. I understand that passing the TextClass is not 
nice but maybe the solution is to store the temporary Buffer instead 
of discarding it?

In effect, this would mean that this:
  typedef limited_stackpairParagraphList, textclass_type  CutStack;
is replaced by this:
  typedef limited_stackBuffer CutStack;
IIUC, the TextClass problem would vanish by itself, won't it? Maybe it 
is worth it?
Maybe. But I'm loathe to mess with CutAndPaste at this point. I don't 
understand that code (yet), as I haven't studied it.


Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Richard Heck

Martin Vermeer wrote:

I suppose attaching the patch would help.

- Martin 


On Fri, Aug 24, 2007 at 12:31:16AM +0300, Martin Vermeer wrote:
  

Finally I got where Richard was many weeks ago... the custom inset 'endnote'
works!

Or would, if I would have endnote.sty on my system.

What is now not elegant, is that the term 'charstyle' is being used for
two different things: 1) general user-definable insets, and 2) specific 
oldfashioned charstyle-type insets (the alternative now being 'custom', 
but there could be more: 'short element', e.g.)


I think I'll have to rename 'charstyle-1' to something more appropriate
(suggestions?). That will be a big but near-trivial patch.

I'll try to think about this over the next little while. I'm swamped 
right now trying to get the layout modularity stuff into trunk before 
school starts and I'm back to work


rh

- Martin





Index: src/MenuBackend.cpp
===
--- src/MenuBackend.cpp (revision 19756)
+++ src/MenuBackend.cpp (working copy)
@@ -218,6 +218,7 @@
md_documents,
md_bookmarks,
md_charstyles,
+   md_custom,
md_endmenu,
md_exportformats,
md_importformats,
@@ -240,6 +241,7 @@
{ bookmarks, md_bookmarks },
{ branches, md_branches },
{ charstyles, md_charstyles },
+   { custom, md_custom },
{ documents, md_documents },
{ end, md_endmenu },
{ exportformats, md_exportformats },
@@ -294,6 +296,10 @@
add(MenuItem(MenuItem::CharStyles));
break;
 
+		case md_custom:

+   add(MenuItem(MenuItem::Custom));
+   break;
+
case md_documents:
add(MenuItem(MenuItem::Documents));
break;
@@ -613,7 +619,7 @@
 }
 
 
-void expandCharStyleInsert(Menu  tomenu, Buffer const * buf)

+void expandCharStyleInsert(Menu  tomenu, Buffer const * buf, std::string s)
 {
if (!buf) {
tomenu.add(MenuItem(MenuItem::Command,
@@ -627,8 +633,9 @@
CharStyles::iterator end = charstyles.end();
for (; cit != end; ++cit) {
docstring const label = from_utf8(cit-name);
-   tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, label,
-   FuncRequest(LFUN_CHARSTYLE_INSERT,
+   if (cit-lyxtype == s)
+			tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, 
+label, FuncRequest(LFUN_CHARSTYLE_INSERT,

label)));
}
 }
@@ -877,9 +884,13 @@
break;
 
 		case MenuItem::CharStyles:

-   expandCharStyleInsert(tomenu, buf);
+   expandCharStyleInsert(tomenu, buf, charstyle);
break;
 
+		case MenuItem::Custom:

+   expandCharStyleInsert(tomenu, buf, custom);
+   break;
+
case MenuItem::FloatListInsert:
expandFloatListInsert(tomenu, buf);
break;
Index: src/MenuBackend.h
===
--- src/MenuBackend.h   (revision 19756)
+++ src/MenuBackend.h   (working copy)
@@ -63,6 +63,9 @@
/** This is the list of elements available
 * for insertion into document. */
CharStyles,
+   /** This is the list of user-configurable
+   insets to insert into document */
+   Custom,
/** This is the list of floats that we can
insert a list for. */
FloatListInsert,
Index: src/TextClass.cpp
===
--- src/TextClass.cpp   (revision 19756)
+++ src/TextClass.cpp   (working copy)
@@ -698,7 +698,7 @@
insetlayoutlist_[name] = il;
 
 		// test name for CS:

-   if (il.lyxtype == charstyle) {
+   if (il.lyxtype == charstyle || il.lyxtype == custom) {
charstyles().push_back(il);
}
}
Index: lib/ui/stdmenus.inc
===
--- lib/ui/stdmenus.inc (revision 19567)
+++ lib/ui/stdmenus.inc (working copy)
@@ -295,6 +295,7 @@
Submenu Float|a insert_float
Submenu Note|N insert_note
Submenu Branch|B insert_branches
+   Submenu Custom insets insert_custom
Submenu File|e insert_file
Item Box box-insert Frameless
Separator
@@ -404,6 +405,10 @@
Branches
End
 
+	Menu insert_custom

+  

Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Georg Baum
Andre Poenitz wrote:

 On Fri, Aug 24, 2007 at 10:01:16AM +0200, Georg Baum wrote:
 - Why don't you stop the windows installer nonsense?
 
 Because I already wasted half a year of my lifetime on Windows installers
 and I won't touch them even with a three yard pole unless there was a
 _really good reason_.

The windows installer problem is IMHO not a technical one, so no need to
touch any installer code.

 The two versions are wasting far more resouces than qt3 could have
 ever wasted, because there is no date in sight for the merging, and
 because far more people are involved.
 
 You may be right. I ignored that battle so far. Would you think it
 helped if I just threw a dice and removed one of them [I am rather
 more than less serious here]?

You should know by now that such dictator-like behaviour is always wrong
IMO. Besides that the problem is not that there are two installers in svn.
The problem is that there are two installers visible for the users.


Georg



Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Richard Heck



Index: lib/layouts/stdcustom.inc
===
--- lib/layouts/stdcustom.inc   (revision 0)
+++ lib/layouts/stdcustom.inc   (revision 0)
@@ -0,0 +1,19 @@
+# Textclass definition file for LaTeX.
+# Author : Martin vermeer [EMAIL PROTECTED]
+# Custom Inset layouts definition
+
+Format 5
+
+InsetLayout Custom:Endnote
+   LyXType custom
+   LatexName   endnote
+   LatexType   command
+   Font
+ Size  Small
+   EndFont
+   LabelString foot
+   Preamble
+ \usepackage{endnote}
+   EndPreamble
+End
+


I think you want endnotes.sty here, rather than endnote.sty.

Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



[Patch - 1.5] Fix bug 3427, Document Largely Off-screen on Opening

2007-08-24 Thread Abdelrazak Younes

http://bugzilla.lyx.org/show_bug.cgi?id=3427

As I cannot reproduce the problem on Windows, please test the patch on 
Unix. This patch has already been committed to trunk last week.


Abdel.
Index: src/BufferView.cpp
===
--- src/BufferView.cpp  (revision 19770)
+++ src/BufferView.cpp  (working copy)
@@ -126,7 +126,7 @@
: width_(0), height_(0), buffer_(0), wh_(0),
  cursor_(*this),
  multiparsel_cache_(false), anchor_ref_(0), offset_ref_(0),
- intl_(new Intl), last_inset_(0)
+ need_centering_(false), intl_(new Intl), last_inset_(0)
 {
xsel_cache_.set = false;
intl_-initKeyMapper(lyxrc.use_kbmap);
@@ -593,19 +593,34 @@
 }
 
 
-void BufferView::center()
+void BufferView::updateOffsetRef()
 {
+   // No need to update offset_ref_ in this case.
+   if (!need_centering_)
+   return;
+
+   // We are not properly started yet, delay until resizing is
+   // done.
+   if (height_ == 0)
+   return;
+
CursorSlice  bot = cursor_.bottom();
TextMetrics  tm = text_metrics_[bot.text()];
-   pit_type const pit = bot.pit();
-   tm.redoParagraph(pit);
-   ParagraphMetrics const  pm = tm.parMetrics(pit);
-   anchor_ref_ = pit;
-   offset_ref_ = bv_funcs::coordOffset(*this, cursor_, 
cursor_.boundary()).y_
-   + pm.ascent() - height_ / 2;
+   ParagraphMetrics const  pm = tm.parMetrics(bot.pit());
+   Point p = bv_funcs::coordOffset(*this, cursor_, cursor_.boundary());
+   offset_ref_ = p.y_ + pm.ascent() - height_ / 2;
+
+   need_centering_ = false;
 }
 
 
+void BufferView::center()
+{
+   anchor_ref_ = cursor_.bottom().pit();
+   need_centering_ = true;
+}
+
+
 FuncStatus BufferView::getStatus(FuncRequest const  cmd)
 {
FuncStatus flag;
@@ -1481,6 +1496,8 @@
if (!singlepar)
tm.redoParagraph(pit);
 
+   updateOffsetRef();
+
int y0 = tm.parMetrics(pit).ascent() - offset_ref_;
 
// Redo paragraphs above anchor if necessary.
Index: src/BufferView.h
===
--- src/BufferView.h(revision 19769)
+++ src/BufferView.h(working copy)
@@ -290,6 +290,10 @@
pit_type anchor_ref_;
///
int offset_ref_;
+   ///
+   void updateOffsetRef();
+   ///
+   bool need_centering_;
 
/// keyboard mapping object.
boost::scoped_ptrIntl const intl_;
Index: status.15x
===
--- status.15x  (revision 19770)
+++ status.15x  (working copy)
@@ -82,6 +82,8 @@
 
 - Reset current cursor font when going to a bookmark.
 
+- Fix Document Largely Off-screen on Opening (Bug 3427).
+
 * DOCUMENTATION
 
 - Fix installation links for Hebrew (bug 4165)


Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Richard Heck



Index: lib/layouts/stdcustom.inc
===
--- lib/layouts/stdcustom.inc   (revision 0)
+++ lib/layouts/stdcustom.inc   (revision 0)
@@ -0,0 +1,19 @@
+# Textclass definition file for LaTeX.
+# Author : Martin vermeer [EMAIL PROTECTED]
+# Custom Inset layouts definition
+
+Format 5
+
+InsetLayout Custom:Endnote
+   LyXType custom
+   LatexName   endnote
+   LatexType   command
+   Font
+ Size  Small
+   EndFont
+   LabelString foot
+   Preamble
+ \usepackage{endnote}
+   EndPreamble
+End
+


And the LabelString looks like a cut-and-paste error.

rh

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Abdelrazak Younes

Thomas Schmidt wrote:

Hello developers.

I have maybe a bug in Lyx 1.5.1.

If i'm inserting a float object field and delete this object directly after 
inserting (because i clicked at the wrin one) i can't insert a further float 
object. Every time i do this, lyx crashes directly.

I can produce this crash on a Windows Vista System with actual Version of Lyx. 
This evening i can test it under Windows XP and maybe on Linux (Ubuntu Feisty).

Can anyone confirm this crash? If yes, i'll make a bugreport at bugzilla.lyx.org


Ouch! Confirmed on WinXP too! Please fill-it in.

Abdel.



Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Thomas Schmidt
Hello developers.

I have maybe a bug in Lyx 1.5.1.

If i'm inserting a float object field and delete this object directly after 
inserting (because i clicked at the wrin one) i can't insert a further float 
object. Every time i do this, lyx crashes directly.

I can produce this crash on a Windows Vista System with actual Version of Lyx. 
This evening i can test it under Windows XP and maybe on Linux (Ubuntu Feisty).

Can anyone confirm this crash? If yes, i'll make a bugreport at bugzilla.lyx.org

Regards Thomas

-- 
Mit freundlichen Grüßen
Thomas Schmidt

---
Erstellt mit Operas revolutionärem E-Mail-Modul: http://www.opera.com/mail/


Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Martin Vermeer
On Fri, Aug 24, 2007 at 10:12:52AM -0400, Richard Heck wrote:
 
 Index: lib/layouts/stdcustom.inc
 ===
 --- lib/layouts/stdcustom.inc   (revision 0)
 +++ lib/layouts/stdcustom.inc   (revision 0)
 @@ -0,0 +1,19 @@
 +# Textclass definition file for LaTeX.
 +# Author : Martin vermeer [EMAIL PROTECTED]
 +# Custom Inset layouts definition
 +
 +Format 5
 +
 +InsetLayout Custom:Endnote
 +   LyXType custom
 +   LatexName   endnote
 +   LatexType   command
 +   Font
 + Size  Small
 +   EndFont
 +   LabelString foot
 +   Preamble
 + \usepackage{endnote}
 +   EndPreamble
 +End
 +
 
 And the LabelString looks like a cut-and-paste error.
 
 rh

Oops... thanks. Corrected.

- Martin



Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Abdelrazak Younes

Abdelrazak Younes wrote:

Thomas Schmidt wrote:

Hello developers.

I have maybe a bug in Lyx 1.5.1.

If i'm inserting a float object field and delete this object directly 
after inserting (because i clicked at the wrin one) i can't insert a 
further float object. Every time i do this, lyx crashes directly.


I can produce this crash on a Windows Vista System with actual Version 
of Lyx. This evening i can test it under Windows XP and maybe on Linux 
(Ubuntu Feisty).


Can anyone confirm this crash? If yes, i'll make a bugreport at 
bugzilla.lyx.org


Ouch! Confirmed on WinXP too! Please fill-it in.


Here is the backtrace for 1.5.2svn, the problem seems to be an empty 
paragraph in the new float while there should be at least one!


Abdel.

 	lyx-qt4.exe!std::vectorunsigned long,std::allocatorunsigned long 
::operator[](unsigned int _Pos=0x)  Line 741 + 0x17 bytes	C++
 	lyx-qt4.exe!lyx::Paragraph::getChar(int pos=0x)  Line 286 + 
0x1d bytes	C++


Here text_ is empty!


 	lyx-qt4.exe!lyx::Paragraph::isInset(int pos=0x)  Line 329 + 
0xc bytes	C++
 	lyx-qt4.exe!lyx::Paragraph::isHfill(int pos=0x)  Line 325 + 
0xc bytes	C++
	lyx-qt4.exe!lyx::`anonymous namespace'::numberOfHfills(const 
lyx::Paragraph  par={...}, const lyx::Row  row={...})  Line 101 + 
0xc bytes	C++
 	lyx-qt4.exe!lyx::TextMetrics::computeRowMetrics(const int 
pit=0x0001, const lyx::Row  row={...})  Line 311 + 0xd bytes	C++
 	lyx-qt4.exe!lyx::Text::cursorX(const lyx::BufferView  bv={...}, 
const lyx::CursorSlice  sl={...}, bool boundary=false)  Line 1709	C++
 	lyx-qt4.exe!lyx::InsetText::cursorPos(const lyx::BufferView  
bv={...}, const lyx::CursorSlice  sl={...}, bool boundary=false, int  
x=0x, int  y=0x)  Line 357 + 0x17 bytes	C++
 	lyx-qt4.exe!lyx::InsetCollapsable::cursorPos(const lyx::BufferView  
bv={...}, const lyx::CursorSlice  sl={...}, bool boundary=false, int  
x=0x, int  y=0x)  Line 248	C++
 	lyx-qt4.exe!lyx::bv_funcs::coordOffset(const lyx::BufferView  
bv={...}, const lyx::DocIterator  dit={...}, bool boundary=false)  Line 
168 + 0x52 bytes	C++
 	lyx-qt4.exe!lyx::bv_funcs::getPos(const lyx::BufferView  bv={...}, 
const lyx::DocIterator  dit={...}, bool boundary=false)  Line 242 + 
0x15 bytes	C++
 	lyx-qt4.exe!lyx::Cursor::getPos(int  x=0x00aa, int  
y=0x0035)  Line 421 + 0x1f bytes	C++
 	lyx-qt4.exe!lyx::Cursor::dispatch(const lyx::FuncRequest  
cmd0={...})  Line 305	C++
 	lyx-qt4.exe!lyx::Text::dispatch(lyx::Cursor  cur={...}, 
lyx::FuncRequest  cmd={...})  Line 1280 + 0x3a bytes	C++
 	lyx-qt4.exe!lyx::InsetText::doDispatch(lyx::Cursor  cur={...}, 
lyx::FuncRequest  cmd={...})  Line 264	C++
 	lyx-qt4.exe!lyx::Inset::dispatch(lyx::Cursor  cur={...}, 
lyx::FuncRequest  cmd={...})  Line 145 + 0x1a bytes	C++
 	lyx-qt4.exe!lyx::Cursor::dispatch(const lyx::FuncRequest  
cmd0={...})  Line 319	C++
 	lyx-qt4.exe!lyx::LyXFunc::dispatch(const lyx::FuncRequest  
cmd={...})  Line 1860	C++
 	lyx-qt4.exe!lyx::dispatch(const lyx::FuncRequest  action={...}) 
Line 1483	C++
 	lyx-qt4.exe!lyx::LyXView::dispatch(const lyx::FuncRequest  
cmd={...})  Line 513 + 0x9 bytes	C++




TikZ / pdftex_t support?!

2007-08-24 Thread Hans Meine
Hi!

I have been using XFig for creating images, now I want to add text on top of 
the images.  I see the following possibilities:
1) use overpic - I did that in that in the past, and IIRC I sent a feature 
request somewhere for better overpic support in LyX, but I cannot find it 
right now
2) use special text in XFig, and use the pdftex_t export to create LaTeX 
code that I include with insert-file-child document.
3) use TikZ code for achieving the same - today I wrote a .fig - .tikz 
converter (*), which outputs .tikz material that I also \include.

Now the problem that I have is, that the TeX code (i.e. the included .pdftex_t 
or .tikz files) includes images with \includegraphics{subdir/foobar.pdf/png}, 
and these files do not exist in LyX's /tmp dir.  I realized that there is a 
fig2pdftex.py, but it does not seem to take care of that.  How does this work 
for others?  (Oh, I am still using 1.4.4 - I hope that my posting is still 
valid?)

What I intuitively tried, was adding a new file format and a new copier via 
tools/preferences, but tex_copy.py does not take care of included images - 
shouldn't this considered to be a bug / missing feature?

I am using this regexp for extracting included images in my texdep (**) 
script:

re_includegraphics = re.compile(
r(?:includegraphics|begin{overpic})(\[[^]]*\])?{([^}]+)})

Ciao, /  /
 /--/
/  / ANS

* http://kogs-www.informatik.uni-hamburg.de/~meine/software/figpy/#fig2tikz
** http://kogs-www.informatik.uni-hamburg.de/~meine/software/scripts/texdep


Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Alfredo Braunstein
Abdelrazak Younes wrote:

 Abdelrazak Younes wrote:
 Thomas Schmidt wrote:
 Hello developers.

 I have maybe a bug in Lyx 1.5.1.

 If i'm inserting a float object field and delete this object directly
 after inserting (because i clicked at the wrin one) i can't insert a
 further float object. Every time i do this, lyx crashes directly.

 I can produce this crash on a Windows Vista System with actual Version
 of Lyx. This evening i can test it under Windows XP and maybe on Linux
 (Ubuntu Feisty).

 Can anyone confirm this crash? If yes, i'll make a bugreport at
 bugzilla.lyx.org
 
 Ouch! Confirmed on WinXP too! Please fill-it in.

What's the exact recipe? I cannot reproduce here (linux)

A/




Embedding Patch Comments

2007-08-24 Thread Richard Heck


Comments within.

Index: src/EmbeddedFiles.cpp
===
--- src/EmbeddedFiles.cpp   (revision 0)
+++ src/EmbeddedFiles.cpp   (revision 0)
@@ -0,0 +1,317 @@
+// -*- C++ -*-
+/**
+ * \file EmbeddedFiles.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Bo Peng
+ *
+ * Full author contact details are available in file CREDITS.
+ *
+ */
+
+#include config.h
+
+#include EmbeddedFiles.h
+#include Buffer.h
+#include BufferParams.h
+#include Paragraph.h
+#include ParIterator.h
+#include debug.h
+#include gettext.h
+#include Format.h
+
+#include frontends/alert.h
+
+#include boost/filesystem/operations.hpp
+
+#include support/filetools.h
+#include support/fs_extras.h
+#include support/convert.h
+
+#include sstream
+#include fstream
+#include utility
+
+using std::ofstream;
+using std::endl;
+using std::vector;
+using std::string;
+using std::pair;
+using std::make_pair;
+using std::istream;
+using std::ostream;
+using std::getline;
+using std::istringstream;
+
+namespace lyx {
+
+namespace fs = boost::filesystem;
+namespace Alert = frontend::Alert;
+
+using support::FileName;
+using support::DocFileName;
+using support::makeAbsPath;
+using support::addName;
+using support::onlyPath;
+using support::absolutePath;
+using support::onlyFilename;
+using support::makeRelPath;
+using support::changeExtension;
+using support::bformat;
+using support::zipFiles;
+
+
+EmbeddedFile::EmbeddedFile(string const  file, string const  inzip_name,
+   STATUS status, ParConstIterator const  pit)
+	: DocFileName(file, true), inzip_name_(inzip_name), status_(status), 
+	  par_it_(pit), valid_(true)

+{}
+
+
+string EmbeddedFile::embeddedFile(Buffer const * buf) const
+{
+   return addName(buf-temppath(), inzip_name_);
+}
+
+
+void EmbeddedFile::setParIter(ParConstIterator const  pit)
+{
+   par_it_ = pit;
+}
+
+
+bool EmbeddedFiles::enabled() const
+{
+   return buffer_-params().embedded;
+}
+
+
+void EmbeddedFiles::enable(bool flag)
+{
+   if (enabled() != flag) {
+   // file will be changed
+   buffer_-markDirty();
+   buffer_-params().embedded = flag;
+   }
+}
+
+
+void EmbeddedFiles::registerFile(string const  filename,
+   EmbeddedFile::STATUS status, ParConstIterator const  pit)
+{
+   string abs_filename = makeAbsPath(filename, 
buffer_-filePath()).absFilename();
+   // try to find this file from the list
+   FileList::iterator it;
+   for (it = file_list_.begin(); it != file_list_.end(); ++it)
  

I've been told that the LyX style is:

+   FileList::iterator it = file_list_.begin();
+   for (; it != file_list_.end(); ++it)



+void EmbeddedFiles::update()
+{
+   // invalidate all files, obsolete files will then not be validated by 
the
+   // following document scan. These files will still be kept though, 
because
+   // they may be added later and their embedding status will be meaningful
+   // again (thinking of cut/paste of an InsetInclude).
+   for (FileList::iterator it = file_list_.begin(); it != 
file_list_.end(); ++it)
+   it-invalidate();
  

Same for-style here...

+
+   for (ParIterator pit = buffer_-par_iterator_begin();
+   pit != buffer_-par_iterator_end(); ++pit)
+   // For each paragraph, traverse its insets and register 
embedded files
+   for (InsetList::const_iterator it = pit-insetlist.begin();
  

and here...

+bool EmbeddedFiles::write(DocFileName const  filename)
+{
+   bool empty = true;
+
+   for (FileList::iterator it = file_list_.begin(); it != 
file_list_.end(); ++it)
  

..and here...

+   } else {
+   // get a file list and write a manifest file
+   vectorpairstring, string  filenames;
+   string const manifest = FileName(
+   addName(buffer_-temppath(), 
manifest.txt)).toFilesystemEncoding();
+
+   // write a manifest file
+   ofstream os(manifest.c_str());
+   os  *this;
  
A comment on the previous line would help a bit. I know operator is 
below, but it's pretty opaque what this is supposed to do.

+   os.close();
+   // prepare list of embedded file
+   for (FileList::iterator it = file_list_.begin(); it != 
file_list_.end(); ++it) {
  

...and here...

+istream  operator (istream  is, EmbeddedFiles  files)
+{
+   files.clear();
+   string tmp;
+   getline(is, tmp);
+   // get version
+   istringstream itmp(tmp);
+   int version;
+   itmp.ignore(string(# lyx manifest version ).size());
+   itmp  version;
+
+   if (version != 1) {
+   lyxerr  This version of lyx can only read lyx manifest version 1 
 endl;
  

Should be LyX?

+   // manifest file may be messed up, be carefully
  
Is there explicit 

Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Alfredo Braunstein
Alfredo Braunstein wrote:


 Ouch! Confirmed on WinXP too! Please fill-it in.
 
 What's the exact recipe? I cannot reproduce here (linux)

Humm, I mean I cannot reproduce with trunk. Sorry for not being able to
read. :-/

A/




Re: Embedding Patch Comments

2007-08-24 Thread Bo Peng
Thank you for reviewing the patch.

  + for (FileList::iterator it = file_list_.begin(); it != 
  file_list_.end(); ++it)
  + it-invalidate();
 
 Same for-style here...

I am not quite sure about this style issue. Is

FileList::iterator it = file_list_.begin();
for (; it != file_list_.end(); ++it)
it-invalid();

recommended over the one I used? Jose?

Bo


Re: Embedding Patch Comments

2007-08-24 Thread Alfredo Braunstein
Bo Peng wrote:

 Thank you for reviewing the patch.
 
  + for (FileList::iterator it = file_list_.begin(); it !=
  file_list_.end(); ++it)
  + it-invalidate();
 
 Same for-style here...
 
 I am not quite sure about this style issue. Is
 
 FileList::iterator it = file_list_.begin();
 for (; it != file_list_.end(); ++it)
 it-invalid();
 
 recommended over the one I used? Jose?

I personally like much better yours (it scope is local).
In any case I think (may be wrong) LyX style is something like

FileList::iterator it = file_list_.begin();
FileList::iterator const end = file_list_.end();
for (; it != end; ++it)
it-invalid();

A/




Re: Embedding Patch Comments

2007-08-24 Thread Abdelrazak Younes

Bo Peng wrote:

Thank you for reviewing the patch.


+ for (FileList::iterator it = file_list_.begin(); it != file_list_.end(); 
++it)
+ it-invalidate();


Same for-style here...


I am not quite sure about this style issue. Is

FileList::iterator it = file_list_.begin();
for (; it != file_list_.end(); ++it)
it-invalid();

recommended over the one I used? Jose?


Not really but this one is recommended to avoid the evaluation of end() 
at each iteration:


 FileList::iterator end = file_list_.end();
 for (FileList::iterator end = file_list_.begin(); it != end; ++it)
 it-invalid();

or

 FileList::iterator it = file_list_.begin();
 FileList::iterator end = file_list_.end();
 for (; it != end; ++it)
 it-invalid();

are both fine.

Abdel.



Re: Embedding Patch Comments

2007-08-24 Thread Bo Peng
 Not really but this one is recommended to avoid the evaluation of end()
 at each iteration:

At least icc optimizes for such uses..., anyway, I will follow the convention.

Jose, can I apply (an updated patch)? I have some confidence in this
patch so it should be OK to apply. The next patch will be called
embed_basic_gui which adds a dialog with broken interaction with
buffer. I will need help on the fourth patch,
embed_buffer_interaction, and the fifth, embed_insets, which allows
insets to handle embedded files.

Cheers,
Bo


InsetCharStyle, Etc

2007-08-24 Thread Richard Heck


Martin,

Just a question about what else you've got planned here. Your last 
commit log said---and I appreciated it---that you now had the 
functionality of my old patch...though, I'll add, with a much better 
infrastructure. However, that isn't quite true, because my old patch 
allowed the Endnote inset to be collapsable as opposed to inline. Can we 
get that behavior at this point? or is this another step?


Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: [patch for [Bug 1656] command gnome-session-save kills lyx!]

2007-08-24 Thread José Matos
On Friday 24 August 2007 12:57:23 Abdelrazak Younes wrote:
 Jose, do you want it for 1.5?

  With Jürgen coming soon I will let this decision to him. :-)

  So apart from style issues (that are easily fixed) this patch can go in 
devel. :-)

 Abdel.

-- 
José Abílio


Re: LyX 1.5 patch candidate list (update)

2007-08-24 Thread Richard Heck

Michael Gerz wrote:

http://www.lyx.org/trac/changeset/19331 - Deal with a UI bug

This is a minor UI patch, but probably worth doing.
http://www.lyx.org/trac/changeset/19332 - Make LYX_ALIGN_LAYOUT always 
be an available layout

This is also very minor and not necessary, although very safe.
http://www.lyx.org/trac/changeset/19663 - fix tex4ht detection on 
older SuSE and current Debian
I added this to 1.5 already today. Georg sent it a while back, and it's 
completely safe.


I can do the other two if they are wanted.

Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: Remove unused std::time.

2007-08-24 Thread Bo Peng
 Yes. Found in ctime.

 If we don't use it, just remove it.

Done.

Bo


Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Enrico Forestieri
On Fri, Aug 24, 2007 at 09:03:13AM +0200, Abdelrazak Younes wrote:

 Enrico Forestieri wrote:
  Here is another one for you. This happens with Qt 4.1. When loading
  a second document, lyx crashes as follows:
 
 Fixed.

Great! Many thanks, Abdel.

However, there seems to be some more glitches, still. When opening
another document, the following is printed to the console:

QWidget::repaint: recursive repaint detected.
QPixmap::operator=: Cannot assign to pixmap during painting
Painter must be active to set rendering hints
[repeated many times here]
Painter must be active to set rendering hints
QPainter::end: Painter is not active, aborted
QPixmap::operator=: Cannot assign to pixmap during painting
QPixmap::operator=: Cannot assign to pixmap during painting
currentTabChanged 1File/c/work/file2.lyx

and, when closing LyX:

QPixmap::operator=: Cannot assign to pixmap during painting
QPaintDevice: Cannot destroy paint device that is being painted.  Be sure to 
QPainter::end() painters!

I suspect that solving these issues might also solve the missing close
tab button problem.

-- 
Enrico


[PATCH] Layout Modularity, Part II: The Backend

2007-08-24 Thread Richard Heck
This is one of a series of patches that will merge the layout modules 
development in personal/branches/rgheck back into the tree.


Design goal: Allow the use of layout modules, which are to LaTeX 
packages as layout files are to LaTeX document classes. Thus, one could 
have a module that defined certain character styles, environments, 
commands, or what have you, and include it in various documents, each of 
which uses a different document class, without having to modify the 
layout files themselves. For example, a theorems.module could be used 
with article.layout to provide support for theorem-type environments, 
without having to modify article.layout itself, and the same module 
could be used with book.layout, etc.


This second patch adds the backend. The ModuleList class holds a list of 
the available modules, which are retrieved from lyxmodules.lst, itself 
generated by configure.py. There are two LFUNs available: modules-clear 
and module-add, which do the obvious thing; you can test by typing these 
into the minibuffer, along with the name of one of the available 
modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the 
spaces---End To Foot (ViewLaTeX and look at the user preamble), which 
are themselves in lib/layouts. The GUI will come next. A theorems module 
will follow, when I get a chance. Other ideas more than welcome!


Issues: (i) The configure.py script could be improved. It'd be nice, for 
example, if it tested for the presence of the LaTeX packages a 
particular module needs. But this would mean re-working the LaTeX 
script, and I don't know how to do that. Note that at present, the 
packages are ignored. This will change shortly. (ii) I've used 
std::string in LyXModule, following what seemed to be a precedent in 
TextClass. If some of these should be docstrings, please let me know, 
and I'll change them. (iii) There is at present no distinction between 
LaTeX and DocBook modules. Should there be? That is: Should there be 
modules that are available when the document class is a LaTeX class and 
others that are available only when it is DocBook? Or should there just 
be one modules?


Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto

Index: src/TextClass.cpp
===
--- src/TextClass.cpp	(revision 19769)
+++ src/TextClass.cpp	(working copy)
@@ -107,6 +107,7 @@
 	  floatlist_(new FloatList), counters_(new Counters),
 	  texClassAvail_(texClassAvail)
 {
+	modular_ = false;
 	outputType_ = LATEX;
 	columns_ = 1;
 	sides_ = OneSide;
@@ -173,7 +174,7 @@
 
 
 // Reads a textclass structure from file.
-bool TextClass::read(FileName const  filename, bool merge)
+bool TextClass::read(FileName const  filename, ReadType rt)
 {
 	if (!support::isFileReadable(filename)) {
 		lyxerr  Cannot read layout file `  filename  '.
@@ -208,14 +209,21 @@
 		{ tocdepth,TC_TOCDEPTH }
 	};
 
-	if (!merge)
-		LYXERR(Debug::TCLASS)  Reading textclass 
-   to_utf8(makeDisplayPath(filename.absFilename()))
-   endl;
-	else
-		LYXERR(Debug::TCLASS)  Reading input file 
-   to_utf8(makeDisplayPath(filename.absFilename()))
-   endl;
+	switch (rt) {
+	case BASECLASS:
+		LYXERR(Debug::TCLASS)  Reading textclass ;
+		break;
+	case MERGE:
+		LYXERR(Debug::TCLASS)  Reading input file ;
+	  break;
+	case MODULE:
+		LYXERR(Debug::TCLASS)  Reading module file ;
+		break;
+	default:
+		BOOST_ASSERT(false);
+	}
+	LYXERR(Debug::TCLASS)  to_utf8(makeDisplayPath(filename.absFilename()))
+		 endl;
 
 	Lexer lexrc(textClassTags,
 		sizeof(textClassTags) / sizeof(textClassTags[0]));
@@ -264,7 +272,7 @@
 	lexrc.printError(Could not find input
 			 file:  + inc);
 	error = true;
-} else if (read(tmp, true)) {
+} else if (read(tmp, MERGE)) {
 	lexrc.printError(Error reading input
 			 file:  + tmp.absFilename());
 	error = true;
@@ -441,12 +449,20 @@
 		FileName const tempfile(support::tempName());
 		error = !layout2layout(filename, tempfile);
 		if (!error)
-			error = read(tempfile, merge);
+			error = read(tempfile, rt);
 		support::unlink(tempfile);
 		return error;
 	}
 
-	if (!merge) { // we are at top level here.
+	if (rt == MODULE) 
+		LYXERR(Debug::TCLASS)  Finished reading module file 
+ to_utf8(makeDisplayPath(filename.absFilename()))
+ endl;
+	else if (rt == MERGE)
+		LYXERR(Debug::TCLASS)  Finished reading input file 
+ to_utf8(makeDisplayPath(filename.absFilename()))
+ endl;
+	else { // we are at top level here.
 		LYXERR(Debug::TCLASS)  Finished reading textclass 
    

Re: LyX 1.5 patch candidate list (update)

2007-08-24 Thread José Matos
On Friday 24 August 2007 18:02:59 Richard Heck wrote:
 I can do the other two if they are wanted.

  Go on. :-)

 Richard

-- 
José Abílio


Re: [PATCH] Layout Modularity, Part II: The Backend

2007-08-24 Thread José Matos
On Friday 24 August 2007 18:22:39 Richard Heck wrote:
 This is one of a series of patches that will merge the layout modules
 development in personal/branches/rgheck back into the tree.

I have added this to http://wiki.lyx.org/Devel/LayoutModularity

-- 
José Abílio


Re: Lyx problems in importing txt2tags .tex files

2007-08-24 Thread José Matos
On Friday 24 August 2007 13:14:33 Alexandre Santos wrote:
 However I have a problem importing the .tex files produced by txt2tags
 into LyX. The title and author field are missing in the .lyx file,
 replaced by a clear page mention. The final .dvi lacks those fields
 entirely.

Without looking into further detail... does it works in the initial .tex 
version?

-- 
José Abílio


Re: Build trouble

2007-08-24 Thread Enrico Forestieri
On Fri, Aug 24, 2007 at 02:05:48PM +0200, Andre Poenitz wrote:

 On Fri, Aug 24, 2007 at 10:17:29AM +0300, Martin Vermeer wrote:
  Commenting out this Windows-specific stanza in src/support/Makefile.am makes
  the build succeed. If I don't, it always comes back (even when trying 
  make clean) to the above error message.
 
 It won't come back after Monday (or maybe Sunday evening). I'll remove
 that Windows specific build part with my next commit.

I am going to remove that, as it is no more needed.

Anyway Martin, seems that we both suffer the same pathology: when the
word Windows comes into play, nothing works anymore...

-- 
Enrico


Re: Embedding Patch Comments

2007-08-24 Thread Bo Peng
 Jose, can I apply (an updated patch)?

The updated patch is updated.

Bo
Index: src/insets/InsetGraphics.h
===
--- src/insets/InsetGraphics.h	(revision 19780)
+++ src/insets/InsetGraphics.h	(working copy)
@@ -78,6 +78,8 @@
 	void editGraphics(InsetGraphicsParams const , Buffer const ) const;
 	///
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
+	/// all graphics can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles , ParConstIterator const ) const;
 protected:
 	InsetGraphics(InsetGraphics const );
 	///
Index: src/insets/InsetExternal.cpp
===
--- src/insets/InsetExternal.cpp	(revision 19780)
+++ src/insets/InsetExternal.cpp	(working copy)
@@ -483,6 +483,13 @@
 }
 
 
+void InsetExternal::registerEmbeddedFiles(Buffer const ,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	files.registerFile(params_.filename.absFilename(), EmbeddedFile::AUTO, pit);
+}
+
+
 void InsetExternal::edit(Cursor  cur, bool)
 {
 	InsetExternalMailer(*this).showDialog(cur.bv());
Index: src/insets/InsetGraphics.cpp
===
--- src/insets/InsetGraphics.cpp	(revision 19780)
+++ src/insets/InsetGraphics.cpp	(working copy)
@@ -71,6 +71,7 @@
 #include Mover.h
 #include OutputParams.h
 #include sgml.h
+#include EmbeddedFiles.h
 
 #include frontends/alert.h
 
@@ -231,6 +232,14 @@
 }
 
 
+void InsetGraphics::registerEmbeddedFiles(Buffer const ,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	files.registerFile(params().filename.absFilename(), 
+		EmbeddedFile::AUTO, pit);
+}
+
+
 void InsetGraphics::edit(Cursor  cur, bool)
 {
 	InsetGraphicsMailer(*this).showDialog(cur.bv());
Index: src/insets/InsetInclude.cpp
===
--- src/insets/InsetInclude.cpp	(revision 19780)
+++ src/insets/InsetInclude.cpp	(working copy)
@@ -939,6 +939,16 @@
 }
 
 
+void InsetInclude::registerEmbeddedFiles(Buffer const  buffer,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	// include and input are temprarily not considered.
+	if (isVerbatim(params_) || isListings(params_))
+		files.registerFile(includedFilename(buffer, params_).absFilename(),
+			EmbeddedFile::AUTO, pit);
+}
+
+
 string const InsetIncludeMailer::name_(include);
 
 InsetIncludeMailer::InsetIncludeMailer(InsetInclude  inset)
Index: src/insets/Inset.h
===
--- src/insets/Inset.h	(revision 19780)
+++ src/insets/Inset.h	(working copy)
@@ -49,6 +49,7 @@
 class PainterInfo;
 class OutputParams;
 class TocList;
+class EmbeddedFiles;
 
 
 namespace graphics { class PreviewLoader; }
@@ -440,6 +441,9 @@
 	/// Add an entry to the TocList
 	/// pit is the ParConstIterator of the paragraph containing the inset
 	virtual void addToToc(TocList , Buffer const , ParConstIterator const ) const {}
+	/// report files that can be embedded with the lyx file
+	virtual void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const {};
 	/// Fill keys with BibTeX information
 	virtual void fillWithBibKeys(Buffer const ,
 		BiblioInfo , InsetIterator const ) const { return; }
Index: src/insets/InsetInclude.h
===
--- src/insets/InsetInclude.h	(revision 19780)
+++ src/insets/InsetInclude.h	(working copy)
@@ -18,6 +18,7 @@
 #include RenderButton.h
 #include MailInset.h
 #include Counters.h
+#include EmbeddedFiles.h
 
 #include support/FileName.h
 
@@ -103,6 +104,9 @@
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
 	///
 	void updateLabels(Buffer const  buffer, ParIterator const );
+	/// child document can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const;
 protected:
 	InsetInclude(InsetInclude const );
 	///
Index: src/insets/InsetExternal.h
===
--- src/insets/InsetExternal.h	(revision 19780)
+++ src/insets/InsetExternal.h	(working copy)
@@ -14,6 +14,7 @@
 
 #include Inset.h
 #include ExternalTransforms.h
+#include EmbeddedFiles.h
 
 #include support/FileName.h
 #include support/Translator.h
@@ -147,6 +148,9 @@
 	void edit(Cursor  cur, bool left);
 	///
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
+	/// external file can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const;
 
 protected:
 	InsetExternal(InsetExternal const );
Index: src/EmbeddedFiles.cpp
===
--- src/EmbeddedFiles.cpp	(revision 0)
+++ src/EmbeddedFiles.cpp	(revision 0)
@@ -0,0 +1,329 @@
+// -*- C++ -*-
+/**
+ * \file EmbeddedFiles.cpp
+ * This file is part of LyX, the document processor.
+ * Licence 

Re: Embedding Patch Comments

2007-08-24 Thread Bo Peng
 The updated patch is updated.

I guess you know what I meant. :-)

And here is another one with some minor adjustments.

Bo
Index: src/insets/InsetGraphics.h
===
--- src/insets/InsetGraphics.h	(revision 19780)
+++ src/insets/InsetGraphics.h	(working copy)
@@ -78,6 +78,8 @@
 	void editGraphics(InsetGraphicsParams const , Buffer const ) const;
 	///
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
+	/// all graphics can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles , ParConstIterator const ) const;
 protected:
 	InsetGraphics(InsetGraphics const );
 	///
Index: src/insets/InsetExternal.cpp
===
--- src/insets/InsetExternal.cpp	(revision 19780)
+++ src/insets/InsetExternal.cpp	(working copy)
@@ -483,6 +483,13 @@
 }
 
 
+void InsetExternal::registerEmbeddedFiles(Buffer const ,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	files.registerFile(params_.filename.absFilename(), EmbeddedFile::AUTO, pit);
+}
+
+
 void InsetExternal::edit(Cursor  cur, bool)
 {
 	InsetExternalMailer(*this).showDialog(cur.bv());
Index: src/insets/InsetGraphics.cpp
===
--- src/insets/InsetGraphics.cpp	(revision 19780)
+++ src/insets/InsetGraphics.cpp	(working copy)
@@ -71,6 +71,7 @@
 #include Mover.h
 #include OutputParams.h
 #include sgml.h
+#include EmbeddedFiles.h
 
 #include frontends/alert.h
 
@@ -231,6 +232,14 @@
 }
 
 
+void InsetGraphics::registerEmbeddedFiles(Buffer const ,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	files.registerFile(params().filename.absFilename(), 
+		EmbeddedFile::AUTO, pit);
+}
+
+
 void InsetGraphics::edit(Cursor  cur, bool)
 {
 	InsetGraphicsMailer(*this).showDialog(cur.bv());
Index: src/insets/InsetInclude.cpp
===
--- src/insets/InsetInclude.cpp	(revision 19780)
+++ src/insets/InsetInclude.cpp	(working copy)
@@ -939,6 +939,16 @@
 }
 
 
+void InsetInclude::registerEmbeddedFiles(Buffer const  buffer,
+	EmbeddedFiles  files, ParConstIterator const  pit) const
+{
+	// include and input are temprarily not considered.
+	if (isVerbatim(params_) || isListings(params_))
+		files.registerFile(includedFilename(buffer, params_).absFilename(),
+			EmbeddedFile::AUTO, pit);
+}
+
+
 string const InsetIncludeMailer::name_(include);
 
 InsetIncludeMailer::InsetIncludeMailer(InsetInclude  inset)
Index: src/insets/Inset.h
===
--- src/insets/Inset.h	(revision 19780)
+++ src/insets/Inset.h	(working copy)
@@ -49,6 +49,7 @@
 class PainterInfo;
 class OutputParams;
 class TocList;
+class EmbeddedFiles;
 
 
 namespace graphics { class PreviewLoader; }
@@ -440,6 +441,9 @@
 	/// Add an entry to the TocList
 	/// pit is the ParConstIterator of the paragraph containing the inset
 	virtual void addToToc(TocList , Buffer const , ParConstIterator const ) const {}
+	/// report files that can be embedded with the lyx file
+	virtual void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const {};
 	/// Fill keys with BibTeX information
 	virtual void fillWithBibKeys(Buffer const ,
 		BiblioInfo , InsetIterator const ) const { return; }
Index: src/insets/InsetInclude.h
===
--- src/insets/InsetInclude.h	(revision 19780)
+++ src/insets/InsetInclude.h	(working copy)
@@ -18,6 +18,7 @@
 #include RenderButton.h
 #include MailInset.h
 #include Counters.h
+#include EmbeddedFiles.h
 
 #include support/FileName.h
 
@@ -103,6 +104,9 @@
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
 	///
 	void updateLabels(Buffer const  buffer, ParIterator const );
+	/// child document can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const;
 protected:
 	InsetInclude(InsetInclude const );
 	///
Index: src/insets/InsetExternal.h
===
--- src/insets/InsetExternal.h	(revision 19780)
+++ src/insets/InsetExternal.h	(working copy)
@@ -14,6 +14,7 @@
 
 #include Inset.h
 #include ExternalTransforms.h
+#include EmbeddedFiles.h
 
 #include support/FileName.h
 #include support/Translator.h
@@ -147,6 +148,9 @@
 	void edit(Cursor  cur, bool left);
 	///
 	bool getStatus(Cursor , FuncRequest const , FuncStatus ) const;
+	/// external file can be embedded
+	void registerEmbeddedFiles(Buffer const , EmbeddedFiles ,
+			ParConstIterator const ) const;
 
 protected:
 	InsetExternal(InsetExternal const );
Index: src/EmbeddedFiles.cpp
===
--- src/EmbeddedFiles.cpp	(revision 0)
+++ src/EmbeddedFiles.cpp	(revision 0)
@@ -0,0 +1,329 @@
+// -*- C++ -*-
+/**
+ * \file EmbeddedFiles.cpp
+ * This file is 

Re: Build trouble

2007-08-24 Thread Martin Vermeer
On Fri, Aug 24, 2007 at 07:57:51PM +0200, Enrico Forestieri wrote:
 On Fri, Aug 24, 2007 at 02:05:48PM +0200, Andre Poenitz wrote:
 
  On Fri, Aug 24, 2007 at 10:17:29AM +0300, Martin Vermeer wrote:
   Commenting out this Windows-specific stanza in src/support/Makefile.am 
   makes
   the build succeed. If I don't, it always comes back (even when trying 
   make clean) to the above error message.
  
  It won't come back after Monday (or maybe Sunday evening). I'll remove
  that Windows specific build part with my next commit.
 
 I am going to remove that, as it is no more needed.
 
 Anyway Martin, seems that we both suffer the same pathology: when the
 word Windows comes into play, nothing works anymore...

Yes... I have the reputation among colleagues that I can make a Windows
machine crash just by walking past it ;-/

- Martin
 


Re: TikZ / pdftex_t support?!

2007-08-24 Thread Martin Vermeer
On Fri, Aug 24, 2007 at 05:33:35PM +0200, Hans Meine wrote:
 Hi!
 
 I have been using XFig for creating images, now I want to add text on top of 
 the images.  I see the following possibilities:
 1) use overpic - I did that in that in the past, and IIRC I sent a feature 
 request somewhere for better overpic support in LyX, but I cannot find it 
 right now
 2) use special text in XFig, and use the pdftex_t export to create LaTeX 
 code that I include with insert-file-child document.
 3) use TikZ code for achieving the same - today I wrote a .fig - .tikz 
 converter (*), which outputs .tikz material that I also \include.
 
 Now the problem that I have is, that the TeX code (i.e. the included 
 .pdftex_t 
 or .tikz files) includes images with \includegraphics{subdir/foobar.pdf/png}, 
 and these files do not exist in LyX's /tmp dir.  I realized that there is a 
 fig2pdftex.py, but it does not seem to take care of that.  How does this work 
 for others?  (Oh, I am still using 1.4.4 - I hope that my posting is still 
 valid?)
 
 What I intuitively tried, was adding a new file format and a new copier via 
 tools/preferences, but tex_copy.py does not take care of included images - 
 shouldn't this considered to be a bug / missing feature?
 
 I am using this regexp for extracting included images in my texdep (**) 
 script:
 
 re_includegraphics = re.compile(
   r(?:includegraphics|begin{overpic})(\[[^]]*\])?{([^}]+)})
 
 Ciao, /  /
  /--/
 /  / ANS
 
 * http://kogs-www.informatik.uni-hamburg.de/~meine/software/figpy/#fig2tikz
 ** http://kogs-www.informatik.uni-hamburg.de/~meine/software/scripts/texdep


I am also using XFig, and text in special mode, and include the figure
as external material. For me it Just Works. You don't even have to start
up a separate XFig session manually, just click the button in LyX.

HTH Martin



Re: InsetCharStyle, Etc

2007-08-24 Thread Martin Vermeer
On Fri, Aug 24, 2007 at 12:43:16PM -0400, Richard Heck wrote:
 
 Martin,
 
 Just a question about what else you've got planned here. Your last 
 commit log said---and I appreciated it---that you now had the 
 functionality of my old patch...though, I'll add, with a much better 
 infrastructure. However, that isn't quite true, because my old patch 
 allowed the Endnote inset to be collapsable as opposed to inline. Can we 
 get that behavior at this point? or is this another step?
 
 Richard

No, that doesn't work yet.

Do we need to have a parameter Geometry in the inset layout format?
I suppose it's doable.

- Martin



Re: Embedding Patch Comments

2007-08-24 Thread José Matos
On Friday 24 August 2007 20:12:07 Bo Peng wrote:
 I guess you know what I meant. :-)

 And here is another one with some minor adjustments.

  I will only look into this next Monday. :-(

  This should not dissuade other people from commenting the patch.

  Expect other bombastic revelations as I come from vacations. ;-)

  ( Actually my opinions on several of the issues that had come to this list, 
but this does not sell newspapers as the sentence above). ;-)

 Bo

-- 
José Abílio


Re: Embedding Patch Comments

2007-08-24 Thread Bo Peng
  And here is another one with some minor adjustments.

   I will only look into this next Monday. :-(

I will be happy to spend more time with my kids this weekend, so take
your time. :-)

Bo


Cleanup in CharStyles, externalize non-existent style detection

2007-08-24 Thread Martin Vermeer
The idea is in the attached patch. A lot of unnecessary stuff can disappear.

- Martin

PS What about the name for meta-charstyles? Soft Insets? That's the
next project. Perhaps after Richard's big commit.

Index: src/CutAndPaste.cpp
===
--- src/CutAndPaste.cpp	(revision 19769)
+++ src/CutAndPaste.cpp	(working copy)
@@ -455,11 +455,11 @@
 			InsetCharStyle  inset =
 static_castInsetCharStyle (*it);
 			string const name = inset.params().name;
-			CharStyles::iterator const found_cs =
-tclass2.charstyle(name);
-			if (found_cs == tclass2.charstyles().end()) {
+			InsetLayout const il = 
+tclass2.insetlayout(from_utf8(name));
+			inset.setLayout(il);
+			if (il.labelstring == from_utf8(UNDEFINED)) {
 // The character style is undefined in tclass2
-inset.setUndefined();
 docstring const s = bformat(_(
 	Character style %1$s is 
 	undefined because of class 
@@ -470,11 +470,7 @@
 errorlist.push_back(ErrorItem(
 	_(Undefined character style),
 	s, it.paragraph().id(),	it.pos(), it.pos() + 1));
-			} else if (inset.undefined()) {
-// The character style is undefined in
-// tclass1 and is defined in tclass2
-inset.setDefined(found_cs);
-			}
+			} 
 		}
 	}
 }
Index: src/TextClass.cpp
===
--- src/TextClass.cpp	(revision 19769)
+++ src/TextClass.cpp	(working copy)
@@ -698,7 +698,9 @@
 		insetlayoutlist_[name] = il;
 
 		// test name for CS:
-		if (il.lyxtype == charstyle || il.lyxtype == custom) {
+		if (il.lyxtype == charstyle 
+		 || il.lyxtype == custom
+		 || il.lyxtype == end) {
 			charstyles().push_back(il);
 		}
 	}
@@ -1011,6 +1013,14 @@
 	return *counters_.get();
 }
 
+
+// Return the layout object of an inset given by name. If the name
+// is not found as such, the part after the ':' is stripped off, and
+// searched again. In this way, an error fallback can be provided:
+// An erroneous 'CharStyle:badname' (e.g., after a documentclass switch)
+// will invoke the layout object defined by name = 'CharStyle'.
+// If that doesn't work either, an empty object returns (shouldn't
+// happen).  -- Idea JMarc, comment MV
 InsetLayout const  TextClass::insetlayout(docstring const  name) const 
 {
 	docstring n = name;
@@ -1022,23 +1032,12 @@
 			break;
 		n = n.substr(0,i);
 	}
-	static const InsetLayout empty;
+	static InsetLayout empty;
+	empty.labelstring = from_utf8(UNDEFINED);
 	return empty;
 }
 
 
-CharStyles::iterator TextClass::charstyle(string const  s) const
-{
-	CharStyles::iterator cs = charstyles().begin();
-	CharStyles::iterator csend = charstyles().end();
-	for (; cs != csend; ++cs) {
-		if (cs-name == s)
-			return cs;
-	}
-	return csend;
-}
-
-
 docstring const  TextClass::defaultLayoutName() const
 {
 	// This really should come from the actual layout... (Lgb)
Index: src/TextClass.h
===
--- src/TextClass.h	(revision 19769)
+++ src/TextClass.h	(working copy)
@@ -110,8 +110,6 @@
 	CharStyles  charstyles() const { return charstylelist_; };
 	///  Inset layouts of this doc class
 	InsetLayout const  insetlayout(docstring const  name) const;
-	/// Retrieve element of name s:
-	CharStyles::iterator charstyle(std::string const  s) const;
 	///
 	docstring const  defaultLayoutName() const;
 	///
Index: src/insets/InsetCharStyle.cpp
===
--- src/insets/InsetCharStyle.cpp	(revision 19771)
+++ src/insets/InsetCharStyle.cpp	(working copy)
@@ -48,34 +48,26 @@
 using std::ostringstream;
 
 
-void InsetCharStyle::init()
-{}
 
-
 InsetCharStyle::InsetCharStyle(BufferParams const  bp, string const s)
 	: InsetCollapsable(bp, Collapsed)
 {
 	params_.name = s;
-	setUndefined();
-	init();
 }
 
 
 InsetCharStyle::InsetCharStyle(BufferParams const  bp,
-CharStyles::iterator cs)
+InsetLayout il)
 	: InsetCollapsable(bp, Collapsed)
 {
-	params_.name = cs-name;
-	setDefined(cs);
-	init();
+	params_.name = il.name;
+	setLayout(il);
 }
 
 
 InsetCharStyle::InsetCharStyle(InsetCharStyle const  in)
 	: InsetCollapsable(in), params_(in.params_)
-{
-	init();
-}
+{}
 
 
 auto_ptrInset InsetCharStyle::doClone() const
@@ -86,27 +78,16 @@
 
 bool InsetCharStyle::undefined() const
 {
-	return layout_.latexname.empty();
+	return layout_.labelstring == from_utf8(UNDEFINED);
 }
 
 
-void InsetCharStyle::setUndefined()
+void InsetCharStyle::setLayout(InsetLayout il)
 {
-	layout_.latextype.clear();
-	layout_.latexname.clear();
-	layout_.latexparam.clear();
-	layout_.font = Font(Font::ALL_INHERIT);
-	layout_.labelfont = Font(Font::ALL_INHERIT);
-	layout_.labelfont.setColor(Color::error);
+	layout_ = il;
 }
 
 
-void InsetCharStyle::setDefined(CharStyles::iterator cs)
-{
-	layout_ = *cs;
-}
-
-
 docstring const InsetCharStyle::editMessage() const
 {
 	return _(Opened CharStyle Inset);
@@ -135,16 +116,6 @@
 	

Re: InsetCharStyle, Etc

2007-08-24 Thread Richard Heck

Martin Vermeer wrote:

On Fri, Aug 24, 2007 at 12:43:16PM -0400, Richard Heck wrote:
  

Martin,

Just a question about what else you've got planned here. Your last 
commit log said---and I appreciated it---that you now had the 
functionality of my old patch...though, I'll add, with a much better 
infrastructure. However, that isn't quite true, because my old patch 
allowed the Endnote inset to be collapsable as opposed to inline. Can we 
get that behavior at this point? or is this another step?


No, that doesn't work yet.

Do we need to have a parameter Geometry in the inset layout format?
I suppose it's doable.
  
That's close to what I had previously, though it should be easier to 
implement now.


Richard

--
==
Richard G Heck, Jr
Professor of Philosophy
Brown University
http://frege.brown.edu/heck/
==
Get my public key from http://sks.keyserver.penguin.de
Hash: 0x1DE91F1E66FFBDEC
Learn how to sign your email using Thunderbird and GnuPG at:
http://dudu.dyn.2-h.org/nist/gpg-enigmail-howto



Re: [PATCH] Layout Modularity, Part II: The Backend

2007-08-24 Thread Abdelrazak Younes

Richard Heck wrote:
This is one of a series of patches that will merge the layout modules 
development in personal/branches/rgheck back into the tree.


Some C++ comments:

Please don't forget to put a trailing dot at the end of the short title 
for Doxygen comments.



+   enum ReadType { BASECLASS, MERGE, MODULE };

Some comments are in order.


+   bool isModular() { return modular_; };
+   ///
+   bool isModular() const { return modular_; }

The first one doesn't bring anything and I am surprised actually that it 
compiles at all (I guess this is because you don't use it yet).



+   /// need to reset this.
+   void markAsModular() { modular_ = true; }

I'd prefer:

  void setModular(bool modular) { modular_ = modular; }


+   LFUN_MODULES_CLEAR,  // rgh, 20070825
+   LFUN_MODULE_ADD, // rgh, 20070825

Maybe LFUN_LAYOUT_MODULES_CLEAR/ADD to clarify the intent?


+bool BufferParams::addLayoutModule(string modName, bool makeClass) {
+   LayoutModuleList::const_iterator it = layoutModules_.begin();
+   for (; it != layoutModules_.end(); it++) {
+   if (*it == modName)
+   break;
+   }
+   if (it != layoutModules_.end())
+   return false;
+   layoutModules_.push_back(modName);
+   if (makeClass)
+   makeTextClass();
+   return true;
+}

end() is more important because it can be optimized:

+   LayoutModuleList::const_iterator it = layoutModules_.begin();
+   LayoutModuleList::const_iterator end = layoutModules_.end();
+   for (; it != end; it++)
+   if (*it == modName)
+   return false;
+
+   layoutModules_.push_back(modName);
+   if (makeClass)
+   makeTextClass();
+   return true;
+}


+bool BufferParams::addLayoutModules(std::vectorstringmodNames)
+{
+   bool retval = true;
+   std::vectorstring::const_iterator it = modNames.begin();
+   for (; it != modNames.end(); ++it)

Same comment for end().

+   retval = addLayoutModule(*it, false);

Shouldn't it be:
+   retval |= addLayoutModule(*it, false);
otherwise retval doesn't mean much. In this case retval should be 
initialised to false.


+   makeTextClass();
+   return retval;

I guess I am missing  some doxygen comments about the returned booleans.


Index: lib/configure.py
===
--- lib/configure.py(revision 19769)
+++ lib/configure.py(working copy)
@@ -639,6 +639,9 @@
 # for chkconfig.ltx
 p1 = re.compile(r'\Declare(LaTeX|DocBook)Class')
 testclasses = list()
+#for file in glob.glob( os.path.join('layouts', '*.mod') ) + \
+#glob.glob( os.path.join(srcdir, 'layouts', '*.mod' ) ) :
+#  print file

Don't comment out things, remove them if they are not needed. And if 
still needed add a FIXME to explain why these lines are commented.


Hope this helps,
Abdel.



Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

On Fri, Aug 24, 2007 at 09:03:13AM +0200, Abdelrazak Younes wrote:


Enrico Forestieri wrote:

Here is another one for you. This happens with Qt 4.1. When loading
a second document, lyx crashes as follows:

Fixed.


Great! Many thanks, Abdel.

However, there seems to be some more glitches, still. When opening
another document, the following is printed to the console:


This is fixed now but...


I suspect that solving these issues might also solve the missing close
tab button problem.


nope, the close button did not automagically appeared :-(

Abdel.



Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Abdelrazak Younes

Alfredo Braunstein wrote:

Alfredo Braunstein wrote:



Ouch! Confirmed on WinXP too! Please fill-it in.

What's the exact recipe? I cannot reproduce here (linux)


Humm, I mean I cannot reproduce with trunk. Sorry for not being able to
read. :-/


I am able to reproduce with trunk too:
1) Open a document
2) Click on the insert figure float button.
3) Move out of the float with the right arrow key
4) Backspace (the float is deleted)
5) Click again of the same button - BOOM!

Abdel.



Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Alfredo Braunstein
Abdelrazak Younes wrote:

 Humm, I mean I cannot reproduce with trunk. Sorry for not being able to
 read. :-/
 
 I am able to reproduce with trunk too:
 1) Open a document
 2) Click on the insert figure float button.

Ah! That's the culprit. Strangely, it doesn't crash here if you use menus.
Can you confirm?

A/




Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread christian . ridderstrom

On Fri, 24 Aug 2007, Abdelrazak Younes wrote:



  - Why don't you stop the windows installer nonsense?

 Because I already wasted half a year of my lifetime on Windows
 installers and I won't touch them even with a three yard pole unless
 there was a _really good reason_. [And I doubt your purse is big
 enough to qualify as _really good reason_ ;-}]


Well, it's not like we are wasting an awful lot of resources here 
either. Up to now only Joost and Uwe are wasting their time in the 
competition. But I don't think their time would get automatically 
invested to core development if they agree (please correct me if I am 
wrong Joost and Uwe). Bo and Christian both tried to get involved and 
failed AFAIK. But I agree that this situation is utterly confusing for 
the end-users.


I've spent quite a bit of time on (understanding) the installer code. 
However, I haven't given up yet, so I don't accept that we've failed.


I decide to postpone that work until 1.5 was out and stable to avoid 
delaying the release by distractions. Uwe is also doing very good work on 
the documentation, so I'd _not_ want to distract him now. And the 
discussions that will be needed will be distracting.


So, I've postponed that work to start this fall, but it's not forgotten 
nor abandonded by me.


A fresh start, discussion wise, is needed to begin with but it'll have to 
wait for a month.


/Christian

--
Christian Ridderström, +46-8-768 39 44   http://www.md.kth.se/~chr

Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread christian . ridderstrom

On Fri, 24 Aug 2007, Georg Baum wrote:


Andre Poenitz wrote:


On Fri, Aug 24, 2007 at 10:01:16AM +0200, Georg Baum wrote:

- Why don't you stop the windows installer nonsense?


Because I already wasted half a year of my lifetime on Windows installers
and I won't touch them even with a three yard pole unless there was a
_really good reason_.


The windows installer problem is IMHO not a technical one, so no need to 
touch any installer code.


I agree, the code isn't the real problem.

/C

--
Christian Ridderström, +46-8-768 39 44   http://www.md.kth.se/~chr

Re: Lyx crashed after inserting, deleting and inserting float object

2007-08-24 Thread Martin Vermeer
On Sat, Aug 25, 2007 at 12:56:55AM +0200, Alfredo Braunstein wrote:
 Abdelrazak Younes wrote:
 
  Humm, I mean I cannot reproduce with trunk. Sorry for not being able to
  read. :-/
  
  I am able to reproduce with trunk too:
  1) Open a document
  2) Click on the insert figure float button.
 
 Ah! That's the culprit. Strangely, it doesn't crash here if you use menus.
 Can you confirm?

I don't see this. Trunk, either from toolbar or menu.

- Martin
 


Grab configure.py output to a QT dialog?

2007-08-24 Thread Bo Peng
Hi, Qt experts:

Under windows, configure.py does not display anything unless you start
lyx from a terminal. This can be very confusing, for example, when lyx
starts for the first time, and freezes for 30 min to download and
install miktex packages.

I am thinking that:

1. run configure.py after lyx gets started
2. show a dialog with configure.py stdout output.

The first one should not be very difficult, but I do not know QT well
enough to do the second one. Some goggled piece says something like:

 Hook up a QSocketNotifier to your stdout.
 Then the QSocketNotifier emits a signal and you connect your slot to it.
 In your slot, you do a read on the QSocket to get your data and put it
 where ever you want.

 I have done something similar to this using QSocketDevice and
 QSocketNotifier connected to the stdout.  It worked for me.


Is this enough information for you? I guess we can add a 'showoutput'
flag Systemcall that attachs the command stdout to QSocketNotifier,
and use a very simple dialog to display the output. This is well
beyond my QT knowledge but may be easy for you guys.

Note that if QProcess already has something like this, we can use it
to replace Systemcall.

Cheers,
Bo


Re: cmake needs update?

2007-08-24 Thread Abdelrazak Younes

Bo Peng wrote:

It can not provide a platform independent way of distributing lyx,

There is no 'platform independent way of distribution'. Windows won't
like .rpm, Ubuntu won't like .msi.


I meant a uniform interface. I will be able to do 'scons rpm' under
*nix, and 'scons msi' under windows. I do not know what cmake will do.
It is likely to be 'cmake; cpack; rpmbuild'.


More info about CPack here:

http://www.cmake.org/Wiki/CMake:CPackPackageGenerators

Losts of formats supported apparently, we just need Peter (or someone 
else) to use that.


Abdel.


TGZ

Tar GZip compressed packages.
[edit] STGZ

Self extracting Tar GZip compressed packages (needs /bin/sh, tar, gunzip 
and tail for extracting).

[edit] NSIS

Nullsoft Installer. Requires NSIS for creating the package.
[edit] ZIP

ZIP compressed packages. Requires zip, WinZip or 7Zip for creating the 
package.

[edit] TBZ2

Tar BZip2 compressed packages. Requires bzip2 for creating the package.
[edit] TZ

Tar UNIX compress compressed packages.
[edit] PackageMaker (OSX only)

Mac OSX Package Maker packages. Requires Package Maker for creating the 
package.

[edit] OSXX11 (OSX only)

Mac OSX X11 Bundle. Requires hdiutil for creating the package.
[edit] CygwinBinary (Cygwin only)

Tar Bzip2 compressed Cygwin package. Requires bzip2 for creating the 
package.

[edit] CygwinSource (Cygwin only)

Tar Bzip2 compressed Cygwin source package. Requires bzip2 for creating 
the package.

[edit] DEB (UNIX only)

Debian packages. Requires only ar for creating the package. In CMake cvs 
since July 2007, will be in 2.6.0. With CPack 2.4.x you can use the 
approach described in CMakeUserUseDebian .

[edit] RPM

RPM packages are currently not supported, but you should look at the RPM 
module.




Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

On Wed, Aug 22, 2007 at 09:25:12AM +0200, Abdelrazak Younes wrote:


Enrico Forestieri wrote:

Here is another one for you. This happens with Qt 4.1. When loading
a second document, lyx crashes as follows:

Is this on windows?


Yes.


Does this happen on any document?


When trying to load any _second_ document.
Only happens with Qt 4.1, though.

Could you please 
try to disable the pixmap cache in QLPainter.cpp?


Doesn't change anything.

Here is the backtrace (part of it, as it's exceptionally long):


The backtrace is long because there is a recursive loop.


#31 0x00985248 in lyx::frontend::GuiView::update_view_state_qt ()


Ah... this update_view_state_qt() again... This message display handling 
is mess!



#32 0x0087ef89 in lyx::frontend::WorkArea::resizeBufferView ()


OK, should be easy to solve.

Abdel.



Re: Build trouble

2007-08-24 Thread Martin Vermeer
On Thu, Aug 23, 2007 at 11:18:47PM +0200, Enrico Forestieri wrote:
> On Thu, Aug 23, 2007 at 11:53:35PM +0300, Martin Vermeer wrote:
> 
> > On Thu, Aug 23, 2007 at 10:35:18PM +0200, Enrico Forestieri wrote:
> > > On Thu, Aug 23, 2007 at 11:00:57PM +0300, Martin Vermeer wrote:

...

> > > > Could swear that I had done that... second time around it bit ;-/
> > > > 
> > > > Update: At least in src/support. In src/frontends/controllers I still
> > > > get makefile errors on MONOLITHIC_CONTROLLERS, and in qt4 on 
> > > > MONOLITHIC_FRONTEND_QT4. Even when trying a couple of times. Ah well.
> > > 
> > > Try also reconfiguring explicitly.
> > 
> > Did that already :-(
> 
> Does the attached patch help?

Not really... the above problem went away by itself (probably the moon 
rose). But now I am stuck with the following automake problem:

--
Building Makefile templates...
.
src/support/Makefile.am:104: INSTALL_WINDOWS does not appear in AM_CONDITIONAL
done.
--

... and Makefile.in is not created in src/support.

Commenting out this Windows-specific stanza in src/support/Makefile.am makes
the build succeed. If I don't, it always comes back (even when trying 
make clean) to the above error message.

- Martin
 


Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

Another problem: lyx allows opening multiple times the same file.


Fixed. We could also offer the user a choice to revert to existing 
display or to create a new display for the same document.


Opinions?

Abdel.



Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread Abdelrazak Younes

Enrico Forestieri wrote:

Here is another one for you. This happens with Qt 4.1. When loading
a second document, lyx crashes as follows:


Fixed.

Abdel.



Re: [Patch] Inset configurability: separate charstyle and custom insets

2007-08-24 Thread Martin Vermeer
I suppose attaching the patch would help.

- Martin 

On Fri, Aug 24, 2007 at 12:31:16AM +0300, Martin Vermeer wrote:
> Finally I got where Richard was many weeks ago... the custom inset 'endnote'
> works!
> 
> Or would, if I would have endnote.sty on my system.
> 
> Finally I got where Richard was many weeks ago... the custom inset 'endnote'
> works!
> 
> Or would, if I would have endnote.sty on my system.
> 
> What is now not elegant, is that the term 'charstyle' is being used for
> two different things: 1) general user-definable insets, and 2) specific 
> oldfashioned charstyle-type insets (the alternative now being 'custom', 
> but there could be more: 'short element', e.g.)
> 
> I think I'll have to rename 'charstyle-1' to something more appropriate
> (suggestions?). That will be a big but near-trivial patch.
> 
> - Martin
> 
Index: src/MenuBackend.cpp
===
--- src/MenuBackend.cpp	(revision 19756)
+++ src/MenuBackend.cpp	(working copy)
@@ -218,6 +218,7 @@
 		md_documents,
 		md_bookmarks,
 		md_charstyles,
+		md_custom,
 		md_endmenu,
 		md_exportformats,
 		md_importformats,
@@ -240,6 +241,7 @@
 		{ "bookmarks", md_bookmarks },
 		{ "branches", md_branches },
 		{ "charstyles", md_charstyles },
+		{ "custom", md_custom },
 		{ "documents", md_documents },
 		{ "end", md_endmenu },
 		{ "exportformats", md_exportformats },
@@ -294,6 +296,10 @@
 			add(MenuItem(MenuItem::CharStyles));
 			break;
 
+		case md_custom:
+			add(MenuItem(MenuItem::Custom));
+			break;
+
 		case md_documents:
 			add(MenuItem(MenuItem::Documents));
 			break;
@@ -613,7 +619,7 @@
 }
 
 
-void expandCharStyleInsert(Menu & tomenu, Buffer const * buf)
+void expandCharStyleInsert(Menu & tomenu, Buffer const * buf, std::string s)
 {
 	if (!buf) {
 		tomenu.add(MenuItem(MenuItem::Command,
@@ -627,8 +633,9 @@
 	CharStyles::iterator end = charstyles.end();
 	for (; cit != end; ++cit) {
 		docstring const label = from_utf8(cit->name);
-		tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, label,
-FuncRequest(LFUN_CHARSTYLE_INSERT,
+		if (cit->lyxtype == s)
+			tomenu.addWithStatusCheck(MenuItem(MenuItem::Command, 
+label, FuncRequest(LFUN_CHARSTYLE_INSERT,
 		label)));
 	}
 }
@@ -877,9 +884,13 @@
 			break;
 
 		case MenuItem::CharStyles:
-			expandCharStyleInsert(tomenu, buf);
+			expandCharStyleInsert(tomenu, buf, "charstyle");
 			break;
 
+		case MenuItem::Custom:
+			expandCharStyleInsert(tomenu, buf, "custom");
+			break;
+
 		case MenuItem::FloatListInsert:
 			expandFloatListInsert(tomenu, buf);
 			break;
Index: src/MenuBackend.h
===
--- src/MenuBackend.h	(revision 19756)
+++ src/MenuBackend.h	(working copy)
@@ -63,6 +63,9 @@
 		/** This is the list of elements available
 		 * for insertion into document. */
 		CharStyles,
+		/** This is the list of user-configurable
+		insets to insert into document */
+		Custom,
 		/** This is the list of floats that we can
 		insert a list for. */
 		FloatListInsert,
Index: src/TextClass.cpp
===
--- src/TextClass.cpp	(revision 19756)
+++ src/TextClass.cpp	(working copy)
@@ -698,7 +698,7 @@
 		insetlayoutlist_[name] = il;
 
 		// test name for CS:
-		if (il.lyxtype == "charstyle") {
+		if (il.lyxtype == "charstyle" || il.lyxtype == "custom") {
 			charstyles().push_back(il);
 		}
 	}
Index: lib/ui/stdmenus.inc
===
--- lib/ui/stdmenus.inc	(revision 19567)
+++ lib/ui/stdmenus.inc	(working copy)
@@ -295,6 +295,7 @@
 		Submenu "Float|a" "insert_float"
 		Submenu "Note|N" "insert_note"
 		Submenu "Branch|B" "insert_branches"
+		Submenu "Custom insets" "insert_custom"
 		Submenu "File|e" "insert_file"
 		Item "Box" "box-insert Frameless"
 		Separator
@@ -404,6 +405,10 @@
 		Branches
 	End
 
+	Menu "insert_custom"
+		Custom
+	End
+
 #
 # DOCUMENT MENU
 #
Index: lib/layouts/stdcustom.inc
===
--- lib/layouts/stdcustom.inc	(revision 0)
+++ lib/layouts/stdcustom.inc	(revision 0)
@@ -0,0 +1,19 @@
+# Textclass definition file for LaTeX.
+# Author : Martin vermeer <[EMAIL PROTECTED]>
+# Custom Inset layouts definition
+
+Format 5
+
+InsetLayout Custom:Endnote
+   LyXType	custom
+   LatexName	endnote
+   LatexType	command
+   Font
+ Size	Small
+   EndFont
+   LabelString	foot
+   Preamble
+ \usepackage{endnote}
+   EndPreamble
+End
+


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Georg Baum
Andre Poenitz wrote:

> On Thu, Aug 23, 2007 at 01:11:52PM +0200, Georg Baum wrote:
>> You still don't get it. All your arguments including this one and that
>> in your other mail are based on the assumption that there were only
>> two alternatives: full support or removal from trunk. Under this
>> premise I agree completely with the removal, but that is not what has
>> been requested.
>> 
>> There was a third alternative that would have solved almost all
>> problems: Keep it in trunk (with no obligation of anyone to touch it),
>> and let those who care do the work to keep it up to date. With that
>> alternative all your arguments are moot.
> 
> No. Because even without obligation most people still would have tried to
> to put stuff in both frontends - even if they had no real interest in
> the qt3 frontend - just because they try to be nice.

Of course, because the person who did almost all of the interface changes
(Abdel, I don't count the changes that were done by a script) complained
every few days that he had to care for other frontends when he was still
supposed to care, and he was really tired of caring. The most obvious
reaction to declaring qt3 unsupported would of course have been "Oh nice,
now that I don't have to care about this crap anymore that really annoyed
me I will enjoy to do it voluntarily".

Come on, this theory of eating resources is not impossible, but quite
implausible.

> And those resources would not have been available anymore for other
> work.

Do I really have to tell you that not wasted resources are not automatically
available for something else?

> 1.5 was the first release in a decade that had lots of new GUI stuff.
> Releases form 0.10 on or so before 1.5 had much smaller GUI changes,
> and that's not just changes for the sake of changes but as real
> improvement. I am pretty sure some of this would not have happened if
> multiple frontends had stayed around.

Me too. Unfortunately you totally ignore the fact that none of the new stuff
that happened after Denmark until 1.5.0 was supposed to happen, and the
stuff that happened before happened _despite_ multiple frontends.

>> That alternative would of course not have guaranteed that 1.5.0 would be
>> released with qt3. Maybe it would indeed have been too much work to keep
>> it up to date, and it would have been abandoned, but this would then have
>> been the decision of _those who where doing the work_.
> 
> You miss the point that we do not have unlimited resources.
> 
> If qt3 lived on for a while and had been killed later even more
> resources would have gone to the kitchen sink.

And of course you are the one to decide who wastes his resources and for
what, and other developers are not entitled to decide themselves whether
they want to be "nice" and do silly stuff or not. If you are really serious
with that:

- Why did you not remove gtk at the same time as qt3?
- Why did you not work towards one build system far earlier, and why did you
create a fourth one?
- Why don't you stop the windows installer nonsense? The two versions are
wasting far more resouces than qt3 could have ever wasted, because there is
no date in sight for the merging, and because far more people are involved.

>> What happened instead is that _you_ dictated that those should stop or
>> jump through some extra hoops.
> 
> And you haven't been in Greve to prevent it...

Can you please stop repeating this again and again?

You know why I have not been there (for those who don't know: I'd really
liked to be there, but I had a very good reason not to go that has nothing
to do with LyX or LyX developers).


I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.


And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal). Only as a true team you can create a great product. This
involves from time to time doing stuff that you don't like, but that must
be done.
If everybody is working on his pet projects only then the whole product will
fall apart sooner or later.

My impression (which may be wrong, because I did only skim the list from
time to time) is that exactly that happens and a common goal does not
exist.


Georg



Re: [Updated PATCH] BufferView/WorkArea/LyXView reorg a.k.a Multiple WorkAreas

2007-08-24 Thread José Matos
On Friday 24 August 2007 08:22:38 Abdelrazak Younes wrote:
> Fixed. We could also offer the user a choice to revert to existing
> display or to create a new display for the same document.
>
> Opinions?

  When in doubt do what emacs does: create a new display for the same 
document.

> Abdel.

--
José Abílio


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Abdelrazak Younes

Georg Baum wrote:


Of course, because the person who did almost all of the interface changes
(Abdel, I don't count the changes that were done by a script) complained
every few days that he had to care for other frontends when he was still
supposed to care, and he was really tired of caring.


I plead guilty :-)


The most obvious
reaction to declaring qt3 unsupported would of course have been "Oh nice,
now that I don't have to care about this crap anymore that really annoyed
me I will enjoy to do it voluntarily".


It sure would have stopped me crying if the beast was just declared 
unsupported. Others maybe not...



Do I really have to tell you that not wasted resources are not automatically
available for something else?


I am glad that you say that ;-)


I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.


Why that? The two subjects are unrelated AFAIS.



And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal).


My opinion is that we already have a bunch of new features. So, we 
should do a bit more cleaning, implement context menu and cleanup some 
dialogs (spellchecker first of all); then soft freeze the trunk in a 
month or two. XML can wait for the next round IMHO because we obviously 
don't have enough people caring for now.


Abdel.



Re: [patch for [Bug 1656] command "gnome-session-save" kills lyx!]

2007-08-24 Thread Stephan Witt

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:

 
 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager & sm)
+{
+   /// The implementation is required to avoid an application exit
+   /// when session state save is triggered by session manager.
+   /// The default implementation sends a close event to all
+   /// visible top level widgets when session managment allows
+   /// interaction.
+   /// We are changeing that to write all unsaved buffers...
+   if ( sm.allowsInteraction() ) {
+   if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the "if (sm.allowsInteraction()) {" style?

Stephan


Re: ftp.lyx.org not accessible.

2007-08-24 Thread Anders Ekberg

Bo Peng
Thu, 23 Aug 2007 22:56:42 -0700

anyone else see this?

Bo

Yes, attempting to download ftp://ftp.lyx.org/pub/lyx/bin/1.5.1/ 
LyX-1.5.1-1-Installer.exe from the wiki fails.


Anders


Re: [patch for [Bug 1656] command "gnome-session-save" kills lyx!]

2007-08-24 Thread Abdelrazak Younes

Stephan Witt wrote:

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:
  


 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager & sm)
+{
+/// The implementation is required to avoid an application exit
+/// when session state save is triggered by session manager.
+/// The default implementation sends a close event to all
+/// visible top level widgets when session managment allows
+/// interaction.
+/// We are changeing that to write all unsaved buffers...
+if ( sm.allowsInteraction() ) {
+ if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the "if (sm.allowsInteraction()) {" style?


Yes, that's what he meant. I'll go even further ;-)

if (sm.allowsInteraction() && !theBufferList().quitWriteAll())
sm.cancel();

I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


Abdel.



Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Georg Baum
Abdelrazak Younes wrote:

> Georg Baum wrote:

>> I have learned my lesson. If I will fix a bug in my branch I will no more
>> bring it to lyx-devel, since it only results in frustration.
> 
> Why that? The two subjects are unrelated AFAIS.

No. This thread would not exist if I had not tried to put a mathed fix in
trunk. Me complaining about a compile error with qt 4.2.1 then lead to a
quick fix by Richard, a discussion about the minimum required qt version
and people trying to rewrite history.

>> And the rest of you should better get a consensus on the goals for 1.6
>> rather soon and then stick to that (even those who do not fully support
>> each goal).
> 
> My opinion is that we already have a bunch of new features. So, we
> should do a bit more cleaning, implement context menu and cleanup some
> dialogs (spellchecker first of all); then soft freeze the trunk in a
> month or two. XML can wait for the next round IMHO because we obviously
> don't have enough people caring for now.

You see? I doubt that this opinion is consensus.


Georg



Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Abdelrazak Younes

Georg Baum wrote:

Abdelrazak Younes wrote:


Georg Baum wrote:



I have learned my lesson. If I will fix a bug in my branch I will no more
bring it to lyx-devel, since it only results in frustration.

Why that? The two subjects are unrelated AFAIS.


No. This thread would not exist if I had not tried to put a mathed fix in
trunk. Me complaining about a compile error with qt 4.2.1 then lead to a
quick fix by Richard, a discussion about the minimum required qt version
and people trying to rewrite history.


I see... difficult to follow :-)


And the rest of you should better get a consensus on the goals for 1.6
rather soon and then stick to that (even those who do not fully support
each goal).

My opinion is that we already have a bunch of new features. So, we
should do a bit more cleaning, implement context menu and cleanup some
dialogs (spellchecker first of all); then soft freeze the trunk in a
month or two. XML can wait for the next round IMHO because we obviously
don't have enough people caring for now.


You see? I doubt that this opinion is consensus.


Well, we need to express opinions to reach consensus, don't we? I know 
that my opinions are in general not shared with old devs but this is my 
opinion :-)
I want more frequent releases, this is the only way IMHO to avoid big 
destabilization of the tree. If the XML branch is ready for writing 
_and_ reading, then we should switch now and not wait for another six 
months. If it is not ready, then I think the time frame for inclusion is 
already passed.


Abdel.



An issue about wrong PDF page size, and the hack I used to solve it

2007-08-24 Thread Andrea Censi
After updating to 1.5.0/1 from 1.4.4, I had this same issue:

http://www.mail-archive.com/[EMAIL PROTECTED]/msg55698.html

which persisted even after upgrading ImageMagick to the latest version.


In the end, I solved this problem by editing the file:

 /Applications/LyX-151.app/Contents/Resources/scripts/convertDefault.py

and changing this line:

defopt = "-define pdf:use-cropbox=true"

to

defopt = " "

Hope this helps someone; my pdf images were created using
   pdfeTeX 3.141592-1.21a-2.2 (Web2C 7.5.4)
on Mac OS X.

I have put one such image at this address:
   http://www.dis.uniroma1.it/~acensi/pri/lyx.pdf

By the way, it seems that convertDefault.py does not use the PATH that
I set in the preferences dialog. Or it is set via an environment
variable?

-- 
Andrea Censi
  "Life is too important to be taken seriously" (Oscar Wilde)
Web: http://www.dis.uniroma1.it/~censi


Re: Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Georg Baum
Abdelrazak Younes wrote:

> Well, we need to express opinions to reach consensus, don't we?

Of course. I simply think that this consensus is still quite a bit away.


Georg



Vertical space in a table cell gives latex errors

2007-08-24 Thread Helge Hafting
I have a table with a tall row, because one cell is fixed-width with 
multiple lines.

In another cell I wanted to place a single symbol, preferably centered
vertically.

I tried changing the column's vertical adjustment, but this had
no effect whatsoever.

So I tried forcing my way with insert->vertical space before
and after the symbol. Latex puked on this.

Perhaps \vfill in a cell isn't supported by latex - then LyX
ought to disable the insertion as well.

Helge Hafting


Re: cmake needs update?

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 07:53:48AM +0200, Abdelrazak Younes wrote:
> Andre Poenitz wrote:
> >On Thu, Aug 23, 2007 at 10:19:28PM +0200, Joost Verburg wrote:
> >>[EMAIL PROTECTED] wrote:
> While cmake can create MSVC projects, the current implementation does 
> not handle all the dependencies like scons does. For example, the 
> thesaurus is not supported. To create Windows releases, scons in the 
> only option right now.
> >>>Umm... sorry if I've asked this before, but I thought the installer 
> >>>could use a Windows executable of LyX that's been created with any build 
> >>>system on Windows?
> >>Sure. If cmake is able to generate an executable linked to all 
> >>dependencies, I can use it instead. Currently only scons can do that.
> >
> >How does an executable look like that's not linked to its dependencies?
> >[No joke, I really want to grasp the difference between cmake and scons]
> 
> There's no difference, it's just that Thesaurus is not look for by _our_ 
> CMake system, that's all. In effect, this means that the thesaurus is 
> disabled for CMake builds.

Ah.. got it now.

Andre'


Re: [patch for [Bug 1656] command "gnome-session-save" kills lyx!]

2007-08-24 Thread Stephan Witt

Abdelrazak Younes schrieb:

Stephan Witt wrote:

Andre Poenitz schrieb:

On Tue, Aug 21, 2007 at 10:31:57AM +0200, Stephan Witt wrote:
  


 // X11 specific stuff goes here...
 #ifdef Q_WS_X11
+
+void GuiApplication::commitData(QSessionManager & sm)
+{
+/// The implementation is required to avoid an application exit
+/// when session state save is triggered by session manager.
+/// The default implementation sends a close event to all
+/// visible top level widgets when session managment allows
+/// interaction.
+/// We are changeing that to write all unsaved buffers...
+if ( sm.allowsInteraction() ) {
+ if ( !theBufferList().quitWriteAll() ) {


Spacing.


Thanks. Very clear. Did you try it?

I'll provide a modified patch when there is a need for.
Do you want the "if (sm.allowsInteraction()) {" style?


Yes, that's what he meant. I'll go even further ;-)

if (sm.allowsInteraction() && !theBufferList().quitWriteAll())
 sm.cancel();

I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


I tested this patch with Qt 4.1.2 and it is working without drawbacks.
AFAIK older Qt versions are not supported anymore were I had problems 
with the popping up of the dialog asking the user to confirm the file 
save operation. So two years ago the patch did not work (with Qt 3.x).

I cannot tell anything about the behaviour on Windows.
Do you need a new patch from me or will you change it yourself?
I'm online next week again.

Thanks,
Stephan


Lyx problems in importing txt2tags .tex files

2007-08-24 Thread Alexandre Santos
Hello,

I already submitted this question to the user's mailing list, but the
lack of feed back made me realize that this is probably more
appropriate for the developer's mailing list. So here it goes:

I'm using txt2tags 2.3 for windows, and LyX 1.5 on a WinXP

txt2tags (http://txt2tags.sourceforge.net/) is a python script that
can output .tex files. I would like to produce files with the txt2tags
markup and further refine them on LyX.

However I have a problem importing the .tex files produced by txt2tags
into LyX. The title and author field are missing in the .lyx file,
replaced by a "clear page" mention. The final .dvi lacks those fields
entirely.

Here follows a txt2tags xp1.tex file:

##
\documentclass[11pt,a4paper]{article}
\usepackage{amsfonts,graphicx}
\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}
\pagestyle{plain}   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\begin{document}
\maketitle
\clearpage

This is standard text


\section*{this is a section*}
This is more text


% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
% cmdline: txt2tags -t tex G:/MPI/xp1.t2t
\end{document}
##

And here is the corresponding xp1.lyx file:

##
#LyX file created by  tex2lyx 0.1.2
\lyxformat 245
\begin_document
\begin_header
\textclass article
\begin_preamble

\usepackage{amsfonts}

\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}

   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}

\end_preamble
\options a4paper
\language english
\inputencoding latin1
\fontscheme default
\graphics default
\paperfontsize 11
\spacing single
\papersize default
\use_geometry false
\use_amsmath 0
\cite_engine basic
\use_bibtopic false
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle plain
\tracking_changes false
\output_changes false
\end_header

\begin_body

\begin_layout Standard


\clearpage

\end_layout

\begin_layout Standard

This is standard text
\end_layout

\begin_layout Section*

this is a section*
\end_layout

\begin_layout Standard

This is more text
\end_layout

\begin_layout Standard


\begin_inset ERT
status collapsed

\begin_layout Standard

% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
\end_layout

\begin_layout Standard


\end_layout

\end_inset


\begin_inset ERT
status collapsed

\begin_layout Standard

% cmdline: txt2tags -t tex G:/MPI/xp1.t2t
\end_layout

\begin_layout Standard


\end_layout

\end_inset


\end_layout

\end_body
\end_document

##

Now, if I insert a date in the txt2tags file, the resulting LyX file
still does not display title and author, but shows the date followed
by the "clear page" mention. But the .dvi document shows indeed the
title, author and date, in a preceding page. Here are the files:

xp2.tex
##
\documentclass[11pt,a4paper]{article}
\usepackage{amsfonts,graphicx}
\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}
\pagestyle{plain}   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\begin{document}
\date{23.08.2007}
\maketitle
\clearpage

This is standard text


\section*{this is a section*}
This is more text


% LaTeX2e code generated by txt2tags 2.3 (http://txt2tags.sf.net)
% cmdline: txt2tags -t tex G:/MPI/xp2.t2t
\end{document}
##
and resulting xp2.lyx
##
#LyX 1.5.1 created this file. For more info see http://www.lyx.org/
\lyxformat 276
\begin_document
\begin_header
\textclass article
\begin_preamble

\usepackage{amsfonts}

\usepackage[pdfstartview=FitH,urlcolor=blue,colorlinks=true,bookmarks=true]{hyperref}

   % do page numbering ('empty' turns off)
\frenchspacing  % no aditional spaces after periods
\setlength{\parskip}{8pt}\parindent=0pt  % no paragraph indentation

\title{This is a title}
\author{I'm the author}
\end_preamble
\options a4paper
\language english
\inputencoding latin1
\font_roman default
\font_sans default
\font_typewriter default
\font_default_family default
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100
\graphics default
\paperfontsize 11
\spacing single
\papersize default
\use_geometry false
\use_amsmath 0
\use_esint 0
\cite_engine basic
\use_bibtopic false

Re: Build trouble

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:17:29AM +0300, Martin Vermeer wrote:
> Commenting out this Windows-specific stanza in src/support/Makefile.am makes
> the build succeed. If I don't, it always comes back (even when trying 
> make clean) to the above error message.

It won't come back after Monday (or maybe Sunday evening). I'll remove
that Windows specific build part with my next commit.

Andre'


Re: [patch for [Bug 1656] command "gnome-session-save" kills lyx!]

2007-08-24 Thread Abdelrazak Younes

Stephan Witt wrote:

Abdelrazak Younes schrieb:
I am OK with the patch but I would like to know first if there are any 
drawbacks, I am not on X11.


I tested this patch with Qt 4.1.2 and it is working without drawbacks.
AFAIK older Qt versions are not supported anymore were I had problems 
with the popping up of the dialog asking the user to confirm the file 
save operation. So two years ago the patch did not work (with Qt 3.x).


OK, thanks for the clarification.


I cannot tell anything about the behaviour on Windows.


I'll try without the #ifdef to test it out.


Do you need a new patch from me or will you change it yourself?


No, that's fine, I'll do it.

Any objection to this patch?

Jose, do you want it for 1.5?

Abdel.



Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:01:16AM +0200, Georg Baum wrote:
> > And those resources would not have been available anymore for other
> > work.
> 
> Do I really have to tell you that not wasted resources are not automatically
> available for something else?

No. I know that's not always the case.

> [...]
> And of course you are the one to decide who wastes his resources and for
> what, and other developers are not entitled to decide themselves whether
> they want to be "nice" and do silly stuff or not. If you are really serious
> with that:
> 
> - Why did you not remove gtk at the same time as qt3?

One reason was that qt4 was supposed to be complete replacement to qt3
and I never really tested Gtk, so I was not sure I was not missing
something important. Another (and probably more important) reason was
that the Gtk frontend did not attract core developers, so it did not eat
the kind of resources I was concerned about.

> - Why did you not work towards one build system far earlier,

Because I did not to too much work on LyX in the last few years so the
build system creep did not really hit me. Apart from that, bot cmake and
scons are more or less invisible if they are not used, and both Peter
and Bo never complained when their respective toy was broken by someone.

The current activity is mainly triggered by my feeling that LyX building 
is so slow that it hampers development. I know for sure that each time 
_I_ tried to do some 'real' LyX work in the last few years I got
distracted by build issues quicker than the work itself was ripe.

>   and why did you create a fourth one?

One reason is that I do not want a to start a shoot-out before all
potential contender had a chance to show their nice sides. A second
reason is that qmake has two abilities than none of the other three
systems have: It knows about Qt, so no special code for .ui or such
needed, and it has _real_ MSVS integration including project management,
integrated help, designer and so on based on .pro files as primary
source of information. It was also the easiest way for me to produce
dynamic libraries which I needed to test my hypothesis that using
static liking is part of the current build slowness.

Also, the final solution in the build system arena might as well be some
hybrid solution as e.g. using autoconf for the actual configuration and
using the fastest 'build backend'. 

> - Why don't you stop the windows installer nonsense?

Because I already wasted half a year of my lifetime on Windows installers
and I won't touch them even with a three yard pole unless there was a
_really good reason_. [And I doubt your purse is big enough to qualify
as "_really good reason_" ;-}]

> The two versions are wasting far more resouces than qt3 could have
> ever wasted, because there is no date in sight for the merging, and
> because far more people are involved.

You may be right. I ignored that battle so far. Would you think it
helped if I just threw a dice and removed one of them [I am rather 
more than less serious here]?
 
> And the rest of you should better get a consensus on the goals for 1.6
> rather soon and then stick to that (even those who do not fully
> support each goal). 

We started a list, didn't we. What does it look like now?

Andre'


Re: [patch for [Bug 1656] command "gnome-session-save" kills lyx!]

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 10:43:09AM +0200, Stephan Witt wrote:
> I'll provide a modified patch when there is a need for.
> Do you want the "if (sm.allowsInteraction()) {" style?

Yes.

Even if it's not everyones favourite it is very beneficial to have
a uniform style to be able to do certain kinds of refactoring or
searches scriptable.

Andre'


Re: Release Plan (was Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui)

2007-08-24 Thread Andre Poenitz
On Fri, Aug 24, 2007 at 12:11:49PM +0200, Abdelrazak Younes wrote:
> Well, we need to express opinions to reach consensus, don't we? I know 
> that my opinions are in general not shared with old devs but this is my 
> opinion :-)
> I want more frequent releases, this is the only way IMHO to avoid big 
> destabilization of the tree. If the XML branch is ready for writing 
> _and_ reading, then we should switch now and not wait for another six 
> months. If it is not ready, then I think the time frame for inclusion is 
> already passed.

You may actually have point here.

Andre'


Re: r19659 - /lyx-devel/trunk/src/frontends/qt4/ui/CitationUi.ui

2007-08-24 Thread Abdelrazak Younes

Andre Poenitz wrote:

A second
reason is that qmake has two abilities than none of the other three
systems have: It knows about Qt, so no special code for .ui or such
needed, and it has _real_ MSVS integration including project management,
integrated help, designer and so on based on .pro files as primary
source of information.


Are you sure that those feature are available in the open source version 
of Qt? Don't tell your boss but we are not using the official version of 
Qt but a patched version in order to compile with MSVC.




Also, the final solution in the build system arena might as well be some
hybrid solution as e.g. using autoconf for the actual configuration and
using the fastest 'build backend'. 


I'd be OK personally with an autoconf/QMake provided that we make sure 
that the MSYS autoconf works well in this case.




- Why don't you stop the windows installer nonsense?


Because I already wasted half a year of my lifetime on Windows installers
and I won't touch them even with a three yard pole unless there was a
_really good reason_. [And I doubt your purse is big enough to qualify
as "_really good reason_" ;-}]


Well, it's not like we are wasting an awful lot of resources here 
either. Up to now only Joost and Uwe are wasting their time in the 
competition. But I don't think their time would get automatically 
invested to core development if they agree (please correct me if I am 
wrong Joost and Uwe). Bo and Christian both tried to get involved and 
failed AFAIK. But I agree that this situation is utterly confusing for 
the end-users.


Abdel.



  1   2   >