[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]

[XaraXtreme-commits] Commit Complete



Commit by  : luke
Repository : xara
Revision   : 1108
Date       : Wed May 17 18:03:00 BST 2006

Changed paths:
   M /Trunk/XaraLX/Kernel/dialogop.cpp
   M /Trunk/XaraLX/wxOil/dlgmgr.cpp

Fix blank entries, when opening tabbed dialog after teh first time


Diff:
Index: Trunk/XaraLX/Kernel/dialogop.cpp
===================================================================
--- Trunk/XaraLX/Kernel/dialogop.cpp	(revision 1107)
+++ Trunk/XaraLX/Kernel/dialogop.cpp	(revision 1108)
@@ -3231,6 +3231,14 @@
 
 DialogTabOp::~DialogTabOp()
 {
+	// We must do this before we become a DialogOp (due changes to vtable as
+	// destructors are called)
+	if (WindowID != NULL)
+	{
+		DlgMgr->Delete(WindowID, this);
+		WindowID = NULL;
+	}
+
 	//  Let's get the base class destructor to do all the work shall we
 
 };         
Index: Trunk/XaraLX/wxOil/dlgmgr.cpp
===================================================================
--- Trunk/XaraLX/wxOil/dlgmgr.cpp	(revision 1107)
+++ Trunk/XaraLX/wxOil/dlgmgr.cpp	(revision 1108)
@@ -861,6 +861,14 @@
 	wxWindow * pGadget = NULL;
 	if (id) pGadget = GetGadget(pEvtHandler->pwxWindow, id);
 
+	// We tend to get this second-hand from our child, we handle this differently
+	if( NULL == pGadget &&
+		EventType == wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED )
+	{
+		pGadget = (wxWindow *)event.GetEventObject();
+		TRACEUSER( "jlh92", _T("Notebook = %s
"), PCTSTR(pGadget->GetClassInfo()->GetClassName()) );
+	}
+
 	// Try and find-out whether our control is part of a tabbed dialog page
 	if( NULL != pGadget )
 	{


Xara