The muscial Lyx

2006-11-02 Thread Jonathan Vogt
Hi all,

I found something funny this morning. When copying from one window to the 
other one of the same lyx instance using the middle mouse button on Linux, 
LyX inserts some musical notes. When using STRG+C and STRG+V they don't 
appear. I don't know what info to provide, except a screen shot.

have a good day
Jonathan


lyx2.png
Description: PNG image


Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Enrico Forestieri
On Thu, Nov 02, 2006 at 07:32:21AM +, José Matos wrote:

 On Thursday 02 November 2006 6:11 am, Enrico Forestieri wrote:
  Georg, I think you forgot to update src/ChangeLog.
 
   Another reason why having 1.5 as the stable series is an beneficial. ;-)

I actually like having ChangeLog files in the sources ;-)

-- 
Enrico


Re: About New TabBar and Multiple-Windows

2006-11-02 Thread Georg Baum
Lars Gullik Bjønnes wrote:

 Joost Verburg
 [EMAIL PROTECTED] writes:
 
 | Lars Gullik Bjønnes wrote:
 |  sure it does. I do this all the time with emacs and firefox.
 | 
 | Firefox has only a single process for all windows.
 | 
 | In LyX you can have right now:
 | 
 | 1) Multiple LyX instances (different processes)
 | 2) Multiple windows per instance
 | 3) Multiple documents per window
 | 
 | 2) and 3) share the same data, but 1) does not. Do you really expect
 | the users to know which windows belong to which instance?
 
 as a matter of fact, yes I do.
 
 I would have liked us to have some better control over files that
 might have changed on disk though. (And this is a problem we have
 regardless of only one lyx instance or not.)

And solving that problem is far better than artificially restricting LyX
IMHO for two reasons:
- This intelligent stuff usually strikes back
- It will solve another serious problem: I edit a .lyx file on disk with my
text editor to do some fancy search/replace, and accidentally overwrite it
later with the old version that was still loaded in LyX.

In fact the solution of this problem is very easy: Remember the last write
time fo the file, and check it again before saving. If the two times
differ, ask the user what to do.

I really hate applications that think they know better what I want to do. If
I open two LyX instances I have a reason to do so, and LyX should not
override that decision.


Georg



Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Georg Baum
Enrico Forestieri wrote:

 Georg, I think you forgot to update src/ChangeLog.

We don't use it anymore.


Georg



Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Jean-Marc Lasgouttes
 Georg == Georg Baum [EMAIL PROTECTED] writes:

Georg Enrico Forestieri wrote:
 Georg, I think you forgot to update src/ChangeLog.

Georg We don't use it anymore.

Well, at least I try to update it in 1.4. I am not sure whether this
is 100% necessary, so this is why I never complain to you about that
:)

JMarc


Re: Movable toolbars

2006-11-02 Thread Enrico Forestieri
On Tue, Oct 31, 2006 at 04:46:07PM +0100, Abdelrazak Younes wrote:

 Peter Kümmel wrote:
  Because
- it costs us nothing
- it's a nice feature for the user
- I don't see any reason way we should disable it
- we are releasing only a alpha version
- I don't want to start a endless discussion
  
  I've just enabled it.
 
 I think we should make a distinction between the different toolbars. 
 Vertical orientation for the standard toolbar and for the Command 
 buffer do not make sense because we have edit boxes there.
 
 But no need to worry about that for now. The advanced users that we are 
 know how to drag them back to an horizontal orientation :-)

IMO, this functionality is not useful and the grippies simply take
away space for the icons such that you have to enlarge the window to
see them all :(

-- 
Enrico


Re: About New TabBar and Multiple-Windows

2006-11-02 Thread Georg Baum
José Matos wrote:

 On Wednesday 01 November 2006 6:11 pm, Joost Verburg wrote:

 It does not make sense to allow multiple instances when each instance
 can also have multiple windows. There is no way to tell which window
 belongs to which instance and therefore you can easily loose data by
 saving the wrong version of a document.
 
   What is the difference to what we have now?

The session stuff, and the multiple window feature.

   Why don't we see people complaining about that?

Because a) nothing is loaded automatically from an old session I might not
remember anymore and b) only one window per instance is possible.

I did not follow the multiple window feature/session stuff/toolbars
discussion too closely, but I can't resist to make the following two
remarks:

- It looks like there is still much confusion how actually sessions should
work in connection with multiple windows and toolbars.
- It seems to eat quite a lot of developer resources. I predicted that two
weeks ago, but nobody did believe me then :-(


Georg



[patch] chars-transpose

2006-11-02 Thread Dov Feldstern

Hi!

I attached a patch (actually two, one against 1.4.4svn and one against
1.5.0svn) to bugzilla (http://bugzilla.lyx.org/show_bug.cgi?id=2939). To
make it useful, you'll want to create a key binding for it (not included
 in the patch). I believe Jean-Marc is planning to commit it as soon as 
he gets a chance to test it, but meanwhile if anyone else wants to test 
it...


Dov



Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Georg Baum
Jean-Marc Lasgouttes wrote:

 Well, at least I try to update it in 1.4. I am not sure whether this
 is 100% necessary, so this is why I never complain to you about that
 :)

I see. I thought that they where also abandoned in 1.4, but I have to admit
that I am also too lazy to do both ChangeLog and commit log.


Georg



Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Enrico Forestieri
On Thu, Nov 02, 2006 at 09:39:30AM +0100, Jean-Marc Lasgouttes wrote:

  Georg == Georg Baum [EMAIL PROTECTED] writes:
 
 Georg Enrico Forestieri wrote:
  Georg, I think you forgot to update src/ChangeLog.
 
 Georg We don't use it anymore.
 
 Well, at least I try to update it in 1.4. I am not sure whether this
 is 100% necessary, so this is why I never complain to you about that
 :)

I seem to remember that ChangeLog files should be updated in 1.4.
I noticed it simply because only src/lyxfont.C was updated after an
svn up, so I went to src/ChangeLog to see what changed and could not
find any entry.

-- 
Enrico


Re: guiapi.C

2006-11-02 Thread Lars Gullik Bjønnes
Abdelrazak Younes [EMAIL PROTECTED] writes:

| Angus Leeming wrote:
|  Abdelrazak Younes [EMAIL PROTECTED] writes:
|  Do we still need guiapi.[Ch]? Again, it seems like it is not
|  linked to the final LyX executable.
|  I let it there because I don't know it is used in some external
|  client. We shall know if this is true or not before removing this.
|  You can kill it. Lars introduced it years ago when he got exited by
|  the idea of dll-importing the frontend library, but the idea never
|  came to anything concrete.
| 
| This is almost concrete now :-)

You misunderstand. This was about runtime dynamic loading of
libraries, not about using dynamic libraries and letting the system
linker handle it upon startup.

|  The file can always be resurrected later on; it's meant to be a C-
|  language wrapper to our C++ frontend library calls.
| 
| I'll kill it then. C++ dll are common nowadays, I don't think we'll
| ever need to wrap the frontend interface in C.

As dlopen(3) only have a C-interface you have to provide a C-api to get
to the underlying C++-api...

-- 
Lgb



Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Bo Peng wrote:

Yeah, it was not that hard (see below). It's just that I don't have much
time.


This does solves my bookmark problem, but are you sure it is a good
idea to open all buffers that was opened in the parent window?


I know you understand the difference but for the sake of clarity let me 
repeat that again: The buffers are not opened again in the second 
window. They are opened once and only once.


A window can only show one buffer at a time. The new tabbar is designed 
to show a list of all available buffer (this is Peter's doing, not 
mine). So this is independent from the number of opened windows.


As it is now, the TabBar is just a shortcut for the View-Document 
submenu, that's all. I've already warned you all about that multiple times.



My proposal was that we do not open any buffer but allow users to
switch to them from view menu item. That was just my preference
though.


Read above: the Buffer is not opened again, only shown. With the new 
tabbar, it is all or nothing, you don't have a choice.


All, please listen:

I propose to remove the multi-window feature from the menu, or even 
remove the LFUN entirely. We can have it back when the new TabWidget 
that will replace the tabbar is ready (most probably in 1.6).


Abdel.



Re: r15655 - in /lyx-devel/branches/BRANCH_1_4_X: src/lyxfont.C

2006-11-02 Thread Martin Vermeer
On Thu, 2006-11-02 at 10:02 +0100, Enrico Forestieri wrote:
 On Thu, Nov 02, 2006 at 09:39:30AM +0100, Jean-Marc Lasgouttes wrote:
 
   Georg == Georg Baum [EMAIL PROTECTED] writes:
  
  Georg Enrico Forestieri wrote:
   Georg, I think you forgot to update src/ChangeLog.
  
  Georg We don't use it anymore.
  
  Well, at least I try to update it in 1.4. I am not sure whether this
  is 100% necessary, so this is why I never complain to you about that
  :)
 
 I seem to remember that ChangeLog files should be updated in 1.4.
 I noticed it simply because only src/lyxfont.C was updated after an
 svn up, so I went to src/ChangeLog to see what changed and could not
 find any entry.

You can find the change logs from SVN. In my understanding the practice
is to commit with a changelog, and post that to the list too (which
seems a bit 'both belt and suspenders'). And status.14x should be
updated.

- Martin



signature.asc
Description: This is a digitally signed message part


Re: Coord cache and single par update

2006-11-02 Thread Abdelrazak Younes

Martin Vermeer wrote:


Hmmm, I don't think this is done in 1.4, and still single par update
works just fine there... in 1.5 the infrastructure is there but it isn't
working properly, as whole-screen updates have been layered on top of it
with reckless disregard for what was already there, which thus is now
completely useless.

I am a bit angry about this. It would have been so easy to see what
exactly is getting rendered using the PAINTING debug flag.


Dear Martin,

I've asked multiple times for help when trying to understand this 
metrics and coordcache stuff. Nobody ever stepped in. So IMHO, it's a 
bit easy to say that you are angry now.


The old code was not understandable at _all_ and I believe it is much 
more understandable now that is has been cleaned up a bit.




What about first getting the old singlepar/singlerow functionality back
into a working state? Then we can see what is missing and provide it.


Now we talk :-). I am open for suggestion and for help.

Abdel.



Re: Coord cache and single par update

2006-11-02 Thread Abdelrazak Younes

Martin Vermeer wrote:


Note that the job will be easier if stale caches are not covered up by
the current overzealous full-screen refresh behaviour. I suggest getting
rid of that first. 


The full refresh thing is due to the cursor bug. I will work on it as 
soon as I find some free time.


Abdel.



Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 Bo Peng wrote:
 Yeah, it was not that hard (see below). It's just that I don't have much
 time.

 This does solves my bookmark problem, but are you sure it is a good
 idea to open all buffers that was opened in the parent window?
 
 I know you understand the difference but for the sake of clarity let me
 repeat that again: The buffers are not opened again in the second
 window. They are opened once and only once.

Maybe it helps when we describe it in other words.

Due to Abdel's great work we now have a Model/View design.
The buffers are the models and the Windows are the views.
As you know there is only one model but arbitrarily much views.

The problem is now, what do we with the views, they are all identical,
because currently they are a whole view of the model.

Maybe it is really the best do disable the multiple-view support until
we know how we will handle this.

One idea is to divide the one bug buffer into several smaller ones
which all are viewed by a view, which doesn't know anything about
other buffers. But then a multiple view of one document becomes
impossible. To have this we could use something like a buffer-proxy...

A other solution is to somehow handle within the views which part
of the buffer is viewed.



 A window can only show one buffer at a time. The new tabbar is designed
 to show a list of all available buffer (this is Peter's doing, not
 mine). So this is independent from the number of opened windows.
 
 As it is now, the TabBar is just a shortcut for the View-Document
 submenu, that's all. I've already warned you all about that multiple times.
 
 My proposal was that we do not open any buffer but allow users to
 switch to them from view menu item. That was just my preference
 though.
 
 Read above: the Buffer is not opened again, only shown. With the new
 tabbar, it is all or nothing, you don't have a choice.
 
 All, please listen:
 
 I propose to remove the multi-window feature from the menu, or even
 remove the LFUN entirely. We can have it back when the new TabWidget
 that will replace the tabbar is ready (most probably in 1.6).
 
 Abdel.
 
 


-- 
Peter Kümmel


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 I propose to remove the multi-window feature from the menu, or even
 remove the LFUN entirely. We can have it back when the new TabWidget
 that will replace the tabbar is ready (most probably in 1.6).

But we could also explain it to the user how it works:

Beware there is only ONE document in your computer-memory but
you could edit this ONE document with MULTIPLE windows.

Then we will have some feedback how usefull this is, how the user
likes it, which ideas they have to change the behavior, and so on.

Isn't THIS the purpose a alpha release? We want feedback, not release
the final product.

-- 
Peter Kümmel


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Peter Kümmel wrote:



A other solution is to somehow handle within the views which part
of the buffer is viewed.


This is what we have already: Each LyXView (WorkArea really) has its own 
unique BufferView which is a view of one part of the document. Except 
for some cursor bug (the famous dEPM bug), this is working fine.


Abdel.



Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 Peter Kümmel wrote:
 

 A other solution is to somehow handle within the views which part
 of the buffer is viewed.
 
 This is what we have already: Each LyXView (WorkArea really) has its own
 unique BufferView which is a view of one part of the document. Except
 for some cursor bug (the famous dEPM bug), this is working fine.
 
 Abdel.
 
 

Ah, didn't know that. So could you describe the design a little bit
with the MVC language, I think this will help a lot of people to
read and understand the code.

