[Gambas-user] IDE enhancements (was Re: Unexpected error / abort)

Benoit Minisini gambas at ...1...
Sun May 6 10:10:24 CEST 2007


On samedi 5 mai 2007, Gareth Bult wrote:
> Hi,
>
> I've not tested whether this is just my existing application, or whether
> it's just setting a component as "virtual" that causes a problem.
> .. I will check, but on the same lines, how do I set an icon to
> represent the control (as with the timer) ?
>
> >Another point: I suggest you study the code of DataView and DataTable
>
> controls in gb.db.form.
>
> Ok, will do ...
>
> > The DataView is like your GridEditor, except that it has less features,
> > and is not editable.
>
> Yeeeessssss.... sort of ... ;-)
>
> > In DataTable, you will find how I buffer the database data so that I
> > don't have to read the entire SELECT from a request that returns thousand
> > records. This way, I can view a table with 1000000 records through
> > Internet without any problem. The only requirement is that the table must
> > have primary keys.
>
> Sure, I have this requirement too for the component.
>
> > Maybe you could have used this control and extend it to write your
> > GridEditor. This way, you would have got this buffer feature
> > automatically.
>
> At the moment the Control simply uses sqlExec and a result set.
> It could be modified to use anything that provides "First" and "Moveto"
> methods and "Count" / "Field" properties ...
>
> > I think it could be a good idea to merge your developmement into
> > gb.db.form.
>
> Sure, although it would be nice to get a few of the IDE changes in first
> (?)

Actually most of your requested changes are planned for the next version of 
Gambas after the 2.0.

>
> Specifically the bits I'm looking for are;
>
> a. Property pull-down lists, an option to fill a pull-down from a list of
> component names within the current project of a certain type 
>
> b. The ability 
> for a component to provide the rendering code for itself 
>
> c. Also (!) the 
> ability to re-load a component without restarting the IDE would be nice ..
> :)
>
> Things I'd like to do with these changes;
>
> a. The component has an sqlSelect property. From this string I'd like to be
> able to pull in a field list so for the "Fields" property, the user gets to
> pick from the available fields, rather than entering the names free-form.
>

The database manager will be merge with the IDE. This way, the property sheet 
will be able to access the database connection defined by the user and will 
allow him to choose its tables and fields.

Maybe virtual connection controls won't be necessary. They will be defined 
directly in the database manager part of the IDE.

> b. If I can render the DBGridEditor at design time, then I can also render
> the DBConnection, which means I can get live data into the grid. This often
> helps when it comes to picking which fields to display and how wide to make
> the default field widths. 

If the database manager is merged, then the IDE will use all database 
components, and so will be able to render them automatically.

> It also means users could drop their own buttons 
> onto the tool bar.

I don't see what you mean there.

>
> c. It should be possible to pick a database from a list for the
> DBConnection component.
>

OK.

> These were all features that were available under Delphi/Kylix .. whereas I
> prefer the Gambas language and object orientation, the Delphi user
> interface and IDE was way ahead of it's time and there are many
> enhancements we could pump into the Gambas IDE.
>
> I'm currently developing an in-house management application so the
> component will develop alongside this. My other target is to write a DB
> shell with full MySQL 5.0 support to replace "Navicat" .. so one of the
> next features will be an optional "filter" button which will provide a
> drop-down panel between the buttons and grid onto which I can overlay a
> filtering / selection mechanism to allow end-users to work with a filtered
> subset of the available data.
>
> Gareth.
>

So, be patient :-)

Regards,

-- 
Benoit Minisini




More information about the User mailing list