This post was cut in two because I know how much people hate to read. Skip to the next one if you want to read that first.
Most things I have to work on from now on are related to the user interface. Previous versions of zkanji were built for windows only, which made the interface much easier to create. I didn’t have to use external libraries that worked like an alien life form on top of the operating system. This time though, because I wanted to make zkanji run on Linux and Mac as well, I was forced to use such library. I have already written about how painful it is to use that library, but that’s not what I wanted to write about this time.
The new user interface was meant to be modern and stylish. More importantly, easier to use and simpler just by looking at it. But I guess I should just forget most of these dreams if I want to make a working version. Every interface element (text input, button etc.) seem to take up a lot of space now, and there is no way to use the empty spaces well. This became painfully obvious when, for example, I tried to make a good interface for the kanji search. (Still work in progress.) It wasn’t very elegant in the previous versions of the program, because there are many buttons, check boxes and text input boxes that needed to be placed for editing filters for the kanji.
Another layer of difficulty is the scaling of the interface. It’d be good if it worked on all kind of screen resolutions, from the 1000ish pixels wide netbooks (are those still around?) to 4k and beyond. For this reason I’m trying to make button icons in SVG format. Those can be scaled to any size and won’t become ugly and pixelized like “traditional” images. I’m not an artist though, and I’d rather work on the code more, so unless someone wants to donate some SVG images, the button icons will be hideous at best.
Last but not least there’s the popup dictionary, which activates in previous versions by a key combination installed in the system. It brings up zkanji when you press the set keys, even when you are playing a video or reading your favorite manga. There is an extension library for the user interface library I’m using, which allowed this to work on several systems. Unfortunately it seems to have been discontinued some time ago. I’ll try to get its source files and figure out what I need to copy to make it work, but in the worst case this will be a Windows only feature.
The next time I’m posting again, I really hope I can bring you some screenshots. I know the wait is very long, but I’m a single person and this is not a small project!