Something like this:

model:
 - buffer the one big buffer

view:
 - WorkArea partly view of the buffer
 - lyxview frontent impl of the view


-- 
Peter Kümmel


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Lars Gullik Bjønnes
Abdelrazak Younes [EMAIL PROTECTED] writes:

| Peter Kümmel wrote:
| 
|  A other solution is to somehow handle within the views which part
|  of the buffer is viewed.
| 
| This is what we have already: Each LyXView (WorkArea really) has its
| own unique BufferView which is a view of one part of the document.
| Except for some cursor bug (the famous dEPM bug), this is working fine.

..except that metrics is shared between views.

(And this fails miserably when the windows are of different widths.)

-- 
Lgb



Alpha release until monday 6. November

2006-11-02 Thread Peter Kümmel
I think we should really release a alpha version
of LyX 1.5 until Monday, 6. November.

Why should we wait? It is a alpha release, it needs not
to be perfect. I already think it is too stable for a
alpha release.

What is a Alpha release?
http://en.wikipedia.org/wiki/Alpha_release#Alpha
The alpha version of a product still awaits full debugging or
full implementation of all its functionality but satisfies a
majority of the software requirements. It often lacks features
promised in the final release but demonstrates the feasibility
and basic structure of the software.


What about this Alpha-Release Show-Stopper-Criteria:
Two clicks and crash,

Peter


P.S.:
If you are still skeptical.
Repress your perfectionist tendencies, it is only a alpha release, it is only a 
alpha release,
it is only a alpha release, it is only a alpha release, it is only a alpha 
release, it is only a alpha release...



Re: About New TabBar and Multiple-Windows

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 Peter Kümmel wrote:
 Abdelrazak Younes wrote:
 This does not help. But after a CTRL-N all is fine,
 so it couldn't be that hard for someone who knows
 all the details. ;)
 
 Yeah, it was not that hard (see below). It's just that I don't have much
 time.
 
 Abdel.
 

Great, it is fixed now.


 This commit initialise correctly the tab bar in a new window.
 
 * GuiView::init(): switch to the first avalaible buffer if any.
 
 * GuiWorkArea::focusInEvent(): update the LyXView tab bar there.
 
 Modified:
 lyx-devel/trunk/src/frontends/qt4/GuiView.C
 lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C
 
 Modified: lyx-devel/trunk/src/frontends/qt4/GuiView.C
 URL:
 http://www.lyx.org/trac/file/lyx-devel/trunk/src/frontends/qt4/GuiView.C?rev=15685
 
 ==
 
 --- lyx-devel/trunk/src/frontends/qt4/GuiView.C (original)
 +++ lyx-devel/trunk/src/frontends/qt4/GuiView.C Wed Nov  1 23:57:32 2006
 @@ -149,6 +149,9 @@
 
  QObject::connect(statusbar_timer_, SIGNAL(timeout()),
  this, SLOT(update_view_state_qt()));
 +
 +if (!work_area_-bufferView().buffer()  !theBufferList().empty())
 +setBuffer(theBufferList().first());
 
  // make sure the buttons are disabled if needed
  updateToolbars();
 
 Modified: lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C
 URL:
 http://www.lyx.org/trac/file/lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C?rev=15685
 
 ==
 
 --- lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C (original)
 +++ lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C Wed Nov  1 23:57:32
 2006
 @@ -288,6 +288,9 @@
 
  void GuiWorkArea::focusInEvent(QFocusEvent * /*event*/)
  {
 +// FIXME: it would be better to send a signal newBuffer()
 +// in BufferList that could be connected to the different tabbar.
 +lyx_view_.updateTab();
  startBlinkingCursor();
  }
 
 


-- 
Peter Kümmel


Re: Input of CJK characters is O.K. but view fails

2006-11-02 Thread Gour
On Tue, 2006-10-31 at 08:46 +0100, Georg Baum wrote:

 Add the proper encodings to lib/encodings and languages to lib/languages.
 Then you need to fix the frontend that all encodings from lib/encodings can
 be selected, currently the list is hardcoded in
 src/frontends/qt4/QDocumentDialog.C.

Can one just add utf-8 and expect it to work?

I saw in lyx-devel that it is not clear whether support for utf-8 will
be there in 1.5.0...

I pulled the code frm svn and will try to build it to see how well can
LyX play with XeTeX...bot Kile  Texmaker work with utf-8 so it will be
pitty if LyX is lacking proper support...


Sincerely,
Gour





Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Peter Kümmel wrote:

Abdelrazak Younes wrote:

Peter Kümmel wrote:


A other solution is to somehow handle within the views which part
of the buffer is viewed.

This is what we have already: Each LyXView (WorkArea really) has its own
unique BufferView which is a view of one part of the document. Except
for some cursor bug (the famous dEPM bug), this is working fine.

Abdel.




Ah, didn't know that. So could you describe the design a little bit
with the MVC language, I think this will help a lot of people to
read and understand the code.

Something like this:

model:
 - buffer the one big buffer

view:
 - WorkArea partly view of the buffer
 - lyxview frontent impl of the view


OK, here is my try at it:

1) The Model: Buffer

The Buffer is the in-memory representation of a LyX file format. The 
Buffer does not (should not) have any information on what part of it is 
represented on screen. There is one unique Buffer per opened LyX file.



2) The Controller: BufferView/Painter

The BufferView is a tool used by the view that translates a part of the 
Buffer contents into drawing routines. The BufferView asks each inset of 
the Buffer to draw itself onto the screen using the Painter.
There is only Buffer loaded per BufferView. While there is the 
possibility to switch Buffer inside the BufferView, the goal is to 
instantiate a new BufferView on each Buffer switch.


The Painter is just a virtual interface to formalize each kind of 
drawing routines (text, line, rectangle, etc).


The BufferView also contains a Cursor which may or may not be visible on 
screen. The cursor is really just a bookmark to remember where the next 
Buffer insertion/deletion is going to take place.



3) The View: WorkArea (and it's qt4 specialisation GuiWorkArea)

This contains the real screen area where the drawing is done by the 
Painter. One WorkArea holds one unique BufferView. While it could be 
possible that multiple WorkArea share one BufferView, this is not 
possible right now.
The WorkArea also provide a scrollbar which position is translated into 
scrolling command to the inner BufferView.


The WorkArea use the BufferView to translate each keyboard or mouse 
events into terms that the Buffer can understand:

- insert/delete char
- select char
- etc.


4) The Window: LyXView (and its qt4 specialisation GuiView)

This is a full window containing a menubar, toolbars, a tabbar and a 
WorkArea. One LyXView could in theory contain multiple WorkArea (ex: 
with split window) but this number is limited to one only for now. In 
any case, there would be only one WorkArea that gets the focus at a time.


Now, concerning the TabBar versus TabWidget issue. Right now, there is 
only one WorkArea and the TabBar just used to tell the BufferView inside 
the WorkArea to switch to this another Buffer.
With a TabWidget, each Tab would own its own WorkArea. Clicking on a tab 
would switch a WorkArea instead of a Buffer.


That's all, I hope my English is clear enough and that helps some of you 
better understand the global picture. Back to my real work.


Abdel.










Re: Alpha release until monday 6. November

2006-11-02 Thread Lars Gullik Bjønnes
Peter Kümmel [EMAIL PROTECTED] writes:

| I think we should really release a alpha version
| of LyX 1.5 until Monday, 6. November.

Why change a decision already made?

-- 
Lgb



Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Lars Gullik Bjønnes wrote:

Abdelrazak Younes [EMAIL PROTECTED] writes:

| Peter Kümmel wrote:
| 
|  A other solution is to somehow handle within the views which part

|  of the buffer is viewed.
| 
| This is what we have already: Each LyXView (WorkArea really) has its

| own unique BufferView which is a view of one part of the document.
| Except for some cursor bug (the famous dEPM bug), this is working fine.

..except that metrics is shared between views.


This should not be. Each BufferView now has its own CoordCache. If 
there's still something shared, this should be fixed.




(And this fails miserably when the windows are of different widths.)


The problem is different here. I believe that there's some cursor 
interaction problem that leads. This leads to crashes but most of the 
time, if you have two BufferView sharing the same Buffer, changing the 
geometry of one does not impact the other one (except if there's some 
editing that invalidated the cursor of the other BufferView).


Abdel.



Re: Input of CJK characters is O.K. but view fails

2006-11-02 Thread Gour
On Thu, 2006-11-02 at 11:41 +0100, Gour wrote:

 I pulled the code from svn and will try to build it to see how well can
 LyX play with XeTeX...both Kile  Texmaker work with utf-8 so it will be
 pity if LyX is lacking proper support...

Ahh, some problems with my keyboard :-)


 Sincerely,
 Gour




Re: [patch] new InsetCommandParams

2006-11-02 Thread Georg Baum
Am Mittwoch, 1. November 2006 15:38 schrieb Ozgur Ugras BARAN:
 By the way, I haven't seen nomencl commit in svn. Is something
 missing, or do you need new diff?

Shortly after you went on holiday a freeze was announced, and nothing new 
was allowed to go in. Fortunately Jose (the 1.5.0 release manager) agreed 
to put the nomencl stuff in.

As I wrote earlier I have a couple of comments. First I fixed some 
formatting issues (and IIRC I also found one or two bugs, please compare 
with your code, I forgot the details). Your latest version came too late 
for me, so that is not included in this diff. Please merge in the changes.
I forgot whether the lyx2lyx part was finished, I'll check that over the 
weekend.

The following needs to be done before it goes in:
- Documentation in Userguide.lyx (or Extended.lyx? I don't know. Ask Uwe if 
in doubt). Please use LyX 1.4 for editing, the diff should not contain a 
file format change.
- The parameter names should be the same as in the official documentation 
IMO.
- The user visible strings should be unified: You should not mix Notation 
List and Glossary IMO.


I'd like to have a final look over the weekend, so if you could send me the 
final version until saturday that would be great.


Georg

PS: Please let's continue on the list.


Re: Input of CJK characters is O.K. but view fails

2006-11-02 Thread Georg Baum
Gour wrote:

 On Tue, 2006-10-31 at 08:46 +0100, Georg Baum wrote:
 
 Add the proper encodings to lib/encodings and languages to lib/languages.
 Then you need to fix the frontend that all encodings from lib/encodings
 can be selected, currently the list is hardcoded in
 src/frontends/qt4/QDocumentDialog.C.
 
 Can one just add utf-8 and expect it to work?

As far as LyX is concerned: Yes. It is only commented out because it is a
file format change.
But of course you can not expect that all the present LaTeX limitations of
utf8 encoded files will go away.


Georg



Re: [patch] new InsetCommandParams

2006-11-02 Thread Georg Baum
And the patch...Index: src/LyXAction.C
===
--- src/LyXAction.C	(Revision 15688)
+++ src/LyXAction.C	(Arbeitskopie)
@@ -366,6 +366,8 @@ void LyXAction::init()
 		{ LFUN_WINDOW_NEW, window-new, NoBuffer },
 		{ LFUN_WINDOW_CLOSE, window-close, NoBuffer },
 		{ LFUN_UNICODE_INSERT, unicode-insert, Noop },
+		{ LFUN_NOMENCL_INSERT, nomencl-insert, Noop },
+		{ LFUN_NOMENCL_PRINT, nomencl-print, Noop },
 		
 		{ LFUN_NOACTION, , Noop }
 	};
Index: src/LaTeXFeatures.C
===
--- src/LaTeXFeatures.C	(Revision 15688)
+++ src/LaTeXFeatures.C	(Arbeitskopie)
@@ -386,6 +386,11 @@ string const LaTeXFeatures::getPackages(
 	if (isRequired(xy))
 		packages  \\usepackage[all]{xy}\n;
 
+	if (isRequired(nomencl)) {
+		packages  \\usepackage{nomencl}\n
+			  \\makeglossary\n;
+	}
+ 
 	return packages.str();
 }
 
Index: src/insets/insetnomencl.h
===
--- src/insets/insetnomencl.h	(Revision 0)
+++ src/insets/insetnomencl.h	(Revision 0)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+/**
+ * \file insetnomencl.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author O. U. BARAN (derived from Index counterpart of Lars Gullik Bjønnes. Thanks Lars)
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#ifndef INSET_NOMENCL_H
+#define INSET_NOMENCL_H
+
+
+#include insetcommand.h
+
+
+namespace lyx {
+
+class LaTeXFeatures;
+
+/** Used to insert notation labels
+  */
+class InsetNomencl : public InsetCommand {
+public:
+	///
+	InsetNomencl(InsetCommandParams const );
+	///
+	docstring const getScreenLabel(Buffer const ) const;
+	///
+	EDITABLE editable() const { return IS_EDITABLE; }
+	///
+	InsetBase::Code lyxCode() const;
+	///
+	int docbook(Buffer const , odocstream ,
+		OutputParams const ) const;
+private:
+	virtual std::auto_ptrInsetBase doClone() const {
+		return std::auto_ptrInsetBase(new InsetNomencl(params()));
+	}
+};
+
+
+class InsetPrintNomencl : public InsetCommand {
+public:
+	///
+	InsetPrintNomencl(InsetCommandParams const );
+	/// Updates needed features for this inset.
+	void validate(LaTeXFeatures  features) const;
+	///
+	EDITABLE editable() const { return NOT_EDITABLE; }
+	///
+	InsetBase::Code lyxCode() const;
+	///
+	bool display() const { return true; }
+	///
+	docstring const getScreenLabel(Buffer const ) const;
+private:
+	virtual std::auto_ptrInsetBase doClone() const {
+		return std::auto_ptrInsetBase(new InsetPrintNomencl(params()));
+	}
+};
+
+
+} // namespace lyx
+
+#endif
Index: src/insets/insetbase.h
===
--- src/insets/insetbase.h	(Revision 15688)
+++ src/insets/insetbase.h	(Arbeitskopie)
@@ -322,7 +322,11 @@ public:
 		///
 		VSPACE_CODE,
 		///
