Hi Milind, It works for me: `frame:CallAfter(function() os.exit() end)` is a rough equivalent of `frame:AddPendingEvent(wx.wxCommandEvent(wx.wxEVT_COMMAND_MENU_SELECTED, ID.EXIT))`.
It should be available for all wxFrame and other classes that inherit from wxEvtHandler. Paul. On Sun, Oct 22, 2023 at 12:04 PM Milind Gupta <milind.gu...@gmail.com> wrote: > > Hi Paul, > I was trying to use the function Callafter as described here: > https://docs.wxwidgets.org/3.0/classwx_evt_handler.html#a63c7351618fd77330d80a250b3719519 > > I checked wxbase_base.i and I see that you have it defined there. But when I > tried to call it and got the error of trying to call a nil value. So I > thought it was not implemented. > I had been trying to compare wxcore_event.i with event.h in > wxwidgets/include/wx directory. Why is the event interface in wxbase? How do > we determine where each include file in wxwidgets ends up in wxlua? > > Also since CallAfter was not there when I compiled the latest wxlua with the > latest wxwidgets is there a compile flag to enable it? > > Thanks, > Milind > > > > On Sat, 21 Oct 2023 at 15:12, Paul K <paulclin...@gmail.com> wrote: >> >> Hi Milind, >> >> > I can follow some things. But now I opened the latest wxwidgets include >> > file for events -event.h and this seems to have transformed a lot. >> > Particularly there are some templates functions like CallAfter. >> >> I'm not sure where the event-related changes came from; have you >> executed any-bind-sync.lua on your version? >> >> I'm not sure what may be needed for additional CallAfter support. I've >> implemented the current one a while ago (it's in wxbase_base.i with an >> override in wxbase_override.hpp). >> >> Is there anything in particular you're looking to add support for? >> It's always better to start with a specific method/class that may be >> missing and to add just it. >> >> Paul. >> >> On Wed, Oct 18, 2023 at 9:19 AM Milind Gupta <milind.gu...@gmail.com> wrote: >> > >> > Thanks for all this information. I was going throught the interface files >> > and to see how they are written I opened the wxwidgets version which the >> > interface file said it was updated to. To see how things changed from the >> > include file to the interface file. >> > I can follow some things. But now I opened the latest wxwidgets >> > include file for events -event.h and this seems to have transformed a lot. >> > Particularly there are some templates functions like CallAfter. Now I am >> > trying to see if there is any existing template function binding in any >> > interface file so I can try to add that. Do you know of any that you >> > looked at, or any idea of any particular thing to take care of to bind >> > templates functions? >> > >> > Thanks, >> > Milind >> > >> > On Tue, Oct 17, 2023, 11:41 PM Paul K <paulclin...@gmail.com> wrote: >> >> >> >> Hi Milind, >> >> >> >> > Apart from binding.html is there any other tutorial or cheat sheet how >> >> > to translate wxWidgets include files to a interface file? >> >> >> >> Not really, but I can suggest looking through some of the existing >> >> bindings (including *_override.hpp files), as there is a variety of >> >> binding from really simple to more complex ones that handle out >> >> parameters and accept/return lua tables instead of lists of values. >> >> >> >> The bindings are quite forgiving and will accept the files that look >> >> like header files; you may need to add `%wxchkver_3_2_1` statements >> >> (as a line or block statement) to indicate when a particular API >> >> change should be applied. The rest should be done by the genwxbind >> >> script; in those cases when something non-standard (or more complex) >> >> needs to be done, you can add an *_override.hpp file to provide the >> >> necessary (manual) binding. >> >> >> >> > In the wxlua/bindings directory readme it says that the output >> >> > bindings are placed at modules/wxbind and modules/wxbindstc. It seems >> >> > wxbindstc is no more. I think stc binding rules place it in >> >> > modules/wxbind. Is this updated to only generate at modules/wxbind? >> >> >> >> Correct; stc has been combined with the rest of the modules in >> >> modules/wxbind. >> >> >> >> > What is the purpose of the files: any-bind-sync.lua, stc-bind-sync.lua? >> >> >> >> Originally all binding updates have been done manually, which may >> >> become quite tedious and difficult to maintain for large release >> >> changes. I wrote any-bind-sync.lua and stc-bind-sync.lua to help with >> >> some of that work. It uses wxwidgets interface files to pull changes >> >> for specific versions and then compares those changes with the >> >> existing bindings to figure out what needs to be updated and what >> >> needs to be added/removed. You still need to pass it a specific >> >> version number, so you can go from 3.2.0 to 3.2.1, but you can't go >> >> from 3.1.0 to 3.2.0, as the script won't know where to get the changes >> >> for intermediate releases. >> >> >> >> It replaces some of the manual work (and only for those classes that >> >> are listed in the script), but still requires reviewing of the >> >> results. It's supposed to only update interface files (*.i) and you >> >> can then simply rerun the bindings generator (genwxbind script) to >> >> apply the changes. Let me know if you have any other questions or run >> >> into any issues with adding classes you're interested in. >> >> >> >> Paul. >> >> >> >> On Tue, Oct 17, 2023 at 12:34 AM Milind Gupta <milind.gu...@gmail.com> >> >> wrote: >> >> > >> >> > Hi, >> >> > A few questions about bindings.Apart from binding.html is there >> >> > any other tutorial or cheat sheet how to translate wxWidgets include >> >> > files to a interface file? >> >> > In the wxlua/bindings directory readme it says that the output >> >> > bindings are placed at modules/wxbind and modules/wxbindstc. It seems >> >> > wxbindstc is no more. I think stc binding rules place it in >> >> > modules/wxbind. Is this updated to only generate at modules/wxbind? >> >> > What is the purpose of the files: any-bind-sync.lua, >> >> > stc-bind-sync.lua? >> >> > >> >> > Thanks, >> >> > Milind >> >> > >> >> > _______________________________________________ >> >> > wxlua-users mailing list >> >> > wxlua-users@lists.sourceforge.net >> >> > https://lists.sourceforge.net/lists/listinfo/wxlua-users >> >> >> >> >> >> _______________________________________________ >> >> wxlua-users mailing list >> >> wxlua-users@lists.sourceforge.net >> >> https://lists.sourceforge.net/lists/listinfo/wxlua-users >> > >> > _______________________________________________ >> > wxlua-users mailing list >> > wxlua-users@lists.sourceforge.net >> > https://lists.sourceforge.net/lists/listinfo/wxlua-users >> >> >> _______________________________________________ >> wxlua-users mailing list >> wxlua-users@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/wxlua-users > > _______________________________________________ > wxlua-users mailing list > wxlua-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wxlua-users _______________________________________________ wxlua-users mailing list wxlua-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wxlua-users