Jump to content
Sign in to follow this  
Guest

Open sourcing a project that uses visual inheritance

Recommended Posts

Guest

Hello all!

 

I have been working away at a project since this summer. Soonish (ahem) i'm going to open source it.

The project requires some 3rd party non-os libs but that is not a problem as these are not included, anyone that want to use the project need active subscriptions for these libraries.

 

I have these prereqs;

Nothing to be installed in the IDE as per the project itself (i.e. it comes with no packages).

All components should be working as per a "clean form" - you should be able to change properties and all, some specific limitations may apply.

 

So basically the project is a structure with;

* An hierarchy based on a DataModule responsible for SQL and dataset functionality with a "helper" transport layer.

* An hierarchy based on a Vcl Form responsible for most UI and client-side stuff. Also when running the client it "drives" the creating of those DataModules.

* Other resources created and managed at runtime, server side service framework - not pertinent to this post.

 

So the idea being you inherit from the aforementioned DataModule and the Form in an "Application" space.

Then change / add that inherited form as the applications main form. Here it should be possible to code away delphi-style to your heart content (some limitations... well).

 

All of the above works rather nicely atm!

 

Q: But then... if someone else becomes interested, builds an "Application" on top of the units that are part of the OS-project... (inheriting from included forms) well... here comes the conundrum. Will that work? I'm thinking that if i (or a contributor) makes additions/corrections to the OS project - i suspect it can become very messy to "re-inherit" the application-forms. Another way to put it - to update existing ancestor units when the bases has been updated.

 

Q: Another question related to this is it possible to "package" such a project in any way? This would only as a convenience to the "users" of the project - (yes - i know i said above that nothing should be needed to install into the IDE, this kind of package should be optional).

 

I know this is a little bit on the meagre side of information density for any qualified answer, flame suit on, but if anyone has any comments it's appreciated.

 

TIA,

 

/Dany

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×