-		MATHMACROARG_CODE
+		MATHMACROARG_CODE,
+		///
+		NOMENCL_CODE, // 45
+		///
+		NOMENCL_PRINT_CODE
 	};
 
 	/** returns the Code corresponding to the \c name.
Index: src/insets/insetcommandparams.C
===
--- src/insets/insetcommandparams.C	(Revision 15688)
+++ src/insets/insetcommandparams.C	(Arbeitskopie)
@@ -109,14 +109,23 @@ InsetCommandParams::findInfo(std::string
 		return info;
 	}
 
-	// InsetIndex, InsetPrintIndex, InsetLabel
-	if (name == index || name == printindex || name == label) {
+	// InsetIndex, InsetPrintIndex, InsetLabel, InsetPrintNomencl
+	if (name == index || name == printindex || name == label ||
+	name == printglossary) {
 		static const char * const paramnames[] = {name, };
 		static const bool isoptional[] = {false};
 		static const CommandInfo info = {1, paramnames, isoptional};
 		return info;
 	}
 
+	// InsetNomencl
+	if (name == nomenclature) {
+		static const char * const paramnames[] = {name, explanation, sortas, };
+		static const bool isoptional[] = {false, false, true};
+		static const CommandInfo info = {3, paramnames, isoptional};
+		return info;
+	}
+
 	// InsetRef
 	if (name == eqref || name == pageref || name == vpageref ||
 	name == vref || name == prettyref || name == ref) {
Index: src/insets/insetnomencl.C
===
--- src/insets/insetnomencl.C	(Revision 0)
+++ src/insets/insetnomencl.C	(Revision 0)
@@ -0,0 +1,76 @@
+/**
+ * \file insetnomencl.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author O. U. BARAN (derived from Index counterpart of Lars Gullik Bjønnes. Thanks Lars.)
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+#include config.h
+
+#include insetnomencl.h
+
+#include dispatchresult.h
+#include funcrequest.h
+#include gettext.h
+#include LaTeXFeatures.h
+#include metricsinfo.h
+#include sgml.h
+
+
+namespace lyx {
+
+using std::string;
+
+

Re: Alpha release until monday 6. November

2006-11-02 Thread Peter Kümmel
Lars Gullik Bjønnes wrote:
 Peter Kümmel [EMAIL PROTECTED] writes:
 
 | I think we should really release a alpha version
 | of LyX 1.5 until Monday, 6. November.
 
 Why change a decision already made?
 

Because
 - it wasn't that clear
 - it was more a decision for a beta release
 - to push LyX forward
 - we are flexible
 - we will collect more bug reports
 - it focuses the development
 - it makes existing problems more visible
 - most decisions were not discussed
 - Abdel can't do much for the next two weeks
 - Bo is on vacation
 - Michael is very busy because he's the best man on work
 - Maybe we find more Mac developers
 - currently we are in a run and we couldn't keep with the pace
 - I think waiting longer is wasted time, and we've
   already waste too much time
 - I see now reason to wait
 - I will see results
 - I think I have some support for this propose

Peter


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Lars Gullik Bjønnes
Abdelrazak Younes [EMAIL PROTECTED] writes:

| Lars Gullik Bjønnes wrote:
|  Abdelrazak Younes [EMAIL PROTECTED] writes:
|  | Peter Kümmel wrote:
|  | |  A other solution is to somehow handle within the views which
|  part
|  |  of the buffer is viewed.
|  | | This is what we have already: Each LyXView (WorkArea really) has
|  its
|  | own unique BufferView which is a view of one part of the document.
|  | Except for some cursor bug (the famous dEPM bug), this is working fine.
|  ..except that metrics is shared between views.
| 
| This should not be. Each BufferView now has its own CoordCache. If
| there's still something shared, this should be fixed.
| 
| 
|  (And this fails miserably when the windows are of different widths.)
| 
| The problem is different here. I believe that there's some cursor
| interaction problem that leads. This leads to crashes but most of the
| time, if you have two BufferView sharing the same Buffer, changing the
| geometry of one does not impact the other one (except if there's some
| editing that invalidated the cursor of the other BufferView).

Just try it for yourself and you will see.

-- 
Lgb



AW: Alpha release until monday 6. November

2006-11-02 Thread michael . gerz
I think we should really release a alpha version
of LyX 1.5 until Monday, 6. November.

Veto! We agreed on Nov 13th and I need the time for CT. 

And, after all, it is Jose who makes the decisions.

Michael


Re: AW: Alpha release until monday 6. November

2006-11-02 Thread Peter Kümmel
[EMAIL PROTECTED] wrote:
 I think we should really release a alpha version
 of LyX 1.5 until Monday, 6. November.
 
 Veto! We agreed on Nov 13th and I need the time for CT. 
 
 And, after all, it is Jose who makes the decisions.
 
 Michael
 
 

Haven't you read the Post Scriptum? ;)

We could do the next alpha release when you've finished CT,
then you don't have the pressure to complete it until 13th.

Peter


Re: Input of CJK characters is O.K. but view fails

2006-11-02 Thread Gour
On Thu, 2006-11-02 at 11:55 +0100, Georg Baum wrote:

  Can one just add utf-8 and expect it to work?
 
 As far as LyX is concerned: Yes. It is only commented out because it is a
 file format change.

Great! Let me try...

Will it be added in 1.5.0 ?

 But of course you can not expect that all the present LaTeX limitations of
 utf8 encoded files will go away.

That's why we have XeTeX ;)

Sincerely,
Gour






Re: Alpha release until monday 6. November

2006-11-02 Thread José Matos
On Thursday 02 November 2006 11:08 am, Peter Kümmel wrote:
 Lars Gullik Bjønnes wrote:
  Peter Kümmel [EMAIL PROTECTED] writes:
  | I think we should really release a alpha version
  | of LyX 1.5 until Monday, 6. November.
 
  Why change a decision already made?

  With all the due respect Peter, your enthusiasm makes me smile, and I like 
it but I would like to argue back.

 Because
  - it wasn't that clear

   I am sorry to disagree but every other post in this list seems to imply 
otherwise.

  - it was more a decision for a beta release

   I have stated clearly that it was an alpha release what we meant, I have 
even explained codewise what it implied. (No more new major features after 
this release).

  - to push LyX forward
  - we are flexible
  - we will collect more bug reports
  - it focuses the development
  - it makes existing problems more visible

I doubt that. Developers knew the deadline and they are acting 
accordingly, changing time expectations can be extremely frustrating, for 
anyone (myself included).
 
  - most decisions were not discussed

   I don't understand your point here.

  - Abdel can't do much for the next two weeks
  - Bo is on vacation
  - Michael is very busy because he's the best man on work

   With all the due respect for the developers you mentioned, but I don't see 
how that is relevant here.

  - Maybe we find more Mac developers

   Just for releasing earlier?

  - currently we are in a run and we couldn't keep with the pace
  - I think waiting longer is wasted time, and we've
already waste too much time

   These two points are contradicting each other.

  - I see now reason to wait
  - I will see results
  - I think I have some support for this propose

  Peter, as stated above, your energy is welcome in the project, but sometimes 
a little bit of patience pays off. :-)

 Peter

-- 
José Abílio


Re: [patch] new InsetCommandParams

2006-11-02 Thread Ozgur Ugras BARAN

On 11/2/06, Georg Baum [EMAIL PROTECTED] wrote:

Am Mittwoch, 1. November 2006 15:38 schrieb Ozgur Ugras BARAN:
 By the way, I haven't seen nomencl commit in svn. Is something
 missing, or do you need new diff?

Shortly after you went on holiday a freeze was announced, and nothing new
was allowed to go in. Fortunately Jose (the 1.5.0 release manager) agreed
to put the nomencl stuff in.



Oh, this is bad news, since I have almost completed the multiple indices stuff..


As I wrote earlier I have a couple of comments. First I fixed some
formatting issues (and IIRC I also found one or two bugs, please compare
with your code, I forgot the details). Your latest version came too late
for me, so that is not included in this diff. Please merge in the changes.
I forgot whether the lyx2lyx part was finished, I'll check that over the
weekend.


Where can I find your code? Is it after my latest correction at Oct. 20th?


The following needs to be done before it goes in:
- Documentation in Userguide.lyx (or Extended.lyx? I don't know. Ask Uwe if
in doubt). Please use LyX 1.4 for editing, the diff should not contain a
file format change.


I will complete it before the weekend


- The parameter names should be the same as in the official documentation
IMO.


Sure..


- The user visible strings should be unified: You should not mix Notation
List and Glossary IMO.


Only place that the users can see a text except Notation is the
output. In the output, the title of the notation is printed as
Nomenclature. The reason I choose the text Notation through the user
interface is that, most non-native English speakers does not know the
word nomenclature, but most know the word notation. What I planned to
do is to write this down as a warning and note that they can change
the title of notation with command
\renewcommand{\nomname{List of Symbols}}


I'd like to have a final look over the weekend, so if you could send me the
final version until saturday that would be great.


I will try to complete. The problem is that, (stupidly) I am using the
same code for nomencl and multi indices. I have to separate them
first..



Georg

PS: Please let's continue on the list.




Ugras


Re: My Big Fat (Greek?) Cursor

2006-11-02 Thread Helge Hafting

John Levon wrote:

On Wed, Nov 01, 2006 at 03:21:13PM +0100, Abdelrazak Younes wrote:

  
But quite frankly, I don't understand what's so bad about letting the 
user change the cursor width.



If anywhere, it belongs in a desktop-wide preference, not LyX doing its
own thing.

(And yes, same applies to colours: ideally we would be using native
widgets.)
  

You have a point.  Ideally, we should use native widgets.  But
only if they are good enough for our use. If not, then rolling
our own makes lyx better. The alternative to our own cursor
then is not to use a bad widget, but to actually fix qt4.

Helge Hafting


Re: LyX 1.5 translations

2006-11-02 Thread Helge Hafting

Michael Gerz wrote:

Lars Gullik Bjønnes wrote:


IMHO we should not merge translations from 1.4 at all. (or at most on
a case by case basis. And if translators want it (I don't want it for
NB f.ex.), msgmerge can be used for this.)
 


Lars, I am a careful man :-)

Right now, I am checking the state of the 1.4 and 1.5 translations on 
a case-by-case basis. If the 1.4 translations are better (for many 
languages they are significantly better!), I will remerge. Otherwise, 
I won't.


I will put nb.po on my black list.
Any particular problem with nb.po? 


Helge Hafting


Re: LyX 1.5 translations

2006-11-02 Thread Lars Gullik Bjønnes
Helge Hafting [EMAIL PROTECTED] writes:

| Michael Gerz wrote:
|  Lars Gullik Bjønnes wrote:
| 
|  IMHO we should not merge translations from 1.4 at all. (or at most on
|  a case by case basis. And if translators want it (I don't want it for
|  NB f.ex.), msgmerge can be used for this.)
| 
|  Lars, I am a careful man :-)
| 
|  Right now, I am checking the state of the 1.4 and 1.5 translations
|  on a case-by-case basis. If the 1.4 translations are better (for
|  many languages they are significantly better!), I will remerge.
|  Otherwise, I won't.
| 
|  I will put nb.po on my black list.
| Any particular problem with nb.po? Helge Hafting

No. Only that it is missing translations and have a few fuzzy entries.

I am working slowly on them help would be appreciated.

-- 
Lgb



Re: [patch] new InsetCommandParams

2006-11-02 Thread Georg Baum
Ozgur Ugras BARAN wrote:

 On 11/2/06, Georg Baum
 [EMAIL PROTECTED] wrote:
 Shortly after you went on holiday a freeze was announced, and nothing new
 was allowed to go in. Fortunately Jose (the 1.5.0 release manager) agreed
 to put the nomencl stuff in.

 
 Oh, this is bad news, since I have almost completed the multiple indices
 stuff..

You can be lucky that the nomencl stuff is allowed at all.

 As I wrote earlier I have a couple of comments. First I fixed some
 formatting issues (and IIRC I also found one or two bugs, please compare
 with your code, I forgot the details). Your latest version came too late
 for me, so that is not included in this diff. Please merge in the
 changes. I forgot whether the lyx2lyx part was finished, I'll check that
 over the weekend.

 Where can I find your code? Is it after my latest correction at Oct. 20th?

No, as I wrote, your latest correction is not included, because I already
did some changes. I forgot to attach the diff, but sent it in another post
afterwards.

 The following needs to be done before it goes in:
 - Documentation in Userguide.lyx (or Extended.lyx? I don't know. Ask Uwe
 if in doubt). Please use LyX 1.4 for editing, the diff should not contain
 a file format change.
 
 I will complete it before the weekend

Fine.

 - The user visible strings should be unified: You should not mix
 Notation List and Glossary IMO.

 Only place that the users can see a text except Notation is the
 output. In the output, the title of the notation is printed as
 Nomenclature. The reason I choose the text Notation through the user
 interface is that, most non-native English speakers does not know the
 word nomenclature, but most know the word notation. What I planned to
 do is to write this down as a warning and note that they can change
 the title of notation with command
 \renewcommand{\nomname{List of Symbols}}

Then that must have been from an earlier version.


Georg



Re: Alpha release until monday 6. November

2006-11-02 Thread Peter Kümmel
José Matos wrote:
 On Thursday 02 November 2006 11:08 am, Peter Kümmel wrote:
 Lars Gullik Bjønnes wrote:
 Peter Kümmel [EMAIL PROTECTED] writes:
 | I think we should really release a alpha version
 | of LyX 1.5 until Monday, 6. November.

 Why change a decision already made?
 
   With all the due respect Peter, your enthusiasm makes me smile, and I like 
 it but I would like to argue back.
 

OK, I've tried it and failed. A comfort is, Asger also failed.
Sad to see that I couldn't infect the others with my enthusiasm,
seem the developers of LyX are more boring and inflexible than
I thought.

Regards,
Peter


 Because
  - it wasn't that clear
 
I am sorry to disagree but every other post in this list seems to imply 
 otherwise.
 
  - it was more a decision for a beta release
 
I have stated clearly that it was an alpha release what we meant, I have 
 even explained codewise what it implied. (No more new major features after 
 this release).
 
  - to push LyX forward
  - we are flexible
  - we will collect more bug reports
  - it focuses the development
  - it makes existing problems more visible
 
 I doubt that. Developers knew the deadline and they are acting 
 accordingly, changing time expectations can be extremely frustrating, for 
 anyone (myself included).
  
  - most decisions were not discussed
 
I don't understand your point here.
 
  - Abdel can't do much for the next two weeks
  - Bo is on vacation
  - Michael is very busy because he's the best man on work
 
With all the due respect for the developers you mentioned, but I don't see 
 how that is relevant here.
 
  - Maybe we find more Mac developers
 
Just for releasing earlier?
 
  - currently we are in a run and we couldn't keep with the pace
  - I think waiting longer is wasted time, and we've
already waste too much time
 
These two points are contradicting each other.
 
  - I see now reason to wait
  - I will see results
  - I think I have some support for this propose
 
   Peter, as stated above, your energy is welcome in the project, but 
 sometimes 
 a little bit of patience pays off. :-)
 
 Peter
 


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 Peter Kümmel wrote:
 Abdelrazak Younes wrote:
 Peter Kümmel wrote:

 A other solution is to somehow handle within the views which part
 of the buffer is viewed.
 This is what we have already: Each LyXView (WorkArea really) has its own
 unique BufferView which is a view of one part of the document. Except
 for some cursor bug (the famous dEPM bug), this is working fine.

 Abdel.



 Ah, didn't know that. So could you describe the design a little bit
 with the MVC language, I think this will help a lot of people to
 read and understand the code.

 Something like this:

 model:
  - buffer the one big buffer

 view:
  - WorkArea partly view of the buffer
  - lyxview frontent impl of the view
 
 OK, here is my try at it:
 
 1) The Model: Buffer
 
 The Buffer is the in-memory representation of a LyX file format. The
 Buffer does not (should not) have any information on what part of it is
 represented on screen. There is one unique Buffer per opened LyX file.
 
 
 2) The Controller: BufferView/Painter
 
 The BufferView is a tool used by the view that translates a part of the
 Buffer contents into drawing routines. The BufferView asks each inset of
 the Buffer to draw itself onto the screen using the Painter.
 There is only Buffer loaded per BufferView. While there is the
 possibility to switch Buffer inside the BufferView, the goal is to
 instantiate a new BufferView on each Buffer switch.
 
 The Painter is just a virtual interface to formalize each kind of
 drawing routines (text, line, rectangle, etc).
 
 The BufferView also contains a Cursor which may or may not be visible on
 screen. The cursor is really just a bookmark to remember where the next
 Buffer insertion/deletion is going to take place.
 
 
 3) The View: WorkArea (and it's qt4 specialisation GuiWorkArea)
 
 This contains the real screen area where the drawing is done by the
 Painter. One WorkArea holds one unique BufferView. While it could be
 possible that multiple WorkArea share one BufferView, this is not
 possible right now.
 The WorkArea also provide a scrollbar which position is translated into
 scrolling command to the inner BufferView.
 
 The WorkArea use the BufferView to translate each keyboard or mouse
 events into terms that the Buffer can understand:
 - insert/delete char
 - select char
 - etc.
 
 
 4) The Window: LyXView (and its qt4 specialisation GuiView)
 
 This is a full window containing a menubar, toolbars, a tabbar and a
 WorkArea. One LyXView could in theory contain multiple WorkArea (ex:
 with split window) but this number is limited to one only for now. In
 any case, there would be only one WorkArea that gets the focus at a time.
 
 Now, concerning the TabBar versus TabWidget issue. Right now, there is
 only one WorkArea and the TabBar just used to tell the BufferView inside
 the WorkArea to switch to this another Buffer.
 With a TabWidget, each Tab would own its own WorkArea. Clicking on a tab
 would switch a WorkArea instead of a Buffer.
 
 That's all, I hope my English is clear enough and that helps some of you
 better understand the global picture. Back to my real work.
 
 Abdel.

Thanks Abdel, this is very good. We should add it some where in the wiki.

Peter


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Peter Kümmel
Abdelrazak Younes wrote:
 Peter Kümmel wrote:
 Abdelrazak Younes wrote:
 Peter Kümmel wrote:

 A other solution is to somehow handle within the views which part
 of the buffer is viewed.
 This is what we have already: Each LyXView (WorkArea really) has its own
 unique BufferView which is a view of one part of the document. Except
 for some cursor bug (the famous dEPM bug), this is working fine.

 Abdel.



 Ah, didn't know that. So could you describe the design a little bit
 with the MVC language, I think this will help a lot of people to
 read and understand the code.

 Something like this:

 model:
  - buffer the one big buffer

 view:
  - WorkArea partly view of the buffer
  - lyxview frontent impl of the view
 
 OK, here is my try at it:
 
 1) The Model: Buffer
 
 The Buffer is the in-memory representation of a LyX file format. The
 Buffer does not (should not) have any information on what part of it is
 represented on screen. There is one unique Buffer per opened LyX file.
 
 
 2) The Controller: BufferView/Painter
 
 The BufferView is a tool used by the view that translates a part of the
 Buffer contents into drawing routines. The BufferView asks each inset of
 the Buffer to draw itself onto the screen using the Painter.
 There is only Buffer loaded per BufferView. While there is the
 possibility to switch Buffer inside the BufferView, the goal is to
 instantiate a new BufferView on each Buffer switch.
 
 The Painter is just a virtual interface to formalize each kind of
 drawing routines (text, line, rectangle, etc).
 
 The BufferView also contains a Cursor which may or may not be visible on
 screen. The cursor is really just a bookmark to remember where the next
 Buffer insertion/deletion is going to take place.
 
 
 3) The View: WorkArea (and it's qt4 specialisation GuiWorkArea)
 
 This contains the real screen area where the drawing is done by the
 Painter. One WorkArea holds one unique BufferView. While it could be
 possible that multiple WorkArea share one BufferView, this is not
 possible right now.
 The WorkArea also provide a scrollbar which position is translated into
 scrolling command to the inner BufferView.
 
 The WorkArea use the BufferView to translate each keyboard or mouse
 events into terms that the Buffer can understand:
 - insert/delete char
 - select char
 - etc.
 
 
 4) The Window: LyXView (and its qt4 specialisation GuiView)
 
 This is a full window containing a menubar, toolbars, a tabbar and a
 WorkArea. One LyXView could in theory contain multiple WorkArea (ex:
 with split window) but this number is limited to one only for now. In
 any case, there would be only one WorkArea that gets the focus at a time.
 
 Now, concerning the TabBar versus TabWidget issue. Right now, there is
 only one WorkArea and the TabBar just used to tell the BufferView inside
 the WorkArea to switch to this another Buffer.
 With a TabWidget, each Tab would own its own WorkArea. Clicking on a tab
 would switch a WorkArea instead of a Buffer.
 
 That's all, I hope my English is clear enough and that helps some of you
 better understand the global picture. Back to my real work.
 
 Abdel.


We could also add it some where in to development/.


-- 
Peter Kümmel


Re: Just 2 show stoppers from a test release - segfault on edit-reconfigure

2006-11-02 Thread Helge Hafting

Abdelrazak Younes wrote:

Peter Kümmel wrote:

Helge Hafting wrote:

Asger Ottar Alstrup wrote:

Hi,

An update on the status of 1.5.svn. Nice work, guys - we are down to
just 2 known show-stoppers for a test release:

Another showstopper:

edit-reconfigure  = Segmentation fault
I don't know what it is - here is a backtrace:



You mean Tools-reconfigure?
And you have no docuemnt open?

Then this patch helps.


Not enough because there might be no BufferView. I have committed the 
same fix but with LyXView instaed. I will kill this lyx_cb.[Ch] when 
1.6 is open for development. I am going to review all those messages.

Very good - reconfigure works now. Whether I have a document open or not.

Helge Hafting



Re: Alpha release until monday 6. November

2006-11-02 Thread José Matos
On Thursday 02 November 2006 12:20 pm, Peter Kümmel wrote:
 OK, I've tried it and failed. A comfort is, Asger also failed.

  What?
  As far as I understand, I have been all morning evaluating some exams from 
my students so my mood is not the best, Asger has being doing an evaluation 
of what needs to be done before a release.

  That is a work that needs to be done, as I have stated before I am grateful 
to Asger for doing this.

 Sad to see that I couldn't infect the others with my enthusiasm,
 seem the developers of LyX are more boring and inflexible than
 I thought.

  You are young lad. :-)

  The right mix between discipline and enthusiasm is always difficult, but I 
think that we have been improving here. :-)

Or else it would be very difficult for me to believe that we are a bunch of 
masochists. :-)

 Regards,
 Peter

-- 
José Abílio


Bug 2959: Can't modify document branches - and badness with non-ascii names

2006-11-02 Thread Helge Hafting
I opened an existing document, went to document-settings-branches, and 
discovered:

1. I can't activate/deactivate the existing branch. The branch
  name is non-ascii.  
  I can add a new one and activate/deactivate it, if the name is ascii.

2. Adding a new branch with a non-ascii name destroys the non-ascii
  characters in the name. I get a square instead. Clearly, the new branch
  entryfield and the list box uses different encodings!
  Maybe this explains (1) too. Such a branch cannot be removed either,
  while a branch with a ascii name is removeable.
3. I can't change branch colors at all - even if the name *is* ascii-only.

This is today's lyx 1.5svn
Helge Hafting


Re: Coord cache and single par update

2006-11-02 Thread Martin Vermeer
On Thu, 2006-11-02 at 10:40 +0100, Abdelrazak Younes wrote:
 Martin Vermeer wrote:
 
  Hmmm, I don't think this is done in 1.4, and still single par update
  works just fine there... in 1.5 the infrastructure is there but it isn't
  working properly, as whole-screen updates have been layered on top of it
  with reckless disregard for what was already there, which thus is now
  completely useless.
  
  I am a bit angry about this. It would have been so easy to see what
  exactly is getting rendered using the PAINTING debug flag.
 
 Dear Martin,
 
 I've asked multiple times for help when trying to understand this 
 metrics and coordcache stuff. Nobody ever stepped in. So IMHO, it's a 
 bit easy to say that you are angry now.

I know, but I just didn't connect it to rendering/rowpainter stuff. I
would have reacted if you had asked about that.

 The old code was not understandable at _all_ and I believe it is much 
 more understandable now that is has been cleaned up a bit.
 
 
  What about first getting the old singlepar/singlerow functionality back
  into a working state? Then we can see what is missing and provide it.
 
 Now we talk :-). I am open for suggestion and for help.
 
 Abdel.
 


signature.asc
Description: This is a digitally signed message part


Re: Coord cache and single par update

2006-11-02 Thread Martin Vermeer
On Thu, 2006-11-02 at 10:45 +0100, Abdelrazak Younes wrote:
 Martin Vermeer wrote:
  
  Note that the job will be easier if stale caches are not covered up by
  the current overzealous full-screen refresh behaviour. I suggest getting
  rid of that first. 
 
 The full refresh thing is due to the cursor bug. I will work on it as 
 soon as I find some free time.
 
 Abdel.

Are you sure? That would be great.

- Martin



signature.asc
Description: This is a digitally signed message part


Re: Input of CJK characters is O.K. but view fails

2006-11-02 Thread Gour
On Tue, 2006-10-31 at 08:46 +0100, Georg Baum wrote:

 Add the proper encodings to lib/encodings and languages to lib/languages.
 Then you need to fix the frontend that all encodings from lib/encodings can
 be selected, currently the list is hardcoded in
 src/frontends/qt4/QDocumentDialog.C.

I did it and I got PDF  DVI with Croatian chars on my utf-8 locale.

However, after running Lyx, I see:

[EMAIL PROTECTED] ~/tmp $ /usr/local/bin/lyx
Unknown encoding utf-8
The table passed to LyXLex is not sorted!
Tell the developers to fix it!

in console.

What's missing?

In case of segfaults, should I send backtraces here or to bugzilla?


Sincerely,
Gour






Re: small reorganization of graphics dialog

2006-11-02 Thread Jean-Marc Lasgouttes
 Edwin == Leuven, E [EMAIL PROTECTED] writes:

Edwin JML à dit:
 Personally, I would put the show in LyX part at the bottom.

Edwin i ended up putting it under the extra tab:

Excellent.

JMarc


Bug 2960: Inserting an URL cause latex/pdflatex failure

2006-11-02 Thread Helge Hafting

More lyx-1.5svn testing:

Insert a URL into the document, fill in the URL field with
http://www.free-firewall.org

Try view-pdflatex or view-latex,
get the error message
Undefined control sequence \url{http://www.free-firewall.org}


Re: LyX 1.5 translations

2006-11-02 Thread Helge Hafting

Lars Gullik Bjønnes wrote:

Helge Hafting [EMAIL PROTECTED] writes:

| Michael Gerz wrote:
|  Lars Gullik Bjønnes wrote:
| 
|  IMHO we should not merge translations from 1.4 at all. (or at most on
|  a case by case basis. And if translators want it (I don't want it for
|  NB f.ex.), msgmerge can be used for this.)
| 
|  Lars, I am a careful man :-)
| 
|  Right now, I am checking the state of the 1.4 and 1.5 translations
|  on a case-by-case basis. If the 1.4 translations are better (for
|  many languages they are significantly better!), I will remerge.
|  Otherwise, I won't.
| 
|  I will put nb.po on my black list.
| Any particular problem with nb.po? Helge Hafting

No. Only that it is missing translations and have a few fuzzy entries.

I am working slowly on them help would be appreciated.
  

I can look at it, like I did for 1.3. It should be simpler now, with
only one frontend.
Should I start with the nb.po that is in lyx1.5svn right now, or should 
I wait

for some merge from 1.4?

Helge Hafting


Re: small reorganization of graphics dialog

2006-11-02 Thread José Matos
On Thursday 02 November 2006 1:31 pm, Leuven, E. wrote:
 moreover, this way we avoid clutter on the dialog (presenting too many
 options at once) while having the main output options (the ones we care
 about most) on the first tab.

 i think this makes sense in a common use context, and i like it
 opinions?

 (patch attached.)

  If no one shouts until tomorrow you can put in.

-- 
José Abílio


Re: Alpha release until monday 6. November

2006-11-02 Thread christian . ridderstrom
On Thu, 2 Nov 2006, José Matos wrote:

  Sad to see that I couldn't infect the others with my enthusiasm, seem 
  the developers of LyX are more boring and inflexible than I thought.
 
   You are young lad. :-)

And how old are you? :-) (I'm 33 btw - is that old or young :-)

Anyway, as I've been confused now... when was the planned released date?
(I'm guessing Christmas of course)

/C

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

Re: My Big Fat (Greek?) Cursor

2006-11-02 Thread John Levon
On Thu, Nov 02, 2006 at 12:58:32PM +0100, Helge Hafting wrote:

 You have a point.  Ideally, we should use native widgets.  But
 only if they are good enough for our use. If not, then rolling
 our own makes lyx better. The alternative to our own cursor
 then is not to use a bad widget, but to actually fix qt4.

I find it hard to believe that we are so very special that the rich
ability to use native widgets is not enough for us...

regards
john


RE: small reorganization of graphics dialog

2006-11-02 Thread Leuven, E.
José wrote:
  If no one shouts until tomorrow you can put in.

ok, will do...


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Lars Gullik Bjønnes wrote:

Abdelrazak Younes [EMAIL PROTECTED] writes:

| Lars Gullik Bjønnes wrote:
|  Abdelrazak Younes [EMAIL PROTECTED] writes:
|  | Peter Kümmel wrote:
|  | |  A other solution is to somehow handle within the views which
|  part
|  |  of the buffer is viewed.
|  | | This is what we have already: Each LyXView (WorkArea really) has
|  its
|  | own unique BufferView which is a view of one part of the document.
|  | Except for some cursor bug (the famous dEPM bug), this is working fine.
|  ..except that metrics is shared between views.
| 
| This should not be. Each BufferView now has its own CoordCache. If

| there's still something shared, this should be fixed.
| 
| 
|  (And this fails miserably when the windows are of different widths.)
| 
| The problem is different here. I believe that there's some cursor

| interaction problem that leads. This leads to crashes but most of the
| time, if you have two BufferView sharing the same Buffer, changing the
| geometry of one does not impact the other one (except if there's some
| editing that invalidated the cursor of the other BufferView).

Just try it for yourself and you will see.


As I said, the problem is not related to metrics but to a bad paragraph 
model. More exactly this (in paragraph.h):


/// LyXText updates the rows using this access point
RowList  rows() { return rows_; }
/// The painter and others use this
RowList const  rows() const { return rows_; }

This is really, really _wrong_, a paragraph should not have any notion 
of rows. By modifying the geometry of the windows (the BufferView) you 
also modify the model (the Buffer) because the rows() information is not 
valid any more.


rows is a RowList, that is a vector of row:

/**
 * Each paragraph is broken up into a number of rows on the screen.
 * This is a list of such on-screen rows, ordered from the top row
 * downwards.
 */
