Re: [Libreoffice] libvisio: how can I help?

2012-01-15 Thread Fridrich Strba

On 15/01/12 14:59, Bruno Girin wrote:

Would anybody be able to tell me where I can find the git repos for
libwpd, libwpg and libwps please?


Libwpd:
git://libwpd.git.sourceforge.net/gitroot/libwpd/libwpd

Libwps:
git://libwps.git.sourceforge.net/gitroot/libwps/libwps

Libwpg:
git://libwpg.git.sourceforge.net/gitroot/libwpg/libwpg

As for writerperfect, you can find it here:
git://libwpd.git.sourceforge.net/gitroot/libwpd/writerperfect

Cheers

Fridrich


--
Please avoid sending me Word, Excel or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-15 Thread Bruno Girin

On 12/01/12 08:14, Fridrich Strba wrote:
1) I install the git versions of libwpd/libwpg/libwps/libvisio (and 
libcdr for master builds) in the usual system prefix. For my 64-bit 
system it is --prefix=/usr --libdir=/usr/lib64


Would anybody be able to tell me where I can find the git repos for 
libwpd, libwpg and libwps please?


Thanks,

Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-12 Thread Fridrich Strba

Hello,

Thanks for filing the bugs. I really did not see that mistake with 
justified text, since I don't have many documents with justified text 
and since the problem with line-breaks and tabs are still preventing us 
from having the text completely correct and thus, I did not pay 
attention so much to visual differences in the text. Now


On 11/01/12 23:52, Bruno Girin wrote:

I saw you had a look at all of the bugs I filed. Thanks for the
feedback! I will have a go at progressing the arrowhead ones (#44551 and
#44576) and the pattern one (#44552).


Yeah, I flagged them as entry-level tasks because they are reasonably 
contained in one function and can be used for deeper understanding of 
libvisio and its API. Especially the arrowheads should be +/- easy to 
start with since Eilidh did already an initial implementation.



Having said this, it raises a newby question: I have a git clone of the
LO code in one folder and a git clone of the libvisio code in another.
What is the simplest way to build and run LO so that it uses the
libvisio library I'm working on rather than the one that came with it so
that I can test my fixes?


OK, here is what I do:

1) I install the git versions of libwpd/libwpg/libwps/libvisio (and 
libcdr for master builds) in the usual system prefix. For my 64-bit 
system it is --prefix=/usr --libdir=/usr/lib64


2) After that, I configure libreoffice master --with-system-libwpd, 
--with-system-libwpg, --with-system-libwps --with-system-libvisio 
--with-system-libcdr. Like that, once your build is finished and made 
dev-install, it will be using the system libraries that one can rebuild 
and reinstall.


3) For changes in writerperfect module then it is enough to have a 
terminal with sourced environment and after modifying something, just do 
"build" in the module. The dev-install should be using links to what the 
"build" produces.


Alternatively, you can build also the writerperfect module from the 
libwpd's git and install it. This will give you a vsd2odg binary that 
will output on your standard output the resulting odg from the 
conversion when called on a visio file:


vsd2odg .vsd | xmllint --format -

Because vsd2odt does not produce any line-breaks, so that command 
produces a nice readable xml that LO 3.5 loads nicely.


Don't hesitate to ask more, it allows me to document some things on this 
list. If you feel like that, you can move some of this information 
somewhere on a wiki :) I am a bit too lazy for that :)



Cheers

F.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-11 Thread Bruno Girin

On 11/01/12 09:44, Fridrich Strba wrote:


Now, I just pushed a fix for some diagrams not having borders in 
shapes where the borders should be. Like the sample Brainstm.vsd. 
When/if I have time, I will try to go through your bugs and try to fix 
what can be fixable.


