Staging
v0.5.0
https://foss.heptapod.net/mercurial/hgview
Revision 43b011f2b5b1ca18ece84e6bc168468f21c52b65 authored by Mads Kiilerich on 04 April 2020, 01:37:48 UTC, committed by Mads Kiilerich on 04 April 2020, 01:37:48 UTC
This widget used multiple inheritance of classes with different __init__
arguments. That doesn't really work reliably when combined with super() that
hides the complexity of calling order. Especially not when sip play tricks to
emulate the Qt class hierarchy in Python.
It would fail with a confusing error about a missing repo argument to
  QAbstractTableModel.__init__(self, parent)

HgRepoListWalker has a public setRepo method which was called at the end of
__init__, forwarding all the __init__ parameters. Change that to a __init__
without parameters, and an expectation of invoking setRepo right after
__init__.

This has the slight disadvantage of potentially exposing partially initialized
objects ... but that is a small and necessary price to pay.
1 parent a13d9df
History
Tip revision: 43b011f2b5b1ca18ece84e6bc168468f21c52b65 authored by Mads Kiilerich on 04 April 2020, 01:37:48 UTC
qt5: simplify initialization of HgRepoListWalker and thus HgRepoListModel
Tip revision: 43b011f
File Mode Size
bin
debian
doc
hgext3rd
hgviewlib
.hgignore -rw-r--r-- 49 bytes
.hgtags -rw-r--r-- 3.8 KB
COPYING -rw-r--r-- 17.6 KB
ChangeLog -rw-r--r-- 5.7 KB
MANIFEST.in -rw-r--r-- 708 bytes
README.rst -rw-r--r-- 2.0 KB
__pkginfo__.py l--------- 24 bytes
setup.py -rw-r--r-- 14.3 KB

README.rst

back to top