typedef std::vectorRow RowList;

Georg is right, the LyX core is not ready for Multiple-view. There's too 
much that needs to be re-designed. So either someone steps up and 
cleanup that mess by putting the rows calculation outside of the Buffer 
or we disable the multi-windows feature.


Abdel.







Re: Coord cache and single par update

2006-11-02 Thread Abdelrazak Younes

Martin Vermeer wrote:

On Thu, 2006-11-02 at 10:45 +0100, Abdelrazak Younes wrote:

Martin Vermeer wrote:

Note that the job will be easier if stale caches are not covered up by
the current overzealous full-screen refresh behaviour. I suggest getting
rid of that first. 
The full refresh thing is due to the cursor bug. I will work on it as 
soon as I find some free time.


Abdel.


Are you sure? That would be great.


Yes I'm sure. The attached patch fixes the full screen refresh on cursor 
blinking.


Unfortunately, there are some bad side effects. As I explained earlier, 
there is no backing pixmap any more as we draw directly on screen. This 
is the reason why I need to back-up the cursor area in order to restore 
it when the cursor is hidden (this is not yet working with this patch). 
Because of this also, when the widget loose the focus, the screen is not 
redrawn any more. This can be taken care of by caching the screen estate 
when we catch a Focus Out event. But at this point there is too much 
work to turn around the refresh problem. So the only pragmatic solution 
is to restore the backing pixmap.


