some useful functionality could perhaps be gleaned from http://freemind.sourceforge.net/wiki/index.php/Main_Page it has some neat workflows that might apply to the connectors.
On Thu, 2006-02-02 at 21:10 +1100, Tim Dwyer wrote:
I understand the concerns about boost... let my try and allay them:
A quick browse of the boost graph headers shows there are some dependencies on other parts of boost, but I haven't found any reference to the dreaded smart_ptr stuff yet ;-). Hopefully, I could pare it down to a minimal set of headers (not including smart_ptr and so on) before adding anything to the inkscape code base.
Regarding the build process the graph examples compile with (assuming headers in the include path):
g++ example.cpp -o example
As for optimisation, the algorithms we're talking about are quite computationally intensive and boost is written in a heavily templated generic style. I think that's the only reason they recommend optimisation. Surely inkscape binary distributions are compiled with optimisation on anyway, right?
I was a bit worried about bloat and compilation speed but the examples which use the kind of stuff I need compile down to <100k (on x86 linux) in a few seconds. I'm guessing, but I think this would be comparable to an stl based implementation of the same thing.
Regarding "mismatch of code" with the rest of the project, I really would just be using the graph datastructures and algorithms. I don't have any intention of using any of the fancy stuff that fundamentally affects coding style (like the aforementioned smart_ptrs or the lambda stuff).