I saw you had a look at all of the bugs I filed. Thanks for the 
feedback! I will have a go at progressing the arrowhead ones (#44551 and 
#44576) and the pattern one (#44552).


Having said this, it raises a newby question: I have a git clone of the 
LO code in one folder and a git clone of the libvisio code in another. 
What is the simplest way to build and run LO so that it uses the 
libvisio library I'm working on rather than the one that came with it so 
that I can test my fixes?






Any chance you can be on IRC during CET day?

I wish but no. The job that pays the bills keeps me busy during the day,
UK time, and doesn't let me use any software that's not part of the
organisation's standard build.


There is always this possibility  for 
people being behind firewalls and inflexible administrators :)


I will try but my admins also blacklist a number of web sites :-)




I'll try to find my way and will drop you a note if I struggle. Worst
case scenario, I hope I'll see you at FOSDEM in a few weeks so I may
take the opportunity to ask a few questions then.


Wonderful! I look forward to meeting you. I am intending to make a 
small hands-on presentation/workshop about import filters. I would 
like to use the upcomming Corel Draw library (or if I have time to 
start the MS Publisher library) to show how easy it is to start 
working on filters using writerperfect framework.


In preparation, I plan to write a serie of blog entries about some 
basics about LO import/export filters. Let us see whether the Lord 
gives me enough time for that.


Please, keep testing, it is invaluable


No worries, I've got lots of testing material!

Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-11 Thread Fridrich Strba

On 09/01/12 21:45, Bruno Girin wrote:

Thanks for the explanations, that's really useful!


Happy to be useful :)


Thanks. Minimal examples will be useful anyway so I'll try to produce some.


I also have a list of bugs that I wanted to fix, but did not have time. 
I debugged on Monday some quirks with stray closing lines that were due 
to our overkeen closed-path-detection algorithm. I fixed that one in 
libvisio 0.0.12 which is now part of LO 3.5.0beta3.


I also added with this version the ability to extract and push to LO 
embedded ole objects in visio files. If we understand them, they might 
even be clickable and editable, but they also exhibit some issues our 
ole embedding code has and I did not have a moment to dive inside there. 
Maybe a nice place to make a difference.


Now, I just pushed a fix for some diagrams not having borders in shapes 
where the borders should be. Like the sample Brainstm.vsd. When/if I 
have time, I will try to go through your bugs and try to fix what can be 
fixable.



Any chance you can be on IRC during CET day?

I wish but no. The job that pays the bills keeps me busy during the day,
UK time, and doesn't let me use any software that's not part of the
organisation's standard build.


There is always this possibility  for 
people being behind firewalls and inflexible administrators :)



I'll try to find my way and will drop you a note if I struggle. Worst
case scenario, I hope I'll see you at FOSDEM in a few weeks so I may
take the opportunity to ask a few questions then.


Wonderful! I look forward to meeting you. I am intending to make a small 
hands-on presentation/workshop about import filters. I would like to use 
the upcomming Corel Draw library (or if I have time to start the MS 
Publisher library) to show how easy it is to start working on filters 
using writerperfect framework.


In preparation, I plan to write a serie of blog entries about some 
basics about LO import/export filters. Let us see whether the Lord gives 
me enough time for that.


Please, keep testing, it is invaluable

F.
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-09 Thread Bruno Girin

On 09/01/12 11:12, Fridrich Strba wrote:

Hello,

On 09/01/12 11:24, Michael Meeks wrote:

  I would like to start tackling some of them but as I'm not familiar
with the code base, I would welcome suggestions as to which ones are
likely to be reasonably easy hacks.

I'm not an expert on this - so treat this with a pinch of salt, until
Fridrich arrives ;-) From what I recall, most of Fridrich's filters
essentially generate SAX style events and these are rendered onto the
libwpg::WPGPaintInterface 'painter' - which in turn generates ODF.
So - to extend it; I'd save your broken document as flat ODF: a.fodg,
then tweak it to be the document it should be and re-save as b.fodg.
When you diff -u these two files you should see the elements and
attributes that have changed.
Armed with that, I'd poke at the libvisio code and the
WPGPaintInterface to see how it converts that good stuff, and the
attributes / elements associated with that&  extend the code to handle
your cases.

Reasonably accurate account, given that Michael is a real novice in this
realm of spirit.