Abdel.
Index: GuiWorkArea.C
===
--- GuiWorkArea.C   (revision 15685)
+++ GuiWorkArea.C   (working copy)
@@ -39,7 +39,6 @@
 #include QMimeData
 #include QUrl
 #include QDragEnterEvent
-#include QPixmap
 #include QPainter
 #include QScrollBar
 
@@ -50,8 +49,10 @@
 // On windows-XP the UserGuide PageDown scroll test is faster without event 
pruning (16 s)
 // than with it (23 s).
 #ifdef Q_WS_WIN
+int const CursorWidth = 2;
  #define USE_EVENT_PRUNING 0
 #else
+int const CursorWidth = 1;
  #define USE_EVENT_PRUNING 0
 #endif
 
@@ -181,7 +182,7 @@
 
 
 GuiWorkArea::GuiWorkArea(int w, int h, int id, LyXView  lyx_view)
-   : WorkArea(id, lyx_view)
+   : WorkArea(id, lyx_view), exposed_(false)
 {
cursor_ = new frontend::CursorWidget(this);
cursor_-hide();
@@ -596,7 +597,15 @@
}
 
//lyxerr  real drawing  endl;
-   paintText(*buffer_view_, pain);
+   if (!exposed_) {
+   paintText(*buffer_view_, pain);
+   exposed_ = true;
+   }
+
+   if (!cursor_-on_) {
+   const QRect  r = cursor_-geometry();
+   pain.drawPixmap(r.x(), r.y(), cursor_area_);
+   }
 }
 
 
@@ -604,14 +613,16 @@
 void GuiWorkArea::expose(int x, int y, int w, int h)
 {
update(x, y, w, h);
+   exposed_ = false;
 }
 
 
 void GuiWorkArea::showCursor(int x, int y, int h, CursorShape shape)
 {
-   cursor_-setGeometry(x, y, 2, h);
+   cursor_-setGeometry(x, y, CursorWidth, h);
cursor_-shape_ = shape;
cursor_-on_ = true;
+   cursor_area_ = QPixmap::grabWidget(this, x, y, CursorWidth, h);
cursor_-show();
 }
 
@@ -621,6 +632,7 @@
if (!qApp-focusWidget())
return;
cursor_-hide();
+   cursor_-on_ = false;
 }
 
 
Index: GuiWorkArea.h
===
--- GuiWorkArea.h   (revision 15680)
+++ GuiWorkArea.h   (working copy)
@@ -23,6 +23,7 @@
 #include QResizeEvent
 #include QKeyEvent
 #include QTimer
+#include QPixmap
 
 #include queue
 
@@ -179,6 +180,10 @@
CursorShape cursor_shape_;
/// 
CursorWidget * cursor_;
+   ///
+   bool exposed_;
+   ///
+   QPixmap cursor_area_;
 };
 
 } // namespace frontend


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

Dear all,

The session/toolbar patch have been committed to the trunk. Please
test and comment. Features to test:

1. turn toolbar on/off, move it around, and see if session can restore
them correctly.
2. view-toolbar toggle on/off, and in the math/table/review cases,
toggle on/off/auto.

You may notice that I do not actually intercept qt toolbar menu. As a
result, toolbar right-click can not set 'auto' state, and the changes
it triggers does not penetrate to view-toolbars. (view-toolbars does
update toolbars). I do not see this as a big problem since we can tell
users that toolbar right-click changes are sort of temporary, while
view-toolbars can set advanced states like AUTO. That said, Qt4
developers can try to replace toolbar right-click menu with
view-toolbars and solve the problem. I have no idea how that may be
done. Another potential solution is that when view-toolbar says 'turn
off toolbar', we remove the toolbar altogether so qt can not switch to
it.

As I have said, I will be on vacation starting Saturday so please
bring up any issue before it.

Cheers,
Bo


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Bo Peng

Georg is right, the LyX core is not ready for Multiple-view. There's too
much that needs to be re-designed. So either someone steps up and
cleanup that mess by putting the rows calculation outside of the Buffer
or we disable the multi-windows feature.


I would be really disappointed to see mutlti-view gone. It is the
biggest feature I would like to have in 1.5.x. You see, if it does not
come with 1.5.0, then it will be too big for 1.5.x and we have to wait
till 1.6 ...

People who knows lyx-core better please help.

Bo


Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Bo Peng wrote:

Georg is right, the LyX core is not ready for Multiple-view. There's too
much that needs to be re-designed. So either someone steps up and
cleanup that mess by putting the rows calculation outside of the Buffer
or we disable the multi-windows feature.


I would be really disappointed to see mutlti-view gone. It is the
biggest feature I would like to have in 1.5.x. You see, if it does not
come with 1.5.0, then it will be too big for 1.5.x and we have to wait
till 1.6 ...

People who knows lyx-core better please help.


If this is really wanted there's two solutions:

1) make sure that the two windows size (the BufferView) are exactly the 
same size.


2) Instead of multi-window we could implement the multi-workarea within 
one window using the TabWidget solution I have outlined earlier. Then, 
we will be sure that two BufferView of the same Buffer would have the 
exact same size.


Abdel.



Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Bo Peng

1) make sure that the two windows size (the BufferView) are exactly the
same size.

2) Instead of multi-window we could implement the multi-workarea within
one window using the TabWidget solution I have outlined earlier. Then,
we will be sure that two BufferView of the same Buffer would have the
exact same size.


What is TabWidget? I will be satisfied with a split (vertical or
horizontal) window option, even if there are at most two windows, and
the split has to be half half.

Bo


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Peter Kümmel
Bo Peng wrote:
 Dear all,
 
 http://www.lyx.org/trac/changeset/15688
 
 As far as I can tell, I have solved the three state toolbar chaos
 completely by introducing this view-toolbar menu and
 LFUN_TOOLBAR_TOGGLE_STATE lfunc. If there is no objection, I will
 apply both patches tomorrow to attract more testing. Interested people
 can test the patches using
 
 svn merge -r 15686:15688
 svn://svn.lyx.org/lyx/lyx-devel/branches/personal/bpeng
 
 If all goes well, I may be able to enjoy my vacation without thinking
 of lyx. :-)
 
 Bo
 
 

The popup could be disabled by reimplementing createPopouMenu in GuiView.C

http://doc.trolltech.com/4.2/qmainwindow.html#createPopupMenu

You could try returning just a QMenu() or QWidget() to disbale the popup.


-- 
Peter Kümmel



RE: General ideas and feedback.

2006-11-02 Thread Leuven, E.
Draciron wrote:
 Greetings...

greetings

 Also excuse my breach in ettiquete. I'm not a patient man :)

don't worry, neither are we (or me at least)

...

(i will try to answer some of your questions, where i can)

 First is the editor won't let me use the enter key to create my own 
 sense of formating. This is rather irritating. Very annoying 
 actually.

use word/openoffice/abiword? the basic philosophy behind lyx is to get rid of 
manual formatting and focus on content instead...

 Now I'm stuck in indent hell. Nor can I manually add a blank line 
 between paragraphs. I am sure there is a formating option to do this
 
ctrl+enter or File-Paragraph Settings

 but I disagree with the default design.

what would you propose?

 I could not find a word count utility.

update to 1.4

 I do like the bookmarks concept. That is very important in a long 
 document.

we are glad you like them

 The built in Thesaurus is also a very essential and good idea.

great

 The Index feature is also well done.

i start to like your mail...

 Though I would love to use 2 different indexes, One a timeline index,
  the other a conventional index.

i am not sure you might find a developer interested in your timeline
(more on this below)

 I very much like the notes feature that you have. That is very well 
 done.

