GSoC Weekly report of Harshit Joshi for week 6
This week, I was working on Graphical User Interface (GUI) for Factur-X. The work is done in invoicex-gui repository under invoice-x organisation.
Earlier I had planned using Kivy as UI framework. But I dropped that idea because of Kivy's bug with default Debian 9 (Stretch) touchpad driver. So, now I am using PyQt5 as UI framework for this project. I spent a few days reading and using PyQt5. I have to admit the learning curve is very steep, due to unavailability of proper documentation. For most part I had to rely on Qt5's documentation in C++ and other sources such as StackOverflow and some personal blogs.
I have done the following things for GUI:
- Added basic layout for GUI, including Menubar, Toolbar, Right Side Dock and Central Widget
- Implemented loading of PDF and previewing it in centralWidget. I am using ImageMagick to convert pdf to an image (Done via subprocess).
- As soon as PDF preview is ready, Metadata is loading in Right Side Dock.
I have given minimum attention to the appearance of this application and will improve it in coming weeks.
Next week, I will continue working on GUI and will try to integrate more features from factur-x.