this post was submitted on 02 Feb 2024
1 points (66.7% liked)

The Java Programming Language

214 readers
6 users here now

Discussion of Java and java-related technologies. This includes things like:

For assistance learning Java, please go to Learn Java

founded 1 year ago
MODERATORS
 

cross-posted from: https://programming.dev/post/9458575

Hey all,

Another update/release of urChat (Java IRC Client). This release had a lot of focus on general usability and backend cleaning up. Performance for updating the styles has been improved and i've also moved some of the major panels into their own classes to make it easier to add more options/panels at a future date. In doing this, there is less effort needed when adding more options as the this is all handled when using addToPanel() method:

For Instance, i've added an option to toggle the tab icons, after creating the new JCheckBox showTabIcons, all that's needed to have it save to the preferences correctly is:

URPanels.addToPanel(this, showTabIcons, null, Placement.DEFAULT, null, Constants.KEY_SHOW_TAB_ICON);

This adds it to the current JPanel (In this case the InterfacePanel), places it after the previous Component and then associates that with the KEY_SHOW_TAB_ICON Preference key. Much easier than before.

Support for HTTP proxies has also been added, so we've now got both SOCKS and HTTP proxies as an option. There is now better disconnection handling, it will automatically reconnect if it disconnects unexpectedly (after some time), and it will also rejoin all of the previously connected channels.

I've also added in LOG4J2 for logging. At the moment there is a log4j2.xml config file included in the release JAR, but eventually i'll allow custom config files. I'm not 100% sure how I feel about it yet as it increased my release JAR file size from 247 KB to 2.47 MB which is quite a significant jump.

Anyway, thanks everybody for your support and interest. Feel free to join the #urchat channel at irc.libera.chat to discuss improvements etc. :) Onwards and upwards to version 0.7.0!

GitHub Link

no comments (yet)
sorted by: hot top controversial new old
there doesn't seem to be anything here