Matthias,
I'm not sure I can safely know what is affected by the changes. Here's what I know.
My application is started this way:
klayout -z -rx -rm #{loader} -rd program=#{my_program}
The 'loader' above creates Qt interfaces from .ui files. My…
Some code that I hope will reduce my debt to others. It handles the tooltip problem.
Dave
# == Synopsis# Set up a filter class to be used app-wide to catch Qt# tool tip, and interrupt key events.# Move this into a module for your app. class EventF…
Matthias,
I have not been watching the source code, but have you had a chance to implement the popup solution mentioned here? If not, do you have an idea when you might be able to do it? I know I'm doing some begging here, but it would help me pl…
Matthias,
I understand your points - especially the threading problem.
It would be very nice to have your pop-up proposal solution.
If you make this change I hope you can let me know and I'll
put it right to use.
Perhaps later on the general obser…
Matthias,
Your willingness to address this is MUCH appreciated.
If it is possible to register a Ruby method to be called by progress_check(), it would be ideal. You see, I need the ability to:
* Update any dialogs (simply giving Qt a chance to u…
Mattias,
My app does not show the main window. It did not occur to me to look there - silly of me. Though I encourage KLayout use (of course with the main window), this app does not show it.
As I alluded to in my prior remarks I need both an ind…
These look related. The GDS2Reader class calls a function
progress_check() every time it reads a BGNSTR (begin structure)
in a GDS2 file. In C++ I would define this progress_check()
function to see if my application issued a cancel where I would
r…
Thanks Matthias.
Yes, your assumption is correct. I have tool tips for nearly
everything in the application. Once users are comfortable with
the application, they normally click a checkbox to turn these
tips off - at least that's how it worked un…
Thank you Matthias for your incite and assistance. You are always
remarkably helpful.
It might be handy to have iterator methods in CellInstArray. This
allows each element of the array to be presented to another tool.
In my case, I needed three t…
I did the math. The following code returns the origins of each
instance and from that I get the bounding boxes:
# This require is for the next aref-related methods.require 'matrix'# Returns an array of CellInstArray attributes:# * the displaceme…
Thank you. You actually helped with two questions. Firstly, I understand how to most efficiently get a bbox, and secondly, (this may come in handy for other forum readers) your code showed me how to make an undefined bbox suitable for starting to …
Matthias,
OK, I'll check that possibility. Thanks so much for having a look.
My application starts KLayout and invokes a ruby script. That script loads
the fbapi.so. Functions in the fbapi.so are swig-created wrappers of my own
code and they, in…
(I have been gone a few days on vacation)
Matthias,
Wonderful! Your fixes will help me make progress.
Regarding your notes:
* require 'Qt' removal seems to make sense, I seem to have had problems that are consistent with a conflict.
* I'm not …
Matthias,
I have stripped out a small sample of code from my unit tests to remove complexity. Below Is code that catches events delivered by sendEvent() in one type of run and NOT in another.
require 'Qt'include RBAAPP ||= Application::instanceOK…
Hi Matthias,
Thanks for the information. I will try _unmanage when I have a chance to recompile. FYI: the 0.24
python eval version did not have _unmanage in it or I do not understand how to invoke it.
The management of memory between C++ and Rub…
Matthias,
By "loads more than I need or want" I meant that I don't want to load anything but the minimum I need to run a test so as to minimize variables outside my control. Since I don't know precisely what gets included/excluded by the…
In order to not get this message in my unit tests:
Fatal: QWidget: Cannot create a QWidget when no GUI is being used
I use this at the beginning of my unit tests:
$qAPP ||= Qt::Application.new([])
$qAPP is apparently used by qtruby to hold the i…
Follow up:
I am able to build a QTableWidget instance and override its keyPressEvent. Unfortunately, it means
that I cannot use QtDesigner to setup the table and write a .ui file. Instead have manually instantiated
a QTableWidget and written a 30 …
Matthias, David, Chris,
Here is a simple test that shows how I'm trying to override the keyPressEvent method
and failing. When I tried this with a table NOT from QtDesigner (.ui file loaded by
QFormBuilder), the keyPressEvent method does get over…
Hi David,
My table has 3 columns and exactly one column is editable in all rows. The tab key moves me from left to right before moving down. Tab key cell changes are not affected whether the items are set to be editable or non-editable.
I want th…
Matthias,
Thank you. I am using 0.24 Python eval because it was suggested I move from 0.23. The goal was to get better behavior from enums that seemed to be missing or inaccessible in 0.23 as arguments of ruby calls to Qt.
I am getting exactly t…
David, Chris,
I suspect I am able to override the keyPressEvent method but the slot/signal routing is still invoking the original keyPressEvent method. If this is the problem, I'll have to learn how to fix it.
Dave
David,
I am given an instance of QTableWidget not an instance of a derived class of QTableWidget. My attempts to override the method in the instance failed. My attempts to chain my version of keyPressEvent() with my instance's original version fa…
David,
Thanks for the pointer. FYI: I found key bindings under File->Setup->Application->Key Bindings. The key press event was not caught by Chris' code without freeing up the tab key - just as you said. I'm sure you saved me hours digg…
The following code better explains what I'm attempting. It works but is not using Qt - I've just used the same names for an analogy:
class QTableWidget protected def keyPressEvent(arg) puts "org keyPressEvent(#{arg})" end…
David,
Thanks so much for your help. I have tried so many things and am so confused I'm not sure what makes sense to post. Here's some code that I tried to intercept the keyPressEvent, insert my code, and call the original:
Given that my variabl…