But, let me give a quick overview of libvisio architecture:

1) Two main api fuctions principally in VisioDocument.h:
a) isSupported
b) parse
One convenience function in the same header:
c) generateSVG

2) VSDXParser class is the base class for reading the documents.
VSD6Parser and VSD11Parser are derived classes that cater for
differences between the two formats.

3) Document is read twice and the reader classes call functions of the
VSDXCollector interface, first using the VSDXStylesCollector and second
time using the VSDXContentCollector to receive the information.

4) VSDXContentCollector is processing information received from parser
along with information collected by the VSDXStylesCollector and calling
the callbacks from the libwpg::WPGPaintInterface.

5) Some complications given the need to first store some elements of a
shape into memory and then output them using the information about in
which order they should be painted.


Thanks for the explanations, that's really useful!


Now, if you have cases of shapes that are not correctly converted, the
best is to take the document, copy it and try to create a minumum
document that still exhibits the problem. Then we can together
introspect it and try to find the reasons of that misbehaviour. Like
that I can help you to get into the logic of the file-format.


Thanks. Minimal examples will be useful anyway so I'll try to produce some.


Any chance you can be on IRC during CET day?


I wish but no. The job that pays the bills keeps me busy during the day, 
UK time, and doesn't let me use any software that's not part of the 
organisation's standard build.


I'll try to find my way and will drop you a note if I struggle. Worst 
case scenario, I hope I'll see you at FOSDEM in a few weeks so I may 
take the opportunity to ask a few questions then.


Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-09 Thread Fridrich Strba
Hello,

On 09/01/12 11:24, Michael Meeks wrote:
>>  I would like to start tackling some of them but as I'm not familiar
>> with the code base, I would welcome suggestions as to which ones are
>> likely to be reasonably easy hacks.
>   I'm not an expert on this - so treat this with a pinch of salt, until
> Fridrich arrives ;-) From what I recall, most of Fridrich's filters
> essentially generate SAX style events and these are rendered onto the
> libwpg::WPGPaintInterface 'painter' - which in turn generates ODF.
>   So - to extend it; I'd save your broken document as flat ODF: a.fodg,
> then tweak it to be the document it should be and re-save as b.fodg.
> When you diff -u these two files you should see the elements and
> attributes that have changed.
>   Armed with that, I'd poke at the libvisio code and the
> WPGPaintInterface to see how it converts that good stuff, and the
> attributes / elements associated with that & extend the code to handle
> your cases.

Reasonably accurate account, given that Michael is a real novice in this
realm of spirit.

But, let me give a quick overview of libvisio architecture:

1) Two main api fuctions principally in VisioDocument.h:
a) isSupported
b) parse
   One convenience function in the same header:
c) generateSVG

2) VSDXParser class is the base class for reading the documents.
VSD6Parser and VSD11Parser are derived classes that cater for
differences between the two formats.

3) Document is read twice and the reader classes call functions of the
VSDXCollector interface, first using the VSDXStylesCollector and second
time using the VSDXContentCollector to receive the information.

4) VSDXContentCollector is processing information received from parser
along with information collected by the VSDXStylesCollector and calling
the callbacks from the libwpg::WPGPaintInterface.

5) Some complications given the need to first store some elements of a
shape into memory and then output them using the information about in
which order they should be painted.

Now, if you have cases of shapes that are not correctly converted, the
best is to take the document, copy it and try to create a minumum
document that still exhibits the problem. Then we can together
introspect it and try to find the reasons of that misbehaviour. Like
that I can help you to get into the logic of the file-format.

Any chance you can be on IRC during CET day?

F.

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-09 Thread Michael Meeks
Hi Bruno,

On Sun, 2012-01-08 at 14:53 +, Bruno Girin wrote:
> I've been doing some tests with sample Visio files and I've now added a 
> grand total of 7 bug reports [1].

Nice work testing ! :-)

>  I would like to start tackling some of them but as I'm not familiar
> with the code base, I would welcome suggestions as to which ones are
> likely to be reasonably easy hacks.

