<div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 17 May 2018 at 09:23, Phil Thompson <span dir="ltr"><<a href="mailto:phil@riverbankcomputing.com" target="_blank">phil@riverbankcomputing.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 16 May 2018, at 1:57 pm, Denis Rouzaud <<a href="mailto:denis.rouzaud@gmail.com">denis.rouzaud@gmail.com</a>> wrote:<br>
> <br>
> Hi,<br>
> <br>
> In the case of an enum (with Q_ENUM macro), it would be interesting to have a way to get the parent class to be able to get the meta enum from the enum value (enumValue):<br>
> <br>
> base = type(enumValue).parentClass()<br>
> idx = base.staticMetaObject.<wbr>indexOfEnumerator(type(<wbr>enumValue).__name__)<br>
> metaenum = base.staticMetaObject.<wbr>enumerator(idx)<br>
> <br>
> Would it be possible to add this capability to sip.enumType ?<br>
> Either to return the parent class or directly the metaEnum?<br>
<br>
</span>Are you asking for an implementation of QMetaEnum.fromType()?<br>
<br>
For example...<br>
<br>
    metaenum = QMetaEnum.fromType(type(Qt.<wbr>Key_F1))<br>
<span class=""><br>
> Phil, how complicate is it?<br>
> Do you have any interest/plan to do it...?<br>
<br>
</span>It shouldn't be too difficult (famous last words). This area needs an update anyway to add support for Q_ENUM(), Q_FLAG() and Python enum objects.<br>
<br>
I'll see what I can do for PyQt 5.11.<br>
<br>
Phil<br>
______________________________<wbr>_________________<br>
PyQt mailing list    <a href="mailto:PyQt@riverbankcomputing.com">PyQt@riverbankcomputing.com</a><br>
<a href="https://www.riverbankcomputing.com/mailman/listinfo/pyqt" rel="noreferrer" target="_blank">https://www.<wbr>riverbankcomputing.com/<wbr>mailman/listinfo/pyqt</a></blockquote></div></div><div class="gmail_extra"><div style="font-family:tahoma,sans-serif" class="gmail_default"><br></div><div style="font-family:tahoma,sans-serif" class="gmail_default">​I'm not sure whether ​I am hijacking a relevant thread, or whether this can already be done, but I would like to know how to (easily) get the symbolic string for an <span style="font-family:monospace,monospace">ItemDataRole</span> constant:</div><div style="font-family:tahoma,sans-serif" class="gmail_default"><br></div><div class="gmail_default"><span style="font-family:monospace,monospace">class MySqlQueryModel(QSqlQueryModel):<span style="color:rgb(0,0,128);font-weight:bold"><br></span></span></div><div class="gmail_default"><span style="font-family:monospace,monospace"><span style="color:rgb(0,0,128);font-weight:bold">    def </span>data(<span style="color:rgb(148,85,141)">self</span>, index: QtCore.QModelIndex, role: QtCore.Qt.ItemDataRole=QtCore.Qt.DisplayRole) -> typing.Any:</span></div><div class="gmail_default"><span style="font-family:monospace,monospace">        print(role)<br></span></div><div style="font-family:tahoma,sans-serif" class="gmail_default"><span style="font-family:monospace,monospace"></span><br></div><div style="font-family:tahoma,sans-serif" class="gmail_default">​How do I get to print that role as, say, <span style="font-family:monospace,monospace">"DisplayRole"</span> instead of as <span style="font-family:monospace,monospace">0</span>, for debugging?​</div><br><br clear="all"><br>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><span style="font-family:tahoma,sans-serif">Kindest,</span></div><div><span style="font-family:tahoma,sans-serif">Jonathan</span></div></div></div></div></div>
</div></div>