thanks

 The built in revision control is a nice feature

thanks, it will be improved in 1.5

 Now to explain what led me to try LyX.

we're listening...

 When I write I don't know any more than the reader how the story 
 ends.

you write emails like that too?

 When I write it's like I open a window to a world and I'm doing my 
 best to keep up with the events as they happen and translate enough 
 shorthand to later go back and add in detail.

are you doing drugs?

 I can pump out hundreds of pages of these in week.

wow

 The detail side is tedious and takes months. In both cases a crucial
  part of the process is the timeline. If the story does not involve a
  very sequential series of events then it is quite easy to get out of
  synch. This can of course be very disconcerting to the reader if not
  corrected. Disconcerting to the author as well. The best example is
  one from a series of books most Linux users have probably read. The
  Lord of the Rings that is.

i must admit that i've read it, although i was young at the time (i
know, i know, it's no excuse...)

 Different authors use different means to deal with timelines. Some 
 cover thier walls in giant structures of notes.

(btw, lyx features a spellchecker)

 Most today use pen and paper, often creating folders which with many
  artifacts besides the timeline. Few do this on a computer today 
 becuase there are few applications that do a very good timeline and 
 no software actually supports built in timelines.

it sounds really complicated and i can imagine that the market for this
is rather small. unless a developer needs this himself and finds a way of 
implementing it in a clean way, i don't see this feature coming to lyx very 
soon...

 I dispise VI and Emacs.

i understand, i am a notepad guy myself...

 I'm sorry I hate those two editors.

that's okay. just let it out...

 Anyway I use Kedit since it's lightweight, has all the basic editing
  functions I need for my primary writing.

ah

 I use little in the way of text formating. [snip] [snip] [snip] 
 [snip] [snip]

sorry, but you (i) kinda got lost in the details there...

 For me I'd rather have a row of tabs much like done in Kate or 
 Firefox.

it looks like this is going to be added to 1.5 which is in the works now,

 These would be the chapters or other customizable means of 
 organization allowing you to group documents in one or more of the 
 tabs. Then each tab would have a tab for each document in that 
 chapter/group.

but no nested tabs i am afraid...

 For me the ideal writing system [snip] [snip]

 For example in my first novel, a work of Fantasy, there is a critical
  battle that shapes the future of the hero of the story.

sounds like my first time on lyx-devel...

 I refered back to that battle many times in the course of the book.

and i kinda try to forget my battles

 The description of the village which the hero came from was another 
 couple pages I constantly refered back too as was encounters with 
 critical charactors, a 2nd battle much later in the book and the 
 meeting of his true love.

aha

 Formating is important and depending on what you are doing and who it
  is for that can vary. Many places want plain text. Some places only 
 accept paper copies. Some will not even read formated text, some 
 expect the formating to already be in there. Some want your text 
 submited as Word files, some as plain text, some as Word Perfect, 
 some as HTML and a few will accept a few formats including RTF. The 
 lack of export support is a potential issue though I'm sure I could 
 export to text then import in Abiword or Open Office. Might even be 
 able to save the formating 

Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

The popup could be disabled by reimplementing createPopouMenu in GuiView.C


This will be less confusing indeed. But do people in general agree to remove it?

Bo


Re: Coord cache and single par update

2006-11-02 Thread Martin Vermeer
On Thu, Nov 02, 2006 at 04:57:09PM +0100, Abdelrazak Younes wrote:
 Martin Vermeer wrote:
 On Thu, 2006-11-02 at 10:45 +0100, Abdelrazak Younes wrote:
 Martin Vermeer wrote:
 Note that the job will be easier if stale caches are not covered up by
 the current overzealous full-screen refresh behaviour. I suggest getting
 rid of that first. 
 The full refresh thing is due to the cursor bug. I will work on it as 
 soon as I find some free time.
 
 Abdel.
 
 Are you sure? That would be great.
 
 Yes I'm sure. The attached patch fixes the full screen refresh on cursor 
 blinking.

Confirmed, thanks. I suppose this will already help Bennett.
 
 Unfortunately, there are some bad side effects. As I explained earlier, 
 there is no backing pixmap any more as we draw directly on screen. This 
 is the reason why I need to back-up the cursor area in order to restore 
 it when the cursor is hidden (this is not yet working with this patch). 
 Because of this also, when the widget loose the focus, the screen is not 
 redrawn any more. This can be taken care of by caching the screen estate 
 when we catch a Focus Out event. But at this point there is too much 
 work to turn around the refresh problem. So the only pragmatic solution 
 is to restore the backing pixmap.
 
 Abdel.

Hmmm. I see still that the whole screen is refreshed even for a character 
insert.  I
also notice that when I comment out the updateMetrics(false) call in 
WorkArea::redraw,
this whole-screen refresh doesn't happen any more, which is good. But... the
non-redrawn areas of the screen are blanked out. Are you saying this is due to 
the
backing pixmap issue? Just trying to understand...

- Martin



pgp4ORldxfKKa.pgp
Description: PGP signature


Re: Coord cache and single par update

2006-11-02 Thread Abdelrazak Younes

Martin Vermeer wrote:

On Thu, Nov 02, 2006 at 04:57:09PM +0100, Abdelrazak Younes wrote:

Martin Vermeer wrote:

On Thu, 2006-11-02 at 10:45 +0100, Abdelrazak Younes wrote:

Martin Vermeer wrote:

Note that the job will be easier if stale caches are not covered up by
the current overzealous full-screen refresh behaviour. I suggest getting
rid of that first. 
The full refresh thing is due to the cursor bug. I will work on it as 
soon as I find some free time.


Abdel.

Are you sure? That would be great.
Yes I'm sure. The attached patch fixes the full screen refresh on cursor 
blinking.


Confirmed, thanks. I suppose this will already help Bennett.


Well, this is not ready yet and I suspect that there's more work to make 
it run correctly than the work to go back to the backing pixmap solution.


Unfortunately, there are some bad side effects. As I explained earlier, 
there is no backing pixmap any more as we draw directly on screen. This 
is the reason why I need to back-up the cursor area in order to restore 
it when the cursor is hidden (this is not yet working with this patch). 
Because of this also, when the widget loose the focus, the screen is not 
redrawn any more. This can be taken care of by caching the screen estate 
when we catch a Focus Out event. But at this point there is too much 
work to turn around the refresh problem. So the only pragmatic solution 
is to restore the backing pixmap.


Abdel.


Hmmm. I see still that the whole screen is refreshed even for a character 
insert.  I
also notice that when I comment out the updateMetrics(false) call in 
WorkArea::redraw,
this whole-screen refresh doesn't happen any more, which is good. But... the
non-redrawn areas of the screen are blanked out. Are you saying this is due to 
the
backing pixmap issue?


The screen refresh for a character insert is due to the missing 
singlePar update use case that you complained already; nothing to do 
with the pixmap issue. But the blanked out of the non-redrawn areas is 
indeed due the backing pixmap issue.


Abdel.



Re: Let us remove the multi-window support ! (was Re: About New TabBar and Multiple-Windows)

2006-11-02 Thread Abdelrazak Younes

Bo Peng wrote:

1) make sure that the two windows size (the BufferView) are exactly the
same size.

2) Instead of multi-window we could implement the multi-workarea within
one window using the TabWidget solution I have outlined earlier. Then,
we will be sure that two BufferView of the same Buffer would have the
exact same size.


What is TabWidget? I will be satisfied with a split (vertical or
horizontal) window option, even if there are at most two windows, and
the split has to be half half.


Here is some explanations that I wrote earlier:


1) The Model: Buffer

The Buffer is the in-memory representation of a LyX file format. The 
Buffer does not (should not) have any information on what part of it is 
represented on screen. There is one unique Buffer per opened LyX file.



2) The Controller: BufferView/Painter

The BufferView is a tool used by the view that translates a part of the 
Buffer contents into drawing routines. The BufferView asks each inset of 
the Buffer to draw itself onto the screen using the Painter.
There is only Buffer loaded per BufferView. While there is the 
possibility to switch Buffer inside the BufferView, the goal is to 
instantiate a new BufferView on each Buffer switch.


The Painter is just a virtual interface to formalize each kind of 
drawing routines (text, line, rectangle, etc).


The BufferView also contains a Cursor which may or may not be visible on 
screen. The cursor is really just a bookmark to remember where the next 
Buffer insertion/deletion is going to take place.



3) The View: WorkArea (and it's qt4 specialisation GuiWorkArea)

This contains the real screen area where the drawing is done by the 
Painter. One WorkArea holds one unique BufferView. While it could be 
possible that multiple WorkArea share one BufferView, this is not 
possible right now.
The WorkArea also provide a scrollbar which position is translated into 
scrolling command to the inner BufferView.


The WorkArea use the BufferView to translate each keyboard or mouse 
events into terms that the Buffer can understand:

- insert/delete char
- select char
- etc.


4) The Window: LyXView (and its qt4 specialisation GuiView)

This is a full window containing a menubar, toolbars, a tabbar and a 
WorkArea. One LyXView could in theory contain multiple WorkArea (ex: 
with split window) but this number is limited to one only for now. In 
any case, there would be only one WorkArea that gets the focus at a time.


Now, concerning the TabBar versus TabWidget issue. Right now, there is 
only one WorkArea and the TabBar just used to tell the BufferView inside 
the WorkArea to switch to this another Buffer.
With a TabWidget, each Tab would own its own WorkArea. Clicking on a tab 
would switch a WorkArea instead of a Buffer.


That's all, I hope my English is clear enough and that helps some of you 
better understand the global picture. Back to my real work.


Abdel.











Re: General ideas and feedback.

2006-11-02 Thread Abdelrazak Younes

Leuven, E. wrote:

Draciron wrote:

Greetings...


greetings


Also excuse my breach in ettiquete. I'm not a patient man :)


don't worry, neither are we (or me at least)


Very funny post Edwin... you offered me 5 minutes of laughing and I 
needed that today :-)


Abdel.



amsart-plain.layout and a question

2006-11-02 Thread Philippe Charpentier

Hi,
I notice the following small bug in amsart-plain.layout:

Input amsart.layout - Input amsdef.inc - Input ammsmath.inc

Input amsmaths-plain.inc

Thus both Theorem and Theorem* appear in the layout combobox, which is not
useful, and if you choose both you get a LaTeX error as they define the 
same newtheorem*.


Now my question. As I don't like very much the layout combobox, I wrote 
my own
ui files containing all the layouts of the five main classes I generally 
use. Does
there is a way to have active in the menus only the layouts which are in 
the class

used by the document (and not all the layout appearing in the ui file)?

Philippe Charpentier


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Juergen Spitzmueller
Bo Peng wrote:
 This will be less confusing indeed. But do people in general agree to
 remove it?

I do. I think the popup is just not suited for our needs, as opposed to your
menu entry (apparently -- I didn't have time to have a look at it yet).

Jürgen



Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

The popup could be disabled by reimplementing createPopouMenu in GuiView.C

http://doc.trolltech.com/4.2/qmainwindow.html#createPopupMenu

You could try returning just a QMenu() or QWidget() to disbale the popup.



OK. Peter, could you please remove this popup for me? It will take me
much longer than you to do this.

Also, if there is no other way to turn on/off toolbar than
view-toolbar, Toolbar::Flags then reflects the true status of
toolbars. View-Toolbar can then be made prettier. I will do that
later.

Cheers,
Bo


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Peter Kümmel
 OK. Peter, could you please remove this popup for me? It will take me
 much longer than you to do this.

Yes, I could do it in the next days.
Maybe I try to add the Auto option instead of removing the complete
popup.

 Also, if there is no other way to turn on/off toolbar than
 view-toolbar, Toolbar::Flags then reflects the true status of
 toolbars. View-Toolbar can then be made prettier. I will do that
 later.

When I evtl. add the Auto option, I will make sure that the menu is
always up to date.

Peter


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

When I evtl. add the Auto option, I will make sure that the menu is
always up to date.


Yes, just remember to update ToolbarBackend::Flags so
MenuBackends::expandToolbars() can get the correct status.

Thanks.
Bo


Re: General ideas and feedback.

2006-11-02 Thread José Matos
On Thursday 02 November 2006 2:53 pm, Draciron wrote:
 Useing the scrollwheel in file selections breaks the file selection box. I
 am using a Logictech trackball on FC3.

  Known problem with xforms, the qt-frontend does not have this problem.

-- 
José Abílio


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

Yes, I could do it in the next days.
Maybe I try to add the Auto option instead of removing the complete
popup.


Since ToolbarBackend::Flags will always reflect  the true toolbar
status, I have modified the view-toolbars display as

standard etc, two states:
   on standard
   off standard
review etc, three states
   on  review
   off review
   review (auto)

Committing now.
Bo

Index: src/lyxfunc.C
===
--- src/lyxfunc.C   (revision 15691)
+++ src/lyxfunc.C   (working copy)
@@ -573,6 +573,13 @@
break;
}