I'm not an expert on this - so treat this with a pinch of salt, until
Fridrich arrives ;-) From what I recall, most of Fridrich's filters
essentially generate SAX style events and these are rendered onto the
libwpg::WPGPaintInterface 'painter' - which in turn generates ODF.

So - to extend it; I'd save your broken document as flat ODF: a.fodg,
then tweak it to be the document it should be and re-save as b.fodg.
When you diff -u these two files you should see the elements and
attributes that have changed.

Armed with that, I'd poke at the libvisio code and the
WPGPaintInterface to see how it converts that good stuff, and the
attributes / elements associated with that & extend the code to handle
your cases.

HTH,

Michael.

-- 
michael.me...@suse.com  <><, Pseudo Engineer, itinerant idiot

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-08 Thread Bruno Girin

On 03/01/12 22:29, Bruno Girin wrote:

On 03/01/12 21:34, Fridrich Strba wrote:

Hello, Bruno,

If you are looking at something cool to do inside libvisio, I might 
have an idea or two :)


For the while, libvisio is converting binary MS Visio files in 
versions 6 (Visio 2000 and 2002) and 11 (Visio 2003 -> 2010). There 
is another format that Visio can export to, and it is the XML version 
called also VDX. This file-format is specified (contrary to the 
binary one). If you could come with an abstract SAX interface and 
implement a parser of this file-format, it would fill some gap we 
have. But any bugfix is welcome.


Hi Fridrich,

Yes, I had a look at the VDX spec last year and it is indeed well 
documented and reasonably straight-forward, although there are 
difference between the 2003, 2007 and 2010 versions as far as I 
remember. I assume that all classes prefixed VSDX were designed to 
support both VSD and VDX and therefore should be shared between both 
types of parser?


I'd be very interested in working on that but in order not to 
over-commit myself and to get familiar with the code, I'll probably 
start with some tests and simple bug reports / patches.


I've been doing some tests with sample Visio files and I've now added a 
grand total of 7 bug reports [1]. I would like to start tackling some of 
them but as I'm not familiar with the code base, I would welcome 
suggestions as to which ones are likely to be reasonably easy hacks.


[1] 
https://bugs.freedesktop.org/buglist.cgi?query_format=advanced&component=Drawing&product=LibreOffice&short_desc=Libvisio&short_desc_type=allwordssubstr&list_id=31438


Cheers,

Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-03 Thread Bruno Girin

On 03/01/12 21:34, Fridrich Strba wrote:

Hello, Bruno,

If you are looking at something cool to do inside libvisio, I might 
have an idea or two :)


For the while, libvisio is converting binary MS Visio files in 
versions 6 (Visio 2000 and 2002) and 11 (Visio 2003 -> 2010). There is 
another format that Visio can export to, and it is the XML version 
called also VDX. This file-format is specified (contrary to the binary 
one). If you could come with an abstract SAX interface and implement a 
parser of this file-format, it would fill some gap we have. But any 
bugfix is welcome.


Hi Fridrich,

Yes, I had a look at the VDX spec last year and it is indeed well 
documented and reasonably straight-forward, although there are 
difference between the 2003, 2007 and 2010 versions as far as I 
remember. I assume that all classes prefixed VSDX were designed to 
support both VSD and VDX and therefore should be shared between both 
types of parser?


I'd be very interested in working on that but in order not to 
over-commit myself and to get familiar with the code, I'll probably 
start with some tests and simple bug reports / patches.





Although in vacation, when I see that someone is interested to work on 
libvisio, I wake up to the e-mail writing mode :)


I know the feeling :-)


A small missing piece, libvisio's git repo is here:

http://cgit.freedesktop.org/libreoffice/contrib/libvisio/

Looking forward to the patches! :-)

Regards,
Kendy


Thanks Kendy!

Cheers,

Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-03 Thread Fridrich Strba

Hello, Bruno,

If you are looking at something cool to do inside libvisio, I might have 
an idea or two :)


