[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bindings
Subject:    Re: [Kde-bindings] Qyoto on Windows
From:       Steven Boswell II <ulatekh () yahoo ! com>
Date:       2011-12-05 18:03:04
Message-ID: 1323108184.62467.YahooMailNeo () web36903 ! mail ! mud ! yahoo ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Thanks for the link to the Smoke documentation -- I'll get on that.

Re: "special casing", I think that's the best option.  The alternative is to document \
what's going to screw up if the client code doesn't special-case it.  But from what I \
can tell, that hasn't even been done -- witness the letter to this list from June \
2009, the one that never got answered.  Therefore, I think that proceeding with these \
special cases, and waiting for testers to note where more needs to be done, is the \
right way to go.

Steven Boswell



________________________________
 From: Arno Rehn <arno@arnorehn.de>
To: Steven Boswell II <ulatekh@yahoo.com>; kde-bindings@kde.org 
Sent: Friday, December 2, 2011 10:20 AM
Subject: Re: [Kde-bindings] Qyoto on Windows
 
On Friday 02 December 2011 06:21:14 you wrote:
> That's OK, I understand how things are.  But could you (or someone else on
> this list) point me in the direction of some developer documentation that
> would allow me to understand how Qyoto and Smoke work?  The source-code
> comments aren't much to go on.
There's http://techbase.kde.org/Development/Languages/Smoke with information 
about how Smoke works and how to generate a Smoke library. The example is 
still using the monolithic smoke qt lib, which doesn't exist anymore in the 
newer Smoke versions. But the principle is still the same, except that now you 
do "init_qtcore_smoke", "init_qtgui_smoke" etc...
Qyoto is only a bridge between the Smoke stuff and C#, adding custom 
marshallers (QList<type> -> System.Collections.Generic.List, etc.) and some 
garbage collection handling.

> BTW, in response to my earlier query about SetModel() doing something to
> prevent garbage-collection of the incoming item model, it appears the
> solution is easy, though it involves editing kalyptus-generated files that
> say "DO NOT EDIT".  All I did was add "protected QAbstractItemModel
> m_Model" to QAbstractItemView, and "m_Model = model;" to
> QAbstractItemView.SetModel() and QTreeView.SetModel().  This takes care of
> the problem that I was reproducing in my code.  Granted, there are many
> other places where this would have to be done, but other than editing
> machine-generated files, the idea appears to be sound.
Yep, that's what I meant with 'special casing' specific methods. The problem is 
that there may be more than one way to set a model. So it might work for this 
specfic function call, but in general it still screws up. Iff there's more than 
one way, you have to make sure you keep them all in sync, otherwise it might 
screw up again, etc...


> Steven Boswell
> 
> 
> 
> ________________________________
> From: Arno Rehn <arno@arnorehn.de>
> To: Steven Boswell II <ulatekh@yahoo.com>; KDE bindings for other
> programming languages <kde-bindings@kde.org> Sent: Friday, December 2, 2011
> 7:01 AM
> Subject: Re: [Kde-bindings] Qyoto on Windows
> 
> On Friday 02 December 2011 05:50:00 Steven Boswell II wrote:
> > OK, I'll try your changes sometime today.
> > 
> > I wanted to build my own binaries because I wanted the opportunity to
> > track down bugs.  Your binaries aren't totally functional yet, after
> > all.  Also, I was hoping that someone on this mailing list would know
> > how to modify the existing projects the right way to cope with the
> > Windows build issues.
> 
> If I had more time, I would be willing to help, so that at least the
> buildsystem would work fine on Windows. However I'm quite busy atm and can't
> spare much time.
> I'm afraid your on your own, more or less. But I'll help whenever I can
> spare the time.
-- 
Arno Rehn


