Just an update on what I'm doing really, several things, as usual. :)
Yes, I haven't been on line much this week well with pre-releasing SDF:IRC and getting one or two positive responses back from it, it has inspired me to work more and with greater speed too. The greater speed part is very important, without that I'd never be able to do it and my assignment work at the same time.
Thinking about it there is a large difference between working on my assignments and the IRC client, which is more production grade, where as the assignments tend to be little programs that show off things like data structures and algorithms and object orientated design. Yes I have to get them big words in there. :p
So what have I done for SDF:IRC pre-release 0.05a? Well I've done quite a few things that I've been putting on hold for a while.
One is coloured tabs; you may think this would be easy, but if you look at the version I put out last week you should notice only the tree items on the left highlight. The reason for this is that the tabs don't support it, you can set a selected colour and an unselected colour, which is drawn with the entire folder and not in the individual tabs.
So, I downloaded the SWT source code and altered it and spent ages perfecting the colouring of the tabs, it was a bit of a pain as the tabs are all curvy and on top of that the previous or next tab may have to be drawn in the currently drawn tabs space. That last thing sounds complex. XD Well there is something else, some tabs don't get drawn at all when the tabber becomes full, it only shows recently used tabs. So I have to loop through in either direction to get a visible tab and check if it has a colour set on it or not. Anyway the results are neat and well, look for yourselves:
The only downside to the above tabs is that in order for you get SDF:IRC working on other platforms (if you don't use windows atm, or linux/macs in the future,) then you'd need to get my patch and apply it to the code first, or just let me do all the work. :p
The other thing I've done is abstracted and reimplemented all the networking using the java.nio API, this will hopefully give the networking speed a boost, in case it wasn't fast enough already. :p
I then extended the above networking layer and implemented non-blocking SSL encryption. Woo. Yeah, this was a biggy that some people wanted me to support, well it's experimental, but it is in there. I've tested it and it works on my server. :p Now you can chat and no one with a packet sniffer can sneak in and take a peak, The good thing is, I don't see any slow down in net speed with this either, though I was testing on my local network.
Yep so two big things to look out for in the upcoming SDF:IRC. :p
What else did I do?
Well at the weekend I coded two new applets, because I got bored with my assignments some. I give you: I give you, the crummy airport simulator! Yeah you can't interact with it or anything, but it was good multi-threading practice with thread synchronization on data structures, as my tutor said. :p
The second is better: Button Run! Can you click that button, yes it is possible. XD
I told you the little would go pretty fast. I've been busy this week. :p