For the while, libvisio is converting binary MS Visio files in versions 
6 (Visio 2000 and 2002) and 11 (Visio 2003 -> 2010). There is another 
format that Visio can export to, and it is the XML version called also 
VDX. This file-format is specified (contrary to the binary one). If you 
could come with an abstract SAX interface and implement a parser of this 
file-format, it would fill some gap we have. But any bugfix is welcome.


Although in vacation, when I see that someone is interested to work on 
libvisio, I wake up to the e-mail writing mode :)


Cheers

F.

On 03/01/12 21:20, Jan Holesovsky wrote:

Hi Bruno,

On 2012-01-03 at 19:23 +, Bruno Girin wrote:


Fridrich is in vacation this week, so I'll step in :-)
I think you can build Lo and test the heck out of libvisio, fill bug
report when you find some (
http://wiki.documentfoundation.org/BugReport ) and even better post
patches to fix them on this list :-)

see : http://wiki.documentfoundation.org/Development as a starting point :-)


Hi Norbert,

I'll do that. If I find bugs, I'll fill bug reports and provide patches
when I can.


A small missing piece, libvisio's git repo is here:

http://cgit.freedesktop.org/libreoffice/contrib/libvisio/

Looking forward to the patches! :-)

Regards,
Kendy

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice



--
Please avoid sending me Word, Excel or PowerPoint attachments.
See http://www.gnu.org/philosophy/no-word-attachments.html
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-03 Thread Jan Holesovsky
Hi Bruno,

On 2012-01-03 at 19:23 +, Bruno Girin wrote:

> > Fridrich is in vacation this week, so I'll step in :-)
> > I think you can build Lo and test the heck out of libvisio, fill bug
> > report when you find some (
> > http://wiki.documentfoundation.org/BugReport ) and even better post
> > patches to fix them on this list :-)
> >
> > see : http://wiki.documentfoundation.org/Development as a starting point :-)
> 
> Hi Norbert,
> 
> I'll do that. If I find bugs, I'll fill bug reports and provide patches 
> when I can.

A small missing piece, libvisio's git repo is here:

http://cgit.freedesktop.org/libreoffice/contrib/libvisio/

Looking forward to the patches! :-)

Regards,
Kendy

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-03 Thread Bruno Girin

On 03/01/12 18:59, Norbert Thiebaud wrote:

On Tue, Jan 3, 2012 at 9:50 AM, Bruno Girin  wrote:

Hi all,

I discovered the existence of libvisio [1] while building LibO this morning.
So first I'd like to thank Fridrich and Eilidh for the code and then I'd
like to know: how can I help? I'm happy to work on code or test cases: I use
Visio all the time at work so I often have weird and wonderful diagrams that
I can feed through the parser.

Hi Bruno,

Fridrich is in vacation this week, so I'll step in :-)
I think you can build Lo and test the heck out of libvisio, fill bug
report when you find some (
http://wiki.documentfoundation.org/BugReport ) and even better post
patches to fix them on this list :-)

see : http://wiki.documentfoundation.org/Development as a starting point :-)


Hi Norbert,

I'll do that. If I find bugs, I'll fill bug reports and provide patches 
when I can.



Happy new year,


Happy new year!

Bruno

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [Libreoffice] libvisio: how can I help?

2012-01-03 Thread Norbert Thiebaud
On Tue, Jan 3, 2012 at 9:50 AM, Bruno Girin  wrote:
> Hi all,
>
> I discovered the existence of libvisio [1] while building LibO this morning.
> So first I'd like to thank Fridrich and Eilidh for the code and then I'd
> like to know: how can I help? I'm happy to work on code or test cases: I use
> Visio all the time at work so I often have weird and wonderful diagrams that
> I can feed through the parser.

Hi Bruno,

Fridrich is in vacation this week, so I'll step in :-)
I think you can build Lo and test the heck out of libvisio, fill bug
report when you find some (
http://wiki.documentfoundation.org/BugReport ) and even better post
patches to fix them on this list :-)

see : http://wiki.documentfoundation.org/Development as a starting point :-)

Happy new year,

Norbert
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice