Idea for shared GUI framework

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Idea for shared GUI framework

ickby
This post was updated on .
Hello,

ickby here from the FreeCAD project. I have read a bit through the discussions here and noted that you currently discuss about GUI options for LC3. As such a state of development is a perfect point for large ideas I thought I drop in one more. Feel free to consider and ignore at will :)

Idea: Use the FreeCAD framework as basis for LC3 GUI.

As not many people know FreeCAD is a generic framework, in itself not dependend on any geometric library. Only the individual workbenches bring in support for geometry, like currently for open cascade. It is therefore usable by any kind of project without introducing the burden of unneeded dependencies, and as it is lgpl2 it can be used for other apps without any issues. Branding is welcome :)

The Framework provides:
1. Handling for Workbenches: basically a plugin architecture
2. Handling for commands: An easy way to implement commands which are automatically handled in toolbars etc.
3. Document object structure with property support, saving/loading etc.
4. Units and expression support
5. Deep python integration of the framework and the GUI (scripting awesomeness)
6. QT, Multilanguage, stylesheet support etc., the whole boilerplate needed for GUIs.

I do not know how well this all fits LibreCads needs, but this could be a way of reducing the work needed for full GUI coding on your side and benefit both projects from increased coding on a unified framework. FreeCAD and LibreCAD could maybe even share some Workbenches, who knows where this all could lead :)  

So if you are open for discussing and exploring this further I'm glad giving insight and feedback!

Regards,
Stefan
Reply | Threaded
Open this post in threaded view
|

Re: Idea for shared GUI framework

gaganjyot
On Mon, Feb 29, 2016 at 1:49 PM, ickby [via LibreCAD]
<[hidden email]> wrote:

>
> Hello,
>
> ickby here from the FreeCAD project. I have read a bit through the discussions here and noted that you currently discuss about GUI options for LC3. As such a state of development is a perfect point for large ideas I thought I drop in one more. Feel free to consider and ignore at will :)
>
> Idea: Use the FreeCAD framework as basis for LC3 GUI.
>
> As not many people know FreeCAD is a generic framework, in itself not dependend on any geometric library. Only the individual workbenches bring in support for geometry, like currently for open cascade. It is therefore usable by any kind of project without introducing the burden of unneeded dependencies, and as it is lgpl2 it can be used for other apps without any issues. Branding is welcome :)
>
> The Framework provides:
> 1. Handling for Workbenches: basically a plugin architecture
> 2. Handling for commands: An easy way to implement commands which are automatically handled in toolbars etc.
> 3. Document object structure, saving/loading etc.
> 4. Units and expression support
> 5. Deep python integration of the framework and the GUI (scripting awesomeness)
> 6. QT, Multilanguage, stylesheet support etc., the whole boilerplate needed for GUIs.

Hi Ickby,

Glad to hear this, I once was thinking we could use LibreCAD's GUI
with BRL-CAD's engine ( about 3-4 years ago ). BRL-CAD's engine is
solid and IMO what it missed was a mordern UI and I thought FreeCAD's
could work out, I did some experiments but couldn't reach enough, got
busy in college.

> I do not know how well this all fits LibreCads needs, but this could be a way of reducing the work needed for full GUI coding on your side and benefit both projects from increased coding on a unified framework. FreeCAD and LibreCAD could maybe even share some Workbenches, who knows how where this all could lead :)

LibreCAD's Engine is somewhat same to the drafting module of FreeCAD (
I used FreeCAD for my project ). I love the constraint resolver in the
sketch module, I want such one in LibreCAD too! :D, I'd like to know
more about the constraint resolver from you, I'll come to IRC sometime
to have more discussion on Constraint resolver. I was thinking of
using the one in Lib2Geom ( Inkscape ).

> So if you are open for discussing and exploring this further I'm glad giving insight and feedback!

I would like my mentors to comment on this part first, They have much
more experience and thoughts regarding LC.

--
Thanks
Gaganjyot
"Jai Sai Naath"
Reply | Threaded
Open this post in threaded view
|

Re: Idea for shared GUI framework

ickby
Hello Gaganjyot,

thanks for the reply. So one would for sure start to look into the details, what is needed for LC, what provided by FC etc. This is not an easy task, and may be ful of compromises, but maybe still worth pursuing to reduce code duplication.

Our constraint solver is basicly a nonlinear optimsation algorithm. Don't think it will fir very well with librecad, as it can't handle large amount of geometry/constraitns. It is just not intended for this use case. I also don't know how much th solver philosophie fits into librecad as is is geared towards parametric modeling.

I stay around here and on IRC/FreeCAD forum for any questions and ideas :)
Reply | Threaded
Open this post in threaded view
|

Re: Idea for shared GUI framework

gaganjyot
On Wed, Mar 2, 2016 at 1:01 PM, ickby [via LibreCAD]
<[hidden email]> wrote:
> Hello Gaganjyot,
>
> thanks for the reply. So one would for sure start to look into the details,
> what is needed for LC, what provided by FC etc. This is not an easy task,
> and may be ful of compromises, but maybe still worth pursuing to reduce code
> duplication.

Exactly the reason I was waiting that my mentors should reply first, I
understand that FC UI is really nice but we need to think do we need
enough big developed UI ( Please don't get me wrong on this ). What I
mean is FreeCAD UI is a generic UI and do we need that or just some
that is just curated to our needs, I was even thinking how will the
development go if we adopted the UI, I mean it might not come an
overhead managing two different softwares ( UI ) as well as the
Kernel. More over we consider Viewer and the UI ( Event handling )
portion as differnet parts, so we need to check if FC fits into this
model.
I'll dig deep into this tomorrow evening. Then further I'll be on FC
IRC to discuss more about this. :)

> Our constraint solver is basicly a nonlinear optimsation algorithm. Don't
> think it will fir very well with librecad, as it can't handle large amount
> of geometry/constraitns. It is just not intended for this use case. I also
> don't know how much th solver philosophie fits into librecad as is is geared
> towards parametric modeling.

Oh I see.

> I stay around here and on IRC/FreeCAD forum for any questions and ideas :)

:)

--
Thanks
Gaganjyot
"Jai Sai Naath"