TC Plugin Ace - fast plugin prototype developing

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

Post Reply
Dec
Member
Member
Posts: 115
Joined: 2006-11-23, 12:48 UTC

TC Plugin Ace - fast plugin prototype developing

Post by *Dec »

I want to present TC Plugin Ace project. It was developed for myself but maybe the project will be interesting for other plugin developers who use Delphi.

What is TC Plugin Ace?

TC Plugin Ace is a package for Delphi IDE allows developers to create a plugin prototype with few mouse click.

How TC Plugin Ace works?

0) Select File\New\Other... menu item in the main menu of Delphi.

1) After window appears select Total Commander plugin tab:

Image: http://www.shellace.com/img/tc/TCPluginAceSelectProject.jpg

2) Select plugin type (currently creation of WCX projects implemented only!) and press OK.

3) Wizard window will appears and you will be able to select procedures you want to implement in your plugin.

Image: http://www.shellace.com/img/tc/WCXProjectWizard.jpg

Besides of selection of procedures there are two additional options available.
  • -Use CodeSite logging
    Allows to add to every procedure additional code which will create logs of procedure calls with using of CodeSite (CodeSite is included in Delphi starting from XE). It looks like this:

    Image: http://www.shellace.com/img/tc/TCPluginAceCodeSiteLogging.jpg

    Logging can be disabled at any moment of developing process with single directive. Also all addition code will be disabled too and will not be included in the resulting project.
  • -Use {$REGION} directive
    Allows hide all service codes into regions. It makes easier understanding of the sources and navigation through the sources.
4) After you select all necessary procedures and options and press OK TC Plugin Ace will create new project and fill prototypes of all selected procedures considering options.

5) All you need to do is implement functionality you need.

How to start use TC Plugin Ace?

Download installer. Installer will offer you to select path where packages will be copied. Also you can select versions of Delphi with which integration will be (installed version of Delphi are detected automatically):

Image: http://www.shellace.com/img/tc/TCPluginAceSetup.jpg

After installation you may start your favorite version of Delphi and try developing with new instrument.

If the project is interesting let me know and I will continue developing and it will be able to create other plugin types.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48079
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Wow, that's great! Maybe instead of listing all the functions, you could let the user choose between 32-bit or 64-bit only plugin, or both (two checkboxes 32-bit, 64-bit) and then show only those functions which are optional. The following functions MUST always be implemented:
OpenArchive
ReadHeader
ProcessFile
CloseArchive
SetChangeVolProc
SetProcessDataProc
Author of Total Commander
https://www.ghisler.com
Dec
Member
Member
Posts: 115
Joined: 2006-11-23, 12:48 UTC

Post by *Dec »

ghisler(Author) wrote:Maybe instead of listing all the functions, you could let the user choose between 32-bit or 64-bit only plugin, or both (two checkboxes 32-bit, 64-bit) and then show only those functions which are optional.
Sorry but I don`t understand the difference between list of functions for 32 and 64 bits plugins.
ghisler(Author) wrote:The following functions MUST always be implemented
Thanks. I will think about this.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48079
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Sorry, I meant that you could create code for conditional compilation ($ifdef win32} or {$ifdef win64}). But this may not be necessary, depending on how the plugin is created.

One more idea: You could also show checkboxes for Unicode and ANSI functions. Since all ANSI-only Windows systems (Windows 9x/ME) are long out of support, users may want to create Unicode only plugins now.
Author of Total Commander
https://www.ghisler.com
Dec
Member
Member
Posts: 115
Joined: 2006-11-23, 12:48 UTC

Post by *Dec »

ghisler(Author) wrote:Sorry, I meant that you could create code for conditional compilation ($ifdef win32} or {$ifdef win64}). But this may not be necessary, depending on how the plugin is created.
In case of sources generated with TC Plugin Ace it is not necessary. If a developer wants to create 64 bit plugin he just must select Win64 platform in project option in Delphi. That all.
ghisler(Author) wrote:One more idea: You could also show checkboxes for Unicode and ANSI functions. Since all ANSI-only Windows systems (Windows 9x/ME) are long out of support, users may want to create Unicode only plugins now.
I will think about this.
Post Reply