SharpDevelop Community

Get your problems solved!
Welcome to SharpDevelop Community Sign in | Join | Help
in Search

Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

Last post 07-05-2012 1:40 PM by ChristophWille. 5 replies.
Page 1 of 1 (6 items)
Sort Posts: Previous Next
  • 07-05-2012 8:00 AM

    Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    Hello, 

      I am involved in developing a new IDE and now we are thinking about integrating a forms designer into it. We find SharpDevelop's forms designer really awesome and would like to use it in our application. I know that SharpDevelop is under LGPL. As far as I know it allows other developers to use libraries in their own applications regardless they are commercial or not. And it also allows to modify the source code of a library but the developer is then obliged to republish this new library and its source code. The project I am involved in is not under LGPL, but it is not commercial either. I have read here that it is impossible to use SharpDevelop's forms designer outside SharpDevelop as it depends on lots of other libraries and because of other issues. As I understand it is impossible without modifying the source code of SharpDevelop's forms designer. So, the questions are:

    1) The legal aside. Can we use SharpDevelop's forms designer in our IDE?

    2) Is it possible to modify the source code of SharpDevelop's forms designer and use it in our application? 

    Thanks in advance.

    Filed under: ,
  • 07-05-2012 10:44 AM In reply to

    Re: Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    A generic technical answer: in contrast to AvalonEdit, none of our designers were built for use outside of our workbench implementation. It very likely will need vast amounts of our infrastructure code (code that we are currently rewriting for SD5, btw). We never intended it to be "standalone", thus we don't know the interdependencies ourselves.

    I'd take a guess that it would be way easier to use SharpDevelop as the basis for your IDE (and get the Forms Designer included that way) than trying to rip out all the pieces you need and rearrange them into a "standalone" designer infrastructure.

    Chris

  • 07-05-2012 12:34 PM In reply to

    Re: Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    Thanks for your answer, Chris. This solution is worth being considered. Like I understand, you mean that I can use SharpDevelop with SDA and, therefore, use the FormsDesigner. But if I try it will it be possible to do such things as code generation, for example, with the Forms Designer included that way (the target language of our IDE is neither of those implemented in SharpDevelop, it is rather Delphi-like)? 

    P.S. Could you shed light on the legal aside of using SharpDevelop libraries, modifying them and hosting SharpDevelop in our application, please? I would be very greatful.

  • 07-05-2012 1:08 PM In reply to

    Re: Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    SDA is intended for scenarios where you need a cut-down IDE for your application; think macros, custom code editing et cetera.

    You are more likely looking for the full SharpDevelop to customize: remove addins you do not need / want to ship, modify the ones you want to keep (this has legal implications, more on that later), or add entirely new ones. (you might want to take a look at flashdevelop.org)

    Now for the legal stuff of a publicly shipping application based on our code (in-house apps developed strictly for in-house use are a slightly different story):

    • Using our DLLs "as is": no restrictions
    • Using our DLLs but making source code modifications before recompiling those to DLLs again: you must make your changes / additions available to your customers (the ones receiving the binaries). Code using those DLLs: see first bullet.
    • Using our code in your assemblies, aka the "copy paste scenario": This works only if your codebase has a compatible license.

    This means: if you rip out the Forms Designer, make it standalone: that whole code must be made available. The code that is using our "repackaged" assemblies is fine to under any license.

    That is also why there is a separate LGPL assembly in ILSpy: it contains code from SharpDevelop that we wanted to use in ILSpy, which is MIT X11 licensed. As long as it is a separate library, that is ok.

    Chris

  • 07-05-2012 1:33 PM In reply to

    Re: Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    Thank you for your help. As I understand now, you mean writing the IDE from scratch using SharpDevelop as a base. But the problem is that the major part of the functionality of the IDE has already been implemented. What we need now is a fully-functional Forms Designer which can be connected to our project. I wonder if it's possible to rip out SharpDevelop's forms designer and adapt it to our project modifying it. Is it possible in principle?  

  • 07-05-2012 1:40 PM In reply to

    Re: Legal aside of using SharpDevelop's libraries in third-party applications and their modification.

    In theory, it is possible. But it depends on your infrastructure how much work it is / whether it is possible at all.

    Chris

Page 1 of 1 (6 items)
Powered by Community Server (Commercial Edition), by Telligent Systems
Don't contact us via this (fleischfalle@alphasierrapapa.com) email address.