QtChat 2.0 - Development
Wish List

Home
News

FAQ
Download Development Contact
This section is intended to be a clearinghouse of ideas for inclusion in the project.  If you have a suggestion for a cool new feature or capability, please don't hesitate to contact me.

  • Filter module.  This is a critical section of the project, on which much of the design is based.  I include it here because its final interface hasn't been decided yet.  A filter is a C++ object which can take a Packet object and either block or modify the Packet in the packet stream.  Blocking filters are "const" filters (they do not modify their packets).

    The work is in how exactly to define the base Filter class and derived classes (I currently have ConstFilter and ModFilter), what a group of filters would look like, and how to execute the filter group.  My initial thoughts were to have either a stack or tree of Filter objects.  If a filter was a blocking filter and returned 'block' for a packet, the filters below would be skipped.

  • Dynamic module loader.  This project is difficult because dynamically loadable modules (e.g. DLLs and shared objects) are highly platform-specific.  Also, the modules would contain C++ code, which is something of a bear to deal with when a function can be overloaded.  The benefit is the ability to replace portions of QtChat while the program is running, on any platform.   An update for the Yahoo YMSG protocol becomes available?  Download it and voila, the system deletes the old one and uses the new one (probably after closing all chat sessions first).  Less integral modules could be added with less disruption of the running chat session, of course; the protocol is key to everything.

Last updated: 2003-Oct-23