Visual IRC
Features & Screenshots
Download ViRC!
Scripts
Visual IRC Forum
Chat in Undernet #ViRC
Awards and Reviews
About the Author
About the Technology
ViRC Antique Shop
|
What's new in Visual IRC 2.0pre9?
Additions (20)
Bug fixes (19)
Changed features (7)
- ViRC can now autoload more than one script at a time - a master script
(virc.lib), a personal script (local.lib), and multiple add-on scripts
(winamp.vsc, etc.). You can now install an add-on script simply by
adding it to the list on the configuration window's Scripts page and
rehashing.
- The script editor now has a "New" button, and loads the personal script
by default.
- New 'server list' button in toolbars.vsc.
- New channel list window. Try '/list *mp3*' or just '/list'. The list
can be loaded and saved to a file, using the same format as mIRC.
Right-click on a channel to get a menu.
- New /who window, accessible with /wwho or /windowedwho. Try '/wwho' to
get a list for the active channel, or '/wwho #virc' for another
channel. You can also double-click on a channel in the /list window to
see who's on.
- '/clear -h' or '/clear #virc -h' can now be used to clear the input box
history.
- The server notify list and channel nick list can now be resized by
dragging the border between the output pane and list box.
- Scripts can now create tray icons with the TTrayIcon class. Properties:
- Active: Boolean
- Hint: string
- Icon: TIcon
- PopupMenu: TPopupMenu
Events:
- OnClick
- OnDblClick
- OnRightClick ($Shift, $Button, $X, $Y)
- If you move ViRC to a new directory and it can't find the scripts (the
old paths are saved in the registry), it will look in the new location
of ViRC.exe. If it finds them there, it will load the files and update
the settings.
- Scripts can now use TListView, which is the control used in the ban
list, /who list, and Explorer windows. The actual implemented classes
are TListView, TListItem, TListItems, TListColumn, TListColumns, and
TImageList. See ovs.txt.
- Scripts can use TCanvas to draw on forms and some controls. This also
means owner-draw list boxes and list views are available.
- A color palette now appears when you start typing a color with ctrl-K.
- Attribute codes (^B, ^K, etc.) now work for the real name and default
messages settings in configuration, and for the topic in channel
control. Scripts can use TInputCombo for a combo-box that allows
attributes.
- New reverse DCC support for firewalls, compatible with mIRC. Enable
"Use reverse DCC" on the DCC settings page. Note: This won't work if
both users are behind different firewalls.
Special note to Khaled: Please put more thought into your next
invention.
- When reverse DCC is enabled, ViRC will attempt to trick some proxies
that intercept DCC requests (specifically, the one at my apartment
complex that inserts the wrong address).
- The setup wizard is now implemented. Choose "I'm new to IRC and I
want detailed help" on the import settings form for new users.
- New function: $SameNick(nick1 nick2). Considers [ the same as {,
\ the same as |, and ] the same as }, like ircd.
- New commands/functions for DCC management:
$DCCList() returns a list of DCC list entries
DCC Accept <entry> [filename]
DCC Resume <entry> <offset> [filename]
DCC Reject <entry>
$GetDCCInfo(<entry> <key>) where key is chatform (returns a mapped object
handle), chatwin (returns a window name like =1), filename, id, kind
(chat/send/tsend/get/tget), mynick, myport, nick, origfilename,
remoteaddr, remoteport, reverse, reversetoken,
server (returns the server ID), servername, socket (returns a mapped
object handle), startpos, starttime (compare to $mtime()), state
(request/connecting/connected/waiting/resuming/socks), totalsize,
transferred, or whiteboardform (returns a mapped object handle)
Note that when an incoming request is accepted, the request entry is deleted
and a new entry is created to connect. Firewall DCC entries are similarly
recreated during connection.
- New events for DCC:
<OnDCCConnect> ($0 = chat/send/tsend/get/tget, $1 = DCC entry ID)
<OnDCCFinished> ($0 = chat/send/tsend/get/tget, $1 = DCC entry ID,
$2 = socket error number, $3- = error message.
error number is 0 if completed or -1 if aborted.)
- Ident and DCC socket errors are now shown on the main status bar.
- The tile and cascade buttons in toolbars.vsc now work correctly.
- The tray icon refreshes itself automatically if Explorer crashes.
- The server toolbar is correctly updated after an error causes the
server to disconnect.
- The internal QUIT event now works correctly if the server doesn't send
a reason.
- The new TDCC handshake is now actually implemented.
- Continuous backgrounds work correctly with toolbars, and turning
continuous backgrounds off works as expected.
- ViRC now looks in its own directory for menu/toolbar images if no path
is given.
- Incoming messages and notices directed to the ops or voices of a channel
(@#virc, +#virc, @+#virc, etc.) are now shown in the correct window.
- Logging for nicks with \ in them works correctly.
- The ident server is now much better behaved.
- IAL expiration should be faster in large channels.
- Nicks are now compared correctly ('{' is the same as '[', etc.).
Changes since ViRC 2.0pre8:
- Menu bitmaps work correctly.
- Class definitions with blank lines work correctly.
- Switching between OVS-created MDI children doesn't give errors.
- Destroy/SafeDestroy no longer explicitly close forms. This will prevent
errors when a form's OnClose handler destroys the form.
- Calling methods of user-defined classes no longer loses local variables.
- List items quoted with angle brackets are now extracted correctly.
- '/dns www.yahoo.com', with an extra space after /dns, works correctly.
- Menu bitmaps will now be made square when they're loaded, by setting
the width to be the same as the height. This means you can use the
same bitmaps for menus and toolbars if the toolbar bitmaps have
disabled versions.
- New users now have "strip attributes from logs" turned on by default.
- ViRC no longer freezes while looking up the server's IP address.
- Menu items aren't forgotten when the menu tree is updated, so you don't
have to duplicate the code for the entire menu just to add one item.
- No more AddNickToChan/RemoveNickFromChan errors.
- Exceptions caused by scripts are handled differently. Functions that
raise exceptions will return an appropriate message.
- The upgrade message will now go away even if the configuration can't be
saved completely.
Change log history:
|