[Attachment #5 (text/html)]

<html><body><div style="color:#000; background-color:#fff; font-family:times new \
roman, new york, times, serif;font-size:12pt"><div><span>Thanks for the link to the \
Smoke documentation -- I'll get on \
that.</span></div><div><br><span></span></div><div><span>Re: "special casing", I \
think that's the best option.&nbsp; The alternative is to document what's going to \
screw up if the client code doesn't special-case it.&nbsp; But from what I can tell, \
that hasn't even been done -- witness the letter to this list from June 2009, the one \
that never got answered.&nbsp; Therefore, I think that proceeding with these special \
cases, and waiting for testers to note where more needs to be done, is the right way \
to go.</span></div><div><br><span></span></div><div><span>Steven \
Boswell</span></div><div><br></div>  <div style="font-family: times new roman,new \
york,times,serif; font-size: 12pt;"> <div style="font-family: times new roman,new \
york,times,serif; font-size:  12pt;"> <font face="Arial" size="2"> <hr size="1">  \
<b><span style="font-weight: bold;">From:</span></b> Arno Rehn \
&lt;arno@arnorehn.de&gt;<br> <b><span style="font-weight: bold;">To:</span></b> \
Steven Boswell II &lt;ulatekh@yahoo.com&gt;; kde-bindings@kde.org <br> <b><span \
style="font-weight: bold;">Sent:</span></b> Friday, December 2, 2011 10:20 AM<br> \
<b><span style="font-weight: bold;">Subject:</span></b> Re: [Kde-bindings] Qyoto on \
Windows<br> </font> <br> On Friday 02 December 2011 06:21:14 you wrote:<br>&gt; \
That's OK, I understand how things are.&nbsp; But could you (or someone else \
on<br>&gt; this list) point me in the direction of some developer documentation \
that<br>&gt; would allow me to understand how Qyoto and Smoke work?&nbsp; The \
source-code<br>&gt; comments aren't much to go on.<br>There's \
http://techbase.kde.org/Development/Languages/Smoke with information <br>about how \
Smoke works and how to generate a Smoke library. The example is <br>still using the \
monolithic smoke qt lib, which doesn't exist anymore in the <br>newer Smoke versions. \
But the principle is still the same, except that now you <br>do "init_qtcore_smoke", \
"init_qtgui_smoke" etc...<br>Qyoto is only a bridge between the Smoke stuff and C#, \
adding custom <br>marshallers (QList&lt;type&gt; -&gt; \
System.Collections.Generic.List, etc.) and some <br>garbage collection \
handling.<br><br>&gt; BTW, in response to my earlier query about  SetModel() doing \
something to<br>&gt; prevent garbage-collection of the incoming item model, it \
appears the<br>&gt; solution is easy, though it involves editing kalyptus-generated \
files that<br>&gt; say "DO NOT EDIT".&nbsp; All I did was add "protected \
QAbstractItemModel<br>&gt; m_Model" to QAbstractItemView, and "m_Model = model;" \
to<br>&gt; QAbstractItemView.SetModel() and QTreeView.SetModel().&nbsp; This takes \
care of<br>&gt; the problem that I was reproducing in my code.&nbsp; Granted, there \
are many<br>&gt; other places where this would have to be done, but other than \
editing<br>&gt; machine-generated files, the idea appears to be sound.<br>Yep, that's \
what I meant with 'special casing' specific methods. The problem is <br>that there \
may be more than one way to set a model. So it might work for this <br>specfic \
function call, but in general it still screws up. Iff there's more than <br>one way, \
you have to make sure you keep them all in sync,  otherwise it might <br>screw up \
again, etc...<br><br><br>&gt; Steven Boswell<br>&gt; <br>&gt; <br>&gt; <br>&gt; \
________________________________<br>&gt;&nbsp; From: Arno Rehn &lt;<a \
ymailto="mailto:arno@arnorehn.de" \
href="mailto:arno@arnorehn.de">arno@arnorehn.de</a>&gt;<br>&gt; To: Steven Boswell II \
&lt;<a ymailto="mailto:ulatekh@yahoo.com" \
href="mailto:ulatekh@yahoo.com">ulatekh@yahoo.com</a>&gt;; KDE bindings for \
other<br>&gt; programming languages &lt;<a ymailto="mailto:kde-bindings@kde.org" \
href="mailto:kde-bindings@kde.org">kde-bindings@kde.org</a>&gt; Sent: Friday, \
December 2, 2011<br>&gt; 7:01 AM<br>&gt; Subject: Re: [Kde-bindings] Qyoto on \
Windows<br>&gt; <br>&gt; On Friday 02 December 2011 05:50:00 Steven Boswell II \
wrote:<br>&gt; &gt; OK, I'll try your changes sometime today.<br>&gt; &gt; <br>&gt; \
&gt; I wanted to build my own binaries because I wanted the opportunity to<br>&gt; \
&gt; track down bugs.&nbsp; Your binaries aren't totally  functional yet, \
after<br>&gt; &gt; all.&nbsp; Also, I was hoping that someone on this mailing list \
would know<br>&gt; &gt; how to modify the existing projects the right way to cope \
with the<br>&gt; &gt; Windows build issues.<br>&gt; <br>&gt; If I had more time, I \
would be willing to help, so that at least the<br>&gt; buildsystem would work fine on \
Windows. However I'm quite busy atm and can't<br>&gt; spare much time.<br>&gt; I'm \
afraid your on your own, more or less. But I'll help whenever I can<br>&gt; spare the \
time.<br>-- <br>Arno Rehn<br><br><br> </div> </div>  </div></body></html>



_______________________________________________
Kde-bindings mailing list
Kde-bindings@kde.org
https://mail.kde.org/mailman/listinfo/kde-bindings


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic