The same can be viewed at blog.harshitjoshi.in

This week, I was working on Graphical User Interface (GUI) for Factur-X[1].
The work is done in invoicex-gui[2] repository under invoice-x[3]
organisation.

Earlier I had planned using Kivy[4] 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[5] 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.

[1]: https://github.com/invoice-x/factur-x
[2]: https://github.com/invoice-x/invoicex-gui
[3]: https://github.com/invoice-x/
[4]: https://kivy.org
[5]: http://pyqt.sourceforge.net/Docs/PyQt5/

*--*
*Harshit Joshi*
*harshitjoshi.in <http://www.harshitjoshi.in>*

Reply via email to