AIDE Services for Delphi3 1.0


AIDE Services for Delphi3 1.0 (AIDE).

AIDE is an powerful tool for high perfomance programming in IDE of Delphi3. AIDE means Advanced IDE. AIDE is aimed for programming in Delphi 3.0 . Soon will be available versions for C++ Builder, Delphi 2.0 and Delphi 1.0.

AIDE is a set of following services :


AIDE SourceSafe Services

If you use in your work Microsoft Visual SourceSafe 5.0 you can intergrate it inside Delphi IDE like in Microsoft Developer Studio's - you should install AIDE SourceSafe Services. AIDE SourceSafe Services is an add-in expert which thought Delphi's Open Tools API integrates main features of SourceSafe inside Delphi IDE. On installing AIDE SourceSafe Services a new menu SourceSafe appears among Component and Tools menus. It contains following menu items:

Using of AIDE SourceSafe

Suppose we have Unit1.PAS somewhere in SourceSafe. We have already opened it in IDE and we want to checkout it. Simply by clicking Shift+Ctrl+K or throught the menu Check Out appears form for Checking Out with analogous functionality to SourceSafe Explorer's.
The main advatage of AIDE SourceSafe Services is that it automatically maintains SourceSafe location of file (Unit1.PAS) using cashed information of SourceSafe file locations. This information is stored in file FileLocationCashe.AIDE. AIDE wouldn't need to use it if you organized your SourceSafe project twin to real, like this : D:\Projects\AIDE\SourceSafe\File1.PAS = $/D/Projects/AIDE/SourceSafe/File1.PAS. AIDE would always know where file is situated in SourceSafe.
Before checking file out, AIDE closes it in IDE, checks it out, and opens it again. Automatically file name is expanded to wildcard, like this Unit1.* - to check out automatically .DFM or .RES files with .PAS files. You don't need to check out it twice.
Besides this, you don't need to launch SourceSafe Explorer and always keep it in background mode ( until next check out or check in) - there will be a much more free memory on your computer.

So that, as explained before AIDE SourceSafe Services makes your operations with SourceSafe three-four times faster. You don't need to close file, switch into SourceSafe Explorer, find that file in SourceSafe what could be not easy if there are a lot of files in SourceSafe, check it out or something else, switch back in Delphi, and open file again.

Also there are a lot of options in AIDE SourceSafe Services for greatest perfomace. You can adjust AIDE to ask for checking out (checking in) files before opening (closing), or do not ask, or check out (check in) it automatically. By default these is not set. If you have SourceSafe lower version, < 5.0 there are option Use COM Integration, it is switched on by default, but if you switch it off AIDE would not use COM integration - would be used SourceSafe Command-Line Utility SS.EXE for checking out, checking in and other SourceSafe's operation.

Besides this SourceSafe's tree is intergrated into AIDE Project Tree Services as separate tab sheet 'SourceSafe'


AIDE Case/2 Services

If you are proffesional programmer on Delphi, and you want to increase your productivility of source code in Delphi IDE you must install AIDE Case/2 Services. AIDE Case/2 Services is an install add-in expert which thought Delphi's Open Tools API adds a lot of features inside Delphi IDE.On installing AIDE Case/2 Services appears new menu Case/2 among menus Tools and Help. Each feature in Case/2 Services is represented by its own menu item. So when menu Case/2 drops down it could hit your leg - there are realy a lot of features in AIDE Case/2 Services.

Features of AIDE Case/2 Services

The main feature of AIDE Case/2 Services is HyperJump (Alt+Enter).

Do :

  1. Open any file from Source\VCL\*.PAS.
  2. Suppose that cursor is situated on the line of any method interface. On clicking Alt+Enter (HyperJump) we'll jump to it's implementation and vice versa. If unit source is very large (about thousands lines) visual finding any method implementation will take a lot of time (PgDn, PgDn, PgDn, ... until you'll find file on screen with the help of the keyboard), but if you use AIDE on clicking Alt+Enter you'll jump to implementation very fast, about quater of second. You could return back by pressing Alt+Enter again.
  3. Lets create a new method in a class. Type reserved word procedure, method name, parameters, find end of upper method implementation, and type declaration again with begin end;. Have you estimated the time? Such much ? Oooh! If HyperJump doesn't find the implementation of method AIDE supposes that you want to create it's implementation. It find end of upper method implementation or if it doesn't exist than lower's, and creates empty method implementation:
    On clicking Alt+Enter on procedure Test(Param: integer); override; will be inserted such code:
    procedure Test(Param: integer);
    begin
    inherited
    ;
    end;
    As shown before if method is overriden, will be inserted inherited. And vice versa from implementation to interface.
  4. Anagously with fields and properties. Properties and fields HyperJump are used only for creating fields and properties. If cursor is situated on field FTest: integer; would be created property like this at the end of published section:
    published
    ...
    property Test: integer read FTest write FTest;
    And vice versa. If property actions are like these:
    property Test: integer read F write Set;
    Would be created method SetTest at the end protected section, if it is not already exists, and field FTest in private section:
    private
    ...
    FTest: integer;
    ...
    protected
    ...
    procedure SetTest(Value: integer);
    and will be created implementation of method SetTest :
    ...
    procedure TTestClass.SetTest(Value: integer);
    begin
    FTest := Value;
    end;
    Anagously with Get-actions will be inserted code Result := FTest;
  5. Suppose we want to add parameter to method, we'll add parameter in interface header and repeat it again in implementation header. AIDE supports automatic header refreshing, if headers wouldn't be identical AIDE would offer you to choose corrent method header: if you jump from implementation to interface by default AIDE suppose that implementation's header are newer than interface's and offers you to refresh interface's header, and vise versa.

 

If you want to override some methods but do not know there's parameters you can use AIDE's InheritanceWizard (Alt+Insert). InheritanceWizard will scan parent classes for virtual methods and will offer you to choose methods you want to override. They would be created inside your class with directive override.

AIDE contains build in macro language for writing your own macros - for this perpouce AIDE uses Forth as macro language.

AIDE has analogous feature to Delphi's Code Templates (Forth Code Templates - Alt+J). In AIDE's Code Templates you can insert macro constructions inside template, which makes it more powerfull in functional sence. AIDE contains standard macros for generating new classes, ext. Example, macro TryVar inserts such code, Do type varName| then click Alt+J or Alt+Y then AIDE will insert such code := will ask about varName's type if its isnt declared as local var and otherwise declares it, then inserts text:


.Create;
try
|
finally
varName.Free;
end;

If varType is descendant from TForm will be inserted such code inside try and finally:


varName.ShowModal;
if varName.ModalResult = mrOk then
begin
|
end;

See file AIDE.dci.

Another powerfull feature is ClassesRegistry.

Attention ! If you want to use above features you must register source file.

GotoClassOnCursor - Ctrl+Alt+F1 Suppose cursor is situated on class TCustomGrid, click Ctrl+Alt+F1, and AIDE will open source with that class ..

Sorry ! Documentation is not ready yet ;-( .