|
From: Ryan P. <rpu...@gm...> - 2007-08-01 21:25:57
|
On 8/1/07, Ryan Pusztai <rpu...@gm...> wrote: > > On 8/1/07, John Labenski <jla...@gm...> wrote: > > > > Humm, I do not think you have the current CVS. Please compare your > > apps/build/msw/makefile.gcc. Do you have the variable > > $(__WXLIB_GL_NAME_p)? > > I just downloaded the 7-1-2007 nightly source and it doesn't have that variable in any of the make files located in 'wxLua\build\msw'. That is where I am building from. Is that not the right place? I got my instructions from the website (http://wxlua.sourceforge.net/docs/install.html) under 2. Building on Windows using makefiles. It does have that variable in the 07-31-2007 when I look at the makefile in 'apps/build/msw/makefile.gcc'. -- Regards, Ryan RJP Computing |
|
From: John L. <jla...@gm...> - 2007-08-01 22:22:39
|
On 8/1/07, Ryan Pusztai <rpu...@gm...> wrote: > On 8/1/07, Ryan Pusztai <rpu...@gm...> wrote: > > On 8/1/07, John Labenski <jla...@gm...> wrote: > > > > > Humm, I do not think you have the current CVS. Please compare your > > > apps/build/msw/makefile.gcc. Do you have the variable > > > $(__WXLIB_GL_NAME_p)? > > > > I just downloaded the 7-1-2007 nightly source and it doesn't have that > variable in any of the make files located in 'wxLua\build\msw'. That is > where I am building from. Is that not the right place? I got my instructions > from the website ( > http://wxlua.sourceforge.net/docs/install.html) under 2. > Building on Windows using makefiles. Yes you can use the one in wxLua/build/msw since it just calls make for the makefiles for the modules and apps. > It does have that variable in the 07-31-2007 when I look at the makefile in > 'apps/build/msw/makefile.gcc'. Good, I assume it works correctly now. -John Labenski |
|
From: Andre <ar...@ki...> - 2007-08-02 09:29:13
|
John Labenski <jlabenski@...> writes: > > On 8/1/07, Andre <arpin@...> wrote: > > John Labenski <jlabenski <at> ...> writes: > > > Ok, that's the current CVS. Hopefully you'll get the same results with that. I do not, I am sorry but something is wrong I re-install version 6 of the compiler I got a fresh version of wxlua one hour ago (deleted the old one first) re-install wxwidget from the zip file for version 2.8 and made no changes nmake -f makefile.vc USE_OPENGL=1 (using version 6) wxwidget, stc, wxlua and run my program it fail copy your executable and it works is cvs right? Andre |
|
From: John L. <jla...@gm...> - 2007-08-02 13:48:05
|
On 8/2/07, Andre <ar...@ki...> wrote:
> John Labenski <jlabenski@...> writes:
>
> >
> > On 8/1/07, Andre <arpin@...> wrote:
> > > John Labenski <jlabenski <at> ...> writes:
> > > > Ok, that's the current CVS. Hopefully you'll get the same results with
> that.
>
>
> I do not, I am sorry but something is wrong
>
> I re-install version 6 of the compiler
>
>
> I got a fresh version of wxlua one hour ago (deleted the old one first)
> re-install wxwidget from the zip file for version 2.8 and made no changes
> nmake -f makefile.vc USE_OPENGL=1 (using version 6)
>
> wxwidget, stc, wxlua and run my program it fail
> copy your executable and it works
>
> is cvs right?
Yeah, that's what I use. Specifically, I use the wxWidgets-2.8.4.zip
release, MSVC6 with service pack 5 installed (IMPORTANT!), compiled in
ANSI release mode (do you use unicode?).
Could you send me your program and the steps to take to make it fail?
Thanks,
John Labenski
|
|
From: Andre <ar...@ki...> - 2007-08-02 14:47:25
|
> > Yeah, that's what I use. Specifically, I use the wxWidgets-2.8.4.zip > release, MSVC6 with service pack 5 installed (IMPORTANT!), compiled in > ANSI release mode (do you use unicode?). this is the exact statement used to make the program nmake -f makefile.vc USE_OPENGL=1 no unicode just default except for opengl which is required all the makefile where run this way > > Could you send me your program and the steps to take to make it fail? > posted at sourceforge Thank you Andre |
|
From: Andre <ar...@ki...> - 2007-08-02 15:05:54
|
John Labenski <jlabenski@...> writes: > > Yeah, that's what I use. Specifically, I use the wxWidgets-2.8.4.zip > release, MSVC6 with service pack 5 installed (IMPORTANT!), compiled in > ANSI release mode (do you use unicode?). > I use wxWidgets-2.8.4.tar.gz which should be the same Andre |
|
From: Andre <ar...@ki...> - 2007-08-02 15:54:27
|
> Could you send me your program and the steps to take to make it fail? > On my computer I start getting errors on the console within 10 key strokes. Andre |
|
From: John L. <jla...@gm...> - 2007-08-03 02:03:08
|
I have checked in a fix for it. For reference it can be duplicated
with the code below. It was a tough problem to track down and it is
still not clear to me why it happens on with wxPostEvent with the
constraints that you have to Connect to the event that was posted and
not for other cases I tried. The scenario below follows from tracking
the memory of objects pushed into Lua.
The problem was with the event pushed into Lua for the
wxLuaCallback::CallFunction() event handler. Since we didn't create
it, actually it's on the C++ stack not the heap, it gets deleted when
it goes out of scope in C++ and the memory for it can be reused. Since
Lua has an incremental garbage collector it doesn't call the __gc
method soon enough to clear the key in the object table. Therefore a
new object that by chance was created with the same memory address
would be found in the object table and the old userdata was pushed
into Lua as whatever type it was.
Thanks for reporting it.
John Labenski
=============================
frame = nil
function HandleEvents(event)
local name = event:GetEventObject():DynamicCast("wxWindow"):GetName()
frame:SetStatusText(string.format("%s - selected item %d '%s'",
name, event:GetSelection(), event:GetString()), 0)
local e = wx.wxCommandEvent(wx.wxEVT_COMMAND_BUTTON_CLICKED, 10)
wx.wxPostEvent(frame, e)
end
function main()
frame = wx.wxFrame(wx.NULL, wx.wxID_ANY, "wxLua Choices",
wx.wxDefaultPosition, wx.wxSize(550, 350))
frame:CreateStatusBar(1)
frame:Connect(wx.wxEVT_COMMAND_BUTTON_CLICKED, function(event)
print("hi") end)
local notebook = wx.wxNotebook(frame, wx.wxID_ANY,
wx.wxDefaultPosition, wx.wxSize(410, 300))
--wx.wxNB_BOTTOM)
notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page1")
notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page2")
notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page3")
frame:Connect(wx.wxID_ANY, wx.wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED,
HandleEvents)
frame:Show(true)
end
main()
=========================
|
|
From: John L. <jla...@gm...> - 2007-08-03 03:00:01
|
ps. Andre - your editor looks very good. It is a heck of a test of
wxLua with all the UPDATEUI and IDLE events. :) Please keep us
updated with your progress.
Thanks,
John
On 8/2/07, John Labenski <jla...@gm...> wrote:
> I have checked in a fix for it. For reference it can be duplicated
> with the code below. It was a tough problem to track down and it is
> still not clear to me why it happens on with wxPostEvent with the
> constraints that you have to Connect to the event that was posted and
> not for other cases I tried. The scenario below follows from tracking
> the memory of objects pushed into Lua.
>
> The problem was with the event pushed into Lua for the
> wxLuaCallback::CallFunction() event handler. Since we didn't create
> it, actually it's on the C++ stack not the heap, it gets deleted when
> it goes out of scope in C++ and the memory for it can be reused. Since
> Lua has an incremental garbage collector it doesn't call the __gc
> method soon enough to clear the key in the object table. Therefore a
> new object that by chance was created with the same memory address
> would be found in the object table and the old userdata was pushed
> into Lua as whatever type it was.
>
> Thanks for reporting it.
> John Labenski
>
> =============================
>
> frame = nil
>
> function HandleEvents(event)
> local name = event:GetEventObject():DynamicCast("wxWindow"):GetName()
> frame:SetStatusText(string.format("%s - selected item %d '%s'",
> name, event:GetSelection(), event:GetString()), 0)
>
> local e = wx.wxCommandEvent(wx.wxEVT_COMMAND_BUTTON_CLICKED, 10)
> wx.wxPostEvent(frame, e)
> end
>
> function main()
> frame = wx.wxFrame(wx.NULL, wx.wxID_ANY, "wxLua Choices",
> wx.wxDefaultPosition, wx.wxSize(550, 350))
> frame:CreateStatusBar(1)
>
> frame:Connect(wx.wxEVT_COMMAND_BUTTON_CLICKED, function(event)
> print("hi") end)
>
> local notebook = wx.wxNotebook(frame, wx.wxID_ANY,
> wx.wxDefaultPosition, wx.wxSize(410, 300))
> --wx.wxNB_BOTTOM)
>
> notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page1")
> notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page2")
> notebook:AddPage(wx.wxPanel(notebook, wx.wxID_ANY), "Page3")
>
> frame:Connect(wx.wxID_ANY, wx.wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED,
> HandleEvents)
>
> frame:Show(true)
> end
>
> main()
>
> =========================
>
|
|
From: Andre <ar...@ki...> - 2007-08-03 09:29:16
|
> > ps. Andre - your editor looks very good. It is a heck of a test of > wxLua with all the UPDATEUI and IDLE events. :) Please keep us > updated with your progress. > IT'S WORKING!!! Thanks for the comment. Thank you for all your efforts. I am just amazed at the among of great efforts you are putting into this project. Actually the really twisted part of the editor is the extended use of posted events within posted events. Thanks Andre ================================================ A few neat things. Start the editor enter xyz: selecting wx will allow you to use any class already used your program, selecting wx* will let you use any class from wx. Select some class and some method. Typing xyz: or xyz. again will allow you to use a method or a property from the binded class. Notice if you select a method the parameters are displayed in the status bar. (Binding strike again) right click on the page and select 'remove binding' and you can remove the binding for xyz. If you do not remove the binding then the next time this file is used xyx binding is remembered. ---------------------- If you float over the tab you get the file path Right click on a tab works. Use F7 and you can record a keyboard macro. F8 is used to play it back. Even search are supported withing macro. Search and replaced have been extended and supports book mark. ------------------ This is the default editor (Lua get a special treatment). ----------- many more files are needed to support the full editor. A sub directory is used to support all the languages supported by scite. Macro completion for (if, for, while..) are supported in the property file. Another sub directory is used to support Tools (lua macros). ex: Sort ........................... I keep thinking of new features all the time. Only one more ^_^ |