Search This Site
Trillian Pro Plug-in Framework for Delphi
This page is for Trillian users who wish to make plug-ins, if you don't know what Trillian is please go to the Trillian website.
Here is my Delphi 6 SDK and OOP Framework, it allows you to make plug-ins for Trillian Pro with a minimum of fuss using Delphi. :)
All the functions of the version 2.0 SDK have been added.
If you are using this framework to make your own plug-ins please be sure to UPDATE it from this post as often as possible, many bugs are fixed and new features are often added. I try to make the changes so that you wont have to change your Plug in code, but that's not always possible.
History & Info
25/10/2002
- Added many little new functions to TPlugin for finding paths
- Added dynamic contact list entry changes to the sample plug-in. minor changes to list entry functionality
- Right click on group list entries to add or remove entries dynamically in sample
06/10/2002
- All code checks for nil's in lists
- Fixed ICON code, where the icon would free its icon data b4 the list entry was freed... Causing GPF... Thanks Razzle for forcing me to find this one. PS: If you call any of the update functions for the list entries and the number of left or right icons have changed please reregister the list entries first.
- Added custom ADD methods to all lists, so that type applicable to lists are obvious.
05/10/2002
- Fixed initialization problem, another GPF
- Hopefully no more GPFs or slowdowns??
21/09/2002
- Many bug fixes - no more GPFs (as far as i can tell)
- Added TContactList and integrated into TPlugin for easy access to the contact list
- Added MessageSendByName to TPlugin which allows you to send a message by the users name (as per TAliasAlert return), scans the ContactList to find a match and then sends by UIN
- Be careful not to use MessageSend, specifying an invalid UIN, this causes a GPF.
20/09/2002
- Added TPrefForm with sample
- Allows you to use a TForm object as a preference dialog
- Only lightly tested, use at own risk
- Crash is fixed as far as i can tell
- Changed sample TMySystrayAliasAlert.OnDestroy - fixed GPF Added extra safeguards against lost object method calls
19/09/2002
- Fixed enumeration objects - they now work (included in sample)
- Fixed TPlugin freeing problem - object now frees without errors
- Fixed Systray ondestroy
- Started adding properties and cleaning objects up
- Added List manipulation routines
- Added list callback functions
- Miscellaeneous bug fixes
Known Problems (To Be Addressed):
- Footprint of DLL is large due to TPlugin uses all objects regardless weather they are used or not
- Create constructors currently use all parameters, more constructors will be done to make it easier
- Menu items must be created for each ListEntry
Structure
Key:
X = Tested and completed (Included in Sample)
O = Completed - not yet tested
= Not Done
1. Function Reference
1.1. Outbound (Messages sent to Trillian)
Systray Functions
X systraySetAlert
Preferences Functions
X prefsInitialize
Alias Functions
X editAliasRegister
X editAliasUnregister
X keyboardAliasRegister
X keyboardAliasUnregister
List Functions
X listAddEntry
X listRemoveEntry
X listClearEntry
X listGetSectionCount
X listGetGroupCount
X listGetExpandState
X listUpdateText
X listUpdateFont
X listUpdateTooltip
X listUpdateIcon
X listUpdateExpandState
X listSuppressRedraw
X listRedrawEntry
Dialog Functions
X dialogAdd
X dialogRemove
Contact List Functions
X contactlistEnumerate
Connection Functions
X connectionEnumerate
Message Functions
X messageSend
X messageBroadcastEnable
X messageBroadcastDisable
1.2. Inbound (Messages received from Trillian)
plugin_send Notifications
X load
X initialLoad
X start
X stop
X finalUnload
X unload
X prefsShow
X prefsAction
Systray Alert Notifications
X alert_destroy
X alert_linkClick
X alert_create
Alias Notificaitons
X edit_aliasRequest
X edit_aliasFree
X edit_aliasDestroy
X keyboard_aliasRequest
X keyboard_aliasFree
X keyboard_aliasDestroy
List Notifications
X list_mouseMove
X list_draw
X list_getDesiredWidth
X list_getHeight
X list_changeName
X list_leftButtonDown
X list_leftButtonUp
X list_leftDoubleClick
X list_mouseLeave
Enumeration Notifications
X enum_start
X enum_add
X enum_finish
Message Notifications
X message_broadcast
Menu Notifications
X menu-open
X menu-open-finish
X menu-select
X menu-destroy
TObject
|-TContact
|-TList
| \-TManagedList
| |-TListEntryList
| |-TPIIconList
| |-TPIItemsLIst
| |-TPIMenuList
| \-TPrefDialogsList
|-TObjectList
| |-TContactList
| | \-TEventContactList
| | \-TChangeNotifyContactList
| | \-TAutoChangeNotifyContactList
| \-TConnectionList
| | \-TEventConnectionList
| | \-TChangeNotifyConnectionList
| | \-TAutoChangeNotifyConnectionList
|-TManagedItem
| |-TListEntry
| |-TPIFontItem
| |-TPIIconItem
| |-TPIItem
| | |-TAlert
| | |-+-TAliasAlert
| | | | \-TFilterAlert
| | | |-TBroadcastAlert
| | | |-TEnumAlert
| | | | |-TConnectionEnumAlert
| | | | \-TConnectionListAdder
| | | | \-TContactListEnumAlert
| | | | \-TContactListAdder
| | | |-TKeyboardAliasAlert
| | | \-TSystrayAlert
| | |-TListEntries
| | \-TPref
| |-TPIMenuItem
| \-TPrefDialog
| \-TPrefForm
\-TPlugin
Download
Link (Includes compiled sample - Now handles automatic events for detecting contact list and connection list changes, see top of readme.txt file for more information, fixed bugs as well):
Download Framework (Now Delphi 5+ Ready, ZIPped)
Filename: Framework.zip
Size: 284 KB
Uploaded: September 04, 2008
This file has been downloaded 1973 (550) times
It was last downloaded on Sun, 29 Jan 2012 08:01:38 +1100
If anyone would like to test it for me, please do!! , its still beta
at the moment, and comments / suggestions / questions are welcome.

