This is the mail archive of the
ecos-patches@sourceware.org
mailing list for the eCos project.
eCos Configuration Tool patch for building against wxWidgets 2.6.x
- From: John Dallaway <jld at ecoscentric dot com>
- To: ecos-patches at ecos dot sourceware dot org
- Cc: Andy Jackson <andy at grapevinetech dot co dot uk>
- Date: Wed, 26 Mar 2008 13:22:25 +0000
- Subject: eCos Configuration Tool patch for building against wxWidgets 2.6.x
The copyright documentation has now been processed by the FSF and I have
checked in Andy Jackson's patch to support building of the eCos
Configuration Tool against wxWidgets 2.6.x. I have made minor changes to
allow the patch to apply correctly to current sources.
John Dallaway
eCosCentric Limited
Index: host/tools/configtool/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/ChangeLog,v
retrieving revision 1.66
diff -u -5 -r1.66 ChangeLog
--- host/tools/configtool/ChangeLog 11 Feb 2008 07:47:09 -0000 1.66
+++ host/tools/configtool/ChangeLog 26 Mar 2008 13:06:27 -0000
@@ -16,10 +16,38 @@
2006-07-11 John Dallaway <jld@ecoscentric.com>
* standalone/wxwin/configtool.cpp: Workaround an exception handling
issue with Cygwin 1.5.20.
+2006-05-01 Andy Jackson <andy@xylanta.com>
+
+ * standalone/wxwin/admindlg.cpp,
+ standalone/wxwin/appsettings.cpp,
+ standalone/wxwin/configitem.cpp,
+ standalone/wxwin/configtool.cpp,
+ standalone/wxwin/configtooldoc.cpp,
+ standalone/wxwin/configtooldoc.h,
+ standalone/wxwin/configtoolview.cpp,
+ standalone/wxwin/configtree.cpp,
+ standalone/wxwin/conflictsdlg.cpp,
+ standalone/wxwin/docsystem.cpp,
+ standalone/wxwin/ecscrolwin.cpp,
+ standalone/wxwin/ecscrolwin.h,
+ standalone/wxwin/ecutils.cpp,
+ standalone/wxwin/ecutils.h,
+ standalone/wxwin/filename.cpp,
+ standalone/wxwin/filename.h,
+ standalone/wxwin/folderdlg.cpp,
+ standalone/wxwin/mainwin.cpp,
+ standalone/wxwin/makefile.gnu,
+ standalone/wxwin/packagesdlg.cpp,
+ standalone/wxwin/packagesdlg.h,
+ standalone/wxwin/platformsdlg.cpp,
+ standalone/wxwin/platformsdlg.h,
+ standalone/wxwin/splittree.cpp: Changes to allow building
+ against current wxWidgets version (2.6.x).
+
2005-07-09 Bart Veer <bartv@ecoscentric.com>
* common/common/build.cxx: add support for C++ files that use a
.cpp suffix
Index: host/tools/configtool/standalone/wxwin/admindlg.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/admindlg.cpp,v
retrieving revision 1.9
diff -u -5 -r1.9 admindlg.cpp
--- host/tools/configtool/standalone/wxwin/admindlg.cpp 14 May 2003 18:16:59 -0000 1.9
+++ host/tools/configtool/standalone/wxwin/admindlg.cpp 26 Mar 2008 13:06:28 -0000
@@ -321,11 +321,16 @@
// remove all package version nodes
wxString pstrPackage(data->m_string);
bool bStatus = TRUE;
+#if wxCHECK_VERSION(2, 6, 0)
+ wxTreeItemIdValue cookie;
+#else
long cookie;
+#endif
+
wxTreeItemId hChildItem = treeCtrl->GetFirstChild (hTreeItem, cookie);
while (hChildItem && bStatus)
{
const wxTreeItemId hNextChildItem = treeCtrl->GetNextSibling (hChildItem);
bStatus = RemovePackageVersion (hChildItem);
Index: host/tools/configtool/standalone/wxwin/appsettings.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/appsettings.cpp,v
retrieving revision 1.14
diff -u -5 -r1.14 appsettings.cpp
--- host/tools/configtool/standalone/wxwin/appsettings.cpp 2 May 2003 13:58:08 -0000 1.14
+++ host/tools/configtool/standalone/wxwin/appsettings.cpp 26 Mar 2008 13:06:28 -0000
@@ -68,10 +68,11 @@
#include "appsettings.h"
#include "configtree.h"
#include "outputwin.h"
#include "shortdescrwin.h"
#include "mainwin.h"
+#include "filename.h"
// For SystemInfo
#ifdef __WXMSW__
#include <windows.h>
#include "wx/msw/winundef.h"
@@ -512,11 +513,15 @@
if(str.IsDir())
{
m_userToolPaths[i] = str;
} else
{
+#if wxCHECK_VERSION(2, 6, 0)
+ m_userToolPaths.RemoveAt(i);
+#else
m_userToolPaths.Remove(i);
+#endif
i--;
}
}
}
else
@@ -530,11 +535,15 @@
if(str.IsDir())
{
m_userToolPaths[i] = str;
} else
{
+#if wxCHECK_VERSION(2, 6, 0)
+ m_userToolPaths.RemoveAt(i);
+#else
m_userToolPaths.Remove(i);
+#endif
i--;
}
}
}
#endif
@@ -765,11 +774,11 @@
const ecFileName& ecSettings::DefaultExternalBrowser()
{
#ifdef __WXMSW__
static bool bFirstTime=TRUE;
if(bFirstTime){
- const ecFileName strFile(ecFileName::GetTempPath()+wxT("index.html"));
+ const ecFileName strFile(ecFileName::EC_GetTempPath()+wxT("index.html"));
wxFile f;
if(f.Create(strFile, TRUE))
{
f.Close();
bool rc=((int) ::FindExecutable(strFile,wxT("."),m_strDefaultExternalBrowser.GetWriteBuf(MAX_PATH))>32);
Index: host/tools/configtool/standalone/wxwin/configitem.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configitem.cpp,v
retrieving revision 1.3
diff -u -5 -r1.3 configitem.cpp
--- host/tools/configtool/standalone/wxwin/configitem.cpp 11 Feb 2008 07:47:09 -0000 1.3
+++ host/tools/configtool/standalone/wxwin/configitem.cpp 26 Mar 2008 13:06:29 -0000
@@ -236,12 +236,17 @@
// Sets the text and icon for this item
bool ecConfigItem::UpdateTreeItem(ecConfigTreeCtrl& treeCtrl)
{
treeCtrl.SetItemText(m_treeItem, m_name);
+#if wxCHECK_VERSION(2, 6, 0)
+ static wxColour normalColour = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT);
+ static wxColour disabledColour = wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT);
+#else
static wxColour normalColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOWTEXT);
static wxColour disabledColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_GRAYTEXT);
+#endif
treeCtrl.SetItemTextColour(m_treeItem, GetActive() ? normalColour : disabledColour);
// Find which icon state we're in so we can get the appropriate icon id
@@ -708,10 +713,25 @@
// Perhaps should store them in an array in the document, as per the MFC tool.
data->SetConfigItem(NULL);
wxGetApp().GetTreeCtrl()->Delete(GetTreeItem());
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = pDoc->GetItems().GetFirst();
+ while (node)
+ {
+ ecConfigItem* item = wxDynamicCast(node->GetData(), ecConfigItem);
+ if (package == item->GetOwnerPackage())
+ {
+ item->SetTreeItem(wxTreeItemId()); // Make sure we can't attempt to paint it
+ item->SetCdlItem(NULL); // Make sure we can't access stale data
+ pDoc->GetItems().DeleteObject(this); // Delete from the item list
+ delete item; // Delete the item itself
+ }
+ node = node->GetNext();
+ }
+#else
wxNode* node = pDoc->GetItems().First();
while (node)
{
ecConfigItem* item = wxDynamicCast(node->Data(), ecConfigItem);
if (package == item->GetOwnerPackage())
@@ -721,10 +741,11 @@
pDoc->GetItems().DeleteObject(this); // Delete from the item list
delete item; // Delete the item itself
}
node = node->Next();
}
+#endif
const wxString strMacroName(GetMacro());
//TRACE (wxT("Unloading package %s\n"), strMacroName);
try {
pDoc->GetCdlConfig()->unload_package (package);
@@ -882,11 +903,15 @@
ecConfigItem *ecConfigItem::FirstChild() const
{
ecConfigTreeCtrl* treeCtrl = wxGetApp().GetTreeCtrl();
- long cookie;
+#if wxCHECK_VERSION(2, 6, 0)
+ wxTreeItemIdValue cookie;
+#else
+ long cookie;
+#endif
wxTreeItemId hChild=treeCtrl->GetFirstChild(GetTreeItem(), cookie);
if (hChild)
{
ecTreeItemData* data = (ecTreeItemData*) wxGetApp().GetTreeCtrl()->GetItemData(hChild);
wxASSERT(data);
Index: host/tools/configtool/standalone/wxwin/configtool.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configtool.cpp,v
retrieving revision 1.20
diff -u -5 -r1.20 configtool.cpp
--- host/tools/configtool/standalone/wxwin/configtool.cpp 11 Jul 2006 09:56:14 -0000 1.20
+++ host/tools/configtool/standalone/wxwin/configtool.cpp 26 Mar 2008 13:06:29 -0000
@@ -300,11 +300,17 @@
wxSize(GetSettings().m_frameSize.width, GetSettings().m_frameSize.height));
m_mainFrame = frame;
SetTopWindow(frame);
frame->Show(TRUE);
+
+#if wxCHECK_VERSION(2, 6, 0)
+ // Don't do anything for now as the function is only for wxWidgets internal use
+#else
SendIdleEvents(); // Otherwise UI updates aren't done, because it's busy loading the repository
+#endif
+
#ifdef __WXMSW__
::UpdateWindow((HWND) frame->GetHWND());
#endif
InitializeWindowSettings(FALSE /* beforeWindowConstruction */) ;
@@ -893,11 +899,14 @@
{
frame->GetOutputWindow()->AppendText(msg /* + wxT("\n") */ );
if ((msg == wxEmptyString) || (msg.Last() != wxT('\n')))
frame->GetOutputWindow()->AppendText(wxT("\n"));
-// frame->GetOutputWindow()->ShowPosition(frame->GetOutputWindow()->GetLastPosition());
+#ifdef __CYGWIN__
+ // Seem to need this under Cygwin to force the last insert point to show
+ frame->GetOutputWindow()->ShowPosition(frame->GetOutputWindow()->GetLastPosition());
+#endif
}
}
void ecApp::SetStatusText(const wxString& text, bool clearFailingRulesPane)
{
Index: host/tools/configtool/standalone/wxwin/configtooldoc.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configtooldoc.cpp,v
retrieving revision 1.15
diff -u -5 -r1.15 configtooldoc.cpp
--- host/tools/configtool/standalone/wxwin/configtooldoc.cpp 14 May 2003 18:16:59 -0000 1.15
+++ host/tools/configtool/standalone/wxwin/configtooldoc.cpp 26 Mar 2008 13:06:31 -0000
@@ -119,16 +119,25 @@
DeleteItems();
}
void ecConfigToolDoc::DeleteItems()
{
+#if wxCHECK_VERSION(2, 6, 0)
+ // Delete any remaining items
+ wxNode* node = m_items.GetFirst();
+ while (node)
+ {
+ ecConfigItem* item = wxDynamicCast(node->GetData(), ecConfigItem);
+ wxNode* next = node->GetNext();
+#else
// Delete any remaining items
wxNode* node = m_items.First();
while (node)
{
ecConfigItem* item = wxDynamicCast(node->Data(), ecConfigItem);
wxNode* next = node->Next();
+#endif
// Note: automatically removes itself from this list in ~ecConfigItem
delete item;
node = next;
}
@@ -295,11 +304,11 @@
ecFileName buildFilename(m_strBuildTree);
ecFileName installFilename(m_strInstallTree);
if (!wxGetApp().GetSettings().m_editSaveFileOnly)
{
- if (!buildFilename.CreateDirectory(FALSE) || !installFilename.CreateDirectory(FALSE))
+ if (!buildFilename.EC_CreateDirectory(FALSE) || !installFilename.EC_CreateDirectory(FALSE))
{
wxString msg;
msg.Printf(_("Failed to save %s"), (const wxChar*) filename);
wxMessageBox(msg, wxGetApp().GetSettings().GetAppName(), wxICON_EXCLAMATION);
@@ -361,11 +370,11 @@
if (CanGenerateBuildTree())
{
ecFileName buildFilename(m_strBuildTree);
ecFileName installFilename(m_strInstallTree);
- if (!buildFilename.CreateDirectory() || !installFilename.CreateDirectory())
+ if (!buildFilename.EC_CreateDirectory() || !installFilename.EC_CreateDirectory())
{
wxString msg;
msg.Printf(_("Failed to create build tree"));
wxMessageBox(msg, wxGetApp().GetSettings().GetAppName(), wxICON_EXCLAMATION);
@@ -508,11 +517,16 @@
//ecConfigToolHint hint(item, ecValueChanged);
ecConfigToolHint hint(NULL, ecSelChanged);
UpdateAllViews (NULL, & hint);
- if(GetItems().Number()>0){
+#if wxCHECK_VERSION(2, 6, 0)
+ if(GetItems().GetCount() > 0)
+#else
+ if(GetItems().Number() > 0)
+#endif
+ {
wxGetApp().GetTreeCtrl()->Expand(rootId);
}
wxGetApp().GetTreeCtrl()->SetFocus();
}
@@ -601,11 +615,15 @@
}
void ecConfigToolDoc::CheckRadios()
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for(nItem=0; nItem < GetItems().GetCount() ; nItem++)
+#else
for(nItem=0; nItem < GetItems().Number() ; nItem++)
+#endif
{
ecConfigItem *pItem=(ecConfigItem*) GetItems()[nItem];
if(pItem->HasRadio () && pItem==pItem->FirstRadio())
{
@@ -646,11 +664,15 @@
// Find the ecConfigItem referencing the given CdlValuable
ecConfigItem * ecConfigToolDoc::Find (CdlValuable v)
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for (nItem=0 ; nItem < m_items.GetCount() ; nItem++)
+#else
for (nItem=0 ; nItem < m_items.Number() ; nItem++)
+#endif
{
ecConfigItem *pItem = (ecConfigItem*) m_items[nItem];
if( v == pItem->GetCdlValuable() )
{
return pItem;
@@ -660,11 +682,15 @@
}
ecConfigItem * ecConfigToolDoc::Find(const wxString & strWhat, ecWhereType where)
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for (nItem=0 ; nItem < m_items.GetCount() ; nItem++)
+#else
for (nItem=0 ; nItem < m_items.Number() ; nItem++)
+#endif
{
ecConfigItem *pItem = (ecConfigItem*) m_items[nItem];
if (pItem->StringValue(where) == strWhat)
{
return pItem;
@@ -1640,17 +1666,27 @@
{
m_ConflictsOutcome=NotDone;
m_arConflictsOfInterest.Clear();
if(parConflictsOfInterest)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = parConflictsOfInterest->GetFirst();
+ while (node)
+ {
+ wxObject* obj = (wxObject*) node->GetData();
+ m_arConflictsOfInterest.Append(obj);
+ node = node->GetNext();
+ }
+#else
wxNode* node = parConflictsOfInterest->First();
while (node)
{
wxObject* obj = (wxObject*) node->Data();
m_arConflictsOfInterest.Append(obj);
node = node->Next();
}
+#endif
}
CdlInferenceCallback fn=CdlTransactionBody::get_inference_callback_fn();
CdlTransactionBody::set_inference_callback_fn(CdlGlobalInferenceHandler);
GetCdlInterpreter()->get_toplevel()->resolve_all_conflicts();
CdlTransactionBody::set_inference_callback_fn(fn);
@@ -1927,11 +1963,11 @@
// Generate headers
try {
ecFileName strPkfConfDir(GetInstallTree());
strPkfConfDir += ecFileName(wxT("include"));
strPkfConfDir += ecFileName(wxT("pkgconf"));
- if ( !strPkfConfDir.CreateDirectory())
+ if ( !strPkfConfDir.EC_CreateDirectory())
{
wxString msg;
msg.Printf(_("Failed to create %s"), (const wxChar*) strPkfConfDir);
wxMessageBox(msg, wxGetApp().GetSettings().GetAppName(), wxICON_EXCLAMATION);
return FALSE;
@@ -2009,15 +2045,15 @@
ecFileName strMLTInstallPkgconfDir(GetInstallTree());
strMLTInstallPkgconfDir = strMLTInstallPkgconfDir + ecFileName(wxT("include"));
strMLTInstallPkgconfDir = strMLTInstallPkgconfDir + ecFileName(wxT("pkgconf"));
bool rc=false;
- if(strMLTInstallPkgconfDir.CreateDirectory(true)){
+ if(strMLTInstallPkgconfDir.EC_CreateDirectory(TRUE)){
const wxString strMLTInstallBase(strMLTInstallPkgconfDir+ecFileName(strSuffix));
const ecFileName strMLTDir (MLTDir());
- if(strMLTDir.CreateDirectory (TRUE))
+ if(strMLTDir.EC_CreateDirectory (TRUE))
{
const wxString strMLTBase (strMLTDir + ecFileName (strSuffix));
// TRACE(_T("Saving memory layout to %s\n"), strMLTBase + _T(".mlt"));
if(MemoryMap.save_memory_layout (strMLTBase + _T(".mlt"))){
// TRACE(_T("Exporting memory layout to %s\n"), strMLTInstallPkgconfDir);
@@ -2040,11 +2076,11 @@
// TRACE (_T("Looking for MLT files at %s\n"), PackagesDir() + m_strMemoryLayoutFolder + _T("include\\pkgconf\\mlt_*.*"));
const ecFileName strInstallDestination(GetInstallTree () + sep + wxString(wxT("include")) + sep + wxT("pkgconf"));
const ecFileName strMLTDestination (MLTDir ());
// TRACE (_T("Copying .ldi and .h files to %s\n"), strInstallDestination);
// TRACE (_T("Copying .mlt files to %s\n"), strMLTDestination);
- bool rc=strInstallDestination.CreateDirectory ( TRUE ) && strMLTDestination.CreateDirectory ( TRUE );
+ bool rc=strInstallDestination.EC_CreateDirectory ( TRUE ) && strMLTDestination.EC_CreateDirectory ( TRUE );
if (rc)
{
wxDir ffFileFind;
wxString fileName;
wxString path = GetPackagesDir();
@@ -2099,12 +2135,17 @@
return str;
}
bool ecConfigToolDoc::ExportFile()
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxFileDialog dialog(wxGetApp().GetTopWindow(), _("Export eCos Minimal Configuration"),
+ wxT(""), wxT(""), wxT("eCos Minimal Configuration (*.ecm)|*.ecm"), wxSAVE|wxOVERWRITE_PROMPT);
+#else
wxFileDialog dialog(wxGetApp().GetTopWindow(), _("Export eCos Minimal Configuration"),
wxT(""), wxT(""), wxT("eCos Minimal Configuration (*.ecm)|*.ecm"), wxSAVE|wxOVERWRITE_PROMPT|wxHIDE_READONLY);
+#endif
if (dialog.ShowModal() == wxID_OK)
{
try {
m_CdlConfig->save (ecUtils::UnicodeToStdStr (dialog.GetPath()), /* minimal = */ true);
@@ -2128,12 +2169,17 @@
return TRUE;
}
bool ecConfigToolDoc::ImportFile()
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxFileDialog dialog(wxGetApp().GetTopWindow(), _("Import eCos Minimal Configuration"),
+ wxT(""), wxT(""), wxT("eCos Minimal Configuration (*.ecm)|*.ecm"), wxOPEN|wxFILE_MUST_EXIST);
+#else
wxFileDialog dialog(wxGetApp().GetTopWindow(), _("Import eCos Minimal Configuration"),
wxT(""), wxT(""), wxT("eCos Minimal Configuration (*.ecm)|*.ecm"), wxOPEN|wxFILE_MUST_EXIST|wxHIDE_READONLY);
+#endif
if (dialog.ShowModal() == wxID_OK)
{
try {
m_CdlConfig->add (ecUtils::UnicodeToStdStr (dialog.GetPath ()), ecConfigToolDoc::CdlParseErrorHandler, ecConfigToolDoc::CdlParseWarningHandler);
Index: host/tools/configtool/standalone/wxwin/configtooldoc.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configtooldoc.h,v
retrieving revision 1.4
diff -u -5 -r1.4 configtooldoc.h
--- host/tools/configtool/standalone/wxwin/configtooldoc.h 10 Aug 2001 19:27:55 -0000 1.4
+++ host/tools/configtool/standalone/wxwin/configtooldoc.h 26 Mar 2008 13:06:31 -0000
@@ -117,11 +117,15 @@
wxList& GetItems() { return m_items; }
ecConfigItem* GetItem(size_t i) { return (ecConfigItem*) m_items[i]; }
CdlBuildInfo& GetBuildInfo() { return m_BuildInfo; }
+#if wxCHECK_VERSION(2, 6, 0)
+ ecConfigItem* GetFirstItem() { return (m_items.GetCount() == 0 ? (ecConfigItem*) NULL : (ecConfigItem*) m_items.GetFirst()->GetData()); }
+#else
ecConfigItem* GetFirstItem() { return (m_items.Number() == 0 ? (ecConfigItem*) NULL : (ecConfigItem*) m_items.First()->Data()); }
+#endif
const wxString GetCurrentTargetPrefix();
const wxString HTMLHelpLinkFileName();
Index: host/tools/configtool/standalone/wxwin/configtoolview.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configtoolview.cpp,v
retrieving revision 1.4
diff -u -5 -r1.4 configtoolview.cpp
--- host/tools/configtool/standalone/wxwin/configtoolview.cpp 14 May 2003 12:20:15 -0000 1.4
+++ host/tools/configtool/standalone/wxwin/configtoolview.cpp 26 Mar 2008 13:06:31 -0000
@@ -157,11 +157,15 @@
break;
case ecAllSaved:
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for(nItem=0;nItem<pDoc->GetItems().GetCount();nItem++)
+#else
for(nItem=0;nItem<pDoc->GetItems().Number();nItem++)
+#endif
{
ecConfigItem *pItem = (ecConfigItem*) pDoc->GetItems()[nItem];
wxTreeItemId treeItem = pItem->GetTreeItem();
if(treeItem){
treeCtrl->SetItemText(treeItem, pItem->GetItemNameOrMacro());
@@ -193,11 +197,15 @@
}
break;
case ecNameFormatChanged:
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for(nItem=0;nItem<pDoc->GetItems().GetCount();nItem++)
+#else
for(nItem=0;nItem<pDoc->GetItems().Number();nItem++)
+#endif
{
ecConfigItem *pItem = (ecConfigItem*) pDoc->GetItems()[nItem];
wxString strName(pItem->GetItemNameOrMacro());
if(pItem->Modified()){
strName+=wxT('*');
@@ -262,11 +270,15 @@
break;
case ecExternallyChanged:
{
int nItem;
+#if wxCHECK_VERSION(2, 6, 0)
+ for(nItem=0;nItem<pDoc->GetItems().GetCount();nItem++)
+#else
for(nItem=0;nItem<pDoc->GetItems().Number();nItem++)
+#endif
{
ecConfigItem *pItem = (ecConfigItem*) pDoc->GetItems()[nItem];
pItem->UpdateTreeItem(* treeCtrl);
}
wxGetApp().GetMainFrame()->UpdateFrameTitle();
@@ -380,12 +392,15 @@
ecConfigItem *ecConfigToolView::DoFind(const wxString& what, wxWindow* parent)
{
ecConfigToolDoc *pDoc = wxGetApp().GetConfigToolDoc();
if (!pDoc)
return NULL;
-
+#if wxCHECK_VERSION(2, 6, 0)
+ int nCount = pDoc->GetItems().GetCount();
+#else
int nCount = pDoc->GetItems().Number();
+#endif
// static LPCTSTR arWhereImage[]={_T("name"),_T("macro"),_T("description string"),_T("current value"),_T("default value")};
wxString strFind(what);
@@ -456,19 +471,26 @@
wxGetApp().GetTreeCtrl()->Collapse(m_expandedForFind);
}
wxTreeItemId h=pItem->GetTreeItem();
// Is h visible?
+
wxTreeItemId hv;
+
for(hv=wxGetApp().GetTreeCtrl()->GetFirstVisibleItem();hv;hv=wxGetApp().GetTreeCtrl()->GetNextVisible(hv))
{
if(hv==h)
{
break;
}
}
+
+#if wxCHECK_VERSION(2, 6, 0)
+ if (!hv.IsOk())
+#else
if (0==hv)
+#endif
{
// we want to record the highest unexpanded item
for(hv=wxGetApp().GetTreeCtrl()->GetItemParent(h);hv;hv=wxGetApp().GetTreeCtrl()->GetItemParent(hv))
{
if (!wxGetApp().GetTreeCtrl()->IsExpanded( hv))
Index: host/tools/configtool/standalone/wxwin/configtree.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/configtree.cpp,v
retrieving revision 1.1
diff -u -5 -r1.1 configtree.cpp
--- host/tools/configtool/standalone/wxwin/configtree.cpp 1 Jun 2001 22:16:30 -0000 1.1
+++ host/tools/configtool/standalone/wxwin/configtree.cpp 26 Mar 2008 13:06:31 -0000
@@ -257,19 +257,23 @@
// Draw the lines on top of the tree
void ecConfigTreeCtrl::OnPaint(wxPaintEvent& event)
{
wxPaintDC dc(this);
-
+
wxTreeCtrl::OnPaint(event);
// Reset the device origin since it may have been set
dc.SetDeviceOrigin(0, 0);
wxSize sz = GetClientSize();
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ wxPen pen(wxSystemSettings::GetColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+#else
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+#endif
dc.SetPen(pen);
dc.SetBrush(* wxTRANSPARENT_BRUSH);
wxSize clientSize = GetClientSize();
wxRect itemRect;
@@ -305,11 +309,15 @@
void ecConfigTreeCtrl::OnMouseEvent(wxMouseEvent& event)
{
int flags = 0;
wxTreeItemId item = HitTest(wxPoint(event.GetX(), event.GetY()), flags);
+#if wxCHECK_VERSION(2, 6, 0)
+ if (!item.IsOk())
+#else
if (item == 0 || !item.IsOk())
+#endif
{
if (event.RightDown())
PopupMenu(wxGetApp().GetWhatsThisMenu(), event.GetX(), event.GetY());
return;
}
@@ -444,20 +452,27 @@
const wxPoint& pos,
const wxSize& sz,
long style):
wxTreeCompanionWindow(parent, id, pos, sz, style)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_LISTBOX));
+#else
SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_LISTBOX));
+#endif
if (!wxGetApp().GetSettings().GetWindowSettings().GetUseDefaults() &&
wxGetApp().GetSettings().GetWindowSettings().GetFont(wxT("Configuration")).Ok())
{
SetFont(wxGetApp().GetSettings().GetWindowSettings().GetFont(wxT("Configuration")));
}
else
+#if wxCHECK_VERSION(2, 6, 0)
+ SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
+#else
SetFont(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
-
+#endif
m_editWindow = NULL;
m_configItem = NULL;
}
@@ -465,12 +480,16 @@
{
wxPaintDC dc(this);
if (!m_treeCtrl)
return;
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ wxPen pen(wxSystemSettings::GetColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+#else
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+#endif
dc.SetPen(pen);
dc.SetBrush(* wxTRANSPARENT_BRUSH);
wxFont font(GetFont());
dc.SetFont(font);
//dc.SetTextForeground(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOWTEXT));
@@ -547,11 +566,15 @@
else if (event.RightDown())
{
// Find if this corresponds to a tree item
int flags = 0;
wxTreeItemId item = m_treeCtrl->HitTest(wxPoint(4, event.GetY()), flags);
+#if wxCHECK_VERSION(2, 6, 0)
+ if (item.IsOk())
+#else
if (item != 0)
+#endif
{
ecConfigItem* configItem = ((ecTreeItemData*) m_treeCtrl->GetItemData(item))->GetConfigItem();
m_treeCtrl->SelectItem(item);
((ecConfigTreeCtrl*) m_treeCtrl)->GetPropertiesMenu()->SetClientData((void*) TRUE);
PopupMenu(((ecConfigTreeCtrl*) m_treeCtrl)->GetPropertiesMenu(), event.GetX(), event.GetY());
@@ -573,13 +596,18 @@
return;
wxString text = item->GetDisplayValue();
if (text.IsEmpty())
return;
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ static wxColour normalColour = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT);
+ static wxColour disabledColour = wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT);
+#else
static wxColour normalColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_WINDOWTEXT);
static wxColour disabledColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_GRAYTEXT);
+#endif
dc.SetTextForeground( (item->GetActive() && (item->GetConfigType() != ecPackage)) ? normalColour : disabledColour );
int textW, textH;
dc.GetTextExtent(text, & textW, & textH);
@@ -730,17 +758,27 @@
return TRUE;
}
wxIconStateInfo* wxIconStateInfoDB::FindInfo(const wxString& name) const
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = GetFirst();
+ while (node)
+ {
+ wxIconStateInfo* info = (wxIconStateInfo*) node->GetData();
+ if (info->GetName() == name)
+ return info;
+ node = node->GetNext();
+#else
wxNode* node = First();
while (node)
{
wxIconStateInfo* info = (wxIconStateInfo*) node->Data();
if (info->GetName() == name)
return info;
node = node->Next();
+#endif
}
return NULL;
}
int wxIconStateInfoDB::GetIconId(const wxString& name, int state, bool enabled) const
@@ -817,11 +855,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk() && ecIsMenuForItem(event))
+#else
if (id != 0 && ecIsMenuForItem(event))
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
wxPoint pt = wxGetMousePosition();
wxString msg;
@@ -848,11 +890,15 @@
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk() && ecIsMenuForItem(event))
+#else
if (id != 0 && ecIsMenuForItem(event))
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
ecConfigPropertiesDialog dialog(wxGetApp().GetTopWindow(), item);
dialog.SetTitle(item->GetName());
@@ -864,11 +910,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk() && ecIsMenuForItem(event))
+#else
if (id != 0 && ecIsMenuForItem(event))
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
if (item->HasModifiedChildren())
{
int ans = wxMessageBox(_("Restore defaults for nested items?"), wxGetApp().GetSettings().GetAppName(), wxYES_NO|wxCANCEL|wxICON_QUESTION);
@@ -930,11 +980,15 @@
}
}
if (bRecurse)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxTreeItemIdValue cookie;
+#else
long cookie;
+#endif
for (h = treeCtrl->GetFirstChild(h, cookie); h; h = treeCtrl->GetNextSibling(h))
{
RestoreDefault (h, TRUE, FALSE);
}
}
@@ -944,11 +998,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk() && ecIsMenuForItem(event))
+#else
if (id != 0 && ecIsMenuForItem(event))
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
item->ViewURL();
}
@@ -960,11 +1018,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk() && ecIsMenuForItem(event))
+#else
if (id != 0 && ecIsMenuForItem(event))
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
item->ViewHeader();
}
@@ -976,11 +1038,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk())
+#else
if (id != 0)
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
if (wxYES == wxMessageBox(_("Are you sure you wish to unload this package?"), wxGetApp().GetSettings().GetAppName(),
wxYES_NO|wxICON_QUESTION))
@@ -995,11 +1061,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk())
+#else
if (id != 0)
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
event.Enable( IsChanged(id, TRUE ) );
}
@@ -1020,11 +1090,15 @@
{
ecConfigTreeCtrl* treeCtrl = (ecConfigTreeCtrl*) FindWindow(ecID_TREE_CTRL);
wxASSERT (treeCtrl != NULL) ;
wxTreeItemId id = treeCtrl->GetSelection();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (id.IsOk())
+#else
if (id != 0)
+#endif
{
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
event.Enable( item->IsPackage() );
}
@@ -1038,11 +1112,15 @@
ecConfigItem* item = ((ecTreeItemData*) treeCtrl->GetItemData(id))->GetConfigItem();
bool rc = item->Modified ();
if(!rc && bRecurse)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxTreeItemIdValue cookie;
+#else
long cookie;
+#endif
for (id=treeCtrl->GetFirstChild(id, cookie);id;id=treeCtrl->GetNextSibling(id))
{
if (IsChanged(id,TRUE))
{
rc=TRUE;
Index: host/tools/configtool/standalone/wxwin/conflictsdlg.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/conflictsdlg.cpp,v
retrieving revision 1.2
diff -u -5 -r1.2 conflictsdlg.cpp
--- host/tools/configtool/standalone/wxwin/conflictsdlg.cpp 18 Jul 2001 11:38:40 -0000 1.2
+++ host/tools/configtool/standalone/wxwin/conflictsdlg.cpp 26 Mar 2008 13:06:31 -0000
@@ -126,14 +126,21 @@
}
ecResolveConflictsDialog::~ecResolveConflictsDialog()
{
m_Map.BeginFind();
+#if wxCHECK_VERSION(2, 6, 0)
+ wxHashTable::Node* node = NULL;
+ while ((node = m_Map.Next()))
+ {
+ SolutionInfo *pInfo = (SolutionInfo*) node->GetData();
+#else
wxNode* node = NULL;
while ((node = m_Map.Next()))
{
SolutionInfo *pInfo = (SolutionInfo*) node->Data();
+#endif
free(pInfo);
}
m_Map.Clear();
// OK to change values again
@@ -213,18 +220,26 @@
{
wxDialog::OnInitDialog(event);
// Select the first item and fill the solution set
m_conflictsCtrl->AddConflicts(m_conflicts);
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ if (m_parConflictsOfInterest && m_parConflictsOfInterest->GetCount()>0)
+#else
if (m_parConflictsOfInterest && m_parConflictsOfInterest->Number()>0)
+#endif
{
wxList &arConflictsOfInterest = *m_parConflictsOfInterest;
int i, j;
for ( i = m_conflictsCtrl->GetItemCount() - 1; i >= 0; --i )
{
+#if wxCHECK_VERSION(2, 6, 0)
+ for ( j = arConflictsOfInterest.GetCount() - 1; j>=0; --j )
+#else
for ( j = arConflictsOfInterest.Number() - 1; j>=0; --j )
+#endif
{
CdlConflict conflict = (CdlConflict)m_conflictsCtrl->GetItemData(i);
if ( ((CdlConflict) arConflictsOfInterest[j]) == conflict )
{
m_conflictsCtrl->SetItemState(i, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
Index: host/tools/configtool/standalone/wxwin/docsystem.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/docsystem.cpp,v
retrieving revision 1.4
diff -u -5 -r1.4 docsystem.cpp
--- host/tools/configtool/standalone/wxwin/docsystem.cpp 25 Apr 2003 09:16:33 -0000 1.4
+++ host/tools/configtool/standalone/wxwin/docsystem.cpp 26 Mar 2008 13:06:32 -0000
@@ -626,23 +626,37 @@
if (!stream.Ok())
return FALSE;
// Pop up a progress dialog
wxProgressDialog dialog(wxGetApp().GetSettings().GetAppName(),
+#if wxCHECK_VERSION(2, 6, 0)
+ _("Compiling documentation index..."), m_indexItems.GetCount(),
+#else
_("Compiling documentation index..."), m_indexItems.Number(),
+#endif
wxGetApp().GetTopWindow());
CreateHHCWriteHeader(stream);
int count = 1;
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = m_indexItems.GetFirst();
+ while (node)
+ {
+ dialog.Update(count);
+ count ++;
+
+ ecIndexItem* item = (ecIndexItem*) node->GetData();
+#else
wxNode* node = m_indexItems.First();
while (node)
{
dialog.Update(count);
count ++;
ecIndexItem* item = (ecIndexItem*) node->Data();
+#endif
wxString filename(item->m_urlToExamine);
wxString urlFilename(item->m_urlToShow);
if (!filename.IsEmpty())
{
@@ -705,11 +719,15 @@
break;
}
}
}
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
// CreateHHCPackagesSection(wxT("Packages"), wxEmptyString, stream, docDir);
CreateHHCWriteFooter(stream);
@@ -837,16 +855,25 @@
m_indexItems.Append(new ecIndexItem(ecIndexEndSection, wxEmptyString, wxEmptyString, wxEmptyString));
}
void ecHtmlIndexer::ClearItems()
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = m_indexItems.GetFirst();
+ while (node)
+ {
+ ecIndexItem* item = (ecIndexItem*) node->GetData();
+ delete item;
+ node = node->GetNext();
+#else
wxNode* node = m_indexItems.First();
while (node)
{
ecIndexItem* item = (ecIndexItem*) node->Data();
delete item;
node = node->Next();
+#endif
}
m_indexItems.Clear();
}
// Set m_useOldDocs to TRUE if we find old-style docs
Index: host/tools/configtool/standalone/wxwin/ecscrolwin.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/ecscrolwin.cpp,v
retrieving revision 1.2
diff -u -5 -r1.2 ecscrolwin.cpp
--- host/tools/configtool/standalone/wxwin/ecscrolwin.cpp 20 May 2002 22:19:28 -0000 1.2
+++ host/tools/configtool/standalone/wxwin/ecscrolwin.cpp 26 Mar 2008 13:06:32 -0000
@@ -659,11 +659,15 @@
cliy = 0;
szy = -1;
}
int dsty;
+#if wxCHECK_VERSION(2, 6, 0)
+ switch ( event.GetKeyCode() )
+#else
switch ( event.KeyCode() )
+#endif
{
case WXK_PAGEUP:
case WXK_PRIOR:
dsty = sty - (5 * cliy / 6);
Scroll(-1, (dsty == -1) ? 0 : dsty);
Index: host/tools/configtool/standalone/wxwin/ecscrolwin.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/ecscrolwin.h,v
retrieving revision 1.2
diff -u -5 -r1.2 ecscrolwin.h
--- host/tools/configtool/standalone/wxwin/ecscrolwin.h 20 May 2002 22:19:28 -0000 1.2
+++ host/tools/configtool/standalone/wxwin/ecscrolwin.h 26 Mar 2008 13:06:32 -0000
@@ -161,11 +161,16 @@
double m_scaleX;
double m_scaleY;
private:
DECLARE_EVENT_TABLE()
+
+#if wxCHECK_VERSION(2, 6, 0)
+ DECLARE_DYNAMIC_CLASS(ecScrolledWindow);
+#else
DECLARE_ABSTRACT_CLASS(ecScrolledWindow)
+#endif
};
#else
class ecScrolledWindow : public wxScrolledWindow
{
Index: host/tools/configtool/standalone/wxwin/ecutils.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/ecutils.cpp,v
retrieving revision 1.6
diff -u -5 -r1.6 ecutils.cpp
--- host/tools/configtool/standalone/wxwin/ecutils.cpp 11 Apr 2003 10:22:36 -0000 1.6
+++ host/tools/configtool/standalone/wxwin/ecutils.cpp 26 Mar 2008 13:06:33 -0000
@@ -610,14 +610,21 @@
}
void wxStringToStringMap::Clear()
{
m_hashTable.BeginFind();
+#if wxCHECK_VERSION(2, 6, 0)
+ wxHashTable::Node* node;
+ while ((node = m_hashTable.Next()))
+ {
+ wxString* str = (wxString*) node->GetData();
+#else
wxNode* node;
while ((node = m_hashTable.Next()))
{
wxString* str = (wxString*) node->Data();
+#endif
delete str;
}
}
void wxStringToStringMap::BeginFind()
@@ -625,14 +632,21 @@
m_hashTable.BeginFind();
}
bool wxStringToStringMap::Next(wxString& key, wxString& value)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxHashTable::Node* node = m_hashTable.Next();
+ if (node)
+ {
+ value = * (wxString*) node->GetData();
+#else
wxNode* node = m_hashTable.Next();
if (node)
{
value = * (wxString*) node->Data();
+#endif
return TRUE;
}
else
return FALSE;
}
@@ -802,17 +816,27 @@
}
// Utility function
void wxRefreshControls(wxWindow* win)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode *node = (wxNode *) win->GetChildren().GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+ win->Refresh();
+ node = node->GetNext();
+ }
+#else
wxNode *node = win->GetChildren().First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
win->Refresh();
node = node->Next();
}
+#endif
}
wxOutputStream& operator <<(wxOutputStream& stream, const wxString& s)
{
stream.Write(s, s.Length());
@@ -859,24 +883,37 @@
* Implements saving/loading of window settings - fonts only for now
*/
wxWindowSettingsObject* wxWindowSettings::FindSettings(const wxString& windowName) const
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = m_settings.GetFirst();
+ while (node)
+ {
+ wxWindowSettingsObject* obj = (wxWindowSettingsObject*) node->GetData();
+ if (obj->m_windowName.CmpNoCase(windowName) == 0)
+ return obj;
+ node = node->GetNext();
+ }
+#else
wxNode* node = m_settings.First();
while (node)
{
wxWindowSettingsObject* obj = (wxWindowSettingsObject*) node->Data();
if (obj->m_windowName.CmpNoCase(windowName) == 0)
return obj;
node = node->Next();
}
+#endif
+
return NULL;
}
bool wxWindowSettings::LoadConfig(wxConfigBase& config)
{
unsigned int i = 0;
+
for (i = 0; i < GetCount(); i++)
{
wxWindowSettingsObject* obj = GetNth(i);
wxString name(obj->m_windowName);
Index: host/tools/configtool/standalone/wxwin/ecutils.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/ecutils.h,v
retrieving revision 1.5
diff -u -5 -r1.5 ecutils.h
--- host/tools/configtool/standalone/wxwin/ecutils.h 11 Apr 2003 10:22:36 -0000 1.5
+++ host/tools/configtool/standalone/wxwin/ecutils.h 26 Mar 2008 13:06:33 -0000
@@ -356,12 +356,18 @@
void SetWindow(const wxString& name, wxWindow* win);
wxArrayPtrVoid* GetWindows(const wxString& name) const;
void SetWindows(const wxString& name, wxArrayPtrVoid& arr);
+#if wxCHECK_VERSION(2, 6, 0)
+ int GetCount() const { return m_settings.GetCount(); }
+ wxWindowSettingsObject* GetNth(int i) const { return (wxWindowSettingsObject*) m_settings.Item(i)->GetData(); }
+#else
+ // Depreciated version
int GetCount() const { return m_settings.Number(); }
wxWindowSettingsObject* GetNth(int i) const { return (wxWindowSettingsObject*) m_settings.Nth(i)->Data(); }
+#endif
wxString GetName(int i) const { return GetNth(i)->m_windowName; }
void SetUseDefaults(bool useDefaults) { m_useDefaults = useDefaults; }
bool GetUseDefaults() const { return m_useDefaults; }
Index: host/tools/configtool/standalone/wxwin/filename.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/filename.cpp,v
retrieving revision 1.7
diff -u -5 -r1.7 filename.cpp
--- host/tools/configtool/standalone/wxwin/filename.cpp 19 Mar 2003 17:39:06 -0000 1.7
+++ host/tools/configtool/standalone/wxwin/filename.cpp 26 Mar 2008 13:06:33 -0000
@@ -369,11 +369,15 @@
return IsFile() || IsDir() ;
}
bool ecFileName::IsDir () const
{
+#if wxCHECK_VERSION(2, 6, 0)
+ return (wxDirExists(* this));
+#else
return wxPathExists(* this);
+#endif
}
bool ecFileName::IsFile () const
{
#if defined(__WXMAC__)
@@ -408,21 +412,21 @@
// On most other platforms, case is important.
return o == (*this);
#endif
}
-ecFileName ecFileName::ExpandEnvironmentStrings(const wxChar* psz)
+ecFileName ecFileName::EC_ExpandEnvironmentStrings(const wxChar* psz)
{
// wxExpandEnvVars is from confbase.h
ecFileName f = wxExpandEnvVars(psz);
return f;
}
-const ecFileName& ecFileName::ExpandEnvironmentStrings()
+const ecFileName& ecFileName::EC_ExpandEnvironmentStrings()
{
- *this=ecFileName::ExpandEnvironmentStrings(*this);
+ *this=ecFileName::EC_ExpandEnvironmentStrings(*this);
return *this;
}
#if 0
// Helper for Relative() psz is in full format.
@@ -461,11 +465,11 @@
*this=ecFileName::Relative(*this,pszRelativeTo);
return *this;
}
-ecFileName ecFileName::GetCurrentDirectory()
+ecFileName ecFileName::EC_GetCurrentDirectory()
{
ecFileName f;
f = wxGetCwd();
f.Normalize();
@@ -523,11 +527,11 @@
ar[i]=0;
return ar;
}
#endif
-ecFileName ecFileName::GetTempPath()
+ecFileName ecFileName::EC_GetTempPath()
{
ecFileName f;
#ifdef __WXMSW__
#ifdef _UNICODE
::GetTempPathW(1+MAX_PATH,f.GetWriteBuf(1+MAX_PATH));
@@ -564,11 +568,11 @@
#endif
return rc;
}
-bool ecFileName::CreateDirectory(bool bParentsToo,bool bFailIfAlreadyExists) const
+bool ecFileName::EC_CreateDirectory(bool bParentsToo,bool bFailIfAlreadyExists) const
{
if(bParentsToo)
{
// Create intermediate directories
@@ -631,11 +635,11 @@
const wxString ecFileName::Root() const
{
return wxPathOnly(*this);
}
-ecFileName ecFileName::SetCurrentDirectory(const wxChar* pszDir)
+ecFileName ecFileName::EC_SetCurrentDirectory(const wxChar* pszDir)
{
const ecFileName strPwd=wxGetCwd();
if (::wxSetWorkingDirectory(pszDir))
return strPwd;
else
Index: host/tools/configtool/standalone/wxwin/filename.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/filename.h,v
retrieving revision 1.2
diff -u -5 -r1.2 filename.h
--- host/tools/configtool/standalone/wxwin/filename.h 16 Jan 2003 17:19:35 -0000 1.2
+++ host/tools/configtool/standalone/wxwin/filename.h 26 Mar 2008 13:06:33 -0000
@@ -60,14 +60,14 @@
class ecFileName : public wxString {
public:
void ReplaceExtension (const wxString& newExt);
// previous directory is returned:
- static ecFileName SetCurrentDirectory (const wxChar* pszDir);
+ static ecFileName EC_SetCurrentDirectory (const wxChar* pszDir);
const wxString Root() const;
const wxString Extension() const;
- static ecFileName GetTempPath();
+ static ecFileName EC_GetTempPath();
bool IsAbsolute() const;
static const wxChar cSep; // The path separator ('\' on windows)
// Standard ctors
@@ -124,13 +124,13 @@
const ecFileName ShortName() const; // the type with ~s in it
const ecFileName Tail() const; // file name sans directory part
const ecFileName Head() const; // directory part
const ecFileName CygPath() const; // path mangled for CygWin
- static ecFileName GetCurrentDirectory();
- const ecFileName& ExpandEnvironmentStrings();
- static ecFileName ExpandEnvironmentStrings(const wxChar* psz);
+ static ecFileName EC_GetCurrentDirectory();
+ const ecFileName& EC_ExpandEnvironmentStrings();
+ static ecFileName EC_ExpandEnvironmentStrings(const wxChar* psz);
// Form path name relative to given parameter (if NULL, current directory)
const ecFileName& MakeRelative(const wxChar* pszRelativeTo=0);
static ecFileName Relative(const wxChar* psz,const wxChar* pszRelativeTo=0);
@@ -149,11 +149,11 @@
time_t LastModificationTime() const;
bool RecursivelyDelete();
- bool CreateDirectory (bool bParentsToo=true,bool bFailIfAlreadyExists=false) const;
+ bool EC_CreateDirectory (bool bParentsToo = TRUE, bool bFailIfAlreadyExists = FALSE) const;
static int FindFiles (const wxString& pszDir,wxArrayString &ar,const wxString& pszPattern=wxT("*.*"),bool bRecurse=TRUE,long dwExclude=wxDIR_DIRS|wxDIR_HIDDEN);
protected:
@@ -172,12 +172,12 @@
};
class wxSaveExcursion {
const ecFileName m_strPrevDir;
public:
- wxSaveExcursion(const wxChar* pszDir) : m_strPrevDir(ecFileName::SetCurrentDirectory(pszDir)) {}
- ~wxSaveExcursion() { ecFileName::SetCurrentDirectory(m_strPrevDir); }
+ wxSaveExcursion(const wxChar* pszDir) : m_strPrevDir(ecFileName::EC_SetCurrentDirectory(pszDir)) {}
+ ~wxSaveExcursion() { ecFileName::EC_SetCurrentDirectory(m_strPrevDir); }
bool Ok() const { return !m_strPrevDir.IsEmpty(); }
};
#endif
// _ECOS_FILENAME_H_
Index: host/tools/configtool/standalone/wxwin/folderdlg.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/folderdlg.cpp,v
retrieving revision 1.1
diff -u -5 -r1.1 folderdlg.cpp
--- host/tools/configtool/standalone/wxwin/folderdlg.cpp 1 Jun 2001 22:16:30 -0000 1.1
+++ host/tools/configtool/standalone/wxwin/folderdlg.cpp 26 Mar 2008 13:06:33 -0000
@@ -98,11 +98,15 @@
comboBox->SetSelection(i);
}
if (comboBox->FindString(m_defaultPath) == -1)
comboBox->Append(m_defaultPath);
+#if wxCHECK_VERSION(2, 6, 0)
+ if (comboBox->GetSelection() == -1)
+#else
if (comboBox->GetSelection() == -1 && comboBox->Number() > 0)
+#endif
comboBox->SetSelection(0);
comboBox->SetFocus();
wxStaticText* staticText = (wxStaticText*) FindWindow(ecID_FOLDER_DIALOG_MSG);
Index: host/tools/configtool/standalone/wxwin/mainwin.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/mainwin.cpp,v
retrieving revision 1.19
diff -u -5 -r1.19 mainwin.cpp
--- host/tools/configtool/standalone/wxwin/mainwin.cpp 11 Feb 2008 07:47:09 -0000 1.19
+++ host/tools/configtool/standalone/wxwin/mainwin.cpp 26 Mar 2008 13:06:34 -0000
@@ -563,22 +563,33 @@
wxRect rect = GetRect();
if (rect != wxGetApp().GetSettings().m_frameSize)
{
double factorX = ((double) rect.GetWidth() / (double) wxGetApp().GetSettings().m_frameSize.GetWidth());
double factorY = ((double) rect.GetHeight() / (double) wxGetApp().GetSettings().m_frameSize.GetHeight());
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = (wxNode *) GetChildren().GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+#else
wxNode* node = GetChildren().First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
+#endif
if (win->IsKindOf(CLASSINFO(wxSashLayoutWindow)))
{
wxSashLayoutWindow* sashWin = (wxSashLayoutWindow*) win;
wxSize sz = sashWin->GetSize();
sashWin->SetDefaultSize(wxSize((int) ((double) sz.x * factorX), (int) ((double) sz.y * factorY)));
}
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
}
wxLayoutAlgorithm layout;
layout.LayoutFrame(this);
@@ -855,30 +866,45 @@
wxLayoutAlgorithm layout;
if (!layout.LayoutFrame(this))
{
// If layout failed, restored default sizes.
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = (wxNode *) GetChildren().GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+#else
wxNode* node = GetChildren().First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
+#endif
if (win->IsKindOf(CLASSINFO(wxSashLayoutWindow)))
{
wxSashLayoutWindow* sashWin = (wxSashLayoutWindow*) win;
wxSize sz = sashWin->GetSize();
sashWin->SetDefaultSize(sz);
}
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
}
}
void ecMainFrame::OnIdle(wxIdleEvent& event)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ // Doesn't event handlling happen anyway?
+#else
// Normal idle processing
wxFrame::OnIdle(event);
+#endif
wxString text;
if (GetStatusBar())
text = GetStatusBar()->GetStatusText(0);
@@ -953,41 +979,67 @@
}
// Get all visible sash windows
void ecMainFrame::GetSashWindows(wxList& list)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = (wxNode *) GetChildren().GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+#else
wxNode* node = GetChildren().First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
+#endif
if (win->IsKindOf(CLASSINFO(wxSashLayoutWindow)) && win->IsShown())
{
list.Append(win);
}
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
}
// Divide the given space evenly amongst some windows
void ecMainFrame::DivideSpaceEvenly(wxList& list, const wxSize& space, int orient)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ if (list.GetCount() == 0)
+#else
if (list.Number() == 0)
+#endif
return;
// Find total size first
int totalSize = 0;
double proportion = 0.0;
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = list.GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+#else
wxNode* node = list.First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
+#endif
wxSize sz = win->GetSize();
if (orient == wxHORIZONTAL)
totalSize += sz.x;
else
totalSize += sz.y;
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
if (orient == wxHORIZONTAL)
{
if (totalSize == 0)
return;
@@ -999,34 +1051,57 @@
if (totalSize == 0)
return;
proportion = ((double) space.y / (double) totalSize);
}
+
+#if wxCHECK_VERSION(2, 6, 0)
+ node = list.GetFirst();
+ while (node)
+ {
+ wxWindow* win = (wxWindow*) node->GetData();
+#else
node = list.First();
while (node)
{
wxWindow* win = (wxWindow*) node->Data();
+#endif
wxSize sz = win->GetSize();
if (orient == wxHORIZONTAL)
sz.x = (int) (sz.x * proportion);
else
sz.y = (int) (sz.y * proportion);
win->SetSize(sz);
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
}
// Restore the sash window default size from the actual window size
void ecMainFrame::RestoreDefaultWindowSizes(wxList& list)
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = list.GetFirst();
+ while (node)
+ {
+ wxSashLayoutWindow* sashWin = (wxSashLayoutWindow*) node->GetData();
+#else
wxNode* node = list.First();
while (node)
{
wxSashLayoutWindow* sashWin = (wxSashLayoutWindow*) node->Data();
+#endif
wxSize sz = sashWin->GetSize();
sashWin->SetDefaultSize(sz);
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
}
void ecMainFrame::OnHelpEcos(wxCommandEvent& event)
{
Index: host/tools/configtool/standalone/wxwin/makefile.gnu
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/makefile.gnu,v
retrieving revision 1.11
diff -u -5 -r1.11 makefile.gnu
--- host/tools/configtool/standalone/wxwin/makefile.gnu 14 May 2003 12:20:15 -0000 1.11
+++ host/tools/configtool/standalone/wxwin/makefile.gnu 26 Mar 2008 13:06:34 -0000
@@ -24,18 +24,20 @@
-DecUSE_EXPERIMENTAL_CODE=$(USEEXPERIMENTALCODE)
EXTRALDFLAGS=-L$(TCLDIR)/lib -L$(INSTALLDIR)/lib -lcdl -lcyginfra -ltcl
ifneq (,$(findstring CYGWIN, $(shell uname)))
PROGRAM=configtool.exe
- CPPFLAGS=`$(WXDIR)/bin/wx-config --cppflags` -D_WIN32 -D__WIN32__ -DSTRICT
+ CPPFLAGS=`$(WXDIR)/bin/wx-config --cppflags` -D_WIN32 -D__WIN32__ -DSTRICT -D__USE_W32_SOCKETS
LDFLAGS=`$(WXDIR)/bin/wx-config --libs` -lshlwapi -Wl,--subsystem,windows
EXTRAOBJECTS=$(CTBUILDDIR)/configtoolres.o
+ RCFLAGS=`$(WXDIR)/bin/wx-config --cppflags`
else
PROGRAM=configtool
CPPFLAGS=`$(WXDIR)/bin/wx-config --cppflags`
LDFLAGS=`$(WXDIR)/bin/wx-config --libs`
EXTRAOBJECTS=
+ RCFLAGS=`$(WXDIR)/bin/wx-config --cppflags`
endif
ifeq "$(DEBUG)" ""
CPPDEBUGOPTIONS=-O2
else
@@ -105,20 +107,20 @@
$(CTBUILDDIR)/$(PROGRAM): $(OBJECTS) $(EXTRAOBJECTS)
$(CC) -o $@ $(OBJECTS) $(EXTRAOBJECTS) $(EXTRALDFLAGS) $(LDFLAGS)
install: $(CTBUILDDIR)/$(PROGRAM)
- install -s $< $(INSTALLDIR)/bin
+ install -D -s $< $(INSTALLDIR)/bin/$(PROGRAM)
.cpp.o :
$(CC) $(CPPDEBUGOPTIONS) -c $(EXTRACPPFLAGS) $(CPPFLAGS) -o $@ $<
.cxx.o :
$(CC) $(CPPDEBUGOPTIONS) -c $(EXTRACPPFLAGS) $(CPPFLAGS) -o $@ $<
$(CTBUILDDIR)/configtoolres.o: $(CTDIR)/configtool.rc
- $(RESCOMP) -i $< -o $@ --preprocessor "$(CC) -c -E -xc-header -DRC_INVOKED" --include-dir $(WXDIR)/include --include-dir $(CTDIR) --define __GNUWIN32__
+ $(RESCOMP) -i $< -o $@ --preprocessor "$(CC) -c -E -xc-header -DRC_INVOKED" $(RCFLAGS) --include-dir $(CTDIR) --define __GNUWIN32__
clean:
rm -f $(CTBUILDDIR)/$(PROGRAM) $(CTBUILDDIR)/*.o
### GUI Configtool files
Index: host/tools/configtool/standalone/wxwin/packagesdlg.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/packagesdlg.cpp,v
retrieving revision 1.5
diff -u -5 -r1.5 packagesdlg.cpp
--- host/tools/configtool/standalone/wxwin/packagesdlg.cpp 14 May 2003 12:20:15 -0000 1.5
+++ host/tools/configtool/standalone/wxwin/packagesdlg.cpp 26 Mar 2008 13:06:35 -0000
@@ -496,11 +496,15 @@
wxString str = from -> GetString(selections[i]);
selectionsStrings.Add(str);
}
// Now delete from one list and remove from t'other
+#if wxCHECK_VERSION(2, 6, 0)
+ for (i = 0; i < selectionsStrings.GetCount(); i++)
+#else
for (i = 0; i < selectionsStrings.Number(); i++)
+#endif
{
wxString str = selectionsStrings[i];
// Remove
int toDelete = from -> FindString(str);
Index: host/tools/configtool/standalone/wxwin/packagesdlg.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/packagesdlg.h,v
retrieving revision 1.2
diff -u -5 -r1.2 packagesdlg.h
--- host/tools/configtool/standalone/wxwin/packagesdlg.h 15 Dec 2001 13:42:19 -0000 1.2
+++ host/tools/configtool/standalone/wxwin/packagesdlg.h 26 Mar 2008 13:06:35 -0000
@@ -121,11 +121,15 @@
// For each word in keywords, is it contained in 'str'?
bool MatchesKeyword(wxArrayString& keywords, const wxString& str);
//// Accessors
bool IsAdded(const wxString& str) ;
+#if wxCHECK_VERSION(2, 6, 0)
+ int GetCount() const { return m_items.GetCount(); }
+#else
int GetCount() const { return m_items.Number(); }
+#endif
wxString GetVersion (const wxString& item);
protected:
private:
Index: host/tools/configtool/standalone/wxwin/platformsdlg.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/platformsdlg.cpp,v
retrieving revision 1.1
diff -u -5 -r1.1 platformsdlg.cpp
--- host/tools/configtool/standalone/wxwin/platformsdlg.cpp 1 Jun 2001 22:16:30 -0000 1.1
+++ host/tools/configtool/standalone/wxwin/platformsdlg.cpp 26 Mar 2008 13:06:35 -0000
@@ -116,16 +116,25 @@
Clear();
}
void ecPlatformsDialog::Clear()
{
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = m_arTargetInfo.GetFirst();
+ while (node)
+ {
+ CeCosTestPlatform* platform = (CeCosTestPlatform*) node->GetData();
+ delete platform;
+ node = node->GetNext();
+#else
wxNode* node = m_arTargetInfo.First();
while (node)
{
CeCosTestPlatform* platform = (CeCosTestPlatform*) node->Data();
delete platform;
node = node->Next();
+#endif
}
m_arTargetInfo.Clear();
}
void ecPlatformsDialog::CreateControls(wxWindow* parent)
@@ -281,11 +290,15 @@
{
if (wxYES == wxMessageBox(wxT("Are you sure you wish to delete this platform?"), wxGetApp().GetSettings().GetAppName(), wxICON_EXCLAMATION|wxYES_NO, this))
{
delete Platform(sel);
m_listCtrl->DeleteItem(sel);
+#if wxCHECK_VERSION(2, 6, 0)
+ delete m_arTargetInfo.Item(sel);
+#else
delete m_arTargetInfo.Nth(sel);
+#endif
whereFrom = 0;
}
}
} while (sel > -1) ;
}
Index: host/tools/configtool/standalone/wxwin/platformsdlg.h
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/platformsdlg.h,v
retrieving revision 1.1
diff -u -5 -r1.1 platformsdlg.h
--- host/tools/configtool/standalone/wxwin/platformsdlg.h 1 Jun 2001 22:16:30 -0000 1.1
+++ host/tools/configtool/standalone/wxwin/platformsdlg.h 26 Mar 2008 13:06:35 -0000
@@ -105,11 +105,16 @@
//// Operations
void CreateControls(wxWindow* parent);
CeCosTestPlatform *Platform (int i) { return (CeCosTestPlatform *) m_arTargetInfo[i]; }
+
+#if wxCHECK_VERSION(2, 6, 0)
+ unsigned int PlatformCount() const { return m_arTargetInfo.GetCount(); }
+#else
unsigned int PlatformCount() const { return m_arTargetInfo.Number(); }
+#endif
void Add(const CeCosTestPlatform &ti);
void Clear();
protected:
Index: host/tools/configtool/standalone/wxwin/splittree.cpp
===================================================================
RCS file: /cvs/ecos/ecos/host/tools/configtool/standalone/wxwin/splittree.cpp,v
retrieving revision 1.4
diff -u -5 -r1.4 splittree.cpp
--- host/tools/configtool/standalone/wxwin/splittree.cpp 26 Mar 2003 12:08:38 -0000 1.4
+++ host/tools/configtool/standalone/wxwin/splittree.cpp 26 Mar 2008 13:06:35 -0000
@@ -203,11 +203,15 @@
#ifdef __WXMSW__
if (!IsKindOf(CLASSINFO(wxGenericTreeCtrl)))
{
UINT sbCode = SB_THUMBPOSITION;
HWND vertScrollBar = 0;
+#if wxCHECK_VERSION(2, 6, 0)
+ MSWDefWindowProc((WXUINT) WM_VSCROLL, MAKELONG(sbCode, posVert), (WXLPARAM) vertScrollBar);
+#else
MSWDefWindowProc((WXUINT) WM_VSCROLL, MAKELONG(sbCode, posVert), (WXHWND) vertScrollBar);
+#endif
}
else
#endif
{
wxGenericTreeCtrl* win = (wxGenericTreeCtrl*) this;
@@ -336,13 +340,21 @@
if (GetBoundingRect(id, itemSize))
{
rect = CombineRectangles(rect, itemSize);
}
+#if wxCHECK_VERSION(2, 6, 0)
+ wxTreeItemIdValue cookie;
+ wxTreeItemId childId = GetFirstChild(id, cookie);
+
+ while (childId.IsOk())
+#else
long cookie;
wxTreeItemId childId = GetFirstChild(id, cookie);
+
while (childId != 0)
+#endif
{
CalcTreeSize(childId, rect);
childId = GetNextChild(childId, cookie);
}
}
@@ -424,15 +436,23 @@
{
wxPaintDC dc(this);
if (!m_treeCtrl)
return;
-
+
+#if wxCHECK_VERSION(2, 6, 0)
+ wxPen pen(wxSystemSettings::GetColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+ dc.SetPen(pen);
+ dc.SetBrush(* wxTRANSPARENT_BRUSH);
+ wxFont font(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
+#else
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
dc.SetPen(pen);
dc.SetBrush(* wxTRANSPARENT_BRUSH);
wxFont font(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
+#endif
+
dc.SetFont(font);
wxSize clientSize = GetClientSize();
wxRect itemRect;
int cy=0;
@@ -527,12 +547,19 @@
int w, h;
GetClientSize(&w, &h);
if ( m_splitMode == wxSPLIT_VERTICAL )
{
+#if wxCHECK_VERSION(2, 6, 0)
+ // The variables below don't seem to exist....
+ wxPen pen(wxSystemSettings::GetColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+ dc.SetPen(pen);
+ dc.SetBrush(* wxTRANSPARENT_BRUSH);
+#else
dc.SetPen(* m_facePen);
dc.SetBrush(* m_faceBrush);
+#endif
int h1 = h-1;
int y1 = 0;
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
h1 += 1; // Not sure why this is necessary...
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
@@ -541,12 +568,19 @@
}
dc.DrawRectangle(m_sashPosition, y1, m_sashSize, h1);
}
else
{
+#if wxCHECK_VERSION(2, 6, 0)
+ // The variables below don't seem to exist....
+ wxPen pen(wxSystemSettings::GetColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
+ dc.SetPen(pen);
+ dc.SetBrush(* wxTRANSPARENT_BRUSH);
+#else
dc.SetPen(* m_facePen);
dc.SetBrush(* m_faceBrush);
+#endif
int w1 = w-1;
int x1 = 0;
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
w1 ++;
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
@@ -585,13 +619,19 @@
}
void wxSplitterScrolledWindow::OnSize(wxSizeEvent& event)
{
wxSize sz = GetClientSize();
+#if wxCHECK_VERSION(2, 6, 0)
+ if (GetChildren().GetFirst())
+ {
+ ((wxWindow*) GetChildren().GetFirst()->GetData())->SetSize(0, 0, sz.x, sz.y);
+#else
if (GetChildren().First())
{
((wxWindow*) GetChildren().First()->Data())->SetSize(0, 0, sz.x, sz.y);
+#endif
}
}
void wxSplitterScrolledWindow::OnScroll(wxScrollWinEvent& event)
{
@@ -638,24 +678,36 @@
{
m_yScrollPosition += nScrollInc;
}
// Find targets in splitter window and send the event to them
+
+#if wxCHECK_VERSION(2, 6, 0)
+ wxNode* node = (wxNode *) GetChildren().GetFirst();
+ while (node)
+ {
+ wxWindow* child = (wxWindow*) node->GetData();
+#else
wxNode* node = GetChildren().First();
while (node)
{
wxWindow* child = (wxWindow*) node->Data();
+#endif
if (child->IsKindOf(CLASSINFO(wxSplitterWindow)))
{
wxSplitterWindow* splitter = (wxSplitterWindow*) child;
if (splitter->GetWindow1())
splitter->GetWindow1()->ProcessEvent(event);
if (splitter->GetWindow2())
splitter->GetWindow2()->ProcessEvent(event);
break;
}
+#if wxCHECK_VERSION(2, 6, 0)
+ node = node->GetNext();
+#else
node = node->Next();
+#endif
}
#ifdef __WXMAC__
m_targetWindow->MacUpdateImmediately() ;
#endif