+   case LFUN_TOOLBAR_TOGGLE_STATE: {
+   ToolbarBackend::Flags flags =
lyx_view_-getToolbarState(to_utf8(cmd.argument()));
+   if (!(flags  ToolbarBackend::AUTO))
+   flag.setOnOff(flags  ToolbarBackend::ON);
+   break;
+   }
+
// this one is difficult to get right. As a half-baked
// solution, we consider only the first action of the sequence
case LFUN_COMMAND_SEQUENCE: {
@@ -635,7 +642,6 @@
case LFUN_BUFFER_PREVIOUS:
case LFUN_WINDOW_NEW:
case LFUN_WINDOW_CLOSE:
-   case LFUN_TOOLBAR_TOGGLE_STATE:
// these are handled in our dispatch()
break;

Index: src/frontends/LyXView.h
===
--- src/frontends/LyXView.h (revision 15691)
+++ src/frontends/LyXView.h (working copy)
@@ -136,6 +136,8 @@

/// update the toolbar
void updateToolbars();
+   /// get toolbar state
+   ToolbarBackend::Flags getToolbarState(std::string const  name);
/// toggle toolbar state
void toggleToolbarState(std::string const  name);
/// update the menubar
Index: src/frontends/Toolbars.C
===
--- src/frontends/Toolbars.C(revision 15691)
+++ src/frontends/Toolbars.C(working copy)
@@ -129,6 +129,21 @@
}


+ToolbarBackend::Flags Toolbars::getToolbarState(string const  name)
+{  
+   ToolbarBackend::Toolbars::const_iterator cit = toolbarbackend.begin();
+   ToolbarBackend::Toolbars::const_iterator end = toolbarbackend.end();
+
+   for (; cit != end; ++cit) {
+   if (cit-name == name)
+   return cit-flags;
+   }
+
+   lyxerr[Debug::GUI]  Toolbar::display: no toolbar named 
+name  endl;
+}
+
+
 void Toolbars::toggleToolbarState(string const  name)
{
ToolbarBackend::Toolbars::iterator cit = toolbarbackend.begin();
@@ -154,9 +169,11 @@
TurnOnFlag(ON);
}
cit-flags = 
static_castlyx::ToolbarBackend::Flags(flags);
-   break;
+   return;
}
}
+   lyxerr[Debug::GUI]  Toolbar::display: no toolbar named 
+name  endl;
}
#undef TurnOnFlag
#undef TurnOffFlag
Index: src/frontends/LyXView.C
===
--- src/frontends/LyXView.C (revision 15691)
+++ src/frontends/LyXView.C (working copy)
@@ -305,6 +305,12 @@
}


+ToolbarBackend::Flags LyXView::getToolbarState(string const  name)
+{
+   return toolbars_-getToolbarState(name);
+}
+
+
 void LyXView::toggleToolbarState(string const  name)
{
// it is possible to get current toolbar status like this,...
Index: src/frontends/Toolbars.h
===
--- src/frontends/Toolbars.h(revision 15691)
+++ src/frontends/Toolbars.h(working copy)
@@ -88,6 +88,9 @@
/// Show/hide the named toolbar.
void display(std::string const  name, bool show);

+   /// get toolbar state (on/off/auto)
+   ToolbarBackend::Flags getToolbarState(std::string const  name);
+   
/// toggle the state of toolbars (on/off/auto)
void toggleToolbarState(std::string const  name);

Index: src/MenuBackend.C
===
--- src/MenuBackend.C   (revision 15691)
+++ src/MenuBackend.C   (working copy)
@@ -768,17 +768,16 @@
int i = 1;
for (; cit != end; ++cit, ++i) {
docstring label = convertdocstring(i) + .  + _(cit-name);
-   // frontend does not update ToolbarBackend::flags when it 
changes toolbar
-   // Therefore, I can not tell from the flags if the toolbar is 
on or off
-   // it is then less confusing to say:
-   // this is: always on/off/auto
-   // frontend toolbar change is temporary.
+   // frontends are not supposed to turn on/off toolbars, if they 
can not
+   // update ToolbarBackend::flags. That is to say, 
ToolbarsBackend::flags
+   // should reflect the true state of toolbars.
//
-   if 

Status: 3 hopeless showstoppers + more

2006-11-02 Thread Asger Ottar Alstrup

Hi,

More bugs are being reported recently, and none of the old ones have 
been fixed. Thus, we are moving in the wrong direction.


Showstoppers without hope:
- Selection with the mouse. Does not work in math nor in tables. It kind 
of works in insets, although problems have been reported with this as 
well. To reproduce, make a formula or a table, type some text and try to 
select it with the mouse. We need a volunteer to investigate this.


- Crashes with multiple windows open. It seems that Buffer contains Rows 
of paragraphs, and this is no good in a multiple view setting. Options: 
a) Rework Buffer to not have Rows (big change, risky), b) Disable 
multiple views completely for now, c) Disable multiple views of same 
document only. Seems to me option C would be safe and still provide some 
benefit to the user.


- Cursor trouble: Full refresh on each blink. Abdel says it's a lot of 
work to fix this without the pixamp. Options a) Spend that time, b) 
Revert to old painting scheme. Given that the removal of the pixmap did 
not give us any noticable speed-up, I think we should revert this change 
which was done the last Monday of the meeting.


Showstoppers with hope:

- In math the cursor blinks at the start of the math inset and then 
seems to go the correct place afterwards. I suggest that Peter's patch 
which disables immediate cursor updates is applied, unless someone can 
track down the bug in the math code.


Other problems without hope:

- Mac is unusable because of poor performance, among other things. 
Options: a) Revert commit from 14th of July which disabled partial 
refresh. This is a little dangerous, since it is known that this might 
cause invalid coord cache entries. b) Do a), but also implement partial 
coord cache refresh to make it safe. c) Implement a caching painting 
scheme, such that only changed paint requests are done.


- No UTF-8 support in LaTeX export.

- Nice icons in change tracking missing.

Other problems with hope:
- Copy/paste using middle mouse button inserts musical notes.

- Branches are not unicode clean. Reported by Helge.

- URLs in documents causes LaTeX error. Reported by Helge.

Change tracking is being worked on, and will be done before the 14th.

The tab bar work is settling down. I think all other pending patches 
have all been applied, but it's difficult to keep track off.


We have a bunch of problems without any hope. At the same time, people 
are getting too busy to work on LyX.


So, the future does not look too bright for LyX. In other words, we are 
back in deep shit again.


Therefore, I would suggest to freeze the code even more until progress 
has been made on the hopeless showstoppers. We have some difficult 
problems to solve, and those will require a concentrated effort to nail.


The positive side to this is that each person who conquers a hopeless 
showstopper is instantly a hero.


Regards,
Asger



Re: [Final PATCH] session/toolbar

2006-11-02 Thread Enrico Forestieri
On Fri, Nov 03, 2006 at 10:13:47AM +1800, Bo Peng wrote:

 The session/toolbar patch have been committed to the trunk. Please
 test and comment.

Good work, Bo ;-)

Some comments:

- The status of the toolbars can only be changed when a document is loaded.
- Changing the status of a toolbar modifies the changed status of the
  document.
- Maybe the toolbars should not be numerated in the menu and their first
  letter capitalized.
- The position of the toolbars can be changed and session remembers the
  settings, but perhaps at least the minibuffer could appear at the
  bottom by default.

I think you solved brilliantly the problem and I like it very much.

-- 
Enrico


Re: [Final PATCH] session/toolbar

2006-11-02 Thread John Levon
On Thu, Nov 02, 2006 at 09:00:45PM +0100, Enrico Forestieri wrote:

 - The status of the toolbars can only be changed when a document is loaded.
 - Changing the status of a toolbar modifies the changed status of the
   document.
 - Maybe the toolbars should not be numerated in the menu and their first
   letter capitalized.

All of these, plus:

When you first turn 'on' a toolbar it should turn on permanently. So the
order should be:

Off - On - Auto - Off

It's very disconcerting to select a toolbar and not have it appear.

But yes, great work...

 - The position of the toolbars can be changed and session remembers the
   settings, but perhaps at least the minibuffer could appear at the
   bottom by default.

Is stuff in .ui ignored? It should default to bottom.

regards
john


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread John Levon
On Thu, Nov 02, 2006 at 08:28:45PM +0100, Asger Ottar Alstrup wrote:

 More bugs are being reported recently, and none of the old ones have 
 been fixed. Thus, we are moving in the wrong direction.

Or people have been doing some testing...

regards
john


mail size and attachments for the mailinglist

2006-11-02 Thread Bernhard Roider

hello!

two days ago i wrote a mail to the list with subject svg4lyx and i got 
it via the list, but it doesn't show up in the list archive and nobody 
answered to it. So i thought that maybe there was a problem because of 
the size of the mail (it contained some attached files).


short about the (lost?) mail: i wrote some python scripts that utilize 
inkscape for converting svg images to eps, png, and psfrag latex code as 
well as an external inset template for lyx.


did anybody get that mail?

thanks
bernhard


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Juergen Spitzmueller
Asger Ottar Alstrup wrote:

 Other problems without hope:

 - Nice icons in change tracking missing.

I think we could just take some from the KDE classic iconset, where the
other icons are taken from IIRC. Like the attached, for instance.

Jürgen

icons.tar.gz
Description: GNU Zip compressed data


Re: mail size and attachments for the mailinglist

2006-11-02 Thread José Matos
On Thursday 02 November 2006 8:56 pm, Bernhard Roider wrote:
 hello!

  Hello,

 two days ago i wrote a mail to the list with subject svg4lyx and i got
 it via the list, but it doesn't show up in the list archive and nobody
 answered to it. So i thought that maybe there was a problem because of
 the size of the mail (it contained some attached files).

  True, I have that mail marked as todo, but I had not the time to write back. 
I am sorry. :-(

 short about the (lost?) mail: i wrote some python scripts that utilize
 inkscape for converting svg images to eps, png, and psfrag latex code as
 well as an external inset template for lyx.

 did anybody get that mail?

  I did so I suppose the list got it. Certainly we are interested, I was 
expecting someone more knowledge to answer (Hello Georg, or Angus). :-)

  I are preparing an alpha release in a week or so.

  If you don't get an answer soon please poke us again, we are sometimes 
slow. :-)

  Thanks for your feedback Bernhard. :-)

 thanks
 bernhard

-- 
José Abílio


Re: Alpha release until monday 6. November

2006-11-02 Thread José Matos
On Thursday 02 November 2006 3:11 pm, [EMAIL PROTECTED] wrote:
 On Thu, 2 Nov 2006, José Matos wrote:
   Sad to see that I couldn't infect the others with my enthusiasm, seem
   the developers of LyX are more boring and inflexible than I thought.
 
You are young lad. :-)

 And how old are you? :-)

  35. :-)

 (I'm 33 btw - is that old or young :-) 

  It depends. ;-)

 Anyway, as I've been confused now... when was the planned released date?
 (I'm guessing Christmas of course)

  There is no planned release date. In terms of wishes I would like to have 
the first beta - Tawny, three weeks after the alpha release -Ruby.

  I would like to have a new beta with a periodicity of three four weeks each.

  Notice that this is what I would like. In practical terms I would like to 
fix the details for the next release as soon as we do one, one release at a 
time that is. :-)

 /C

-- 
José Abílio


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread José Matos
On Thursday 02 November 2006 10:04 pm, Juergen Spitzmueller wrote:
 Asger Ottar Alstrup wrote:
  Other problems without hope:
 
  - Nice icons in change tracking missing.

 I think we could just take some from the KDE classic iconset, where the
 other icons are taken from IIRC. Like the attached, for instance.

  Could you commit them, please? :-)

 Jürgen

-- 
José Abílio


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Peter Kümmel
Asger Ottar Alstrup wrote:
 Hi,
 
 More bugs are being reported recently, and none of the old ones have
 been fixed. Thus, we are moving in the wrong direction.
 
 Showstoppers without hope:
 - Selection with the mouse. Does not work in math nor in tables. It kind
 of works in insets, although problems have been reported with this as
 well. To reproduce, make a formula or a table, type some text and try to
 select it with the mouse. We need a volunteer to investigate this.

This bug is fixed now.


 - Crashes with multiple windows open. It seems that Buffer contains Rows
 of paragraphs, and this is no good in a multiple view setting. Options:
 a) Rework Buffer to not have Rows (big change, risky), b) Disable
 multiple views completely for now, c) Disable multiple views of same
 document only. Seems to me option C would be safe and still provide some
 benefit to the user.
 
 - Cursor trouble: Full refresh on each blink. Abdel says it's a lot of
 work to fix this without the pixamp. Options a) Spend that time, b)
 Revert to old painting scheme. Given that the removal of the pixmap did
 not give us any noticable speed-up, I think we should revert this change
 which was done the last Monday of the meeting.
 
 Showstoppers with hope:
 
 - In math the cursor blinks at the start of the math inset and then
 seems to go the correct place afterwards. I suggest that Peter's patch
 which disables immediate cursor updates is applied, unless someone can
 track down the bug in the math code.
 
 Other problems without hope:
 
 - Mac is unusable because of poor performance, among other things.
 Options: a) Revert commit from 14th of July which disabled partial
 refresh. This is a little dangerous, since it is known that this might
 cause invalid coord cache entries. b) Do a), but also implement partial
 coord cache refresh to make it safe. c) Implement a caching painting
 scheme, such that only changed paint requests are done.
 
 - No UTF-8 support in LaTeX export.
 
 - Nice icons in change tracking missing.
 
 Other problems with hope:
 - Copy/paste using middle mouse button inserts musical notes.
 
 - Branches are not unicode clean. Reported by Helge.
 
 - URLs in documents causes LaTeX error. Reported by Helge.
 
 Change tracking is being worked on, and will be done before the 14th.
 
 The tab bar work is settling down. I think all other pending patches
 have all been applied, but it's difficult to keep track off.
 
 We have a bunch of problems without any hope. At the same time, people
 are getting too busy to work on LyX.
 
 So, the future does not look too bright for LyX. In other words, we are
 back in deep shit again.
 
 Therefore, I would suggest to freeze the code even more until progress
 has been made on the hopeless showstoppers. We have some difficult
 problems to solve, and those will require a concentrated effort to nail.
 
 The positive side to this is that each person who conquers a hopeless
 showstopper is instantly a hero.
 
 Regards,
 Asger
 
 


