Bookmarks Index: back to top fiSPEd * IB_SynMemo * SynEdit MultiKwd Highlighter * FBSPGenerator * FBShellExt * FBGrantGenerator * FBMetaMigrator

Delphi projects:
fiSPEd back to top fingerman's Suite of Property Editors for the Delphi 5/6 IDE. Work in progress.
Trustware,
free with sources for personal use
in your IDE.
My main hobby project: A collection of PropEds that replace the standard Delphi PropEds. Most of them just give a little optical hint in the Object Inspector, while the main PropEd replaces the standard TStrings editor (the tiny grey box with a TRichEdit) with a full-blown ASCII editor, including ObjInsp "see-through" (TStrings previews as tooltips), property specific Syntax Highlighting, semi-automatic code completion and lots more.

If you use IBObjects, be sure to check this out! I have built in some very handy functions especially for IBO's TIB_StringList properties that make every day work with IBO a whole lot more fun. Take a look at some Screenshots here.
IB_SynMemo back to top my adaption of TDBSynEdit for the IB_ ("native") strain of IBObjects
free with sources SynEdit is an Open Source project on sourceforge. TSynEdit is a TMemo-like control with two restrictions: since it is designed for developers, it can only handle fixed-width fonts and it doesn't handle Wordwrap. But: it supports customizeable Syntax Highlighting, Code Completion and all the functions you would expect from a good Programmer's Editor. (btw. used in Marathon and IBConsole, too)

I needed a data-aware TMemo that would be capable of Syntax Highlighting. There is such a thing in SynEdit already - TDBSynEdit - but it is build for the TTable/TQuery BDE components. So I wrote IB_SynMemo which can be directly hooked up to a TIB_Query.
SynMultiKwd
back to top TSynGeneralMultiKwdSyn = Class(TSynGeneralSyn)
free with sources A derivate of TSynGeneralSyn, the all-purpose Syntax Highlighter for SynEdit. The special thing here is that you can not have just *one*, but <n> lists of keywords, each with their own highlighting attributes stored in a Collection.

Firebird projects:
FBShellExt back to top not really a tool, but a template Win32 registry excerpt.
free with 'sources' Very handy: shows how to set up registry entries so you can right-click a GDB and directly Backup it, resp. right click a GBK and restore it. Based on an idea by Markus Ostenried.
FBSPGenerator back to top a tool to generate SQL scripts with [CREATE|ALTER] PROCEDURE statements to SELECT FROM, INSERT INTO, UPDATE or DELETE FROM a table in Firebird. Work in progress.
free with sources Connect to any Firebird DB, generate source code for Select / Insert / Update / Delete storedprocs.
FBGrantGenerator back to top a tool to generate SQL scripts with Grant/Revoke statements
free with sources This is an "ancient" tool I made before I found my own way of User management in Firebird :-) - it may still be of some use for some people, at least to show how to read the RDB$xxx tables, so it's here.

It works very simple: you connect to any GDB, enter a user name, then select all the tables, storedprocs and roles the user should have rights on. FBGrantGenerator then makes a script with all the appropriate GRANT statements. For security reasons, you cannot execute the script from within the tool. You can save it or copy it to the clipboard, then use a tool like WISQL or IB_SQL to execute the script against the database. No password is stored in the script, ensuring the person who executes it must have the SYSDBA password for the destination database.

... and coming soon:
FBMetaMigrator back to top Directly connects to two Firebird/IB databases, compares their meta structure and generates a script to synchronize the meta structures (that is, make DB 2's meta the same as DB 1's). Work in progress.
(Note this will probably be a commercial product, no decision taken on that yet.) In my first InterBase(TM) project, I soon became sick and tired of keeping track of the meta data changes while trying out things in my "sandbox", and then adapt them to the real test system. All the tools I found for comparing GDB's meta data worked the same way: You first have to generate metadata scripts for both GDBs, then run some tool that processes both text files and creates a diff script from there. That's why I made the FBMetaMigrator, which connects to both GDBs directly and compares the RDB$xxx tables, generating a diff script from there.
(BE SURE to make backups before playing around with this!!!)