Added documentation and management files for the first release.

Sun, 20 Apr 2025 11:08:39 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 20 Apr 2025 11:08:39 +0200
changeset 3
51c2c37bde76
parent 2
5b635dc8895f
child 4
312607fef6f7

Added documentation and management files for the first release.

ExtensionIrc/Documentation/LICENSE.GPL file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.IrcPage.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcChannelEditDialog.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcChannelWidget.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcIdentitiesEditDialog.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcMessageEdit.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkEditDialog.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkListDialog.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkManager.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkWidget.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcServerEditDialog.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcUtilities.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcWidget.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.PluginExtensionIrc.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.ExtensionIrc.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/index.html file | annotate | diff | comparison | revisions
ExtensionIrc/Documentation/Source/styles.css file | annotate | diff | comparison | revisions
ExtensionIrc/i18n/irc_de.qm file | annotate | diff | comparison | revisions
ExtensionIrc/i18n/irc_en.qm file | annotate | diff | comparison | revisions
ExtensionIrc/i18n/irc_es.qm file | annotate | diff | comparison | revisions
ExtensionIrc/i18n/irc_ru.qm file | annotate | diff | comparison | revisions
PluginIrc.epj file | annotate | diff | comparison | revisions
changelog.md file | annotate | diff | comparison | revisions
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/LICENSE.GPL	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,621 @@
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+  The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works.  By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users.  We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors.  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+  To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights.  Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received.  You must make sure that they, too, receive
+or can get the source code.  And you must show them these terms so they
+know their rights.
+
+  Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+  For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software.  For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+  Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so.  This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software.  The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable.  Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products.  If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+  Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary.  To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                       TERMS AND CONDITIONS
+
+  0. Definitions.
+
+  "This License" refers to version 3 of the GNU General Public License.
+
+  "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+  "The Program" refers to any copyrightable work licensed under this
+License.  Each licensee is addressed as "you".  "Licensees" and
+"recipients" may be individuals or organizations.
+
+  To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy.  The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+  A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+  To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy.  Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+  To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies.  Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+  An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License.  If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+  1. Source Code.
+
+  The "source code" for a work means the preferred form of the work
+for making modifications to it.  "Object code" means any non-source
+form of a work.
+
+  A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+  The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form.  A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+  The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities.  However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work.  For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+  The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+  The Corresponding Source for a work in source code form is that
+same work.
+
+  2. Basic Permissions.
+
+  All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met.  This License explicitly affirms your unlimited
+permission to run the unmodified Program.  The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work.  This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+  You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force.  You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright.  Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+  Conveying under any other circumstances is permitted solely under
+the conditions stated below.  Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+  No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+  When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+  4. Conveying Verbatim Copies.
+
+  You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+  You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+  5. Conveying Modified Source Versions.
+
+  You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+    a) The work must carry prominent notices stating that you modified
+    it, and giving a relevant date.
+
+    b) The work must carry prominent notices stating that it is
+    released under this License and any conditions added under section
+    7.  This requirement modifies the requirement in section 4 to
+    "keep intact all notices".
+
+    c) You must license the entire work, as a whole, under this
+    License to anyone who comes into possession of a copy.  This
+    License will therefore apply, along with any applicable section 7
+    additional terms, to the whole of the work, and all its parts,
+    regardless of how they are packaged.  This License gives no
+    permission to license the work in any other way, but it does not
+    invalidate such permission if you have separately received it.
+
+    d) If the work has interactive user interfaces, each must display
+    Appropriate Legal Notices; however, if the Program has interactive
+    interfaces that do not display Appropriate Legal Notices, your
+    work need not make them do so.
+
+  A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit.  Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+  6. Conveying Non-Source Forms.
+
+  You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+    a) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by the
+    Corresponding Source fixed on a durable physical medium
+    customarily used for software interchange.
+
+    b) Convey the object code in, or embodied in, a physical product
+    (including a physical distribution medium), accompanied by a
+    written offer, valid for at least three years and valid for as
+    long as you offer spare parts or customer support for that product
+    model, to give anyone who possesses the object code either (1) a
+    copy of the Corresponding Source for all the software in the
+    product that is covered by this License, on a durable physical
+    medium customarily used for software interchange, for a price no
+    more than your reasonable cost of physically performing this
+    conveying of source, or (2) access to copy the
+    Corresponding Source from a network server at no charge.
+
+    c) Convey individual copies of the object code with a copy of the
+    written offer to provide the Corresponding Source.  This
+    alternative is allowed only occasionally and noncommercially, and
+    only if you received the object code with such an offer, in accord
+    with subsection 6b.
+
+    d) Convey the object code by offering access from a designated
+    place (gratis or for a charge), and offer equivalent access to the
+    Corresponding Source in the same way through the same place at no
+    further charge.  You need not require recipients to copy the
+    Corresponding Source along with the object code.  If the place to
+    copy the object code is a network server, the Corresponding Source
+    may be on a different server (operated by you or a third party)
+    that supports equivalent copying facilities, provided you maintain
+    clear directions next to the object code saying where to find the
+    Corresponding Source.  Regardless of what server hosts the
+    Corresponding Source, you remain obligated to ensure that it is
+    available for as long as needed to satisfy these requirements.
+
+    e) Convey the object code using peer-to-peer transmission, provided
+    you inform other peers where the object code and Corresponding
+    Source of the work are being offered to the general public at no
+    charge under subsection 6d.
+
+  A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+  A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling.  In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage.  For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product.  A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+  "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source.  The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+  If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information.  But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+  The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed.  Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+  Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+  7. Additional Terms.
+
+  "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law.  If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+  When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it.  (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.)  You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+  Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+    a) Disclaiming warranty or limiting liability differently from the
+    terms of sections 15 and 16 of this License; or
+
+    b) Requiring preservation of specified reasonable legal notices or
+    author attributions in that material or in the Appropriate Legal
+    Notices displayed by works containing it; or
+
+    c) Prohibiting misrepresentation of the origin of that material, or
+    requiring that modified versions of such material be marked in
+    reasonable ways as different from the original version; or
+
+    d) Limiting the use for publicity purposes of names of licensors or
+    authors of the material; or
+
+    e) Declining to grant rights under trademark law for use of some
+    trade names, trademarks, or service marks; or
+
+    f) Requiring indemnification of licensors and authors of that
+    material by anyone who conveys the material (or modified versions of
+    it) with contractual assumptions of liability to the recipient, for
+    any liability that these contractual assumptions directly impose on
+    those licensors and authors.
+
+  All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10.  If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term.  If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+  If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+  Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+  8. Termination.
+
+  You may not propagate or modify a covered work except as expressly
+provided under this License.  Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+  However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+  Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+  Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License.  If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+  9. Acceptance Not Required for Having Copies.
+
+  You are not required to accept this License in order to receive or
+run a copy of the Program.  Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance.  However,
+nothing other than this License grants you permission to propagate or
+modify any covered work.  These actions infringe copyright if you do
+not accept this License.  Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+  10. Automatic Licensing of Downstream Recipients.
+
+  Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License.  You are not responsible
+for enforcing compliance by third parties with this License.
+
+  An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations.  If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+  You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License.  For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+  11. Patents.
+
+  A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based.  The
+work thus licensed is called the contributor's "contributor version".
+
+  A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version.  For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+  Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+  In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement).  To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+  If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients.  "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+  If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+  A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License.  You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+  Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+  12. No Surrender of Others' Freedom.
+
+  If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all.  For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+  13. Use with the GNU Affero General Public License.
+
+  Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work.  The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+  14. Revised Versions of this License.
+
+  The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+  Each version is given a distinguishing version number.  If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation.  If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+  If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+  Later license versions may give you additional or different
+permissions.  However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+  15. Disclaimer of Warranty.
+
+  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. Limitation of Liability.
+
+  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+  17. Interpretation of Sections 15 and 16.
+
+  If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+                     END OF TERMS AND CONDITIONS
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.IrcPage.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.IrcPage</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.IrcPage</h1>
+<p>
+Module implementing the IRC configuration page.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcPage">IrcPage</a></td>
+<td>Class implementing the IRC configuration page.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcPage" ID="IrcPage"></a>
+<h2>IrcPage</h2>
+<p>
+    Class implementing the IRC configuration page.
+</p>
+
+<h3>Derived from</h3>
+ConfigurationPageBase, Ui_IrcPage
+<h3>Class Attributes</h3>
+<table>
+<tr><td>DateFormats</td></tr>
+<tr><td>TimeFormats</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcPage.__init__">IrcPage</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcPage.save">save</a></td>
+<td>Public slot to save the IRC configuration.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcPage.__init__" ID="IrcPage.__init__"></a>
+<h4>IrcPage (Constructor)</h4>
+<b>IrcPage</b>(<i>plugin</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>plugin</i> (PluginPipxInterface)</dt>
+<dd>
+reference to the plugin object
+</dd>
+</dl>
+<a NAME="IrcPage.save" ID="IrcPage.save"></a>
+<h4>IrcPage.save</h4>
+<b>save</b>(<i></i>)
+<p>
+        Public slot to save the IRC configuration.
+</p>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcChannelEditDialog.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,142 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcChannelEditDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcChannelEditDialog</h1>
+<p>
+Module implementing a dialog to edit channel data.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcChannelEditDialog">IrcChannelEditDialog</a></td>
+<td>Class implementing a dialog to edit channel data.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcChannelEditDialog" ID="IrcChannelEditDialog"></a>
+<h2>IrcChannelEditDialog</h2>
+<p>
+    Class implementing a dialog to edit channel data.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_IrcChannelEditDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcChannelEditDialog.__init__">IrcChannelEditDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelEditDialog.getData">getData</a></td>
+<td>Public method to get the channel data.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelEditDialog.on_nameEdit_textChanged">on_nameEdit_textChanged</a></td>
+<td>Private slot to handle changes of the given name.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcChannelEditDialog.__init__" ID="IrcChannelEditDialog.__init__"></a>
+<h4>IrcChannelEditDialog (Constructor)</h4>
+<b>IrcChannelEditDialog</b>(<i>name, key, autoJoin, edit, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+channel name
+</dd>
+<dt><i>key</i> (str)</dt>
+<dd>
+channel key
+</dd>
+<dt><i>autoJoin</i> (bool)</dt>
+<dd>
+flag indicating, that the channel should
+            be joined automatically
+</dd>
+<dt><i>edit</i> (bool)</dt>
+<dd>
+flag indicating an edit of an existing
+            channel
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcChannelEditDialog.getData" ID="IrcChannelEditDialog.getData"></a>
+<h4>IrcChannelEditDialog.getData</h4>
+<b>getData</b>(<i></i>)
+<p>
+        Public method to get the channel data.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple giving the channel name, channel key and a flag
+            indicating, that the channel should be joined automatically
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, str, bool)
+</dd>
+</dl>
+<a NAME="IrcChannelEditDialog.on_nameEdit_textChanged" ID="IrcChannelEditDialog.on_nameEdit_textChanged"></a>
+<h4>IrcChannelEditDialog.on_nameEdit_textChanged</h4>
+<b>on_nameEdit_textChanged</b>(<i>txt</i>)
+<p>
+        Private slot to handle changes of the given name.
+</p>
+
+<dl>
+
+<dt><i>txt</i> (str)</dt>
+<dd>
+text of the edit
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcChannelWidget.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,2111 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcChannelWidget</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcChannelWidget</h1>
+<p>
+Module implementing the IRC channel widget.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcChannelWidget">IrcChannelWidget</a></td>
+<td>Class implementing the IRC channel widget.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem">IrcUserItem</a></td>
+<td>Class implementing a list widget item containing an IRC channel user.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcChannelWidget" ID="IrcChannelWidget"></a>
+<h2>IrcChannelWidget</h2>
+<p>
+    Class implementing the IRC channel widget.
+</p>
+
+<h3>Signals</h3>
+<dl>
+
+<dt>awayCommand(str)</dt>
+<dd>
+emitted to set the away status via the /away
+        command
+</dd>
+<dt>channelClosed(str)</dt>
+<dd>
+emitted after the user has left the channel
+</dd>
+<dt>leaveAllChannels()</dt>
+<dd>
+emitted to leave all channels
+</dd>
+<dt>leaveChannels(list)</dt>
+<dd>
+emitted to leave a list of channels
+</dd>
+<dt>openPrivateChat(str)</dt>
+<dd>
+emitted to open a "channel" for private
+        messages
+</dd>
+<dt>sendCtcpReply(str, str)</dt>
+<dd>
+emitted to send a CTCP reply
+</dd>
+<dt>sendCtcpRequest(str, str, str)</dt>
+<dd>
+emitted to send a CTCP request
+</dd>
+<dt>sendData(str)</dt>
+<dd>
+emitted to send a message to the channel
+</dd>
+</dl>
+<h3>Derived from</h3>
+QWidget, Ui_IrcChannelWidget
+<h3>Class Attributes</h3>
+<table>
+<tr><td>JoinIndicator</td></tr>
+<tr><td>LeaveIndicator</td></tr>
+<tr><td>MessageIndicator</td></tr>
+<tr><td>UrlRe</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcChannelWidget.__init__">IrcChannelWidget</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__addManagementMessage">__addManagementMessage</a></td>
+<td>Private method to add a channel management message to the list.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__appendMessage">__appendMessage</a></td>
+<td>Private slot to append a message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__autoWhoEntry">__autoWhoEntry</a></td>
+<td>Private method to handle a WHO entry returned by the server as requested automatically.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__channelCreated">__channelCreated</a></td>
+<td>Private method to handle a channel created message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__channelModes">__channelModes</a></td>
+<td>Private method to handle a message reporting the channel modes.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__channelUrl">__channelUrl</a></td>
+<td>Private method to handle a channel URL message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__clearMessages">__clearMessages</a></td>
+<td>Private slot to clear the contents of the messages display.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__copyAllMessages">__copyAllMessages</a></td>
+<td>Private slot to copy the contents of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__copyMessages">__copyMessages</a></td>
+<td>Private slot to copy the selection of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__cutAllMessages">__cutAllMessages</a></td>
+<td>Private slot to cut the contents of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__extractPrivilege">__extractPrivilege</a></td>
+<td>Private method to extract the user privileges out of the name.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__findUser">__findUser</a></td>
+<td>Private method to find the user in the list of users.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__handleCtcp">__handleCtcp</a></td>
+<td>Private method to handle a CTCP channel command.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__help">__help</a></td>
+<td>Private method to handle a help message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__ignore">__ignore</a></td>
+<td>Private method to handle a channel message we are not interested in.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__ignoreUser">__ignoreUser</a></td>
+<td>Private slot to ignore a specific user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__initMessagesMenu">__initMessagesMenu</a></td>
+<td>Private slot to initialize the context menu of the messages pane.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__initUsersMenu">__initUsersMenu</a></td>
+<td>Private slot to initialize the users list context menu.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__message">__message</a></td>
+<td>Private method to handle messages to the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__openPrivateChat">__openPrivateChat</a></td>
+<td>Private slot to open a chat with the selected user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__pingUser">__pingUser</a></td>
+<td>Private slot to send a ping to a specific user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__processUserMessage">__processUserMessage</a></td>
+<td>Private method to process a message entered by the user or via the user list context menu.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__saveMessages">__saveMessages</a></td>
+<td>Private slot to save the contents of the messages display.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__sendAutoWhoCommand">__sendAutoWhoCommand</a></td>
+<td>Private slot to send the WHO command to update the users list.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__sendUserMessage">__sendUserMessage</a></td>
+<td>Private slot to send a private message to a specific user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__sendUserNotice">__sendUserNotice</a></td>
+<td>Private slot to send a notice message to a specific user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__sendUserQuery">__sendUserQuery</a></td>
+<td>Private slot to send a query message to a specific user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__setEditTopicButton">__setEditTopicButton</a></td>
+<td>Private method to set the visibility of the Edit Topic button.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__setTopic">__setTopic</a></td>
+<td>Private method to handle a topic change of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__setUserPrivilege">__setUserPrivilege</a></td>
+<td>Private method to handle a change of user privileges for the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__topicCreated">__topicCreated</a></td>
+<td>Private method to handle a topic created message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__updateChannelModes">__updateChannelModes</a></td>
+<td>Private method to handle a message reporting the channel modes.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userAway">__userAway</a></td>
+<td>Private method to handle a topic change of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userJoin">__userJoin</a></td>
+<td>Private method to handle a user joining the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userList">__userList</a></td>
+<td>Private method to handle the receipt of a list of users of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userNickChange">__userNickChange</a></td>
+<td>Private method to handle a nickname change of a user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userPart">__userPart</a></td>
+<td>Private method to handle a user leaving the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__userQuit">__userQuit</a></td>
+<td>Private method to handle a user logging off the server.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoEnd">__whoEnd</a></td>
+<td>Private method to handle the end of the WHO list.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoEntry">__whoEntry</a></td>
+<td>Private method to handle a WHO entry returned by the server as requested manually.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIs">__whoIs</a></td>
+<td>Private slot to get information about the selected user.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsAccount">__whoIsAccount</a></td>
+<td>Private method to handle the WHOIS account reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsActually">__whoIsActually</a></td>
+<td>Private method to handle the WHOIS actually reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsChannels">__whoIsChannels</a></td>
+<td>Private method to handle the WHOIS channels reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsConnection">__whoIsConnection</a></td>
+<td>Private method to handle the WHOIS connection reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsEnd">__whoIsEnd</a></td>
+<td>Private method to handle the end of WHOIS reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsHelper">__whoIsHelper</a></td>
+<td>Private method to handle the WHOIS helper reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsIdentify">__whoIsIdentify</a></td>
+<td>Private method to handle the WHOIS identify and identified replies.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsIdle">__whoIsIdle</a></td>
+<td>Private method to handle the WHOIS idle reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsOperator">__whoIsOperator</a></td>
+<td>Private method to handle the WHOIS operator reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsSecure">__whoIsSecure</a></td>
+<td>Private method to handle the WHOIS secure reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsServer">__whoIsServer</a></td>
+<td>Private method to handle the WHOIS server reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.__whoIsUser">__whoIsUser</a></td>
+<td>Private method to handle the WHOIS user reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.addMessage">addMessage</a></td>
+<td>Public method to add a message from external.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.addUsers">addUsers</a></td>
+<td>Public method to add users to the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.getUsersCount">getUsersCount</a></td>
+<td>Public method to get the users count of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.handleMessage">handleMessage</a></td>
+<td>Public method to handle the message sent by the server.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.hideEvent">hideEvent</a></td>
+<td>Protected method handling hide events.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.initAutoWho">initAutoWho</a></td>
+<td>Public method to initialize the Auto Who system.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.leaveChannel">leaveChannel</a></td>
+<td>Public slot to leave the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.name">name</a></td>
+<td>Public method to get the name of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_editTopicButton_clicked">on_editTopicButton_clicked</a></td>
+<td>Private slot to change the topic of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_messageEdit_returnPressed">on_messageEdit_returnPressed</a></td>
+<td>Private slot to send a message to the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_messages_anchorClicked">on_messages_anchorClicked</a></td>
+<td>Private slot to open links in the default browser.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_messages_copyAvailable">on_messages_copyAvailable</a></td>
+<td>Private slot to react to text selection/deselection of the messages edit.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_messages_customContextMenuRequested">on_messages_customContextMenuRequested</a></td>
+<td>Private slot to show the context menu of the messages pane.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.on_usersList_customContextMenuRequested">on_usersList_customContextMenuRequested</a></td>
+<td>Private slot to show the context menu of the users list.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.partMessage">partMessage</a></td>
+<td>Public method to get the part message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.requestLeave">requestLeave</a></td>
+<td>Public method to leave the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setMarkerLine">setMarkerLine</a></td>
+<td>Public method to draw a line to mark the current position.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setName">setName</a></td>
+<td>Public method to set the name of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setPartMessage">setPartMessage</a></td>
+<td>Public method to set the part message.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setPrivate">setPrivate</a></td>
+<td>Public method to set the private chat mode.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setPrivateInfo">setPrivateInfo</a></td>
+<td>Public method to set some info text for private chat mode.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setUserName">setUserName</a></td>
+<td>Public method to set the user name for the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.setUserPrivilegePrefix">setUserPrivilegePrefix</a></td>
+<td>Public method to set the user privilege to prefix mapping.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.showEvent">showEvent</a></td>
+<td>Protected method handling show events.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.unsetMarkerLine">unsetMarkerLine</a></td>
+<td>Public method to remove the marker line.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannelWidget.userName">userName</a></td>
+<td>Public method to get the nick name of the user.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcChannelWidget.__init__" ID="IrcChannelWidget.__init__"></a>
+<h4>IrcChannelWidget (Constructor)</h4>
+<b>IrcChannelWidget</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__addManagementMessage" ID="IrcChannelWidget.__addManagementMessage"></a>
+<h4>IrcChannelWidget.__addManagementMessage</h4>
+<b>__addManagementMessage</b>(<i>indicator, message</i>)
+<p>
+        Private method to add a channel management message to the list.
+</p>
+
+<dl>
+
+<dt><i>indicator</i> (str)</dt>
+<dd>
+indicator to be shown
+</dd>
+<dt><i>message</i> (str)</dt>
+<dd>
+message to be shown
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__appendMessage" ID="IrcChannelWidget.__appendMessage"></a>
+<h4>IrcChannelWidget.__appendMessage</h4>
+<b>__appendMessage</b>(<i>message</i>)
+<p>
+        Private slot to append a message.
+</p>
+
+<dl>
+
+<dt><i>message</i> (str)</dt>
+<dd>
+message to be appended
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__autoWhoEntry" ID="IrcChannelWidget.__autoWhoEntry"></a>
+<h4>IrcChannelWidget.__autoWhoEntry</h4>
+<b>__autoWhoEntry</b>(<i>match</i>)
+<p>
+        Private method to handle a WHO entry returned by the server as
+        requested automatically.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__channelCreated" ID="IrcChannelWidget.__channelCreated"></a>
+<h4>IrcChannelWidget.__channelCreated</h4>
+<b>__channelCreated</b>(<i>match</i>)
+<p>
+        Private method to handle a channel created message.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__channelModes" ID="IrcChannelWidget.__channelModes"></a>
+<h4>IrcChannelWidget.__channelModes</h4>
+<b>__channelModes</b>(<i>match</i>)
+<p>
+        Private method to handle a message reporting the channel modes.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__channelUrl" ID="IrcChannelWidget.__channelUrl"></a>
+<h4>IrcChannelWidget.__channelUrl</h4>
+<b>__channelUrl</b>(<i>match</i>)
+<p>
+        Private method to handle a channel URL message.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__clearMessages" ID="IrcChannelWidget.__clearMessages"></a>
+<h4>IrcChannelWidget.__clearMessages</h4>
+<b>__clearMessages</b>(<i></i>)
+<p>
+        Private slot to clear the contents of the messages display.
+</p>
+
+<a NAME="IrcChannelWidget.__copyAllMessages" ID="IrcChannelWidget.__copyAllMessages"></a>
+<h4>IrcChannelWidget.__copyAllMessages</h4>
+<b>__copyAllMessages</b>(<i></i>)
+<p>
+        Private slot to copy the contents of the messages display to the
+        clipboard.
+</p>
+
+<a NAME="IrcChannelWidget.__copyMessages" ID="IrcChannelWidget.__copyMessages"></a>
+<h4>IrcChannelWidget.__copyMessages</h4>
+<b>__copyMessages</b>(<i></i>)
+<p>
+        Private slot to copy the selection of the messages display to the
+        clipboard.
+</p>
+
+<a NAME="IrcChannelWidget.__cutAllMessages" ID="IrcChannelWidget.__cutAllMessages"></a>
+<h4>IrcChannelWidget.__cutAllMessages</h4>
+<b>__cutAllMessages</b>(<i></i>)
+<p>
+        Private slot to cut the contents of the messages display to the
+        clipboard.
+</p>
+
+<a NAME="IrcChannelWidget.__extractPrivilege" ID="IrcChannelWidget.__extractPrivilege"></a>
+<h4>IrcChannelWidget.__extractPrivilege</h4>
+<b>__extractPrivilege</b>(<i>name</i>)
+<p>
+        Private method to extract the user privileges out of the name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+user name and prefixes
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple containing a list of privileges and user name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (list of str, str)
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__findUser" ID="IrcChannelWidget.__findUser"></a>
+<h4>IrcChannelWidget.__findUser</h4>
+<b>__findUser</b>(<i>name</i>)
+<p>
+        Private method to find the user in the list of users.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+user name to search for
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the list entry
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QListWidgetItem
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__handleCtcp" ID="IrcChannelWidget.__handleCtcp"></a>
+<h4>IrcChannelWidget.__handleCtcp</h4>
+<b>__handleCtcp</b>(<i>match</i>)
+<p>
+        Private method to handle a CTCP channel command.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__help" ID="IrcChannelWidget.__help"></a>
+<h4>IrcChannelWidget.__help</h4>
+<b>__help</b>(<i>match</i>)
+<p>
+        Private method to handle a help message.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__ignore" ID="IrcChannelWidget.__ignore"></a>
+<h4>IrcChannelWidget.__ignore</h4>
+<b>__ignore</b>(<i>match</i>)
+<p>
+        Private method to handle a channel message we are not interested in.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__ignoreUser" ID="IrcChannelWidget.__ignoreUser"></a>
+<h4>IrcChannelWidget.__ignoreUser</h4>
+<b>__ignoreUser</b>(<i></i>)
+<p>
+        Private slot to ignore a specific user.
+</p>
+
+<a NAME="IrcChannelWidget.__initMessagesMenu" ID="IrcChannelWidget.__initMessagesMenu"></a>
+<h4>IrcChannelWidget.__initMessagesMenu</h4>
+<b>__initMessagesMenu</b>(<i></i>)
+<p>
+        Private slot to initialize the context menu of the messages pane.
+</p>
+
+<a NAME="IrcChannelWidget.__initUsersMenu" ID="IrcChannelWidget.__initUsersMenu"></a>
+<h4>IrcChannelWidget.__initUsersMenu</h4>
+<b>__initUsersMenu</b>(<i></i>)
+<p>
+        Private slot to initialize the users list context menu.
+</p>
+
+<a NAME="IrcChannelWidget.__message" ID="IrcChannelWidget.__message"></a>
+<h4>IrcChannelWidget.__message</h4>
+<b>__message</b>(<i>match</i>)
+<p>
+        Private method to handle messages to the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__openPrivateChat" ID="IrcChannelWidget.__openPrivateChat"></a>
+<h4>IrcChannelWidget.__openPrivateChat</h4>
+<b>__openPrivateChat</b>(<i></i>)
+<p>
+        Private slot to open a chat with the selected user.
+</p>
+
+<a NAME="IrcChannelWidget.__pingUser" ID="IrcChannelWidget.__pingUser"></a>
+<h4>IrcChannelWidget.__pingUser</h4>
+<b>__pingUser</b>(<i></i>)
+<p>
+        Private slot to send a ping to a specific user.
+</p>
+
+<a NAME="IrcChannelWidget.__processUserMessage" ID="IrcChannelWidget.__processUserMessage"></a>
+<h4>IrcChannelWidget.__processUserMessage</h4>
+<b>__processUserMessage</b>(<i>msg</i>)
+<p>
+        Private method to process a message entered by the user or via the
+        user list context menu.
+</p>
+
+<dl>
+
+<dt><i>msg</i> (str)</dt>
+<dd>
+message to be processed
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__saveMessages" ID="IrcChannelWidget.__saveMessages"></a>
+<h4>IrcChannelWidget.__saveMessages</h4>
+<b>__saveMessages</b>(<i></i>)
+<p>
+        Private slot to save the contents of the messages display.
+</p>
+
+<a NAME="IrcChannelWidget.__sendAutoWhoCommand" ID="IrcChannelWidget.__sendAutoWhoCommand"></a>
+<h4>IrcChannelWidget.__sendAutoWhoCommand</h4>
+<b>__sendAutoWhoCommand</b>(<i></i>)
+<p>
+        Private slot to send the WHO command to update the users list.
+</p>
+
+<a NAME="IrcChannelWidget.__sendUserMessage" ID="IrcChannelWidget.__sendUserMessage"></a>
+<h4>IrcChannelWidget.__sendUserMessage</h4>
+<b>__sendUserMessage</b>(<i></i>)
+<p>
+        Private slot to send a private message to a specific user.
+</p>
+
+<a NAME="IrcChannelWidget.__sendUserNotice" ID="IrcChannelWidget.__sendUserNotice"></a>
+<h4>IrcChannelWidget.__sendUserNotice</h4>
+<b>__sendUserNotice</b>(<i></i>)
+<p>
+        Private slot to send a notice message to a specific user.
+</p>
+
+<a NAME="IrcChannelWidget.__sendUserQuery" ID="IrcChannelWidget.__sendUserQuery"></a>
+<h4>IrcChannelWidget.__sendUserQuery</h4>
+<b>__sendUserQuery</b>(<i></i>)
+<p>
+        Private slot to send a query message to a specific user.
+</p>
+
+<a NAME="IrcChannelWidget.__setEditTopicButton" ID="IrcChannelWidget.__setEditTopicButton"></a>
+<h4>IrcChannelWidget.__setEditTopicButton</h4>
+<b>__setEditTopicButton</b>(<i></i>)
+<p>
+        Private method to set the visibility of the Edit Topic button.
+</p>
+
+<a NAME="IrcChannelWidget.__setTopic" ID="IrcChannelWidget.__setTopic"></a>
+<h4>IrcChannelWidget.__setTopic</h4>
+<b>__setTopic</b>(<i>match</i>)
+<p>
+        Private method to handle a topic change of the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__setUserPrivilege" ID="IrcChannelWidget.__setUserPrivilege"></a>
+<h4>IrcChannelWidget.__setUserPrivilege</h4>
+<b>__setUserPrivilege</b>(<i>match</i>)
+<p>
+        Private method to handle a change of user privileges for the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__topicCreated" ID="IrcChannelWidget.__topicCreated"></a>
+<h4>IrcChannelWidget.__topicCreated</h4>
+<b>__topicCreated</b>(<i>match</i>)
+<p>
+        Private method to handle a topic created message.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__updateChannelModes" ID="IrcChannelWidget.__updateChannelModes"></a>
+<h4>IrcChannelWidget.__updateChannelModes</h4>
+<b>__updateChannelModes</b>(<i>match</i>)
+<p>
+        Private method to handle a message reporting the channel modes.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userAway" ID="IrcChannelWidget.__userAway"></a>
+<h4>IrcChannelWidget.__userAway</h4>
+<b>__userAway</b>(<i>match</i>)
+<p>
+        Private method to handle a topic change of the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userJoin" ID="IrcChannelWidget.__userJoin"></a>
+<h4>IrcChannelWidget.__userJoin</h4>
+<b>__userJoin</b>(<i>match</i>)
+<p>
+        Private method to handle a user joining the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userList" ID="IrcChannelWidget.__userList"></a>
+<h4>IrcChannelWidget.__userList</h4>
+<b>__userList</b>(<i>match</i>)
+<p>
+        Private method to handle the receipt of a list of users of the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userNickChange" ID="IrcChannelWidget.__userNickChange"></a>
+<h4>IrcChannelWidget.__userNickChange</h4>
+<b>__userNickChange</b>(<i>match</i>)
+<p>
+        Private method to handle a nickname change of a user.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userPart" ID="IrcChannelWidget.__userPart"></a>
+<h4>IrcChannelWidget.__userPart</h4>
+<b>__userPart</b>(<i>match</i>)
+<p>
+        Private method to handle a user leaving the channel.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__userQuit" ID="IrcChannelWidget.__userQuit"></a>
+<h4>IrcChannelWidget.__userQuit</h4>
+<b>__userQuit</b>(<i>match</i>)
+<p>
+        Private method to handle a user logging off the server.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoEnd" ID="IrcChannelWidget.__whoEnd"></a>
+<h4>IrcChannelWidget.__whoEnd</h4>
+<b>__whoEnd</b>(<i>match</i>)
+<p>
+        Private method to handle the end of the WHO list.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoEntry" ID="IrcChannelWidget.__whoEntry"></a>
+<h4>IrcChannelWidget.__whoEntry</h4>
+<b>__whoEntry</b>(<i>match</i>)
+<p>
+        Private method to handle a WHO entry returned by the server as
+        requested manually.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIs" ID="IrcChannelWidget.__whoIs"></a>
+<h4>IrcChannelWidget.__whoIs</h4>
+<b>__whoIs</b>(<i></i>)
+<p>
+        Private slot to get information about the selected user.
+</p>
+
+<a NAME="IrcChannelWidget.__whoIsAccount" ID="IrcChannelWidget.__whoIsAccount"></a>
+<h4>IrcChannelWidget.__whoIsAccount</h4>
+<b>__whoIsAccount</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS account reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsActually" ID="IrcChannelWidget.__whoIsActually"></a>
+<h4>IrcChannelWidget.__whoIsActually</h4>
+<b>__whoIsActually</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS actually reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsChannels" ID="IrcChannelWidget.__whoIsChannels"></a>
+<h4>IrcChannelWidget.__whoIsChannels</h4>
+<b>__whoIsChannels</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS channels reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsConnection" ID="IrcChannelWidget.__whoIsConnection"></a>
+<h4>IrcChannelWidget.__whoIsConnection</h4>
+<b>__whoIsConnection</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS connection reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsEnd" ID="IrcChannelWidget.__whoIsEnd"></a>
+<h4>IrcChannelWidget.__whoIsEnd</h4>
+<b>__whoIsEnd</b>(<i>match</i>)
+<p>
+        Private method to handle the end of WHOIS reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsHelper" ID="IrcChannelWidget.__whoIsHelper"></a>
+<h4>IrcChannelWidget.__whoIsHelper</h4>
+<b>__whoIsHelper</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS helper reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsIdentify" ID="IrcChannelWidget.__whoIsIdentify"></a>
+<h4>IrcChannelWidget.__whoIsIdentify</h4>
+<b>__whoIsIdentify</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS identify and identified replies.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsIdle" ID="IrcChannelWidget.__whoIsIdle"></a>
+<h4>IrcChannelWidget.__whoIsIdle</h4>
+<b>__whoIsIdle</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS idle reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsOperator" ID="IrcChannelWidget.__whoIsOperator"></a>
+<h4>IrcChannelWidget.__whoIsOperator</h4>
+<b>__whoIsOperator</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS operator reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsSecure" ID="IrcChannelWidget.__whoIsSecure"></a>
+<h4>IrcChannelWidget.__whoIsSecure</h4>
+<b>__whoIsSecure</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS secure reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsServer" ID="IrcChannelWidget.__whoIsServer"></a>
+<h4>IrcChannelWidget.__whoIsServer</h4>
+<b>__whoIsServer</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS server reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.__whoIsUser" ID="IrcChannelWidget.__whoIsUser"></a>
+<h4>IrcChannelWidget.__whoIsUser</h4>
+<b>__whoIsUser</b>(<i>match</i>)
+<p>
+        Private method to handle the WHOIS user reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+match object that matched the pattern
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating whether the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.addMessage" ID="IrcChannelWidget.addMessage"></a>
+<h4>IrcChannelWidget.addMessage</h4>
+<b>addMessage</b>(<i>sender, msg</i>)
+<p>
+        Public method to add a message from external.
+</p>
+
+<dl>
+
+<dt><i>sender</i> (str)</dt>
+<dd>
+nick name of the sender
+</dd>
+<dt><i>msg</i> (str)</dt>
+<dd>
+message received from sender
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.addUsers" ID="IrcChannelWidget.addUsers"></a>
+<h4>IrcChannelWidget.addUsers</h4>
+<b>addUsers</b>(<i>users</i>)
+<p>
+        Public method to add users to the channel.
+</p>
+
+<dl>
+
+<dt><i>users</i> (list of str)</dt>
+<dd>
+list of user names to add
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.getUsersCount" ID="IrcChannelWidget.getUsersCount"></a>
+<h4>IrcChannelWidget.getUsersCount</h4>
+<b>getUsersCount</b>(<i></i>)
+<p>
+        Public method to get the users count of the channel.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+users count of the channel
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.handleMessage" ID="IrcChannelWidget.handleMessage"></a>
+<h4>IrcChannelWidget.handleMessage</h4>
+<b>handleMessage</b>(<i>line</i>)
+<p>
+        Public method to handle the message sent by the server.
+</p>
+
+<dl>
+
+<dt><i>line</i> (str)</dt>
+<dd>
+server message
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.hideEvent" ID="IrcChannelWidget.hideEvent"></a>
+<h4>IrcChannelWidget.hideEvent</h4>
+<b>hideEvent</b>(<i>_evt</i>)
+<p>
+        Protected method handling hide events.
+</p>
+
+<dl>
+
+<dt><i>_evt</i> (QHideEvent)</dt>
+<dd>
+reference to the hide event (unused)
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.initAutoWho" ID="IrcChannelWidget.initAutoWho"></a>
+<h4>IrcChannelWidget.initAutoWho</h4>
+<b>initAutoWho</b>(<i></i>)
+<p>
+        Public method to initialize the Auto Who system.
+</p>
+
+<a NAME="IrcChannelWidget.leaveChannel" ID="IrcChannelWidget.leaveChannel"></a>
+<h4>IrcChannelWidget.leaveChannel</h4>
+<b>leaveChannel</b>(<i></i>)
+<p>
+        Public slot to leave the channel.
+</p>
+
+<a NAME="IrcChannelWidget.name" ID="IrcChannelWidget.name"></a>
+<h4>IrcChannelWidget.name</h4>
+<b>name</b>(<i></i>)
+<p>
+        Public method to get the name of the channel.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+name of the channel
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.on_editTopicButton_clicked" ID="IrcChannelWidget.on_editTopicButton_clicked"></a>
+<h4>IrcChannelWidget.on_editTopicButton_clicked</h4>
+<b>on_editTopicButton_clicked</b>(<i></i>)
+<p>
+        Private slot to change the topic of the channel.
+</p>
+
+<a NAME="IrcChannelWidget.on_messageEdit_returnPressed" ID="IrcChannelWidget.on_messageEdit_returnPressed"></a>
+<h4>IrcChannelWidget.on_messageEdit_returnPressed</h4>
+<b>on_messageEdit_returnPressed</b>(<i></i>)
+<p>
+        Private slot to send a message to the channel.
+</p>
+
+<a NAME="IrcChannelWidget.on_messages_anchorClicked" ID="IrcChannelWidget.on_messages_anchorClicked"></a>
+<h4>IrcChannelWidget.on_messages_anchorClicked</h4>
+<b>on_messages_anchorClicked</b>(<i>url</i>)
+<p>
+        Private slot to open links in the default browser.
+</p>
+
+<dl>
+
+<dt><i>url</i> (QUrl)</dt>
+<dd>
+URL to be opened
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.on_messages_copyAvailable" ID="IrcChannelWidget.on_messages_copyAvailable"></a>
+<h4>IrcChannelWidget.on_messages_copyAvailable</h4>
+<b>on_messages_copyAvailable</b>(<i>yes</i>)
+<p>
+        Private slot to react to text selection/deselection of the messages
+        edit.
+</p>
+
+<dl>
+
+<dt><i>yes</i> (bool)</dt>
+<dd>
+flag signaling the availability of selected text
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.on_messages_customContextMenuRequested" ID="IrcChannelWidget.on_messages_customContextMenuRequested"></a>
+<h4>IrcChannelWidget.on_messages_customContextMenuRequested</h4>
+<b>on_messages_customContextMenuRequested</b>(<i>pos</i>)
+<p>
+        Private slot to show the context menu of the messages pane.
+</p>
+
+<dl>
+
+<dt><i>pos</i> (QPoint)</dt>
+<dd>
+the position of the mouse pointer
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.on_usersList_customContextMenuRequested" ID="IrcChannelWidget.on_usersList_customContextMenuRequested"></a>
+<h4>IrcChannelWidget.on_usersList_customContextMenuRequested</h4>
+<b>on_usersList_customContextMenuRequested</b>(<i>pos</i>)
+<p>
+        Private slot to show the context menu of the users list.
+</p>
+
+<dl>
+
+<dt><i>pos</i> (QPoint)</dt>
+<dd>
+the position of the mouse pointer
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.partMessage" ID="IrcChannelWidget.partMessage"></a>
+<h4>IrcChannelWidget.partMessage</h4>
+<b>partMessage</b>(<i></i>)
+<p>
+        Public method to get the part message.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+part message
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.requestLeave" ID="IrcChannelWidget.requestLeave"></a>
+<h4>IrcChannelWidget.requestLeave</h4>
+<b>requestLeave</b>(<i></i>)
+<p>
+        Public method to leave the channel.
+</p>
+
+<a NAME="IrcChannelWidget.setMarkerLine" ID="IrcChannelWidget.setMarkerLine"></a>
+<h4>IrcChannelWidget.setMarkerLine</h4>
+<b>setMarkerLine</b>(<i></i>)
+<p>
+        Public method to draw a line to mark the current position.
+</p>
+
+<a NAME="IrcChannelWidget.setName" ID="IrcChannelWidget.setName"></a>
+<h4>IrcChannelWidget.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set the name of the channel.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+of the channel
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.setPartMessage" ID="IrcChannelWidget.setPartMessage"></a>
+<h4>IrcChannelWidget.setPartMessage</h4>
+<b>setPartMessage</b>(<i>message</i>)
+<p>
+        Public method to set the part message.
+</p>
+
+<dl>
+
+<dt><i>message</i> (str)</dt>
+<dd>
+message to be used for PART messages
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.setPrivate" ID="IrcChannelWidget.setPrivate"></a>
+<h4>IrcChannelWidget.setPrivate</h4>
+<b>setPrivate</b>(<i>private, partner=""</i>)
+<p>
+        Public method to set the private chat mode.
+</p>
+
+<dl>
+
+<dt><i>private</i> (bool)</dt>
+<dd>
+flag indicating private chat mode
+</dd>
+<dt><i>partner</i> (str)</dt>
+<dd>
+name of the partner user
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.setPrivateInfo" ID="IrcChannelWidget.setPrivateInfo"></a>
+<h4>IrcChannelWidget.setPrivateInfo</h4>
+<b>setPrivateInfo</b>(<i>infoText</i>)
+<p>
+        Public method to set some info text for private chat mode.
+</p>
+
+<dl>
+
+<dt><i>infoText</i> (str)</dt>
+<dd>
+info text to be shown
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.setUserName" ID="IrcChannelWidget.setUserName"></a>
+<h4>IrcChannelWidget.setUserName</h4>
+<b>setUserName</b>(<i>name</i>)
+<p>
+        Public method to set the user name for the channel.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+user name for the channel
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.setUserPrivilegePrefix" ID="IrcChannelWidget.setUserPrivilegePrefix"></a>
+<h4>IrcChannelWidget.setUserPrivilegePrefix</h4>
+<b>setUserPrivilegePrefix</b>(<i>prefixes</i>)
+<p>
+        Public method to set the user privilege to prefix mapping.
+</p>
+
+<dl>
+
+<dt><i>prefixes</i> (dict)</dt>
+<dd>
+dictionary with privilege as key and prefix as value
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.showEvent" ID="IrcChannelWidget.showEvent"></a>
+<h4>IrcChannelWidget.showEvent</h4>
+<b>showEvent</b>(<i>_evt</i>)
+<p>
+        Protected method handling show events.
+</p>
+
+<dl>
+
+<dt><i>_evt</i> (QShowEvent)</dt>
+<dd>
+reference to the show event (unused)
+</dd>
+</dl>
+<a NAME="IrcChannelWidget.unsetMarkerLine" ID="IrcChannelWidget.unsetMarkerLine"></a>
+<h4>IrcChannelWidget.unsetMarkerLine</h4>
+<b>unsetMarkerLine</b>(<i></i>)
+<p>
+        Public method to remove the marker line.
+</p>
+
+<a NAME="IrcChannelWidget.userName" ID="IrcChannelWidget.userName"></a>
+<h4>IrcChannelWidget.userName</h4>
+<b>userName</b>(<i></i>)
+<p>
+        Public method to get the nick name of the user.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+nick name of the user
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcUserItem" ID="IrcUserItem"></a>
+<h2>IrcUserItem</h2>
+<p>
+    Class implementing a list widget item containing an IRC channel user.
+</p>
+
+<h3>Derived from</h3>
+QListWidgetItem
+<h3>Class Attributes</h3>
+<table>
+<tr><td>Admin</td></tr>
+<tr><td>Away</td></tr>
+<tr><td>Halfop</td></tr>
+<tr><td>Normal</td></tr>
+<tr><td>Operator</td></tr>
+<tr><td>Owner</td></tr>
+<tr><td>PrivilegeMapping</td></tr>
+<tr><td>Voice</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcUserItem.__init__">IrcUserItem</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.__awayIcon">__awayIcon</a></td>
+<td>Private method to convert an icon to an away icon.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.__setIcon">__setIcon</a></td>
+<td>Private method to set the icon dependent on user privileges.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.__setText">__setText</a></td>
+<td>Private method to set the user item text.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.canChangeTopic">canChangeTopic</a></td>
+<td>Public method to check, if the user is allowed to change the topic.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.changePrivilege">changePrivilege</a></td>
+<td>Public method to set or unset a user privilege.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.clearPrivileges">clearPrivileges</a></td>
+<td>Public method to clear the user privileges.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.isIgnored">isIgnored</a></td>
+<td>Public method to check, if this user is ignored.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.name">name</a></td>
+<td>Public method to get the user name.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.parseWhoFlags">parseWhoFlags</a></td>
+<td>Public method to parse the user flags reported by a WHO command.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.setIgnored">setIgnored</a></td>
+<td>Public method to set the user status to ignored.</td>
+</tr>
+<tr>
+<td><a href="#IrcUserItem.setName">setName</a></td>
+<td>Public method to set a new nick name.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcUserItem.__init__" ID="IrcUserItem.__init__"></a>
+<h4>IrcUserItem (Constructor)</h4>
+<b>IrcUserItem</b>(<i>name, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+string with user name and privilege prefix
+</dd>
+<dt><i>parent</i> (QListWidget or QListWidgetItem)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcUserItem.__awayIcon" ID="IrcUserItem.__awayIcon"></a>
+<h4>IrcUserItem.__awayIcon</h4>
+<b>__awayIcon</b>(<i>icon</i>)
+<p>
+        Private method to convert an icon to an away icon.
+</p>
+
+<dl>
+
+<dt><i>icon</i> (QIcon)</dt>
+<dd>
+icon to be converted
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+away icon
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QIcon
+</dd>
+</dl>
+<a NAME="IrcUserItem.__setIcon" ID="IrcUserItem.__setIcon"></a>
+<h4>IrcUserItem.__setIcon</h4>
+<b>__setIcon</b>(<i></i>)
+<p>
+        Private method to set the icon dependent on user privileges.
+</p>
+
+<a NAME="IrcUserItem.__setText" ID="IrcUserItem.__setText"></a>
+<h4>IrcUserItem.__setText</h4>
+<b>__setText</b>(<i></i>)
+<p>
+        Private method to set the user item text.
+</p>
+
+<a NAME="IrcUserItem.canChangeTopic" ID="IrcUserItem.canChangeTopic"></a>
+<h4>IrcUserItem.canChangeTopic</h4>
+<b>canChangeTopic</b>(<i></i>)
+<p>
+        Public method to check, if the user is allowed to change the topic.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating that the topic can be changed
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcUserItem.changePrivilege" ID="IrcUserItem.changePrivilege"></a>
+<h4>IrcUserItem.changePrivilege</h4>
+<b>changePrivilege</b>(<i>privilege</i>)
+<p>
+        Public method to set or unset a user privilege.
+</p>
+
+<dl>
+
+<dt><i>privilege</i> (str)</dt>
+<dd>
+privilege to set or unset
+</dd>
+</dl>
+<a NAME="IrcUserItem.clearPrivileges" ID="IrcUserItem.clearPrivileges"></a>
+<h4>IrcUserItem.clearPrivileges</h4>
+<b>clearPrivileges</b>(<i></i>)
+<p>
+        Public method to clear the user privileges.
+</p>
+
+<a NAME="IrcUserItem.isIgnored" ID="IrcUserItem.isIgnored"></a>
+<h4>IrcUserItem.isIgnored</h4>
+<b>isIgnored</b>(<i></i>)
+<p>
+        Public method to check, if this user is ignored.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating the ignored status
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcUserItem.name" ID="IrcUserItem.name"></a>
+<h4>IrcUserItem.name</h4>
+<b>name</b>(<i></i>)
+<p>
+        Public method to get the user name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+user name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcUserItem.parseWhoFlags" ID="IrcUserItem.parseWhoFlags"></a>
+<h4>IrcUserItem.parseWhoFlags</h4>
+<b>parseWhoFlags</b>(<i>flags</i>)
+<p>
+        Public method to parse the user flags reported by a WHO command.
+</p>
+
+<dl>
+
+<dt><i>flags</i> (str)</dt>
+<dd>
+user flags as reported by WHO
+</dd>
+</dl>
+<a NAME="IrcUserItem.setIgnored" ID="IrcUserItem.setIgnored"></a>
+<h4>IrcUserItem.setIgnored</h4>
+<b>setIgnored</b>(<i>ignored</i>)
+<p>
+        Public method to set the user status to ignored.
+</p>
+
+<dl>
+
+<dt><i>ignored</i> (bool)</dt>
+<dd>
+flag indicating the new ignored status
+</dd>
+</dl>
+<a NAME="IrcUserItem.setName" ID="IrcUserItem.setName"></a>
+<h4>IrcUserItem.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set a new nick name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+new nick name for the user
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcIdentitiesEditDialog.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,357 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcIdentitiesEditDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcIdentitiesEditDialog</h1>
+<p>
+Module implementing the identities management dialog.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog">IrcIdentitiesEditDialog</a></td>
+<td>Class implementing the identities management dialog.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcIdentitiesEditDialog" ID="IrcIdentitiesEditDialog"></a>
+<h2>IrcIdentitiesEditDialog</h2>
+<p>
+    Class implementing the identities management dialog.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_IrcIdentitiesEditDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__init__">IrcIdentitiesEditDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__checkCurrentIdentity">__checkCurrentIdentity</a></td>
+<td>Private method to check the data for the current identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__refreshCurrentIdentity">__refreshCurrentIdentity</a></td>
+<td>Private method to read back the data for the current identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__updateIdentitiesButtons">__updateIdentitiesButtons</a></td>
+<td>Private slot to update the status of the identity related buttons.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__updateNicknameButtons">__updateNicknameButtons</a></td>
+<td>Private slot to update the nick name buttons except the up and down buttons.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.__updateNicknameUpDownButtons">__updateNicknameUpDownButtons</a></td>
+<td>Private method to set the enabled state of the nick name up and down buttons.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.accept">accept</a></td>
+<td>Public slot handling the acceptance of the dialog.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.eventFilter">eventFilter</a></td>
+<td>Public method to handle events for other objects.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_addButton_clicked">on_addButton_clicked</a></td>
+<td>Private slot to add a new idntity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_copyButton_clicked">on_copyButton_clicked</a></td>
+<td>Private slot to copy the selected identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_deleteButton_clicked">on_deleteButton_clicked</a></td>
+<td>Private slot to rename the selected identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_identitiesCombo_currentIndexChanged">on_identitiesCombo_currentIndexChanged</a></td>
+<td>Private slot to handle the selection of an identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknameAddButton_clicked">on_nicknameAddButton_clicked</a></td>
+<td>Private slot to add a new nickname.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknameDeleteButton_clicked">on_nicknameDeleteButton_clicked</a></td>
+<td>Private slot to delete a nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknameDownButton_clicked">on_nicknameDownButton_clicked</a></td>
+<td>Private slot to move the selected entry down one row.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknameEdit_textEdited">on_nicknameEdit_textEdited</a></td>
+<td>Private slot handling a change of the nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknameUpButton_clicked">on_nicknameUpButton_clicked</a></td>
+<td>Private slot to move the selected entry up one row.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_nicknamesList_itemSelectionChanged">on_nicknamesList_itemSelectionChanged</a></td>
+<td>Private slot handling the selection of a nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_renameButton_clicked">on_renameButton_clicked</a></td>
+<td>Private slot to rename the selected identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentitiesEditDialog.on_showPasswordButton_clicked">on_showPasswordButton_clicked</a></td>
+<td>Private slot to show or hide the password.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcIdentitiesEditDialog.__init__" ID="IrcIdentitiesEditDialog.__init__"></a>
+<h4>IrcIdentitiesEditDialog (Constructor)</h4>
+<b>IrcIdentitiesEditDialog</b>(<i>manager, identityName, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>manager</i> (IrcNetworkManager)</dt>
+<dd>
+reference to the IRC network manager object
+</dd>
+<dt><i>identityName</i> (str)</dt>
+<dd>
+name of the identity to be selected
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcIdentitiesEditDialog.__checkCurrentIdentity" ID="IrcIdentitiesEditDialog.__checkCurrentIdentity"></a>
+<h4>IrcIdentitiesEditDialog.__checkCurrentIdentity</h4>
+<b>__checkCurrentIdentity</b>(<i></i>)
+<p>
+        Private method to check the data for the current identity.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a successful check
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcIdentitiesEditDialog.__refreshCurrentIdentity" ID="IrcIdentitiesEditDialog.__refreshCurrentIdentity"></a>
+<h4>IrcIdentitiesEditDialog.__refreshCurrentIdentity</h4>
+<b>__refreshCurrentIdentity</b>(<i></i>)
+<p>
+        Private method to read back the data for the current identity.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.__updateIdentitiesButtons" ID="IrcIdentitiesEditDialog.__updateIdentitiesButtons"></a>
+<h4>IrcIdentitiesEditDialog.__updateIdentitiesButtons</h4>
+<b>__updateIdentitiesButtons</b>(<i></i>)
+<p>
+        Private slot to update the status of the identity related buttons.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.__updateNicknameButtons" ID="IrcIdentitiesEditDialog.__updateNicknameButtons"></a>
+<h4>IrcIdentitiesEditDialog.__updateNicknameButtons</h4>
+<b>__updateNicknameButtons</b>(<i></i>)
+<p>
+        Private slot to update the nick name buttons except the up and
+        down buttons.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.__updateNicknameUpDownButtons" ID="IrcIdentitiesEditDialog.__updateNicknameUpDownButtons"></a>
+<h4>IrcIdentitiesEditDialog.__updateNicknameUpDownButtons</h4>
+<b>__updateNicknameUpDownButtons</b>(<i></i>)
+<p>
+        Private method to set the enabled state of the nick name up and
+        down buttons.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.accept" ID="IrcIdentitiesEditDialog.accept"></a>
+<h4>IrcIdentitiesEditDialog.accept</h4>
+<b>accept</b>(<i></i>)
+<p>
+        Public slot handling the acceptance of the dialog.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.eventFilter" ID="IrcIdentitiesEditDialog.eventFilter"></a>
+<h4>IrcIdentitiesEditDialog.eventFilter</h4>
+<b>eventFilter</b>(<i>obj, evt</i>)
+<p>
+        Public method to handle events for other objects.
+</p>
+
+<dl>
+
+<dt><i>obj</i> (QObject)</dt>
+<dd>
+reference to the object
+</dd>
+<dt><i>evt</i> (QEvent)</dt>
+<dd>
+reference to the event
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating that the event should be filtered out
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcIdentitiesEditDialog.on_addButton_clicked" ID="IrcIdentitiesEditDialog.on_addButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_addButton_clicked</h4>
+<b>on_addButton_clicked</b>(<i></i>)
+<p>
+        Private slot to add a new idntity.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_copyButton_clicked" ID="IrcIdentitiesEditDialog.on_copyButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_copyButton_clicked</h4>
+<b>on_copyButton_clicked</b>(<i></i>)
+<p>
+        Private slot to copy the selected identity.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_deleteButton_clicked" ID="IrcIdentitiesEditDialog.on_deleteButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_deleteButton_clicked</h4>
+<b>on_deleteButton_clicked</b>(<i></i>)
+<p>
+        Private slot to rename the selected identity.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_identitiesCombo_currentIndexChanged" ID="IrcIdentitiesEditDialog.on_identitiesCombo_currentIndexChanged"></a>
+<h4>IrcIdentitiesEditDialog.on_identitiesCombo_currentIndexChanged</h4>
+<b>on_identitiesCombo_currentIndexChanged</b>(<i>index</i>)
+<p>
+        Private slot to handle the selection of an identity.
+</p>
+
+<dl>
+
+<dt><i>index</i> (int)</dt>
+<dd>
+index of the selected entry
+</dd>
+</dl>
+<a NAME="IrcIdentitiesEditDialog.on_nicknameAddButton_clicked" ID="IrcIdentitiesEditDialog.on_nicknameAddButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknameAddButton_clicked</h4>
+<b>on_nicknameAddButton_clicked</b>(<i></i>)
+<p>
+        Private slot to add a new nickname.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_nicknameDeleteButton_clicked" ID="IrcIdentitiesEditDialog.on_nicknameDeleteButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknameDeleteButton_clicked</h4>
+<b>on_nicknameDeleteButton_clicked</b>(<i></i>)
+<p>
+        Private slot to delete a nick name.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_nicknameDownButton_clicked" ID="IrcIdentitiesEditDialog.on_nicknameDownButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknameDownButton_clicked</h4>
+<b>on_nicknameDownButton_clicked</b>(<i></i>)
+<p>
+        Private slot to move the selected entry down one row.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_nicknameEdit_textEdited" ID="IrcIdentitiesEditDialog.on_nicknameEdit_textEdited"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknameEdit_textEdited</h4>
+<b>on_nicknameEdit_textEdited</b>(<i>nick</i>)
+<p>
+        Private slot handling a change of the nick name.
+</p>
+
+<dl>
+
+<dt><i>nick</i> (str)</dt>
+<dd>
+new nick name
+</dd>
+</dl>
+<a NAME="IrcIdentitiesEditDialog.on_nicknameUpButton_clicked" ID="IrcIdentitiesEditDialog.on_nicknameUpButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknameUpButton_clicked</h4>
+<b>on_nicknameUpButton_clicked</b>(<i></i>)
+<p>
+        Private slot to move the selected entry up one row.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_nicknamesList_itemSelectionChanged" ID="IrcIdentitiesEditDialog.on_nicknamesList_itemSelectionChanged"></a>
+<h4>IrcIdentitiesEditDialog.on_nicknamesList_itemSelectionChanged</h4>
+<b>on_nicknamesList_itemSelectionChanged</b>(<i></i>)
+<p>
+        Private slot handling the selection of a nick name.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_renameButton_clicked" ID="IrcIdentitiesEditDialog.on_renameButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_renameButton_clicked</h4>
+<b>on_renameButton_clicked</b>(<i></i>)
+<p>
+        Private slot to rename the selected identity.
+</p>
+
+<a NAME="IrcIdentitiesEditDialog.on_showPasswordButton_clicked" ID="IrcIdentitiesEditDialog.on_showPasswordButton_clicked"></a>
+<h4>IrcIdentitiesEditDialog.on_showPasswordButton_clicked</h4>
+<b>on_showPasswordButton_clicked</b>(<i>checked</i>)
+<p>
+        Private slot to show or hide the password.
+</p>
+
+<dl>
+
+<dt><i>checked</i> (bool)</dt>
+<dd>
+state of the button
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcMessageEdit.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,176 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcMessageEdit</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcMessageEdit</h1>
+<p>
+Module implementing a specialized line edit for entering IRC messages.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcMessageEdit">IrcMessageEdit</a></td>
+<td>Class implementing a specialized line edit for entering IRC messages.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcMessageEdit" ID="IrcMessageEdit"></a>
+<h2>IrcMessageEdit</h2>
+<p>
+    Class implementing a specialized line edit for entering IRC messages.
+</p>
+
+<h3>Derived from</h3>
+QLineEdit
+<h3>Class Attributes</h3>
+<table>
+<tr><td>MaxHistory</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcMessageEdit.__init__">IrcMessageEdit</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcMessageEdit.__addHistory">__addHistory</a></td>
+<td>Private method to add an entry to the history.</td>
+</tr>
+<tr>
+<td><a href="#IrcMessageEdit.__getHistory">__getHistory</a></td>
+<td>Private method to move in the history.</td>
+</tr>
+<tr>
+<td><a href="#IrcMessageEdit.keyPressEvent">keyPressEvent</a></td>
+<td>Protected method implementing special key handling.</td>
+</tr>
+<tr>
+<td><a href="#IrcMessageEdit.setText">setText</a></td>
+<td>Public method to set the text.</td>
+</tr>
+<tr>
+<td><a href="#IrcMessageEdit.wheelEvent">wheelEvent</a></td>
+<td>Protected slot to support wheel events.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcMessageEdit.__init__" ID="IrcMessageEdit.__init__"></a>
+<h4>IrcMessageEdit (Constructor)</h4>
+<b>IrcMessageEdit</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcMessageEdit.__addHistory" ID="IrcMessageEdit.__addHistory"></a>
+<h4>IrcMessageEdit.__addHistory</h4>
+<b>__addHistory</b>(<i>txt</i>)
+<p>
+        Private method to add an entry to the history.
+</p>
+
+<dl>
+
+<dt><i>txt</i> (str)</dt>
+<dd>
+text to be added to the history
+</dd>
+</dl>
+<a NAME="IrcMessageEdit.__getHistory" ID="IrcMessageEdit.__getHistory"></a>
+<h4>IrcMessageEdit.__getHistory</h4>
+<b>__getHistory</b>(<i>up</i>)
+<p>
+        Private method to move in the history.
+</p>
+
+<dl>
+
+<dt><i>up</i> (bool)</dt>
+<dd>
+flag indicating the direction
+</dd>
+</dl>
+<a NAME="IrcMessageEdit.keyPressEvent" ID="IrcMessageEdit.keyPressEvent"></a>
+<h4>IrcMessageEdit.keyPressEvent</h4>
+<b>keyPressEvent</b>(<i>evt</i>)
+<p>
+        Protected method implementing special key handling.
+</p>
+
+<dl>
+
+<dt><i>evt</i> (QKeyEvent)</dt>
+<dd>
+reference to the event
+</dd>
+</dl>
+<a NAME="IrcMessageEdit.setText" ID="IrcMessageEdit.setText"></a>
+<h4>IrcMessageEdit.setText</h4>
+<b>setText</b>(<i>text</i>)
+<p>
+        Public method to set the text.
+</p>
+<p>
+        Note: This reimplementation ensures, that the cursor is at the end of
+        the text.
+</p>
+
+<dl>
+
+<dt><i>text</i> (str)</dt>
+<dd>
+text to be set
+</dd>
+</dl>
+<a NAME="IrcMessageEdit.wheelEvent" ID="IrcMessageEdit.wheelEvent"></a>
+<h4>IrcMessageEdit.wheelEvent</h4>
+<b>wheelEvent</b>(<i>evt</i>)
+<p>
+        Protected slot to support wheel events.
+</p>
+
+<dl>
+
+<dt><i>evt</i> (QWheelEvent)</dt>
+<dd>
+reference to the wheel event
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkEditDialog.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,302 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkEditDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkEditDialog</h1>
+<p>
+Module implementing a dialog for editing IRC network definitions.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkEditDialog">IrcNetworkEditDialog</a></td>
+<td>Class implementing a dialog for editing IRC network definitions.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcNetworkEditDialog" ID="IrcNetworkEditDialog"></a>
+<h2>IrcNetworkEditDialog</h2>
+<p>
+    Class implementing a dialog for editing IRC network definitions.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_IrcNetworkEditDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkEditDialog.__init__">IrcNetworkEditDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.__editChannel">__editChannel</a></td>
+<td>Private method to edit a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.__refreshIdentityCombo">__refreshIdentityCombo</a></td>
+<td>Private method to refresh the identity combo.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.__updateOkButton">__updateOkButton</a></td>
+<td>Private method to update the OK button state.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.getNetwork">getNetwork</a></td>
+<td>Public method to get the network object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_addChannelButton_clicked">on_addChannelButton_clicked</a></td>
+<td>Private slot to add a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_channelList_itemActivated">on_channelList_itemActivated</a></td>
+<td>Private slot to handle the activation of a channel entry.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_channelList_itemSelectionChanged">on_channelList_itemSelectionChanged</a></td>
+<td>Private slot to handle changes of the selection of channels.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_deleteChannelButton_clicked">on_deleteChannelButton_clicked</a></td>
+<td>Private slot to delete the selected channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_editChannelButton_clicked">on_editChannelButton_clicked</a></td>
+<td>Private slot to edit the selected channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_editIdentitiesButton_clicked">on_editIdentitiesButton_clicked</a></td>
+<td>Private slot to edit the identities.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_editServerButton_clicked">on_editServerButton_clicked</a></td>
+<td>Private slot to edit the server configuration.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_identityCombo_currentTextChanged">on_identityCombo_currentTextChanged</a></td>
+<td>Private slot to handle the selection of an identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_networkEdit_textChanged">on_networkEdit_textChanged</a></td>
+<td>Private slot to handle changes of the network name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkEditDialog.on_serverEdit_textChanged">on_serverEdit_textChanged</a></td>
+<td>Private slot to handle changes of the server name.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcNetworkEditDialog.__init__" ID="IrcNetworkEditDialog.__init__"></a>
+<h4>IrcNetworkEditDialog (Constructor)</h4>
+<b>IrcNetworkEditDialog</b>(<i>manager, networkName, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>manager</i> (IrcNetworkManager)</dt>
+<dd>
+reference to the IRC network manager object
+</dd>
+<dt><i>networkName</i> (str)</dt>
+<dd>
+name of the network to work on
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.__editChannel" ID="IrcNetworkEditDialog.__editChannel"></a>
+<h4>IrcNetworkEditDialog.__editChannel</h4>
+<b>__editChannel</b>(<i>itm</i>)
+<p>
+        Private method to edit a channel.
+</p>
+
+<dl>
+
+<dt><i>itm</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the item to be edited
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.__refreshIdentityCombo" ID="IrcNetworkEditDialog.__refreshIdentityCombo"></a>
+<h4>IrcNetworkEditDialog.__refreshIdentityCombo</h4>
+<b>__refreshIdentityCombo</b>(<i>currentIdentity</i>)
+<p>
+        Private method to refresh the identity combo.
+</p>
+
+<dl>
+
+<dt><i>currentIdentity</i> (str)</dt>
+<dd>
+name of the identity to select
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.__updateOkButton" ID="IrcNetworkEditDialog.__updateOkButton"></a>
+<h4>IrcNetworkEditDialog.__updateOkButton</h4>
+<b>__updateOkButton</b>(<i></i>)
+<p>
+        Private method to update the OK button state.
+</p>
+
+<a NAME="IrcNetworkEditDialog.getNetwork" ID="IrcNetworkEditDialog.getNetwork"></a>
+<h4>IrcNetworkEditDialog.getNetwork</h4>
+<b>getNetwork</b>(<i></i>)
+<p>
+        Public method to get the network object.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+edited network object
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcNetwork
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.on_addChannelButton_clicked" ID="IrcNetworkEditDialog.on_addChannelButton_clicked"></a>
+<h4>IrcNetworkEditDialog.on_addChannelButton_clicked</h4>
+<b>on_addChannelButton_clicked</b>(<i></i>)
+<p>
+        Private slot to add a channel.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_channelList_itemActivated" ID="IrcNetworkEditDialog.on_channelList_itemActivated"></a>
+<h4>IrcNetworkEditDialog.on_channelList_itemActivated</h4>
+<b>on_channelList_itemActivated</b>(<i>item, _column</i>)
+<p>
+        Private slot to handle the activation of a channel entry.
+</p>
+
+<dl>
+
+<dt><i>item</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the activated item
+</dd>
+<dt><i>_column</i> (int)</dt>
+<dd>
+column the activation occurred in (unused)
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.on_channelList_itemSelectionChanged" ID="IrcNetworkEditDialog.on_channelList_itemSelectionChanged"></a>
+<h4>IrcNetworkEditDialog.on_channelList_itemSelectionChanged</h4>
+<b>on_channelList_itemSelectionChanged</b>(<i></i>)
+<p>
+        Private slot to handle changes of the selection of channels.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_deleteChannelButton_clicked" ID="IrcNetworkEditDialog.on_deleteChannelButton_clicked"></a>
+<h4>IrcNetworkEditDialog.on_deleteChannelButton_clicked</h4>
+<b>on_deleteChannelButton_clicked</b>(<i></i>)
+<p>
+        Private slot to delete the selected channel.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_editChannelButton_clicked" ID="IrcNetworkEditDialog.on_editChannelButton_clicked"></a>
+<h4>IrcNetworkEditDialog.on_editChannelButton_clicked</h4>
+<b>on_editChannelButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit the selected channel.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_editIdentitiesButton_clicked" ID="IrcNetworkEditDialog.on_editIdentitiesButton_clicked"></a>
+<h4>IrcNetworkEditDialog.on_editIdentitiesButton_clicked</h4>
+<b>on_editIdentitiesButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit the identities.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_editServerButton_clicked" ID="IrcNetworkEditDialog.on_editServerButton_clicked"></a>
+<h4>IrcNetworkEditDialog.on_editServerButton_clicked</h4>
+<b>on_editServerButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit the server configuration.
+</p>
+
+<a NAME="IrcNetworkEditDialog.on_identityCombo_currentTextChanged" ID="IrcNetworkEditDialog.on_identityCombo_currentTextChanged"></a>
+<h4>IrcNetworkEditDialog.on_identityCombo_currentTextChanged</h4>
+<b>on_identityCombo_currentTextChanged</b>(<i>identity</i>)
+<p>
+        Private slot to handle the selection of an identity.
+</p>
+
+<dl>
+
+<dt><i>identity</i> (str)</dt>
+<dd>
+selected identity
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.on_networkEdit_textChanged" ID="IrcNetworkEditDialog.on_networkEdit_textChanged"></a>
+<h4>IrcNetworkEditDialog.on_networkEdit_textChanged</h4>
+<b>on_networkEdit_textChanged</b>(<i>_txt</i>)
+<p>
+        Private slot to handle changes of the network name.
+</p>
+
+<dl>
+
+<dt><i>_txt</i> (str)</dt>
+<dd>
+text entered into the network name edit (unused)
+</dd>
+</dl>
+<a NAME="IrcNetworkEditDialog.on_serverEdit_textChanged" ID="IrcNetworkEditDialog.on_serverEdit_textChanged"></a>
+<h4>IrcNetworkEditDialog.on_serverEdit_textChanged</h4>
+<b>on_serverEdit_textChanged</b>(<i>_txt</i>)
+<p>
+        Private slot to handle changes of the server name.
+</p>
+
+<dl>
+
+<dt><i>_txt</i> (str)</dt>
+<dd>
+text entered into the server name edit (unused)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkListDialog.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,268 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkListDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkListDialog</h1>
+<p>
+Module implementing a dialog to list the configured IRC networks.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkListDialog">IrcNetworkListDialog</a></td>
+<td>Class implementing a dialog to list the configured IRC networks.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcNetworkListDialog" ID="IrcNetworkListDialog"></a>
+<h2>IrcNetworkListDialog</h2>
+<p>
+    Class implementing a dialog to list the configured IRC networks.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_IrcNetworkListDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkListDialog.__init__">IrcNetworkListDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.__checkButtons">__checkButtons</a></td>
+<td>Private slot to set the enabled state of the buttons.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.__refreshNetworkEntry">__refreshNetworkEntry</a></td>
+<td>Private method to (re-)set the data of a network entry.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.__refreshNetworksList">__refreshNetworksList</a></td>
+<td>Private method to refresh the complete networks list.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.__resizeColumns">__resizeColumns</a></td>
+<td>Private slot to resize all columns to their contents.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.__setAutoConnectEntry">__setAutoConnectEntry</a></td>
+<td>Private method to set the auto-connect entry of a network item.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_autoConnectButton_clicked">on_autoConnectButton_clicked</a></td>
+<td>Private slot handling the auto-connect selection.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_deleteButton_clicked">on_deleteButton_clicked</a></td>
+<td>Private slot to delete the selected entry.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_editButton_clicked">on_editButton_clicked</a></td>
+<td>Private slot to edit the selected network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_editIdentitiesButton_clicked">on_editIdentitiesButton_clicked</a></td>
+<td>Private slot to edit the identities.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_networksList_itemCollapsed">on_networksList_itemCollapsed</a></td>
+<td>Private slot handling the collapse of a top level item.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_networksList_itemExpanded">on_networksList_itemExpanded</a></td>
+<td>Private slot handling the expansion of a top level item.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_networksList_itemSelectionChanged">on_networksList_itemSelectionChanged</a></td>
+<td>Private slot to handle changes of the selection of networks.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkListDialog.on_newButton_clicked">on_newButton_clicked</a></td>
+<td>Private slot to add a new network entry.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcNetworkListDialog.__init__" ID="IrcNetworkListDialog.__init__"></a>
+<h4>IrcNetworkListDialog (Constructor)</h4>
+<b>IrcNetworkListDialog</b>(<i>manager, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>manager</i> (IrcNetworkManager)</dt>
+<dd>
+reference to the IRC network manager
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.__checkButtons" ID="IrcNetworkListDialog.__checkButtons"></a>
+<h4>IrcNetworkListDialog.__checkButtons</h4>
+<b>__checkButtons</b>(<i></i>)
+<p>
+        Private slot to set the enabled state of the buttons.
+</p>
+
+<a NAME="IrcNetworkListDialog.__refreshNetworkEntry" ID="IrcNetworkListDialog.__refreshNetworkEntry"></a>
+<h4>IrcNetworkListDialog.__refreshNetworkEntry</h4>
+<b>__refreshNetworkEntry</b>(<i>itm</i>)
+<p>
+        Private method to (re-)set the data of a network entry.
+</p>
+
+<dl>
+
+<dt><i>itm</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the network entry
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.__refreshNetworksList" ID="IrcNetworkListDialog.__refreshNetworksList"></a>
+<h4>IrcNetworkListDialog.__refreshNetworksList</h4>
+<b>__refreshNetworksList</b>(<i></i>)
+<p>
+        Private method to refresh the complete networks list.
+</p>
+
+<a NAME="IrcNetworkListDialog.__resizeColumns" ID="IrcNetworkListDialog.__resizeColumns"></a>
+<h4>IrcNetworkListDialog.__resizeColumns</h4>
+<b>__resizeColumns</b>(<i></i>)
+<p>
+        Private slot to resize all columns to their contents.
+</p>
+
+<a NAME="IrcNetworkListDialog.__setAutoConnectEntry" ID="IrcNetworkListDialog.__setAutoConnectEntry"></a>
+<h4>IrcNetworkListDialog.__setAutoConnectEntry</h4>
+<b>__setAutoConnectEntry</b>(<i>itm, on</i>)
+<p>
+        Private method to set the auto-connect entry of a network item.
+</p>
+
+<dl>
+
+<dt><i>itm</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the network item
+</dd>
+<dt><i>on</i> (bool)</dt>
+<dd>
+flag indicating the auto-connect state
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.on_autoConnectButton_clicked" ID="IrcNetworkListDialog.on_autoConnectButton_clicked"></a>
+<h4>IrcNetworkListDialog.on_autoConnectButton_clicked</h4>
+<b>on_autoConnectButton_clicked</b>(<i>checked</i>)
+<p>
+        Private slot handling the auto-connect selection.
+</p>
+
+<dl>
+
+<dt><i>checked</i> (bool)</dt>
+<dd>
+flag indicating the state of the button
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.on_deleteButton_clicked" ID="IrcNetworkListDialog.on_deleteButton_clicked"></a>
+<h4>IrcNetworkListDialog.on_deleteButton_clicked</h4>
+<b>on_deleteButton_clicked</b>(<i></i>)
+<p>
+        Private slot to delete the selected entry.
+</p>
+
+<a NAME="IrcNetworkListDialog.on_editButton_clicked" ID="IrcNetworkListDialog.on_editButton_clicked"></a>
+<h4>IrcNetworkListDialog.on_editButton_clicked</h4>
+<b>on_editButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit the selected network.
+</p>
+
+<a NAME="IrcNetworkListDialog.on_editIdentitiesButton_clicked" ID="IrcNetworkListDialog.on_editIdentitiesButton_clicked"></a>
+<h4>IrcNetworkListDialog.on_editIdentitiesButton_clicked</h4>
+<b>on_editIdentitiesButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit the identities.
+</p>
+
+<a NAME="IrcNetworkListDialog.on_networksList_itemCollapsed" ID="IrcNetworkListDialog.on_networksList_itemCollapsed"></a>
+<h4>IrcNetworkListDialog.on_networksList_itemCollapsed</h4>
+<b>on_networksList_itemCollapsed</b>(<i>_item</i>)
+<p>
+        Private slot handling the collapse of a top level item.
+</p>
+
+<dl>
+
+<dt><i>_item</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the collapsed item (unused)
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.on_networksList_itemExpanded" ID="IrcNetworkListDialog.on_networksList_itemExpanded"></a>
+<h4>IrcNetworkListDialog.on_networksList_itemExpanded</h4>
+<b>on_networksList_itemExpanded</b>(<i>_item</i>)
+<p>
+        Private slot handling the expansion of a top level item.
+</p>
+
+<dl>
+
+<dt><i>_item</i> (QTreeWidgetItem)</dt>
+<dd>
+reference to the expanded item (unused)
+</dd>
+</dl>
+<a NAME="IrcNetworkListDialog.on_networksList_itemSelectionChanged" ID="IrcNetworkListDialog.on_networksList_itemSelectionChanged"></a>
+<h4>IrcNetworkListDialog.on_networksList_itemSelectionChanged</h4>
+<b>on_networksList_itemSelectionChanged</b>(<i></i>)
+<p>
+        Private slot to handle changes of the selection of networks.
+</p>
+
+<a NAME="IrcNetworkListDialog.on_newButton_clicked" ID="IrcNetworkListDialog.on_newButton_clicked"></a>
+<h4>IrcNetworkListDialog.on_newButton_clicked</h4>
+<b>on_newButton_clicked</b>(<i></i>)
+<p>
+        Private slot to add a new network entry.
+</p>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkManager.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,1872 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkManager</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkManager</h1>
+<p>
+Module implementing the IRC data structures and their manager.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcChannel">IrcChannel</a></td>
+<td>Class implementing the IRC channel object.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity">IrcIdentity</a></td>
+<td>Class implementing the IRC identity object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork">IrcNetwork</a></td>
+<td>Class implementing the IRC network object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager">IrcNetworkManager</a></td>
+<td>Class implementing the IRC identity object.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer">IrcServer</a></td>
+<td>Class implementing the IRC identity object.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcChannel" ID="IrcChannel"></a>
+<h2>IrcChannel</h2>
+<p>
+    Class implementing the IRC channel object.
+</p>
+
+<h3>Derived from</h3>
+None
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcChannel.__init__">IrcChannel</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.autoJoin">autoJoin</a></td>
+<td>Public method to check the auto join status.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.getKey">getKey</a></td>
+<td>Public method to get the channel key.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.getName">getName</a></td>
+<td>Public method to get the channel name.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.load">load</a></td>
+<td>Public method to load the network data.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.save">save</a></td>
+<td>Public method to save the channel data.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.setAutoJoin">setAutoJoin</a></td>
+<td>Public method to set the auto join status of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcChannel.setKey">setKey</a></td>
+<td>Public method to set a new channel key.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcChannel.__init__" ID="IrcChannel.__init__"></a>
+<h4>IrcChannel (Constructor)</h4>
+<b>IrcChannel</b>(<i>name</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the network
+</dd>
+</dl>
+<a NAME="IrcChannel.autoJoin" ID="IrcChannel.autoJoin"></a>
+<h4>IrcChannel.autoJoin</h4>
+<b>autoJoin</b>(<i></i>)
+<p>
+        Public method to check the auto join status.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating if the channel should be
+            joined automatically
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcChannel.getKey" ID="IrcChannel.getKey"></a>
+<h4>IrcChannel.getKey</h4>
+<b>getKey</b>(<i></i>)
+<p>
+        Public method to get the channel key.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+channel key
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcChannel.getName" ID="IrcChannel.getName"></a>
+<h4>IrcChannel.getName</h4>
+<b>getName</b>(<i></i>)
+<p>
+        Public method to get the channel name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+channel name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcChannel.load" ID="IrcChannel.load"></a>
+<h4>IrcChannel.load</h4>
+<b>load</b>(<i>settings</i>)
+<p>
+        Public method to load the network data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcChannel.save" ID="IrcChannel.save"></a>
+<h4>IrcChannel.save</h4>
+<b>save</b>(<i>settings</i>)
+<p>
+        Public method to save the channel data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcChannel.setAutoJoin" ID="IrcChannel.setAutoJoin"></a>
+<h4>IrcChannel.setAutoJoin</h4>
+<b>setAutoJoin</b>(<i>enable</i>)
+<p>
+        Public method to set the auto join status of the channel.
+</p>
+
+<dl>
+
+<dt><i>enable</i> (bool)</dt>
+<dd>
+flag indicating if the channel should be
+            joined automatically
+</dd>
+</dl>
+<a NAME="IrcChannel.setKey" ID="IrcChannel.setKey"></a>
+<h4>IrcChannel.setKey</h4>
+<b>setKey</b>(<i>key</i>)
+<p>
+        Public method to set a new channel key.
+</p>
+
+<dl>
+
+<dt><i>key</i> (str)</dt>
+<dd>
+channel key to set
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcIdentity" ID="IrcIdentity"></a>
+<h2>IrcIdentity</h2>
+<p>
+    Class implementing the IRC identity object.
+</p>
+
+<h3>Derived from</h3>
+None
+<h3>Class Attributes</h3>
+<table>
+<tr><td>DefaultAwayMessage</td></tr>
+<tr><td>DefaultIdentityDisplay</td></tr>
+<tr><td>DefaultIdentityName</td></tr>
+<tr><td>DefaultPartMessage</td></tr>
+<tr><td>DefaultQuitMessage</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcIdentity.createDefaultIdentity">createDefaultIdentity</a></td>
+<td>Class method to create the default identity.</td>
+</tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcIdentity.__init__">IrcIdentity</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getAwayMessage">getAwayMessage</a></td>
+<td>Public method to get the AWAY message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getIdent">getIdent</a></td>
+<td>Public method to get the real identity name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getName">getName</a></td>
+<td>Public method to get the identity name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getNickNames">getNickNames</a></td>
+<td>Public method to get the nick names.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getPartMessage">getPartMessage</a></td>
+<td>Public method to get the PART message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getPassword">getPassword</a></td>
+<td>Public method to get the password.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getQuitMessage">getQuitMessage</a></td>
+<td>Public method to get the QUIT message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getRealName">getRealName</a></td>
+<td>Public method to get the real name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.getServiceName">getServiceName</a></td>
+<td>Public method to get the service name of the identity used for identification.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.load">load</a></td>
+<td>Public method to load the identity data.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.rememberAwayPosition">rememberAwayPosition</a></td>
+<td>Public method to get a flag indicating to remember the chat position upon AWAY.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.save">save</a></td>
+<td>Public method to save the identity data.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setAwayMessage">setAwayMessage</a></td>
+<td>Public method to set the AWAY message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setIdent">setIdent</a></td>
+<td>Public method to set the real identity name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setName">setName</a></td>
+<td>Public method to set the identity name.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setNickNames">setNickNames</a></td>
+<td>Public method to set the nick names of the identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setPartMessage">setPartMessage</a></td>
+<td>Public method to set the PART message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setPassword">setPassword</a></td>
+<td>Public method to set a new password.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setQuitMessage">setQuitMessage</a></td>
+<td>Public method to set the QUIT message.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setRealName">setRealName</a></td>
+<td>Public method to set the real name of the identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setRememberAwayPosition">setRememberAwayPosition</a></td>
+<td>Public method to set to remember the chat position upon AWAY.</td>
+</tr>
+<tr>
+<td><a href="#IrcIdentity.setServiceName">setServiceName</a></td>
+<td>Public method to set the service name of the identity used for identification.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcIdentity.createDefaultIdentity" ID="IrcIdentity.createDefaultIdentity"></a>
+<h4>IrcIdentity.createDefaultIdentity (class method)</h4>
+<b>createDefaultIdentity</b>(<i></i>)
+<p>
+        Class method to create the default identity.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+default identity
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcIdentity
+</dd>
+</dl>
+<a NAME="IrcIdentity.__init__" ID="IrcIdentity.__init__"></a>
+<h4>IrcIdentity (Constructor)</h4>
+<b>IrcIdentity</b>(<i>name</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the identity
+</dd>
+</dl>
+<a NAME="IrcIdentity.getAwayMessage" ID="IrcIdentity.getAwayMessage"></a>
+<h4>IrcIdentity.getAwayMessage</h4>
+<b>getAwayMessage</b>(<i></i>)
+<p>
+        Public method to get the AWAY message.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+AWAY message
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getIdent" ID="IrcIdentity.getIdent"></a>
+<h4>IrcIdentity.getIdent</h4>
+<b>getIdent</b>(<i></i>)
+<p>
+        Public method to get the real identity name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+real identity name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getName" ID="IrcIdentity.getName"></a>
+<h4>IrcIdentity.getName</h4>
+<b>getName</b>(<i></i>)
+<p>
+        Public method to get the identity name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+identity name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getNickNames" ID="IrcIdentity.getNickNames"></a>
+<h4>IrcIdentity.getNickNames</h4>
+<b>getNickNames</b>(<i></i>)
+<p>
+        Public method to get the nick names.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+nick names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getPartMessage" ID="IrcIdentity.getPartMessage"></a>
+<h4>IrcIdentity.getPartMessage</h4>
+<b>getPartMessage</b>(<i></i>)
+<p>
+        Public method to get the PART message.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+PART message
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getPassword" ID="IrcIdentity.getPassword"></a>
+<h4>IrcIdentity.getPassword</h4>
+<b>getPassword</b>(<i></i>)
+<p>
+        Public method to get the password.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+password
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getQuitMessage" ID="IrcIdentity.getQuitMessage"></a>
+<h4>IrcIdentity.getQuitMessage</h4>
+<b>getQuitMessage</b>(<i></i>)
+<p>
+        Public method to get the QUIT message.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+QUIT message
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getRealName" ID="IrcIdentity.getRealName"></a>
+<h4>IrcIdentity.getRealName</h4>
+<b>getRealName</b>(<i></i>)
+<p>
+        Public method to get the real name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+real name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.getServiceName" ID="IrcIdentity.getServiceName"></a>
+<h4>IrcIdentity.getServiceName</h4>
+<b>getServiceName</b>(<i></i>)
+<p>
+        Public method to get the service name of the identity used for
+        identification.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+service name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcIdentity.load" ID="IrcIdentity.load"></a>
+<h4>IrcIdentity.load</h4>
+<b>load</b>(<i>settings</i>)
+<p>
+        Public method to load the identity data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcIdentity.rememberAwayPosition" ID="IrcIdentity.rememberAwayPosition"></a>
+<h4>IrcIdentity.rememberAwayPosition</h4>
+<b>rememberAwayPosition</b>(<i></i>)
+<p>
+        Public method to get a flag indicating to remember the chat position
+        upon AWAY.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating to remember the chat position
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcIdentity.save" ID="IrcIdentity.save"></a>
+<h4>IrcIdentity.save</h4>
+<b>save</b>(<i>settings</i>)
+<p>
+        Public method to save the identity data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcIdentity.setAwayMessage" ID="IrcIdentity.setAwayMessage"></a>
+<h4>IrcIdentity.setAwayMessage</h4>
+<b>setAwayMessage</b>(<i>message</i>)
+<p>
+        Public method to set the AWAY message.
+</p>
+
+<dl>
+
+<dt><i>message</i> (str)</dt>
+<dd>
+AWAY message
+</dd>
+</dl>
+<a NAME="IrcIdentity.setIdent" ID="IrcIdentity.setIdent"></a>
+<h4>IrcIdentity.setIdent</h4>
+<b>setIdent</b>(<i>name</i>)
+<p>
+        Public method to set the real identity name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+real identity name
+</dd>
+</dl>
+<a NAME="IrcIdentity.setName" ID="IrcIdentity.setName"></a>
+<h4>IrcIdentity.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set the identity name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+identity name
+</dd>
+</dl>
+<a NAME="IrcIdentity.setNickNames" ID="IrcIdentity.setNickNames"></a>
+<h4>IrcIdentity.setNickNames</h4>
+<b>setNickNames</b>(<i>names</i>)
+<p>
+        Public method to set the nick names of the identity.
+</p>
+
+<dl>
+
+<dt><i>names</i> (list of str)</dt>
+<dd>
+nick names
+</dd>
+</dl>
+<a NAME="IrcIdentity.setPartMessage" ID="IrcIdentity.setPartMessage"></a>
+<h4>IrcIdentity.setPartMessage</h4>
+<b>setPartMessage</b>(<i>message</i>)
+<p>
+        Public method to set the PART message.
+</p>
+
+<dl>
+
+<dt><i>message</i> (str)</dt>
+<dd>
+PART message
+</dd>
+</dl>
+<a NAME="IrcIdentity.setPassword" ID="IrcIdentity.setPassword"></a>
+<h4>IrcIdentity.setPassword</h4>
+<b>setPassword</b>(<i>password</i>)
+<p>
+        Public method to set a new password.
+</p>
+
+<dl>
+
+<dt><i>password</i> (str)</dt>
+<dd>
+password to set
+</dd>
+</dl>
+<a NAME="IrcIdentity.setQuitMessage" ID="IrcIdentity.setQuitMessage"></a>
+<h4>IrcIdentity.setQuitMessage</h4>
+<b>setQuitMessage</b>(<i>message</i>)
+<p>
+        Public method to set the QUIT message.
+</p>
+
+<dl>
+
+<dt><i>message</i> (str)</dt>
+<dd>
+QUIT message
+</dd>
+</dl>
+<a NAME="IrcIdentity.setRealName" ID="IrcIdentity.setRealName"></a>
+<h4>IrcIdentity.setRealName</h4>
+<b>setRealName</b>(<i>name</i>)
+<p>
+        Public method to set the real name of the identity.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+real name
+</dd>
+</dl>
+<a NAME="IrcIdentity.setRememberAwayPosition" ID="IrcIdentity.setRememberAwayPosition"></a>
+<h4>IrcIdentity.setRememberAwayPosition</h4>
+<b>setRememberAwayPosition</b>(<i>remember</i>)
+<p>
+        Public method to set to remember the chat position upon AWAY.
+</p>
+
+<dl>
+
+<dt><i>remember</i> (bool)</dt>
+<dd>
+flag indicating to remember the chat position
+</dd>
+</dl>
+<a NAME="IrcIdentity.setServiceName" ID="IrcIdentity.setServiceName"></a>
+<h4>IrcIdentity.setServiceName</h4>
+<b>setServiceName</b>(<i>name</i>)
+<p>
+        Public method to set the service name of the identity used for
+        identification.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+service name
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcNetwork" ID="IrcNetwork"></a>
+<h2>IrcNetwork</h2>
+<p>
+    Class implementing the IRC network object.
+</p>
+
+<h3>Derived from</h3>
+None
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetwork.createDefaultNetwork">createDefaultNetwork</a></td>
+<td>Class method to create the default network.</td>
+</tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetwork.__init__">IrcNetwork</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.addChannel">addChannel</a></td>
+<td>Public method to add a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.autoConnect">autoConnect</a></td>
+<td>Public method to check, if the network should be connected to at start-up.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.deleteChannel">deleteChannel</a></td>
+<td>Public method to delete the given channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getChannel">getChannel</a></td>
+<td>Public method to get a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getChannelNames">getChannelNames</a></td>
+<td>Public method to get the list of channels.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getChannels">getChannels</a></td>
+<td>Public method to get the channels.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getIdentityName">getIdentityName</a></td>
+<td>Public method to get the name of the identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getName">getName</a></td>
+<td>Public method to get the network name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getServer">getServer</a></td>
+<td>Public method to get the server object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.getServerName">getServerName</a></td>
+<td>Public method to get the server name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.load">load</a></td>
+<td>Public method to load the network data.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.save">save</a></td>
+<td>Public method to save the network data.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setAutoConnect">setAutoConnect</a></td>
+<td>Public method to set the auto connect flag.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setChannel">setChannel</a></td>
+<td>Public method to set a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setChannels">setChannels</a></td>
+<td>Public method to set the list of channels.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setIdentityName">setIdentityName</a></td>
+<td>Public method to set the name of the identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setName">setName</a></td>
+<td>Public method to set the network name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetwork.setServer">setServer</a></td>
+<td>Public method to set the server.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcNetwork.createDefaultNetwork" ID="IrcNetwork.createDefaultNetwork"></a>
+<h4>IrcNetwork.createDefaultNetwork (class method)</h4>
+<b>createDefaultNetwork</b>(<i>ssl=False</i>)
+<p>
+        Class method to create the default network.
+</p>
+
+<dl>
+
+<dt><i>ssl</i> (bool)</dt>
+<dd>
+flag indicating to create a SSL network configuration
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+default network object
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcNetwork
+</dd>
+</dl>
+<a NAME="IrcNetwork.__init__" ID="IrcNetwork.__init__"></a>
+<h4>IrcNetwork (Constructor)</h4>
+<b>IrcNetwork</b>(<i>name</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the network
+</dd>
+</dl>
+<a NAME="IrcNetwork.addChannel" ID="IrcNetwork.addChannel"></a>
+<h4>IrcNetwork.addChannel</h4>
+<b>addChannel</b>(<i>channel</i>)
+<p>
+        Public method to add a channel.
+</p>
+
+<dl>
+
+<dt><i>channel</i> (IrcChannel)</dt>
+<dd>
+channel object to add
+</dd>
+</dl>
+<a NAME="IrcNetwork.autoConnect" ID="IrcNetwork.autoConnect"></a>
+<h4>IrcNetwork.autoConnect</h4>
+<b>autoConnect</b>(<i></i>)
+<p>
+        Public method to check, if the network should be connected to at
+        start-up.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating an auto connect
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcNetwork.deleteChannel" ID="IrcNetwork.deleteChannel"></a>
+<h4>IrcNetwork.deleteChannel</h4>
+<b>deleteChannel</b>(<i>channelName</i>)
+<p>
+        Public method to delete the given channel.
+</p>
+
+<dl>
+
+<dt><i>channelName</i> (str)</dt>
+<dd>
+name of the channel to be deleted
+</dd>
+</dl>
+<a NAME="IrcNetwork.getChannel" ID="IrcNetwork.getChannel"></a>
+<h4>IrcNetwork.getChannel</h4>
+<b>getChannel</b>(<i>channelName</i>)
+<p>
+        Public method to get a channel.
+</p>
+
+<dl>
+
+<dt><i>channelName</i> (str)</dt>
+<dd>
+name of the channel to retrieve
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the channel
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcChannel
+</dd>
+</dl>
+<a NAME="IrcNetwork.getChannelNames" ID="IrcNetwork.getChannelNames"></a>
+<h4>IrcNetwork.getChannelNames</h4>
+<b>getChannelNames</b>(<i></i>)
+<p>
+        Public method to get the list of channels.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+list of channel names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="IrcNetwork.getChannels" ID="IrcNetwork.getChannels"></a>
+<h4>IrcNetwork.getChannels</h4>
+<b>getChannels</b>(<i></i>)
+<p>
+        Public method to get the channels.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+list of channels for the network
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of IrcChannel
+</dd>
+</dl>
+<a NAME="IrcNetwork.getIdentityName" ID="IrcNetwork.getIdentityName"></a>
+<h4>IrcNetwork.getIdentityName</h4>
+<b>getIdentityName</b>(<i></i>)
+<p>
+        Public method to get the name of the identity.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+identity name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcNetwork.getName" ID="IrcNetwork.getName"></a>
+<h4>IrcNetwork.getName</h4>
+<b>getName</b>(<i></i>)
+<p>
+        Public method to get the network name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+network name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcNetwork.getServer" ID="IrcNetwork.getServer"></a>
+<h4>IrcNetwork.getServer</h4>
+<b>getServer</b>(<i></i>)
+<p>
+        Public method to get the server object.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the server
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcServer
+</dd>
+</dl>
+<a NAME="IrcNetwork.getServerName" ID="IrcNetwork.getServerName"></a>
+<h4>IrcNetwork.getServerName</h4>
+<b>getServerName</b>(<i></i>)
+<p>
+        Public method to get the server name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+server name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcNetwork.load" ID="IrcNetwork.load"></a>
+<h4>IrcNetwork.load</h4>
+<b>load</b>(<i>settings</i>)
+<p>
+        Public method to load the network data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcNetwork.save" ID="IrcNetwork.save"></a>
+<h4>IrcNetwork.save</h4>
+<b>save</b>(<i>settings</i>)
+<p>
+        Public method to save the network data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcNetwork.setAutoConnect" ID="IrcNetwork.setAutoConnect"></a>
+<h4>IrcNetwork.setAutoConnect</h4>
+<b>setAutoConnect</b>(<i>enable</i>)
+<p>
+        Public method to set the auto connect flag.
+</p>
+
+<dl>
+
+<dt><i>enable</i> (bool)</dt>
+<dd>
+flag indicate to connect to the network at start-up
+</dd>
+</dl>
+<a NAME="IrcNetwork.setChannel" ID="IrcNetwork.setChannel"></a>
+<h4>IrcNetwork.setChannel</h4>
+<b>setChannel</b>(<i>channel</i>)
+<p>
+        Public method to set a channel.
+</p>
+
+<dl>
+
+<dt><i>channel</i> (IrcChannel)</dt>
+<dd>
+channel object to set
+</dd>
+</dl>
+<a NAME="IrcNetwork.setChannels" ID="IrcNetwork.setChannels"></a>
+<h4>IrcNetwork.setChannels</h4>
+<b>setChannels</b>(<i>channels</i>)
+<p>
+        Public method to set the list of channels.
+</p>
+
+<dl>
+
+<dt><i>channels</i> (list of IrcChannel)</dt>
+<dd>
+list of channels for the network
+</dd>
+</dl>
+<a NAME="IrcNetwork.setIdentityName" ID="IrcNetwork.setIdentityName"></a>
+<h4>IrcNetwork.setIdentityName</h4>
+<b>setIdentityName</b>(<i>name</i>)
+<p>
+        Public method to set the name of the identity.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+identity name
+</dd>
+</dl>
+<a NAME="IrcNetwork.setName" ID="IrcNetwork.setName"></a>
+<h4>IrcNetwork.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set the network name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+network name
+</dd>
+</dl>
+<a NAME="IrcNetwork.setServer" ID="IrcNetwork.setServer"></a>
+<h4>IrcNetwork.setServer</h4>
+<b>setServer</b>(<i>server</i>)
+<p>
+        Public method to set the server.
+</p>
+
+<dl>
+
+<dt><i>server</i> (IrcServer)</dt>
+<dd>
+server object to set
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcNetworkManager" ID="IrcNetworkManager"></a>
+<h2>IrcNetworkManager</h2>
+<p>
+    Class implementing the IRC identity object.
+</p>
+
+<h3>Signals</h3>
+<dl>
+
+<dt>dataChanged()</dt>
+<dd>
+emitted after some data has changed
+</dd>
+<dt>identitiesChanged()</dt>
+<dd>
+emitted after an identity object has changed
+</dd>
+<dt>networksChanged()</dt>
+<dd>
+emitted after a network object has changed
+</dd>
+</dl>
+<h3>Derived from</h3>
+QObject
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkManager.__init__">IrcNetworkManager</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.__load">__load</a></td>
+<td>Private slot to load the IRC data.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.__loadDefaults">__loadDefaults</a></td>
+<td>Private method to load default values.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.addIdentity">addIdentity</a></td>
+<td>Public method to add a new identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.addNetwork">addNetwork</a></td>
+<td>Public method to add a network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.close">close</a></td>
+<td>Public method to close the open search engines manager.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.deleteIdentity">deleteIdentity</a></td>
+<td>Public method to delete the given identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.deleteNetwork">deleteNetwork</a></td>
+<td>Public method to delete the given network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.getIdentities">getIdentities</a></td>
+<td>Public method to get a copy of all identities.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.getIdentity">getIdentity</a></td>
+<td>Public method to get an identity object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.getIdentityNames">getIdentityNames</a></td>
+<td>Public method to get the names of all identities.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.getNetwork">getNetwork</a></td>
+<td>Public method to get a network object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.getNetworkNames">getNetworkNames</a></td>
+<td>Public method to get a list of all known network names.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.identityChanged">identityChanged</a></td>
+<td>Public method to indicate a change of an identity object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.networkChanged">networkChanged</a></td>
+<td>Public method to indicate a change of a network object.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.renameIdentity">renameIdentity</a></td>
+<td>Public method to rename an identity.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.save">save</a></td>
+<td>Public slot to save the IRC data.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.setIdentities">setIdentities</a></td>
+<td>Public method to set the identities.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkManager.setNetwork">setNetwork</a></td>
+<td>Public method to set a network.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcNetworkManager.__init__" ID="IrcNetworkManager.__init__"></a>
+<h4>IrcNetworkManager (Constructor)</h4>
+<b>IrcNetworkManager</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>parent</i> (QObject)</dt>
+<dd>
+reference to the parent object
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.__load" ID="IrcNetworkManager.__load"></a>
+<h4>IrcNetworkManager.__load</h4>
+<b>__load</b>(<i></i>)
+<p>
+        Private slot to load the IRC data.
+</p>
+
+<a NAME="IrcNetworkManager.__loadDefaults" ID="IrcNetworkManager.__loadDefaults"></a>
+<h4>IrcNetworkManager.__loadDefaults</h4>
+<b>__loadDefaults</b>(<i>identityOnly=False</i>)
+<p>
+        Private method to load default values.
+</p>
+
+<dl>
+
+<dt><i>identityOnly</i> (bool)</dt>
+<dd>
+flag indicating to just load the default
+            identity
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.addIdentity" ID="IrcNetworkManager.addIdentity"></a>
+<h4>IrcNetworkManager.addIdentity</h4>
+<b>addIdentity</b>(<i>identity</i>)
+<p>
+        Public method to add a new identity.
+</p>
+
+<dl>
+
+<dt><i>identity</i> (IrcIdentity)</dt>
+<dd>
+reference to the identity to add
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.addNetwork" ID="IrcNetworkManager.addNetwork"></a>
+<h4>IrcNetworkManager.addNetwork</h4>
+<b>addNetwork</b>(<i>network</i>)
+<p>
+        Public method to add a network.
+</p>
+
+<dl>
+
+<dt><i>network</i> (IrcNetwork)</dt>
+<dd>
+network object to add
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.close" ID="IrcNetworkManager.close"></a>
+<h4>IrcNetworkManager.close</h4>
+<b>close</b>(<i></i>)
+<p>
+        Public method to close the open search engines manager.
+</p>
+
+<a NAME="IrcNetworkManager.deleteIdentity" ID="IrcNetworkManager.deleteIdentity"></a>
+<h4>IrcNetworkManager.deleteIdentity</h4>
+<b>deleteIdentity</b>(<i>name</i>)
+<p>
+        Public method to delete the given identity.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the identity to delete
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.deleteNetwork" ID="IrcNetworkManager.deleteNetwork"></a>
+<h4>IrcNetworkManager.deleteNetwork</h4>
+<b>deleteNetwork</b>(<i>name</i>)
+<p>
+        Public method to delete the given network.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the network to delete
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.getIdentities" ID="IrcNetworkManager.getIdentities"></a>
+<h4>IrcNetworkManager.getIdentities</h4>
+<b>getIdentities</b>(<i></i>)
+<p>
+        Public method to get a copy of all identities.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary of all identities
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict of IrcIdentity
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.getIdentity" ID="IrcNetworkManager.getIdentity"></a>
+<h4>IrcNetworkManager.getIdentity</h4>
+<b>getIdentity</b>(<i>name, create=False</i>)
+<p>
+        Public method to get an identity object.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the identity to get
+</dd>
+<dt><i>create</i> (bool)</dt>
+<dd>
+flag indicating to create a new object,
+            if none exists
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the identity
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcIdentity
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.getIdentityNames" ID="IrcNetworkManager.getIdentityNames"></a>
+<h4>IrcNetworkManager.getIdentityNames</h4>
+<b>getIdentityNames</b>(<i></i>)
+<p>
+        Public method to get the names of all identities.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+names of all identities
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of string)
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.getNetwork" ID="IrcNetworkManager.getNetwork"></a>
+<h4>IrcNetworkManager.getNetwork</h4>
+<b>getNetwork</b>(<i>name</i>)
+<p>
+        Public method to get a network object.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the network
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the network object
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcNetwork
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.getNetworkNames" ID="IrcNetworkManager.getNetworkNames"></a>
+<h4>IrcNetworkManager.getNetworkNames</h4>
+<b>getNetworkNames</b>(<i></i>)
+<p>
+        Public method to get a list of all known network names.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+list of network names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.identityChanged" ID="IrcNetworkManager.identityChanged"></a>
+<h4>IrcNetworkManager.identityChanged</h4>
+<b>identityChanged</b>(<i></i>)
+<p>
+        Public method to indicate a change of an identity object.
+</p>
+
+<a NAME="IrcNetworkManager.networkChanged" ID="IrcNetworkManager.networkChanged"></a>
+<h4>IrcNetworkManager.networkChanged</h4>
+<b>networkChanged</b>(<i></i>)
+<p>
+        Public method to indicate a change of a network object.
+</p>
+
+<a NAME="IrcNetworkManager.renameIdentity" ID="IrcNetworkManager.renameIdentity"></a>
+<h4>IrcNetworkManager.renameIdentity</h4>
+<b>renameIdentity</b>(<i>oldName, newName</i>)
+<p>
+        Public method to rename an identity.
+</p>
+
+<dl>
+
+<dt><i>oldName</i> (str)</dt>
+<dd>
+old name of the identity
+</dd>
+<dt><i>newName</i> (str)</dt>
+<dd>
+new name of the identity
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.save" ID="IrcNetworkManager.save"></a>
+<h4>IrcNetworkManager.save</h4>
+<b>save</b>(<i></i>)
+<p>
+        Public slot to save the IRC data.
+</p>
+
+<a NAME="IrcNetworkManager.setIdentities" ID="IrcNetworkManager.setIdentities"></a>
+<h4>IrcNetworkManager.setIdentities</h4>
+<b>setIdentities</b>(<i>identities</i>)
+<p>
+        Public method to set the identities.
+</p>
+
+<dl>
+
+<dt><i>identities</i> (dict of IrcIdentity)</dt>
+<dd>
+dictionary of all identities
+</dd>
+</dl>
+<a NAME="IrcNetworkManager.setNetwork" ID="IrcNetworkManager.setNetwork"></a>
+<h4>IrcNetworkManager.setNetwork</h4>
+<b>setNetwork</b>(<i>network, networkName=""</i>)
+<p>
+        Public method to set a network.
+</p>
+
+<dl>
+
+<dt><i>network</i> (IrcNetwork)</dt>
+<dd>
+network object to set
+</dd>
+<dt><i>networkName</i> (str)</dt>
+<dd>
+name the network was known for
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcServer" ID="IrcServer"></a>
+<h2>IrcServer</h2>
+<p>
+    Class implementing the IRC identity object.
+</p>
+
+<h3>Derived from</h3>
+None
+<h3>Class Attributes</h3>
+<table>
+<tr><td>DefaultPort</td></tr>
+<tr><td>DefaultSslPort</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcServer.__init__">IrcServer</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.getName">getName</a></td>
+<td>Public method to get the server name.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.getPassword">getPassword</a></td>
+<td>Public method to get the password.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.getPort">getPort</a></td>
+<td>Public method to get the server port number.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.load">load</a></td>
+<td>Public method to load the server data.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.save">save</a></td>
+<td>Public method to save the server data.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.setName">setName</a></td>
+<td>Public method to set the server name.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.setPassword">setPassword</a></td>
+<td>Public method to set a new password.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.setPort">setPort</a></td>
+<td>Public method to set the server port number.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.setUseSSL">setUseSSL</a></td>
+<td>Public method to set the SSL usage.</td>
+</tr>
+<tr>
+<td><a href="#IrcServer.useSSL">useSSL</a></td>
+<td>Public method to check for SSL usage.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcServer.__init__" ID="IrcServer.__init__"></a>
+<h4>IrcServer (Constructor)</h4>
+<b>IrcServer</b>(<i>name</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the server
+</dd>
+</dl>
+<a NAME="IrcServer.getName" ID="IrcServer.getName"></a>
+<h4>IrcServer.getName</h4>
+<b>getName</b>(<i></i>)
+<p>
+        Public method to get the server name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+server name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcServer.getPassword" ID="IrcServer.getPassword"></a>
+<h4>IrcServer.getPassword</h4>
+<b>getPassword</b>(<i></i>)
+<p>
+        Public method to get the password.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+password
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcServer.getPort" ID="IrcServer.getPort"></a>
+<h4>IrcServer.getPort</h4>
+<b>getPort</b>(<i></i>)
+<p>
+        Public method to get the server port number.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+port number
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
+</dd>
+</dl>
+<a NAME="IrcServer.load" ID="IrcServer.load"></a>
+<h4>IrcServer.load</h4>
+<b>load</b>(<i>settings</i>)
+<p>
+        Public method to load the server data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcServer.save" ID="IrcServer.save"></a>
+<h4>IrcServer.save</h4>
+<b>save</b>(<i>settings</i>)
+<p>
+        Public method to save the server data.
+</p>
+
+<dl>
+
+<dt><i>settings</i> (QSettings)</dt>
+<dd>
+reference to the settings object
+</dd>
+</dl>
+<a NAME="IrcServer.setName" ID="IrcServer.setName"></a>
+<h4>IrcServer.setName</h4>
+<b>setName</b>(<i>name</i>)
+<p>
+        Public method to set the server name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+server name
+</dd>
+</dl>
+<a NAME="IrcServer.setPassword" ID="IrcServer.setPassword"></a>
+<h4>IrcServer.setPassword</h4>
+<b>setPassword</b>(<i>password</i>)
+<p>
+        Public method to set a new password.
+</p>
+
+<dl>
+
+<dt><i>password</i> (str)</dt>
+<dd>
+password to set
+</dd>
+</dl>
+<a NAME="IrcServer.setPort" ID="IrcServer.setPort"></a>
+<h4>IrcServer.setPort</h4>
+<b>setPort</b>(<i>port</i>)
+<p>
+        Public method to set the server port number.
+</p>
+
+<dl>
+
+<dt><i>port</i> (int)</dt>
+<dd>
+server port number
+</dd>
+</dl>
+<a NAME="IrcServer.setUseSSL" ID="IrcServer.setUseSSL"></a>
+<h4>IrcServer.setUseSSL</h4>
+<b>setUseSSL</b>(<i>on</i>)
+<p>
+        Public method to set the SSL usage.
+</p>
+
+<dl>
+
+<dt><i>on</i> (bool)</dt>
+<dd>
+flag indicating SSL usage
+</dd>
+</dl>
+<a NAME="IrcServer.useSSL" ID="IrcServer.useSSL"></a>
+<h4>IrcServer.useSSL</h4>
+<b>useSSL</b>(<i></i>)
+<p>
+        Public method to check for SSL usage.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating SSL usage
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcNetworkWidget.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,614 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkWidget</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcNetworkWidget</h1>
+<p>
+Module implementing the network part of the IRC widget.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkWidget">IrcNetworkWidget</a></td>
+<td>Class implementing the network part of the IRC widget.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcNetworkWidget" ID="IrcNetworkWidget"></a>
+<h2>IrcNetworkWidget</h2>
+<p>
+    Class implementing the network part of the IRC widget.
+</p>
+
+<h3>Signals</h3>
+<dl>
+
+<dt>autoConnected()</dt>
+<dd>
+emitted after an automatic connection was initiated
+</dd>
+<dt>away(bool)</dt>
+<dd>
+emitted to indicate the away status
+</dd>
+<dt>connectNetwork(str,bool,bool)</dt>
+<dd>
+emitted to connect or disconnect from
+        a network
+</dd>
+<dt>editNetwork(str)</dt>
+<dd>
+emitted to edit a network configuration
+</dd>
+<dt>joinChannel(str)</dt>
+<dd>
+emitted to join a channel
+</dd>
+<dt>nickChanged(str)</dt>
+<dd>
+emitted to change the nick name
+</dd>
+<dt>sendData(str)</dt>
+<dd>
+emitted to send a message to the channel
+</dd>
+</dl>
+<h3>Derived from</h3>
+QWidget, Ui_IrcNetworkWidget
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcNetworkWidget.__init__">IrcNetworkWidget</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__autoConnect">__autoConnect</a></td>
+<td>Private method to perform the IRC auto connection.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__clearMessages">__clearMessages</a></td>
+<td>Private slot to clear the contents of the messages display.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__copyAllMessages">__copyAllMessages</a></td>
+<td>Private slot to copy the contents of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__copyMessages">__copyMessages</a></td>
+<td>Private slot to copy the selection of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__cutAllMessages">__cutAllMessages</a></td>
+<td>Private slot to cut the contents of the messages display to the clipboard.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__initMessagesMenu">__initMessagesMenu</a></td>
+<td>Private slot to initialize the context menu of the messages pane.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__onlineStateChanged">__onlineStateChanged</a></td>
+<td>Private slot handling online state changes.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__refreshNetworks">__refreshNetworks</a></td>
+<td>Private slot to refresh all network related widgets.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.__saveMessages">__saveMessages</a></td>
+<td>Private slot to save the contents of the messages display.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.addErrorMessage">addErrorMessage</a></td>
+<td>Public method to add an error message.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.addMessage">addMessage</a></td>
+<td>Public method to add a message.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.addServerMessage">addServerMessage</a></td>
+<td>Public method to add a server message.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.autoConnect">autoConnect</a></td>
+<td>Public method to perform the IRC auto connection.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.getNetworkChannels">getNetworkChannels</a></td>
+<td>Public method to get the list of channels associated with the selected network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.getNickname">getNickname</a></td>
+<td>Public method to get the currently selected nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.handleAwayCommand">handleAwayCommand</a></td>
+<td>Public slot to process an away command.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.initialize">initialize</a></td>
+<td>Public method to initialize the widget.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.isConnected">isConnected</a></td>
+<td>Public method to check, if the network is connected.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_awayButton_clicked">on_awayButton_clicked</a></td>
+<td>Private slot to toggle the away status.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_channelCombo_editTextChanged">on_channelCombo_editTextChanged</a></td>
+<td>Private slot to react upon changes of the channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_connectButton_clicked">on_connectButton_clicked</a></td>
+<td>Private slot to connect to a network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_editButton_clicked">on_editButton_clicked</a></td>
+<td>Private slot to edit a network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_joinButton_clicked">on_joinButton_clicked</a></td>
+<td>Private slot to join a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_messages_anchorClicked">on_messages_anchorClicked</a></td>
+<td>Private slot to open links in the default browser.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_messages_copyAvailable">on_messages_copyAvailable</a></td>
+<td>Private slot to react to text selection/deselection of the messages edit.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_messages_customContextMenuRequested">on_messages_customContextMenuRequested</a></td>
+<td>Private slot to show the context menu of the messages pane.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_networkCombo_currentIndexChanged">on_networkCombo_currentIndexChanged</a></td>
+<td>Private slot to handle selections of a network.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.on_nickCombo_currentIndexChanged">on_nickCombo_currentIndexChanged</a></td>
+<td>Private slot to use another nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.setConnected">setConnected</a></td>
+<td>Public slot to set the connection state.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.setNickName">setNickName</a></td>
+<td>Public slot to set the nick name in use.</td>
+</tr>
+<tr>
+<td><a href="#IrcNetworkWidget.setRegistered">setRegistered</a></td>
+<td>Public slot to set the registered state.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcNetworkWidget.__init__" ID="IrcNetworkWidget.__init__"></a>
+<h4>IrcNetworkWidget (Constructor)</h4>
+<b>IrcNetworkWidget</b>(<i>parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.__autoConnect" ID="IrcNetworkWidget.__autoConnect"></a>
+<h4>IrcNetworkWidget.__autoConnect</h4>
+<b>__autoConnect</b>(<i></i>)
+<p>
+        Private method to perform the IRC auto connection.
+</p>
+
+<a NAME="IrcNetworkWidget.__clearMessages" ID="IrcNetworkWidget.__clearMessages"></a>
+<h4>IrcNetworkWidget.__clearMessages</h4>
+<b>__clearMessages</b>(<i></i>)
+<p>
+        Private slot to clear the contents of the messages display.
+</p>
+
+<a NAME="IrcNetworkWidget.__copyAllMessages" ID="IrcNetworkWidget.__copyAllMessages"></a>
+<h4>IrcNetworkWidget.__copyAllMessages</h4>
+<b>__copyAllMessages</b>(<i></i>)
+<p>
+        Private slot to copy the contents of the messages display to
+        the clipboard.
+</p>
+
+<a NAME="IrcNetworkWidget.__copyMessages" ID="IrcNetworkWidget.__copyMessages"></a>
+<h4>IrcNetworkWidget.__copyMessages</h4>
+<b>__copyMessages</b>(<i></i>)
+<p>
+        Private slot to copy the selection of the messages display to
+        the clipboard.
+</p>
+
+<a NAME="IrcNetworkWidget.__cutAllMessages" ID="IrcNetworkWidget.__cutAllMessages"></a>
+<h4>IrcNetworkWidget.__cutAllMessages</h4>
+<b>__cutAllMessages</b>(<i></i>)
+<p>
+        Private slot to cut the contents of the messages display to
+        the clipboard.
+</p>
+
+<a NAME="IrcNetworkWidget.__initMessagesMenu" ID="IrcNetworkWidget.__initMessagesMenu"></a>
+<h4>IrcNetworkWidget.__initMessagesMenu</h4>
+<b>__initMessagesMenu</b>(<i></i>)
+<p>
+        Private slot to initialize the context menu of the messages pane.
+</p>
+
+<a NAME="IrcNetworkWidget.__onlineStateChanged" ID="IrcNetworkWidget.__onlineStateChanged"></a>
+<h4>IrcNetworkWidget.__onlineStateChanged</h4>
+<b>__onlineStateChanged</b>(<i>online</i>)
+<p>
+        Private slot handling online state changes.
+</p>
+
+<dl>
+
+<dt><i>online</i> (bool)</dt>
+<dd>
+online state
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.__refreshNetworks" ID="IrcNetworkWidget.__refreshNetworks"></a>
+<h4>IrcNetworkWidget.__refreshNetworks</h4>
+<b>__refreshNetworks</b>(<i></i>)
+<p>
+        Private slot to refresh all network related widgets.
+</p>
+
+<a NAME="IrcNetworkWidget.__saveMessages" ID="IrcNetworkWidget.__saveMessages"></a>
+<h4>IrcNetworkWidget.__saveMessages</h4>
+<b>__saveMessages</b>(<i></i>)
+<p>
+        Private slot to save the contents of the messages display.
+</p>
+
+<a NAME="IrcNetworkWidget.addErrorMessage" ID="IrcNetworkWidget.addErrorMessage"></a>
+<h4>IrcNetworkWidget.addErrorMessage</h4>
+<b>addErrorMessage</b>(<i>msgType, msg</i>)
+<p>
+        Public method to add an error message.
+</p>
+
+<dl>
+
+<dt><i>msgType</i> (str)</dt>
+<dd>
+txpe of the message
+</dd>
+<dt><i>msg</i> (str)</dt>
+<dd>
+message to be added
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.addMessage" ID="IrcNetworkWidget.addMessage"></a>
+<h4>IrcNetworkWidget.addMessage</h4>
+<b>addMessage</b>(<i>msg</i>)
+<p>
+        Public method to add a message.
+</p>
+
+<dl>
+
+<dt><i>msg</i> (str)</dt>
+<dd>
+message to be added
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.addServerMessage" ID="IrcNetworkWidget.addServerMessage"></a>
+<h4>IrcNetworkWidget.addServerMessage</h4>
+<b>addServerMessage</b>(<i>msgType, msg, filterMsg=True</i>)
+<p>
+        Public method to add a server message.
+</p>
+
+<dl>
+
+<dt><i>msgType</i> (str)</dt>
+<dd>
+txpe of the message
+</dd>
+<dt><i>msg</i> (str)</dt>
+<dd>
+message to be added
+</dd>
+<dt><i>filterMsg</i> (bool)</dt>
+<dd>
+flag indicating to filter the message
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.autoConnect" ID="IrcNetworkWidget.autoConnect"></a>
+<h4>IrcNetworkWidget.autoConnect</h4>
+<b>autoConnect</b>(<i></i>)
+<p>
+        Public method to perform the IRC auto connection.
+</p>
+
+<a NAME="IrcNetworkWidget.getNetworkChannels" ID="IrcNetworkWidget.getNetworkChannels"></a>
+<h4>IrcNetworkWidget.getNetworkChannels</h4>
+<b>getNetworkChannels</b>(<i></i>)
+<p>
+        Public method to get the list of channels associated with the
+        selected network.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+associated channels
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of IrcChannel
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.getNickname" ID="IrcNetworkWidget.getNickname"></a>
+<h4>IrcNetworkWidget.getNickname</h4>
+<b>getNickname</b>(<i></i>)
+<p>
+        Public method to get the currently selected nick name.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+selected nick name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.handleAwayCommand" ID="IrcNetworkWidget.handleAwayCommand"></a>
+<h4>IrcNetworkWidget.handleAwayCommand</h4>
+<b>handleAwayCommand</b>(<i>awayMessage</i>)
+<p>
+        Public slot to process an away command.
+</p>
+
+<dl>
+
+<dt><i>awayMessage</i> (str)</dt>
+<dd>
+message to be set for being away
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.initialize" ID="IrcNetworkWidget.initialize"></a>
+<h4>IrcNetworkWidget.initialize</h4>
+<b>initialize</b>(<i>manager</i>)
+<p>
+        Public method to initialize the widget.
+</p>
+
+<dl>
+
+<dt><i>manager</i> (IrcNetworkManager)</dt>
+<dd>
+reference to the network manager
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.isConnected" ID="IrcNetworkWidget.isConnected"></a>
+<h4>IrcNetworkWidget.isConnected</h4>
+<b>isConnected</b>(<i></i>)
+<p>
+        Public method to check, if the network is connected.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a connected network
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_awayButton_clicked" ID="IrcNetworkWidget.on_awayButton_clicked"></a>
+<h4>IrcNetworkWidget.on_awayButton_clicked</h4>
+<b>on_awayButton_clicked</b>(<i></i>)
+<p>
+        Private slot to toggle the away status.
+</p>
+
+<a NAME="IrcNetworkWidget.on_channelCombo_editTextChanged" ID="IrcNetworkWidget.on_channelCombo_editTextChanged"></a>
+<h4>IrcNetworkWidget.on_channelCombo_editTextChanged</h4>
+<b>on_channelCombo_editTextChanged</b>(<i>txt</i>)
+<p>
+        Private slot to react upon changes of the channel.
+</p>
+
+<dl>
+
+<dt><i>txt</i> (str)</dt>
+<dd>
+current text of the channel combo
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_connectButton_clicked" ID="IrcNetworkWidget.on_connectButton_clicked"></a>
+<h4>IrcNetworkWidget.on_connectButton_clicked</h4>
+<b>on_connectButton_clicked</b>(<i></i>)
+<p>
+        Private slot to connect to a network.
+</p>
+
+<a NAME="IrcNetworkWidget.on_editButton_clicked" ID="IrcNetworkWidget.on_editButton_clicked"></a>
+<h4>IrcNetworkWidget.on_editButton_clicked</h4>
+<b>on_editButton_clicked</b>(<i></i>)
+<p>
+        Private slot to edit a network.
+</p>
+
+<a NAME="IrcNetworkWidget.on_joinButton_clicked" ID="IrcNetworkWidget.on_joinButton_clicked"></a>
+<h4>IrcNetworkWidget.on_joinButton_clicked</h4>
+<b>on_joinButton_clicked</b>(<i></i>)
+<p>
+        Private slot to join a channel.
+</p>
+
+<a NAME="IrcNetworkWidget.on_messages_anchorClicked" ID="IrcNetworkWidget.on_messages_anchorClicked"></a>
+<h4>IrcNetworkWidget.on_messages_anchorClicked</h4>
+<b>on_messages_anchorClicked</b>(<i>url</i>)
+<p>
+        Private slot to open links in the default browser.
+</p>
+
+<dl>
+
+<dt><i>url</i> (QUrl)</dt>
+<dd>
+URL to be opened
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_messages_copyAvailable" ID="IrcNetworkWidget.on_messages_copyAvailable"></a>
+<h4>IrcNetworkWidget.on_messages_copyAvailable</h4>
+<b>on_messages_copyAvailable</b>(<i>yes</i>)
+<p>
+        Private slot to react to text selection/deselection of the
+        messages edit.
+</p>
+
+<dl>
+
+<dt><i>yes</i> (bool)</dt>
+<dd>
+flag signaling the availability of selected text
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_messages_customContextMenuRequested" ID="IrcNetworkWidget.on_messages_customContextMenuRequested"></a>
+<h4>IrcNetworkWidget.on_messages_customContextMenuRequested</h4>
+<b>on_messages_customContextMenuRequested</b>(<i>pos</i>)
+<p>
+        Private slot to show the context menu of the messages pane.
+</p>
+
+<dl>
+
+<dt><i>pos</i> (QPoint)</dt>
+<dd>
+position the menu should be opened at
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_networkCombo_currentIndexChanged" ID="IrcNetworkWidget.on_networkCombo_currentIndexChanged"></a>
+<h4>IrcNetworkWidget.on_networkCombo_currentIndexChanged</h4>
+<b>on_networkCombo_currentIndexChanged</b>(<i>index</i>)
+<p>
+        Private slot to handle selections of a network.
+</p>
+
+<dl>
+
+<dt><i>index</i> (int)</dt>
+<dd>
+index of the selected entry
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.on_nickCombo_currentIndexChanged" ID="IrcNetworkWidget.on_nickCombo_currentIndexChanged"></a>
+<h4>IrcNetworkWidget.on_nickCombo_currentIndexChanged</h4>
+<b>on_nickCombo_currentIndexChanged</b>(<i>nick=0</i>)
+<p>
+        Private slot to use another nick name.
+</p>
+
+<dl>
+
+<dt><i>nick</i> (int)</dt>
+<dd>
+index of the selected nick name (unused)
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.setConnected" ID="IrcNetworkWidget.setConnected"></a>
+<h4>IrcNetworkWidget.setConnected</h4>
+<b>setConnected</b>(<i>connected</i>)
+<p>
+        Public slot to set the connection state.
+</p>
+
+<dl>
+
+<dt><i>connected</i> (bool)</dt>
+<dd>
+flag indicating the connection state
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.setNickName" ID="IrcNetworkWidget.setNickName"></a>
+<h4>IrcNetworkWidget.setNickName</h4>
+<b>setNickName</b>(<i>nick</i>)
+<p>
+        Public slot to set the nick name in use.
+</p>
+
+<dl>
+
+<dt><i>nick</i> (str)</dt>
+<dd>
+nick name in use
+</dd>
+</dl>
+<a NAME="IrcNetworkWidget.setRegistered" ID="IrcNetworkWidget.setRegistered"></a>
+<h4>IrcNetworkWidget.setRegistered</h4>
+<b>setRegistered</b>(<i>registered</i>)
+<p>
+        Public slot to set the registered state.
+</p>
+
+<dl>
+
+<dt><i>registered</i> (bool)</dt>
+<dd>
+flag indicating the registration state
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcServerEditDialog.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,139 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcServerEditDialog</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcServerEditDialog</h1>
+<p>
+Module implementing a dialog for editing the IRC server configuration.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcServerEditDialog">IrcServerEditDialog</a></td>
+<td>Class implementing a dialog for editing the IRC server configuration.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcServerEditDialog" ID="IrcServerEditDialog"></a>
+<h2>IrcServerEditDialog</h2>
+<p>
+    Class implementing a dialog for editing the IRC server configuration.
+</p>
+
+<h3>Derived from</h3>
+QDialog, Ui_IrcServerEditDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcServerEditDialog.__init__">IrcServerEditDialog</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcServerEditDialog.__updateOkButton">__updateOkButton</a></td>
+<td>Private method to update the OK button state.</td>
+</tr>
+<tr>
+<td><a href="#IrcServerEditDialog.getServer">getServer</a></td>
+<td>Public method to create a server object from the data entered into the dialog.</td>
+</tr>
+<tr>
+<td><a href="#IrcServerEditDialog.on_serverEdit_textChanged">on_serverEdit_textChanged</a></td>
+<td>Private slot handling changes of the server name.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcServerEditDialog.__init__" ID="IrcServerEditDialog.__init__"></a>
+<h4>IrcServerEditDialog (Constructor)</h4>
+<b>IrcServerEditDialog</b>(<i>server, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>server</i> (IrcServer)</dt>
+<dd>
+reference to the IRC server object
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcServerEditDialog.__updateOkButton" ID="IrcServerEditDialog.__updateOkButton"></a>
+<h4>IrcServerEditDialog.__updateOkButton</h4>
+<b>__updateOkButton</b>(<i></i>)
+<p>
+        Private method to update the OK button state.
+</p>
+
+<a NAME="IrcServerEditDialog.getServer" ID="IrcServerEditDialog.getServer"></a>
+<h4>IrcServerEditDialog.getServer</h4>
+<b>getServer</b>(<i></i>)
+<p>
+        Public method to create a server object from the data entered into
+        the dialog.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+server object
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+IrcServer
+</dd>
+</dl>
+<a NAME="IrcServerEditDialog.on_serverEdit_textChanged" ID="IrcServerEditDialog.on_serverEdit_textChanged"></a>
+<h4>IrcServerEditDialog.on_serverEdit_textChanged</h4>
+<b>on_serverEdit_textChanged</b>(<i>_name</i>)
+<p>
+        Private slot handling changes of the server name.
+</p>
+
+<dl>
+
+<dt><i>_name</i> (str)</dt>
+<dd>
+current name of the server (unused)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcUtilities.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,130 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcUtilities</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcUtilities</h1>
+<p>
+Module implementing functions used by several IRC objects.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>__ColorRe</td></tr>
+<tr><td>__UrlRe</td></tr>
+<tr><td>__channelModesDict</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr>
+<td><a href="#__initChannelModesDict">__initChannelModesDict</a></td>
+<td>Private module function to initialize the channels modes dictionary.</td>
+</tr>
+<tr>
+<td><a href="#getChannelModesDict">getChannelModesDict</a></td>
+<td>Module function to get the dictionary with the channel modes mappings.</td>
+</tr>
+<tr>
+<td><a href="#ircFilter">ircFilter</a></td>
+<td>Module method to make the message HTML compliant and detect URLs.</td>
+</tr>
+<tr>
+<td><a href="#ircTimestamp">ircTimestamp</a></td>
+<td>Module method to generate a time stamp string.</td>
+</tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="__initChannelModesDict" ID="__initChannelModesDict"></a>
+<h2>__initChannelModesDict</h2>
+<b>__initChannelModesDict</b>(<i></i>)
+<p>
+    Private module function to initialize the channels modes dictionary.
+</p>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="getChannelModesDict" ID="getChannelModesDict"></a>
+<h2>getChannelModesDict</h2>
+<b>getChannelModesDict</b>(<i></i>)
+<p>
+    Module function to get the dictionary with the channel modes mappings.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary with channel modes mapping
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="ircFilter" ID="ircFilter"></a>
+<h2>ircFilter</h2>
+<b>ircFilter</b>(<i>msg</i>)
+<p>
+    Module method to make the message HTML compliant and detect URLs.
+</p>
+
+<dl>
+
+<dt><i>msg</i> (str)</dt>
+<dd>
+message to process
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+processed message
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="ircTimestamp" ID="ircTimestamp"></a>
+<h2>ircTimestamp</h2>
+<b>ircTimestamp</b>(<i></i>)
+<p>
+    Module method to generate a time stamp string.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+time stamp
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.ExtensionIrc.IrcWidget.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,880 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.IrcWidget</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.ExtensionIrc.IrcWidget</h1>
+<p>
+Module implementing the IRC window.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>SSL_AVAILABLE</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcConnectionState">IrcConnectionState</a></td>
+<td>Class defining the connection states.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget">IrcWidget</a></td>
+<td>Class implementing the IRC window.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcConnectionState" ID="IrcConnectionState"></a>
+<h2>IrcConnectionState</h2>
+<p>
+    Class defining the connection states.
+</p>
+
+<h3>Derived from</h3>
+enum.Enum
+<h3>Class Attributes</h3>
+<table>
+<tr><td>Connected</td></tr>
+<tr><td>Connecting</td></tr>
+<tr><td>Disconnected</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="IrcWidget" ID="IrcWidget"></a>
+<h2>IrcWidget</h2>
+<p>
+    Class implementing the IRC window.
+</p>
+
+<h3>Signals</h3>
+<dl>
+
+<dt>autoConnected()</dt>
+<dd>
+emitted after an automatic connection was initiated
+</dd>
+</dl>
+<h3>Derived from</h3>
+QWidget, Ui_IrcWidget
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcWidget.__init__">IrcWidget</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__autoJoinChannels">__autoJoinChannels</a></td>
+<td>Private slot to join channels automatically once a server got connected.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__away">__away</a></td>
+<td>Private slot handling the change of the away state.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__changeNick">__changeNick</a></td>
+<td>Private slot to use a new nick name.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__closeAllChannels">__closeAllChannels</a></td>
+<td>Private method to close all channels.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__closeChannel">__closeChannel</a></td>
+<td>Private slot handling the closing of a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__connectNetwork">__connectNetwork</a></td>
+<td>Private slot to connect to or disconnect from the given network.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__editNetwork">__editNetwork</a></td>
+<td>Private slot to edit the network configuration.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleCtcp">__handleCtcp</a></td>
+<td>Private method to handle a CTCP command.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleCtcpReply">__handleCtcpReply</a></td>
+<td>Private method to handle a server message containing a CTCP reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleNamedMessage">__handleNamedMessage</a></td>
+<td>Private method to handle a server message containing a message name.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleNickInUse">__handleNickInUse</a></td>
+<td>Private method to handle a 443 server error.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleNickInUseLogin">__handleNickInUseLogin</a></td>
+<td>Private method to handle a 443 server error at login.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleNumericMessage">__handleNumericMessage</a></td>
+<td>Private method to handle a server message containing a numeric code.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleServerError">__handleServerError</a></td>
+<td>Private slot to handle a server error reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__handleServerReply">__handleServerReply</a></td>
+<td>Private slot to handle a server reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__hostConnected">__hostConnected</a></td>
+<td>Private slot to log in to the server after the connection was established.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__hostDisconnected">__hostDisconnected</a></td>
+<td>Private slot to indicate the host was disconnected.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__hostFound">__hostFound</a></td>
+<td>Private slot to indicate the host was found.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__leaveAllChannels">__leaveAllChannels</a></td>
+<td>Private slot to leave all channels and close their tabs.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__leaveChannel">__leaveChannel</a></td>
+<td>Private slot to leave a channel and close the associated tab.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__leaveChannels">__leaveChannels</a></td>
+<td>Private slot to leave a list of channels and close their associated tabs.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__networkDataChanged">__networkDataChanged</a></td>
+<td>Private slot handling changes of the network and identity definitions.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__openPrivate">__openPrivate</a></td>
+<td>Private slot to open a private chat with the given user.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__ping">__ping</a></td>
+<td>Private method to handle a PING message.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__query">__query</a></td>
+<td>Private method to handle a new private connection.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__readyRead">__readyRead</a></td>
+<td>Private slot to read data from the socket.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__registerWithServices">__registerWithServices</a></td>
+<td>Private method to register to services.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__send">__send</a></td>
+<td>Private slot to send data to the IRC server.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__sendCtcpReply">__sendCtcpReply</a></td>
+<td>Private slot to send a CTCP reply.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__sendCtcpRequest">__sendCtcpRequest</a></td>
+<td>Private slot to send a CTCP request.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__setChannelTypePrefixes">__setChannelTypePrefixes</a></td>
+<td>Private method to set the channel type prefixes.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__setUserPrivilegePrefix">__setUserPrivilegePrefix</a></td>
+<td>Private method to set the user privilege prefix.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__sslErrors">__sslErrors</a></td>
+<td>Private slot to handle SSL errors.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__tcpError">__tcpError</a></td>
+<td>Private slot to handle errors reported by the TCP socket.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.__updateUsersCount">__updateUsersCount</a></td>
+<td>Private method to update the users count on the channel tabs.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.autoConnect">autoConnect</a></td>
+<td>Public method to initiate the IRC auto connection.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.isChannelName">isChannelName</a></td>
+<td>Public method to check, if the given name is a channel name.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.joinChannel">joinChannel</a></td>
+<td>Public slot to join a channel.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.on_channelsWidget_tabCloseRequested">on_channelsWidget_tabCloseRequested</a></td>
+<td>Private slot to close a channel by pressing the close button of the channels widget.</td>
+</tr>
+<tr>
+<td><a href="#IrcWidget.shutdown">shutdown</a></td>
+<td>Public slot to shut down the widget.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcWidget.__init__" ID="IrcWidget.__init__"></a>
+<h4>IrcWidget (Constructor)</h4>
+<b>IrcWidget</b>(<i>plugin, parent=None</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>plugin</i> (MqttMonitorPlugin)</dt>
+<dd>
+reference to the plug-in object
+</dd>
+<dt><i>parent</i> (QWidget)</dt>
+<dd>
+reference to the parent widget
+</dd>
+</dl>
+<a NAME="IrcWidget.__autoJoinChannels" ID="IrcWidget.__autoJoinChannels"></a>
+<h4>IrcWidget.__autoJoinChannels</h4>
+<b>__autoJoinChannels</b>(<i></i>)
+<p>
+        Private slot to join channels automatically once a server got
+        connected.
+</p>
+
+<a NAME="IrcWidget.__away" ID="IrcWidget.__away"></a>
+<h4>IrcWidget.__away</h4>
+<b>__away</b>(<i>isAway</i>)
+<p>
+        Private slot handling the change of the away state.
+</p>
+
+<dl>
+
+<dt><i>isAway</i> (bool)</dt>
+<dd>
+flag indicating the current away state
+</dd>
+</dl>
+<a NAME="IrcWidget.__changeNick" ID="IrcWidget.__changeNick"></a>
+<h4>IrcWidget.__changeNick</h4>
+<b>__changeNick</b>(<i>nick</i>)
+<p>
+        Private slot to use a new nick name.
+</p>
+
+<dl>
+
+<dt><i>nick</i> (str)</dt>
+<dd>
+nick name to use
+</dd>
+</dl>
+<a NAME="IrcWidget.__closeAllChannels" ID="IrcWidget.__closeAllChannels"></a>
+<h4>IrcWidget.__closeAllChannels</h4>
+<b>__closeAllChannels</b>(<i></i>)
+<p>
+        Private method to close all channels.
+</p>
+
+<a NAME="IrcWidget.__closeChannel" ID="IrcWidget.__closeChannel"></a>
+<h4>IrcWidget.__closeChannel</h4>
+<b>__closeChannel</b>(<i>name</i>)
+<p>
+        Private slot handling the closing of a channel.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the closed channel
+</dd>
+</dl>
+<a NAME="IrcWidget.__connectNetwork" ID="IrcWidget.__connectNetwork"></a>
+<h4>IrcWidget.__connectNetwork</h4>
+<b>__connectNetwork</b>(<i>name, connect, silent</i>)
+<p>
+        Private slot to connect to or disconnect from the given network.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the network to connect to
+</dd>
+<dt><i>connect</i> (bool)</dt>
+<dd>
+flag indicating to connect
+</dd>
+<dt><i>silent</i> (bool)</dt>
+<dd>
+flag indicating a silent connect/disconnect
+</dd>
+</dl>
+<a NAME="IrcWidget.__editNetwork" ID="IrcWidget.__editNetwork"></a>
+<h4>IrcWidget.__editNetwork</h4>
+<b>__editNetwork</b>(<i></i>)
+<p>
+        Private slot to edit the network configuration.
+</p>
+
+<a NAME="IrcWidget.__handleCtcp" ID="IrcWidget.__handleCtcp"></a>
+<h4>IrcWidget.__handleCtcp</h4>
+<b>__handleCtcp</b>(<i>match</i>)
+<p>
+        Private method to handle a CTCP command.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__handleCtcpReply" ID="IrcWidget.__handleCtcpReply"></a>
+<h4>IrcWidget.__handleCtcpReply</h4>
+<b>__handleCtcpReply</b>(<i>match</i>)
+<p>
+        Private method to handle a server message containing a CTCP reply.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<a NAME="IrcWidget.__handleNamedMessage" ID="IrcWidget.__handleNamedMessage"></a>
+<h4>IrcWidget.__handleNamedMessage</h4>
+<b>__handleNamedMessage</b>(<i>match</i>)
+<p>
+        Private method to handle a server message containing a message name.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__handleNickInUse" ID="IrcWidget.__handleNickInUse"></a>
+<h4>IrcWidget.__handleNickInUse</h4>
+<b>__handleNickInUse</b>(<i></i>)
+<p>
+        Private method to handle a 443 server error.
+</p>
+
+<a NAME="IrcWidget.__handleNickInUseLogin" ID="IrcWidget.__handleNickInUseLogin"></a>
+<h4>IrcWidget.__handleNickInUseLogin</h4>
+<b>__handleNickInUseLogin</b>(<i></i>)
+<p>
+        Private method to handle a 443 server error at login.
+</p>
+
+<a NAME="IrcWidget.__handleNumericMessage" ID="IrcWidget.__handleNumericMessage"></a>
+<h4>IrcWidget.__handleNumericMessage</h4>
+<b>__handleNumericMessage</b>(<i>match</i>)
+<p>
+        Private method to handle a server message containing a numeric code.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__handleServerError" ID="IrcWidget.__handleServerError"></a>
+<h4>IrcWidget.__handleServerError</h4>
+<b>__handleServerError</b>(<i>code, message</i>)
+<p>
+        Private slot to handle a server error reply.
+</p>
+
+<dl>
+
+<dt><i>code</i> (int)</dt>
+<dd>
+numerical code sent by the server
+</dd>
+<dt><i>message</i> (str)</dt>
+<dd>
+message sent by the server
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__handleServerReply" ID="IrcWidget.__handleServerReply"></a>
+<h4>IrcWidget.__handleServerReply</h4>
+<b>__handleServerReply</b>(<i>code, server, message</i>)
+<p>
+        Private slot to handle a server reply.
+</p>
+
+<dl>
+
+<dt><i>code</i> (int)</dt>
+<dd>
+numerical code sent by the server
+</dd>
+<dt><i>server</i> (str)</dt>
+<dd>
+name of the server
+</dd>
+<dt><i>message</i> (str)</dt>
+<dd>
+message sent by the server
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__hostConnected" ID="IrcWidget.__hostConnected"></a>
+<h4>IrcWidget.__hostConnected</h4>
+<b>__hostConnected</b>(<i></i>)
+<p>
+        Private slot to log in to the server after the connection was
+        established.
+</p>
+
+<a NAME="IrcWidget.__hostDisconnected" ID="IrcWidget.__hostDisconnected"></a>
+<h4>IrcWidget.__hostDisconnected</h4>
+<b>__hostDisconnected</b>(<i></i>)
+<p>
+        Private slot to indicate the host was disconnected.
+</p>
+
+<a NAME="IrcWidget.__hostFound" ID="IrcWidget.__hostFound"></a>
+<h4>IrcWidget.__hostFound</h4>
+<b>__hostFound</b>(<i></i>)
+<p>
+        Private slot to indicate the host was found.
+</p>
+
+<a NAME="IrcWidget.__leaveAllChannels" ID="IrcWidget.__leaveAllChannels"></a>
+<h4>IrcWidget.__leaveAllChannels</h4>
+<b>__leaveAllChannels</b>(<i></i>)
+<p>
+        Private slot to leave all channels and close their tabs.
+</p>
+
+<a NAME="IrcWidget.__leaveChannel" ID="IrcWidget.__leaveChannel"></a>
+<h4>IrcWidget.__leaveChannel</h4>
+<b>__leaveChannel</b>(<i></i>)
+<p>
+        Private slot to leave a channel and close the associated tab.
+</p>
+
+<a NAME="IrcWidget.__leaveChannels" ID="IrcWidget.__leaveChannels"></a>
+<h4>IrcWidget.__leaveChannels</h4>
+<b>__leaveChannels</b>(<i>channelNames</i>)
+<p>
+        Private slot to leave a list of channels and close their associated
+        tabs.
+</p>
+
+<dl>
+
+<dt><i>channelNames</i> (list of str)</dt>
+<dd>
+list of channels to leave
+</dd>
+</dl>
+<a NAME="IrcWidget.__networkDataChanged" ID="IrcWidget.__networkDataChanged"></a>
+<h4>IrcWidget.__networkDataChanged</h4>
+<b>__networkDataChanged</b>(<i></i>)
+<p>
+        Private slot handling changes of the network and identity definitions.
+</p>
+
+<a NAME="IrcWidget.__openPrivate" ID="IrcWidget.__openPrivate"></a>
+<h4>IrcWidget.__openPrivate</h4>
+<b>__openPrivate</b>(<i>name</i>)
+<p>
+        Private slot to open a private chat with the given user.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the user
+</dd>
+</dl>
+<a NAME="IrcWidget.__ping" ID="IrcWidget.__ping"></a>
+<h4>IrcWidget.__ping</h4>
+<b>__ping</b>(<i>match</i>)
+<p>
+        Private method to handle a PING message.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__query" ID="IrcWidget.__query"></a>
+<h4>IrcWidget.__query</h4>
+<b>__query</b>(<i>match</i>)
+<p>
+        Private method to handle a new private connection.
+</p>
+
+<dl>
+
+<dt><i>match</i> (re.Match)</dt>
+<dd>
+reference to the match object
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating, if the message was handled
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.__readyRead" ID="IrcWidget.__readyRead"></a>
+<h4>IrcWidget.__readyRead</h4>
+<b>__readyRead</b>(<i></i>)
+<p>
+        Private slot to read data from the socket.
+</p>
+
+<a NAME="IrcWidget.__registerWithServices" ID="IrcWidget.__registerWithServices"></a>
+<h4>IrcWidget.__registerWithServices</h4>
+<b>__registerWithServices</b>(<i></i>)
+<p>
+        Private method to register to services.
+</p>
+
+<a NAME="IrcWidget.__send" ID="IrcWidget.__send"></a>
+<h4>IrcWidget.__send</h4>
+<b>__send</b>(<i>data</i>)
+<p>
+        Private slot to send data to the IRC server.
+</p>
+
+<dl>
+
+<dt><i>data</i> (str)</dt>
+<dd>
+data to be sent
+</dd>
+</dl>
+<a NAME="IrcWidget.__sendCtcpReply" ID="IrcWidget.__sendCtcpReply"></a>
+<h4>IrcWidget.__sendCtcpReply</h4>
+<b>__sendCtcpReply</b>(<i>receiver, text</i>)
+<p>
+        Private slot to send a CTCP reply.
+</p>
+
+<dl>
+
+<dt><i>receiver</i> (str)</dt>
+<dd>
+nick name of the receiver
+</dd>
+<dt><i>text</i> (str)</dt>
+<dd>
+text to be sent
+</dd>
+</dl>
+<a NAME="IrcWidget.__sendCtcpRequest" ID="IrcWidget.__sendCtcpRequest"></a>
+<h4>IrcWidget.__sendCtcpRequest</h4>
+<b>__sendCtcpRequest</b>(<i>receiver, request, arguments</i>)
+<p>
+        Private slot to send a CTCP request.
+</p>
+
+<dl>
+
+<dt><i>receiver</i> (str)</dt>
+<dd>
+nick name of the receiver
+</dd>
+<dt><i>request</i> (str)</dt>
+<dd>
+CTCP request to be sent
+</dd>
+<dt><i>arguments</i> (str)</dt>
+<dd>
+arguments to be sent
+</dd>
+</dl>
+<a NAME="IrcWidget.__setChannelTypePrefixes" ID="IrcWidget.__setChannelTypePrefixes"></a>
+<h4>IrcWidget.__setChannelTypePrefixes</h4>
+<b>__setChannelTypePrefixes</b>(<i>prefixes</i>)
+<p>
+        Private method to set the channel type prefixes.
+</p>
+
+<dl>
+
+<dt><i>prefixes</i> (str)</dt>
+<dd>
+channel prefix characters
+</dd>
+</dl>
+<a NAME="IrcWidget.__setUserPrivilegePrefix" ID="IrcWidget.__setUserPrivilegePrefix"></a>
+<h4>IrcWidget.__setUserPrivilegePrefix</h4>
+<b>__setUserPrivilegePrefix</b>(<i>prefix1, prefix2</i>)
+<p>
+        Private method to set the user privilege prefix.
+</p>
+
+<dl>
+
+<dt><i>prefix1</i> (str)</dt>
+<dd>
+first part of the prefix
+</dd>
+<dt><i>prefix2</i> (str)</dt>
+<dd>
+indictors the first part gets mapped to
+</dd>
+</dl>
+<a NAME="IrcWidget.__sslErrors" ID="IrcWidget.__sslErrors"></a>
+<h4>IrcWidget.__sslErrors</h4>
+<b>__sslErrors</b>(<i>errors</i>)
+<p>
+        Private slot to handle SSL errors.
+</p>
+
+<dl>
+
+<dt><i>errors</i> (list of QSslError)</dt>
+<dd>
+list of SSL errors
+</dd>
+</dl>
+<a NAME="IrcWidget.__tcpError" ID="IrcWidget.__tcpError"></a>
+<h4>IrcWidget.__tcpError</h4>
+<b>__tcpError</b>(<i>error</i>)
+<p>
+        Private slot to handle errors reported by the TCP socket.
+</p>
+
+<dl>
+
+<dt><i>error</i> (QAbstractSocket.SocketError)</dt>
+<dd>
+error code reported by the socket
+</dd>
+</dl>
+<a NAME="IrcWidget.__updateUsersCount" ID="IrcWidget.__updateUsersCount"></a>
+<h4>IrcWidget.__updateUsersCount</h4>
+<b>__updateUsersCount</b>(<i></i>)
+<p>
+        Private method to update the users count on the channel tabs.
+</p>
+
+<a NAME="IrcWidget.autoConnect" ID="IrcWidget.autoConnect"></a>
+<h4>IrcWidget.autoConnect</h4>
+<b>autoConnect</b>(<i></i>)
+<p>
+        Public method to initiate the IRC auto connection.
+</p>
+
+<a NAME="IrcWidget.isChannelName" ID="IrcWidget.isChannelName"></a>
+<h4>IrcWidget.isChannelName</h4>
+<b>isChannelName</b>(<i>name</i>)
+<p>
+        Public method to check, if the given name is a channel name.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name to check
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+flag indicating a channel name
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcWidget.joinChannel" ID="IrcWidget.joinChannel"></a>
+<h4>IrcWidget.joinChannel</h4>
+<b>joinChannel</b>(<i>name, key=""</i>)
+<p>
+        Public slot to join a channel.
+</p>
+
+<dl>
+
+<dt><i>name</i> (str)</dt>
+<dd>
+name of the channel
+</dd>
+<dt><i>key</i> (str)</dt>
+<dd>
+key of the channel
+</dd>
+</dl>
+<a NAME="IrcWidget.on_channelsWidget_tabCloseRequested" ID="IrcWidget.on_channelsWidget_tabCloseRequested"></a>
+<h4>IrcWidget.on_channelsWidget_tabCloseRequested</h4>
+<b>on_channelsWidget_tabCloseRequested</b>(<i>index</i>)
+<p>
+        Private slot to close a channel by pressing the close button of
+        the channels widget.
+</p>
+
+<dl>
+
+<dt><i>index</i> (int)</dt>
+<dd>
+index of the tab to be closed
+</dd>
+</dl>
+<a NAME="IrcWidget.shutdown" ID="IrcWidget.shutdown"></a>
+<h4>IrcWidget.shutdown</h4>
+<b>shutdown</b>(<i></i>)
+<p>
+        Public slot to shut down the widget.
+</p>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/Plugin_Extension_Irc.PluginExtensionIrc.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,365 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.PluginExtensionIrc</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<a NAME="top" ID="top"></a>
+<h1>Plugin_Extension_Irc.PluginExtensionIrc</h1>
+<p>
+Module implementing a plug-in providing IRC communication capability.
+</p>
+
+<h3>Global Attributes</h3>
+<table>
+<tr><td>__header__</td></tr>
+<tr><td>error</td></tr>
+<tr><td>ircExtensionPluginObject</td></tr>
+</table>
+
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#IrcExtensionPlugin">IrcExtensionPlugin</a></td>
+<td>Class documentation goes here.</td>
+</tr>
+</table>
+
+<h3>Functions</h3>
+<table>
+<tr>
+<td><a href="#createIrcPage">createIrcPage</a></td>
+<td>Function to create the IRC configuration page.</td>
+</tr>
+<tr>
+<td><a href="#getConfigData">getConfigData</a></td>
+<td>Function returning data as required by the configuration dialog.</td>
+</tr>
+<tr>
+<td><a href="#prepareUninstall">prepareUninstall</a></td>
+<td>Function to prepare for an un-installation.</td>
+</tr>
+</table>
+
+<hr />
+<hr />
+<a NAME="IrcExtensionPlugin" ID="IrcExtensionPlugin"></a>
+<h2>IrcExtensionPlugin</h2>
+<p>
+    Class documentation goes here.
+</p>
+
+<h3>Derived from</h3>
+QObject
+<h3>Class Attributes</h3>
+<table>
+<tr><td>PreferencesKey</td></tr>
+</table>
+
+<h3>Class Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#IrcExtensionPlugin.__init__">IrcExtensionPlugin</a></td>
+<td>Constructor</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.__activateWidget">__activateWidget</a></td>
+<td>Private slot to handle the activation of the MQTT Monitor.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.__getIconPaths">__getIconPaths</a></td>
+<td>Private method to generate a list of paths to check for the requested icon name.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.__initialize">__initialize</a></td>
+<td>Private slot to (re)initialize the plugin.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.__loadTranslator">__loadTranslator</a></td>
+<td>Private method to load the translation file.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.activate">activate</a></td>
+<td>Public method to activate this plug-in.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.deactivate">deactivate</a></td>
+<td>Public method to deactivate this plug-in.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.getIcon">getIcon</a></td>
+<td>Public method to get a named icon.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.getPixmap">getPixmap</a></td>
+<td>Public method to get a named pixmap.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.getPreferences">getPreferences</a></td>
+<td>Public method to retrieve the various settings values.</td>
+</tr>
+<tr>
+<td><a href="#IrcExtensionPlugin.setPreferences">setPreferences</a></td>
+<td>Public method to store the various settings values.</td>
+</tr>
+</table>
+
+<h3>Static Methods</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+
+
+<a NAME="IrcExtensionPlugin.__init__" ID="IrcExtensionPlugin.__init__"></a>
+<h4>IrcExtensionPlugin (Constructor)</h4>
+<b>IrcExtensionPlugin</b>(<i>ui</i>)
+<p>
+        Constructor
+</p>
+
+<dl>
+
+<dt><i>ui</i> (UI.UserInterface)</dt>
+<dd>
+reference to the user interface object
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.__activateWidget" ID="IrcExtensionPlugin.__activateWidget"></a>
+<h4>IrcExtensionPlugin.__activateWidget</h4>
+<b>__activateWidget</b>(<i></i>)
+<p>
+        Private slot to handle the activation of the MQTT Monitor.
+</p>
+
+<a NAME="IrcExtensionPlugin.__getIconPaths" ID="IrcExtensionPlugin.__getIconPaths"></a>
+<h4>IrcExtensionPlugin.__getIconPaths</h4>
+<b>__getIconPaths</b>(<i>iconName</i>)
+<p>
+        Private method to generate a list of paths to check for the requested icon name.
+</p>
+
+<dl>
+
+<dt><i>iconName</i> (str)</dt>
+<dd>
+name of the icon
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+list of icon path names
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.__initialize" ID="IrcExtensionPlugin.__initialize"></a>
+<h4>IrcExtensionPlugin.__initialize</h4>
+<b>__initialize</b>(<i></i>)
+<p>
+        Private slot to (re)initialize the plugin.
+</p>
+
+<a NAME="IrcExtensionPlugin.__loadTranslator" ID="IrcExtensionPlugin.__loadTranslator"></a>
+<h4>IrcExtensionPlugin.__loadTranslator</h4>
+<b>__loadTranslator</b>(<i></i>)
+<p>
+        Private method to load the translation file.
+</p>
+
+<a NAME="IrcExtensionPlugin.activate" ID="IrcExtensionPlugin.activate"></a>
+<h4>IrcExtensionPlugin.activate</h4>
+<b>activate</b>(<i></i>)
+<p>
+        Public method to activate this plug-in.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+tuple of None and activation status
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.deactivate" ID="IrcExtensionPlugin.deactivate"></a>
+<h4>IrcExtensionPlugin.deactivate</h4>
+<b>deactivate</b>(<i></i>)
+<p>
+        Public method to deactivate this plug-in.
+</p>
+
+<a NAME="IrcExtensionPlugin.getIcon" ID="IrcExtensionPlugin.getIcon"></a>
+<h4>IrcExtensionPlugin.getIcon</h4>
+<b>getIcon</b>(<i>iconName</i>)
+<p>
+        Public method to get a named icon.
+</p>
+
+<dl>
+
+<dt><i>iconName</i> (str)</dt>
+<dd>
+name of the icon
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+requested icon
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QIcon
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.getPixmap" ID="IrcExtensionPlugin.getPixmap"></a>
+<h4>IrcExtensionPlugin.getPixmap</h4>
+<b>getPixmap</b>(<i>pixmapName</i>)
+<p>
+        Public method to get a named pixmap.
+</p>
+
+<dl>
+
+<dt><i>pixmapName</i> (str)</dt>
+<dd>
+name of the pixmap
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+requested pixmap
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+QPixmap
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.getPreferences" ID="IrcExtensionPlugin.getPreferences"></a>
+<h4>IrcExtensionPlugin.getPreferences</h4>
+<b>getPreferences</b>(<i>key</i>)
+<p>
+        Public method to retrieve the various settings values.
+</p>
+
+<dl>
+
+<dt><i>key</i> (str)</dt>
+<dd>
+the key of the value to get
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+the requested setting value
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+Any
+</dd>
+</dl>
+<a NAME="IrcExtensionPlugin.setPreferences" ID="IrcExtensionPlugin.setPreferences"></a>
+<h4>IrcExtensionPlugin.setPreferences</h4>
+<b>setPreferences</b>(<i>key, value</i>)
+<p>
+        Public method to store the various settings values.
+</p>
+
+<dl>
+
+<dt><i>key</i> (str)</dt>
+<dd>
+the key of the setting to be set
+</dd>
+<dt><i>value</i> (Any)</dt>
+<dd>
+the value to be set
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="createIrcPage" ID="createIrcPage"></a>
+<h2>createIrcPage</h2>
+<b>createIrcPage</b>(<i>configDlg</i>)
+<p>
+    Function to create the IRC configuration page.
+</p>
+
+<dl>
+
+<dt><i>configDlg</i> (ConfigurationWidget)</dt>
+<dd>
+reference to the configuration dialog
+</dd>
+</dl>
+<dl>
+<dt>Return:</dt>
+<dd>
+reference to the configuration page
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+TranslatorPage
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="getConfigData" ID="getConfigData"></a>
+<h2>getConfigData</h2>
+<b>getConfigData</b>(<i></i>)
+<p>
+    Function returning data as required by the configuration dialog.
+</p>
+
+<dl>
+<dt>Return:</dt>
+<dd>
+dictionary containing the relevant data
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="prepareUninstall" ID="prepareUninstall"></a>
+<h2>prepareUninstall</h2>
+<b>prepareUninstall</b>(<i></i>)
+<p>
+    Function to prepare for an un-installation.
+</p>
+
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<h1>Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage</h1>
+<p>
+Package implementing the configuration page for the IRC UI extension.
+</p>
+
+
+
+<h3>Modules</h3>
+<table>
+
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.IrcPage.html">IrcPage</a></td>
+<td>Module implementing the IRC configuration page.</td>
+</tr>
+</table>
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.ExtensionIrc.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc.ExtensionIrc</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<h1>Plugin_Extension_Irc.ExtensionIrc</h1>
+<p>
+Package containing the IRC modules.
+</p>
+
+
+<h3>Packages</h3>
+<table>
+
+<tr>
+<td><a href="index-Plugin_Extension_Irc.ExtensionIrc.ConfigurationPage.html">ConfigurationPage</a></td>
+<td>Package implementing the configuration page for the IRC UI extension.</td>
+</tr>
+</table>
+
+<h3>Modules</h3>
+<table>
+
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcChannelEditDialog.html">IrcChannelEditDialog</a></td>
+<td>Module implementing a dialog to edit channel data.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcChannelWidget.html">IrcChannelWidget</a></td>
+<td>Module implementing the IRC channel widget.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcIdentitiesEditDialog.html">IrcIdentitiesEditDialog</a></td>
+<td>Module implementing the identities management dialog.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcMessageEdit.html">IrcMessageEdit</a></td>
+<td>Module implementing a specialized line edit for entering IRC messages.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcNetworkEditDialog.html">IrcNetworkEditDialog</a></td>
+<td>Module implementing a dialog for editing IRC network definitions.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcNetworkListDialog.html">IrcNetworkListDialog</a></td>
+<td>Module implementing a dialog to list the configured IRC networks.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcNetworkManager.html">IrcNetworkManager</a></td>
+<td>Module implementing the IRC data structures and their manager.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcNetworkWidget.html">IrcNetworkWidget</a></td>
+<td>Module implementing the network part of the IRC widget.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcServerEditDialog.html">IrcServerEditDialog</a></td>
+<td>Module implementing a dialog for editing the IRC server configuration.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcUtilities.html">IrcUtilities</a></td>
+<td>Module implementing functions used by several IRC objects.</td>
+</tr>
+<tr>
+<td><a href="Plugin_Extension_Irc.ExtensionIrc.IrcWidget.html">IrcWidget</a></td>
+<td>Module implementing the IRC window.</td>
+</tr>
+</table>
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/index-Plugin_Extension_Irc.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html><head>
+<title>Plugin_Extension_Irc</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<h1>Plugin_Extension_Irc</h1>
+<p>
+Package implementing the IRC plug-in.
+</p>
+
+
+<h3>Packages</h3>
+<table>
+
+<tr>
+<td><a href="index-Plugin_Extension_Irc.ExtensionIrc.html">ExtensionIrc</a></td>
+<td>Package containing the IRC modules.</td>
+</tr>
+</table>
+
+<h3>Modules</h3>
+<table>
+
+<tr>
+<td><a href="Plugin_Extension_Irc.PluginExtensionIrc.html">PluginExtensionIrc</a></td>
+<td>Module implementing a plug-in providing IRC communication capability.</td>
+</tr>
+</table>
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/index.html	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html><head>
+<title>Table of contents</title>
+<meta charset="UTF-8">
+<link rel="stylesheet" href="styles.css">
+</head>
+<body>
+<h1>Table of contents</h1>
+
+
+<h3>Packages</h3>
+<table>
+
+<tr>
+<td><a href="index-Plugin_Extension_Irc.html">Plugin_Extension_Irc</a></td>
+<td>Package implementing the IRC plug-in.</td>
+</tr>
+</table>
+
+</body></html>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ExtensionIrc/Documentation/Source/styles.css	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,12 @@
+body {
+    color: black;
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
Binary file ExtensionIrc/i18n/irc_de.qm has changed
Binary file ExtensionIrc/i18n/irc_en.qm has changed
Binary file ExtensionIrc/i18n/irc_es.qm has changed
Binary file ExtensionIrc/i18n/irc_ru.qm has changed
--- a/PluginIrc.epj	Fri Apr 18 18:36:48 2025 +0200
+++ b/PluginIrc.epj	Sun Apr 20 11:08:39 2025 +0200
@@ -150,7 +150,24 @@
     },
     "DESCRIPTION": "This plug-in adds a widget to communicate via IRC messages.",
     "DOCSTRING": "ericdoc",
-    "DOCUMENTATIONPARMS": {},
+    "DOCUMENTATIONPARMS": {
+      "ERIC4DOC": {
+        "cssFile": "%PYTHON%/eric7/CSSs/default.css",
+        "ignoreDirectories": [
+          ".eric7project",
+          ".hg",
+          ".jedi",
+          ".ropeproject"
+        ],
+        "ignoreFilePatterns": [
+          "Ui_*.py"
+        ],
+        "outputDirectory": "ExtensionIrc/Documentation/Source",
+        "qtHelpEnabled": false,
+        "startDirectory": "",
+        "useRecursion": true
+      }
+    },
     "EMAIL": "detlev@die-offenbachs.de",
     "EMBEDDED_VENV": false,
     "EOL": 1,
@@ -212,7 +229,10 @@
     "MIXEDLANGUAGE": false,
     "OTHERS": [
       ".hgignore",
+      "ExtensionIrc/Documentation/LICENSE.GPL",
+      "ExtensionIrc/Documentation/Source",
       "PluginIrc.epj",
+      "changelog.md",
       "pyproject.toml"
     ],
     "OTHERTOOLSPARMS": {
@@ -298,10 +318,14 @@
     "TRANSLATIONEXCEPTIONS": [],
     "TRANSLATIONPATTERN": "ExtensionIrc/i18n/irc_%language%.ts",
     "TRANSLATIONS": [
+      "ExtensionIrc/i18n/irc_de.qm",
       "ExtensionIrc/i18n/irc_de.ts",
       "ExtensionIrc/i18n/irc_empty.ts",
+      "ExtensionIrc/i18n/irc_en.qm",
       "ExtensionIrc/i18n/irc_en.ts",
+      "ExtensionIrc/i18n/irc_es.qm",
       "ExtensionIrc/i18n/irc_es.ts",
+      "ExtensionIrc/i18n/irc_ru.qm",
       "ExtensionIrc/i18n/irc_ru.ts"
     ],
     "TRANSLATIONSBINPATH": "",
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/changelog.md	Sun Apr 20 11:08:39 2025 +0200
@@ -0,0 +1,6 @@
+ChangeLog
+---------
+
+__Version 10.0.0__
+
+- first release

eric ide

mercurial