-- 
Peter Kümmel


Re: New Mac Profile

2006-11-02 Thread Andreas Vox
Abdelrazak Younes [EMAIL PROTECTED] writes:

 
 Bennett Helm wrote:
  I'm now out of my depth.
  
  The official binary installs Qt as a bunch of Frameworks 
  (Qt3Support.framework, QtAssistantClient.framework, QtCore.framework, 
  etc), which are folders that include headers and largish  (i.e., 3+MB) 
  files named Qt3Support, QtAssistantClient, QtCore, etc.; they do not 
  include any files named, e.g., libQtCore.a, which LyX looks for. So, I 
  don't see how the binaries are going to help.
 
 I think these files are the libraries. 

Yep. Frameworks are folders, you can open them and will see what they
contain. Usually QtCore.framework/QtCore should be the dynamic lib. There
*might * be a static lib in QtCore.framework/Versions/Current/... but I 
doubt it. Frameworks are usually shared libs.

 We just need to update the 
 autotools to look for them in addition to the more unix like libXXX.[so, a].

OMG, easier to switch to CMake. Why do you think they call it autohell ? ;-)

 
 But I don't know enought about autotools to help you with that. Maybe 
 scons or CMake have some support for those Qt framework packages?

CMake supports frameworks. I used CMake to compile LyX with a manually
build Qt/Mac 4.2.1, but got linking errors because I didn't tell CMake
to include the -framework ApplicationServices etc. switches. I'll try again
soon. Some caveats: 
* unset QMAKESPEC before doing anything (set by /sw/bin/init.sh)
* check in ccmake for undefined symbols and add them manually if needed
* toggle advanced mode in ccmake to see all symbols

/Andreas



Re: New Mac Profile

2006-11-02 Thread Abdelrazak Younes

Andreas Vox wrote:

Abdelrazak Younes [EMAIL PROTECTED] writes:


Bennett Helm wrote:

I'm now out of my depth.

The official binary installs Qt as a bunch of Frameworks 
(Qt3Support.framework, QtAssistantClient.framework, QtCore.framework, 
etc), which are folders that include headers and largish  (i.e., 3+MB) 
files named Qt3Support, QtAssistantClient, QtCore, etc.; they do not 
include any files named, e.g., libQtCore.a, which LyX looks for. So, I 
don't see how the binaries are going to help.
I think these files are the libraries. 


Yep. Frameworks are folders, you can open them and will see what they
contain. Usually QtCore.framework/QtCore should be the dynamic lib. There
*might * be a static lib in QtCore.framework/Versions/Current/... but I 
doubt it. Frameworks are usually shared libs.


We just need to update the 
autotools to look for them in addition to the more unix like libXXX.[so, a].


OMG, easier to switch to CMake. Why do you think they call it autohell ? ;-)


This is very good Andrea! I look forward to seeing your profile results ;-)

Once you're done you could perhaps update Bennett's recipe for MacOSX? I 
am sure Peter (the author of the CMake support) would be happy to help 
you for any request you have.


Thanks for the investigation,
Abdel.



Re: [patch] new InsetCommandParams

2006-11-02 Thread José Matos
On Thursday 02 November 2006 12:15 pm, Georg Baum wrote:
 Ozgur Ugras BARAN wrote:
 
  Oh, this is bad news, since I have almost completed the multiple indices
  stuff..

  Do you have the code? :-)

 You can be lucky that the nomencl stuff is allowed at all.

  I am following the spirit of the law. If your code is small and 
self-contained I don't have a problem considering it. I am doing this since 
you have working in the list, you have announced it before, and showed some 
of it for comment.

  If for some reason it can be included then we should really focus on smaller 
development cycles, more focused.

  We are in good shape for 1.6 since we have a target there, xml file format.
A 6 month development cycle would be ideal.

 Georg

-- 
José Abílio


Re: Bug 2960: Inserting an URL cause latex/pdflatex failure

2006-11-02 Thread José Matos
On Thursday 02 November 2006 2:13 pm, Helge Hafting wrote:
 Try view-pdflatex or view-latex,
 get the error message
 Undefined control sequence \url{http://www.free-firewall.org}

  There is a provides(url), or something like this, missing somewhere.
-- 
José Abílio


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread John Levon
On Thu, Nov 02, 2006 at 11:29:04PM +0100, Peter Kümmel wrote:

  Showstoppers without hope:
  - Selection with the mouse. Does not work in math nor in tables. It kind
  of works in insets, although problems have been reported with this as
  well. To reproduce, make a formula or a table, type some text and try to
  select it with the mouse. We need a volunteer to investigate this.
 
 This bug is fixed now.

Afraid not, I've just updated and built, and things are actually a
little worse.  Insets like Note jump in size between screen-wide and
shrink-sized, as well as all the previous selection troubles.

regards
john


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Juergen Spitzmueller
José Matos wrote:

 Could you commit them, please? :-)

Yes, sure. However, I'm (far) away from my Desktop (and tree) now. 
I'll shove them in during the weekend if nobody objects.

Jürgen



Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread José Matos
On Thursday 02 November 2006 10:57 pm, Juergen Spitzmueller wrote:
 José Matos wrote:
  Could you commit them, please? :-)

 Yes, sure. However, I'm (far) away from my Desktop (and tree) now.
 I'll shove them in during the weekend if nobody objects.

  Thank you. This can wait until the weekend, I think. :-)

 Jürgen

-- 
José Abílio


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Peter Kümmel
John Levon wrote:
 On Thu, Nov 02, 2006 at 11:29:04PM +0100, Peter Kümmel wrote:
 
 Showstoppers without hope:
 - Selection with the mouse. Does not work in math nor in tables. It kind
 of works in insets, although problems have been reported with this as
 well. To reproduce, make a formula or a table, type some text and try to
 select it with the mouse. We need a volunteer to investigate this.
 This bug is fixed now.
 
 Afraid not, I've just updated and built, and things are actually a
 little worse.  Insets like Note jump in size between screen-wide and
 shrink-sized, as well as all the previous selection troubles.
 
 regards
 john
 
 


I don't see your strange bug here...

Anyway, the patch is correct because before it the button parameter
was completes disabled, see log:

enable selection with the mouse for math and tables

Qt doc for QMouseEvent::button():

Note that the returned value is always Qt::NoButton for mouse move 
events.

so we must use buttons() instead because later on
the code checks for the left button.


The most recent commit was Abdel's revert to the pixmap painting strategy,
maybe this is the reason for your broken notes.

-- 
Peter Kümmel


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Abdelrazak Younes

Asger Ottar Alstrup wrote:
- Crashes with multiple windows open. It seems that Buffer contains Rows 
of paragraphs, and this is no good in a multiple view setting. Options: 
a) Rework Buffer to not have Rows (big change, risky), b) Disable 
multiple views completely for now, c) Disable multiple views of same 
document only. Seems to me option C would be safe and still provide some 
benefit to the user.


Option d) disable multi-window and implement multiple WorkArea within a 
QTabWidget. This will allow to open two tabs showing different part of 
the same document. This is a nice work-around of the bad Paragraph row 
model as the two BufferView will have a fortiori the same dimensions.





- Cursor trouble: Full refresh on each blink. Abdel says it's a lot of 
work to fix this without the pixamp. Options a) Spend that time, b) 
Revert to old painting scheme. Given that the removal of the pixmap did 
not give us any noticable speed-up, I think we should revert this change 
which was done the last Monday of the meeting.


I have now restored the backing pixmap. -dbg painting will print at 
the console which area is refreshed.




Showstoppers with hope:

- In math the cursor blinks at the start of the math inset and then 
seems to go the correct place afterwards. I suggest that Peter's patch 
which disables immediate cursor updates is applied, unless someone can 
track down the bug in the math code.


Other problems without hope:

- Mac is unusable because of poor performance, among other things. 
Options: a) Revert commit from 14th of July which disabled partial 
refresh.


I am afraid this is not possible. The BufferView class has changed a 
_lot_ since that time.


This is a little dangerous, since it is known that this might 
cause invalid coord cache entries. b) Do a), but also implement partial 
coord cache refresh to make it safe. c) Implement a caching painting 
scheme, such that only changed paint requests are done.


I won't say this is without hope. This just needs some time to implement 
the correct solution. This is for sure not a show-stopper


So, the future does not look too bright for LyX. In other words, we are 
back in deep shit again.


Therefore, I would suggest to freeze the code even more until progress 
has been made on the hopeless showstoppers. We have some difficult 
problems to solve, and those will require a concentrated effort to nail.



What are you talking about? The way I see it, some People are hardly at 
work finishing the new features.




The positive side to this is that each person who conquers a hopeless 
showstopper is instantly a hero.


I am a hero then:

Author: younes
Date: Thu Nov  2 23:53:10 2006
New Revision: 15695

URL: http://www.lyx.org/trac/changeset/15695
Log:
- restore a backing pixmap painting strategy: the pixmap is drawn at 
expose() time.
- the cursor is still a widget, the width is 2-pixel on Windows and 
1-pixel on other platforms. The full screen refresh on blinking cursor 
bug is now gone.



Modified:
lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C
lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.h

Modified: lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C
URL: 
http://www.lyx.org/trac/file/lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C?rev=15695

==
--- lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C (original)
+++ lyx-devel/trunk/src/frontends/qt4/GuiWorkArea.C Thu Nov  2 23:53:10 2006
@@ -39,7 +39,6 @@
 #include QMimeData
 #include QUrl
 #include QDragEnterEvent
-#include QPixmap
 #include QPainter
 #include QScrollBar

@@ -50,8 +49,10 @@
 // On windows-XP the UserGuide PageDown scroll test is faster without 
event pruning (16 s)

 // than with it (23 s).
 #ifdef Q_WS_WIN
+int const CursorWidth = 2;
  #define USE_EVENT_PRUNING 0
 #else
+int const CursorWidth = 1;
  #define USE_EVENT_PRUNING 0
 #endif

@@ -120,7 +121,7 @@
CursorWidget(QWidget * parent)
: QWidget(parent)
{
-   resize(2, 20);
+   resize(CursorWidth, 20);
}

void paintEvent(QPaintEvent *)
@@ -165,10 +166,16 @@
}
 */
}
-   /// shown?
-   bool on_;
///
CursorShape shape_;
+   ///
+   bool show_hcursor_;
+   ///
+   bool show_vcursor_;
+   ///
+   bool lshape_cursor_;
+   ///
+   QColor cursor_color_;
 };


@@ -496,6 +503,7 @@
 void GuiWorkArea::resizeEvent(QResizeEvent * ev)
 {
cursor_-hide();
+   screen_ = QPixmap(ev-size().width(), ev-size().height());
verticalScrollBar()-setPageStep(viewport()-height());
QAbstractScrollArea::resizeEvent(ev);
resizeBufferView();
@@ -554,64 +562,45 @@

 void GuiWorkArea::paintEvent(QPaintEvent * ev)
 {
-   /*
-   lyxerr[Debug::GUI]  BOOST_CURRENT_FUNCTION
-\n QWidget width\t  this-width()
-\n QWidget height\t  this-height()
-

Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread José Matos
On Thursday 02 November 2006 7:28 pm, Asger Ottar Alstrup wrote:
 - No UTF-8 support in LaTeX export.

  What needs to be done here? I would like to help fixing it. Any pointers?

-- 
José Abílio


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Bo Peng

The way I see it, some People are hardly at
work finishing the new features.


Yeap. With my last update, bookmarks and toolbars should be working
well. These features will never be show stoppers so I have no chance
to become a hero. :-)


I am a hero then:


Indeed.

Bo


Re: [Final PATCH] session/toolbar

2006-11-02 Thread Bo Peng

 - The status of the toolbars can only be changed when a document is loaded.
 - Changing the status of a toolbar modifies the changed status of the
   document.
 - Maybe the toolbars should not be numerated in the menu and their first
   letter capitalized.
When you first turn 'on' a toolbar it should turn on permanently. So the
order should be:

Off - On - Auto - Off


ALL fixed.


 - The position of the toolbars can be changed and session remembers the
   settings, but perhaps at least the minibuffer could appear at the
   bottom by default.


This is where default ui plays a role. I think minibuffer is by
default at the bottom right now.

Bo


Re: Status: 3 hopeless showstoppers + more

2006-11-02 Thread Abdelrazak Younes

Peter Kümmel wrote:

John Levon wrote:

On Thu, Nov 02, 2006 at 11:29:04PM +0100, Peter Kümmel wrote:


Showstoppers without hope:
- Selection with the mouse. Does not work in math nor in tables. It kind
of works in insets, although problems have been reported with this as
well. To reproduce, make a formula or a table, type some text and try to
select it with the mouse. We need a volunteer to investigate this.

This bug is fixed now.

Afraid not, I've just updated and built, and things are actually a
little worse.  Insets like Note jump in size between screen-wide and
shrink-sized, as well as all the previous selection troubles.


I don't see your strange bug here...


Me neither.



The most recent commit was Abdel's revert to the pixmap painting strategy,
maybe this is the reason for your broken notes.


I don't think so. This is probably related to some change with regards 
to Notes widening... I remember someone working on that some time ago. 
Nothing to do with the painting strategy.


Abdel.



  1   2   3   >