WxWindows for SketchUp Dialogs
-
@unknownuser said:
Have you used the WxFormBuilder? It would be nice to have a straight output compatible with WxSU! There is a beta which works with Python.
Tomasz
or you can export your design to a xrc file (xml style) and load it with xml methods from the Wx module.
xml = Wx::XmlResource.get
xml.load(your_file.xrc)(google for "xrcise", this utility write for you the code needed to load your xrc)
-
@unknownuser said:
I would appreciate any help with solving this strange bugsplat which appears instead of a simple ruby error message in the console.
It happens after triggering an 'evt_button'.It looks like WxSU doesn't handle errors communication between WxRuby and Sketchup.
The best way to get rid of bugsplats is to handle exceptions by yourself, at the end of each method that uses WxSU:
That way, you display the call stack, letting you know where the bug is.rescue => detail puts detail.message puts detail.backtrace.join("\n")
-
@malkomitch said:
The best way to get rid of bugsplats is to handle exceptions by yourself, at the end of each method that uses WxSU:
That way, you display the call stack, letting you know where the bug is.Thanks a lot for your help.
I get a bugsplat when closing SU, but it is definitely better this way.
I though thatbegin ... rescue ... end
is required, but I am glad to hear that rescue alone is sufficient.Writing about xml loading I must say that I prefer to write my own Ruby code based on 'initial' FormBuilder layout, as it helps me better understand WxRuby. Thanks for hint anyway!
Tomasz
-
@unknownuser said:
I thought that
begin ... rescue ... end
is required, but I am glad to hear that rescue alone is sufficient.That is because in module definitions, the
module
statement is a block statement so the wordmodule
works the same asbegin
(after all, themodule
does need anend
.)module My_Module # method defs # code goes here rescue # error handling code else # only do code if no exceptions ensure # always do this code on exit end # the end of the method def
The same is true for
method
definitions, where thedef
keyword 'begins' the block.def my_method # code goes here rescue # error handling code else # only do code if no exceptions ensure # always do this code end # the end of the module
-
@dan rathbun said:
That is because in module definitions, the
module
statement is a block statement so the wordmodule
works the same asbegin
(after all, themodule
does need anend
.)Thanks for the explanation.
Advertisement