Partial copy of your old code.
From ed491236a0dd05a647fd06cbcaca465a22ac5c7e Mon Sep 17 00:00:00 2001
From: oBFusCATed <fuscated@gmail.com>
Date: Tue, 6 May 2014 01:04:05 +0300
Subject: [PATCH] - build fixes to make C::B compatible with wx build with stl
support
---
src/include/toolsmanager.h | 2 +-
src/plugins/compilergcc/compiler_defs.cpp | 25 ++++++++----------
src/plugins/compilergcc/compilergcc.cpp | 6 ++---
.../KWIC/src/wx/KWIC/BmpSwitcher.cpp | 18 ++++---------
src/sdk/toolsmanager.cpp | 30 ++++++++--------------
5 files changed, 31 insertions(+), 50 deletions(-)
diff --git a/src/include/toolsmanager.h b/src/include/toolsmanager.h
index 9db68d33f..3eeb9ba05 100644
--- a/src/include/toolsmanager.h
+++ b/src/include/toolsmanager.h
@@ -43,7 +43,7 @@ class DLLIMPORT ToolsManager : public Mgr<ToolsManager>, public wxEvtHandler
private:
ToolsManager();
~ToolsManager();
- void DoRemoveTool(ToolsList::Node* node);
+
int Configure();
bool Execute(const cbTool* tool);
void LoadTools();
diff --git a/src/plugins/compilergcc/compiler_defs.cpp b/src/plugins/compilergcc/compiler_defs.cpp
index 293f51e3c..a5eb4d97e 100644
--- a/src/plugins/compilergcc/compiler_defs.cpp
+++ b/src/plugins/compilergcc/compiler_defs.cpp
@@ -54,30 +54,27 @@ void CompilerQueue::Add(CompilerCommand* cmd)
void CompilerQueue::Add(CompilerQueue* queue)
{
- wxCompilerCommandsNode* node = queue->m_Commands.GetFirst();
- while (node)
+ for (CompilerCommands::iterator it = queue->m_Commands.begin(); it != queue->m_Commands.end(); ++it)
{
- if (node->GetData())
- Add(new CompilerCommand(*(node->GetData())));
- node = node->GetNext();
+ if (*it)
+ Add(new CompilerCommand(**it));
}
}
CompilerCommand* CompilerQueue::Peek()
{
- wxCompilerCommandsNode* node = m_Commands.GetFirst();
- if (!node)
- return 0;
- return node->GetData();
+ if (m_Commands.empty())
+ return nullptr;
+ else
+ return m_Commands.front();
}
CompilerCommand* CompilerQueue::Next()
{
- wxCompilerCommandsNode* node = m_Commands.GetFirst();
- if (!node)
- return 0;
- CompilerCommand* cmd = node->GetData();
- m_Commands.Erase(node);
+ if (m_Commands.empty())
+ return nullptr;
+ CompilerCommand* cmd = m_Commands.front();
+ m_Commands.pop_front();
m_LastWasRun = cmd ? cmd->isRun : false;
return cmd;
}
diff --git a/src/plugins/compilergcc/compilergcc.cpp b/src/plugins/compilergcc/compilergcc.cpp
index 92ba52a6d..48f53851d 100644
--- a/src/plugins/compilergcc/compilergcc.cpp
+++ b/src/plugins/compilergcc/compilergcc.cpp
@@ -1384,10 +1384,10 @@ void CompilerGCC::DoClearTargetMenu()
if (m_TargetMenu)
{
wxMenuItemList& items = m_TargetMenu->GetMenuItems();
- while (wxMenuItemList::Node* node = items.GetFirst())
+ for (wxMenuItemList::iterator it = items.begin(); it != items.end(); ++it)
{
- if (node->GetData())
- m_TargetMenu->Delete(node->GetData());
+ if (*it)
+ m_TargetMenu->Delete(*it);
}
// mandrav: The following lines DO NOT clear the menu!
// wxMenuItemList& items = m_TargetMenu->GetMenuItems();
diff --git a/src/plugins/contrib/wxContribItems/KWIC/src/wx/KWIC/BmpSwitcher.cpp b/src/plugins/contrib/wxContribItems/KWIC/src/wx/KWIC/BmpSwitcher.cpp
index 7838d6e73..dde2ada7d 100644
--- a/src/plugins/contrib/wxContribItems/KWIC/src/wx/KWIC/BmpSwitcher.cpp
+++ b/src/plugins/contrib/wxContribItems/KWIC/src/wx/KWIC/BmpSwitcher.cpp
@@ -72,14 +72,9 @@ kwxBmpSwitcher::~kwxBmpSwitcher()
{
delete membitmap;
- CBmpList::Node *node= m_bmplist.GetFirst() ;
-
- while(node)
- {
- wxBitmap *current = node->GetData();
- delete current ;
- node = node->GetNext() ;
- }
+ m_bmplist.DeleteContents(true);
+ m_bmplist.Clear();
+ m_bmplist.DeleteContents(false);
}
void kwxBmpSwitcher::OnPaint(wxPaintEvent &WXUNUSED(event))
@@ -102,19 +97,16 @@ void kwxBmpSwitcher::OnPaint(wxPaintEvent &WXUNUSED(event))
// Cryogen 16/4/10 Fixed to prevent a crash when m_nCount = 0. This is necessary for
// wxSmithKWIC to be able to initialise the control before bitmaps are added.
// Also moved update of m_nCount and m_nState to the appropriate functions.
- CBmpList::Node *node;
switch(m_nCount){
case 0:
break;
case 1:
- node = m_bmplist.GetFirst();
- pCurrent = node->GetData() ;
+ pCurrent = m_bmplist.front();
dc.DrawBitmap(*pCurrent, 0, 0, TRUE);
break;
default:
- node = m_bmplist.Item(m_nState);
- pCurrent = node->GetData() ;
+ pCurrent = m_bmplist.Item(m_nState)->GetData();
dc.DrawBitmap(*pCurrent, 0, 0, TRUE);
break;
diff --git a/src/sdk/toolsmanager.cpp b/src/sdk/toolsmanager.cpp
index a0116bde3..c82968273 100644
--- a/src/sdk/toolsmanager.cpp
+++ b/src/sdk/toolsmanager.cpp
@@ -214,31 +214,23 @@ void ToolsManager::InsertTool(int position, const cbTool* tool, bool save)
void ToolsManager::RemoveToolByIndex(int index)
{
int idx = 0;
- for (ToolsList::Node* node = m_Tools.GetFirst(); node; node = node->GetNext())
+ for (ToolsList::iterator it = m_Tools.begin(); it != m_Tools.end(); ++it)
{
if (idx == index)
{
- DoRemoveTool(node);
+ m_Tools.erase(it);
+ SaveTools();
return;
}
++idx;
}
}
-void ToolsManager::DoRemoveTool(ToolsList::Node* node)
-{
- if (node)
- {
- m_Tools.DeleteNode(node);
- SaveTools();
- }
-}
-
cbTool* ToolsManager::GetToolByMenuId(int id)
{
- for (ToolsList::Node* node = m_Tools.GetFirst(); node; node = node->GetNext())
+ for (ToolsList::iterator it = m_Tools.begin(); it != m_Tools.end(); ++it)
{
- cbTool* tool = node->GetData();
+ cbTool* tool = *it;
if (tool->GetMenuId() == id)
return tool;
}
@@ -248,9 +240,9 @@ cbTool* ToolsManager::GetToolByMenuId(int id)
cbTool* ToolsManager::GetToolByIndex(int index)
{
int idx = 0;
- for (ToolsList::Node* node = m_Tools.GetFirst(); node; node = node->GetNext())
+ for (ToolsList::iterator it = m_Tools.begin(); it != m_Tools.end(); ++it)
{
- cbTool* tool = node->GetData();
+ cbTool* tool = *it;
if (idx == index)
return tool;
++idx;
@@ -290,9 +282,9 @@ void ToolsManager::SaveTools()
}
int count = 0;
- for (ToolsList::Node* node = m_Tools.GetFirst(); node; node = node->GetNext())
+ for (ToolsList::iterator it = m_Tools.begin(); it != m_Tools.end(); ++it)
{
- cbTool* tool = node->GetData();
+ cbTool* tool = *it;
wxString elem;
// prepend a 0-padded 2-digit number to keep ordering
@@ -320,9 +312,9 @@ void ToolsManager::BuildToolsMenu(wxMenu* menu)
m_ItemsManager.Add(menu, wxID_SEPARATOR, _T(""), _T(""));
}
- for (ToolsList::Node* node = m_Tools.GetFirst(); node; node = node->GetNext())
+ for (ToolsList::iterator it = m_Tools.begin(); it != m_Tools.end(); ++it)
{
- cbTool* tool = node->GetData();
+ cbTool* tool = *it;
if (tool->GetName() == CB_TOOLS_SEPARATOR)
{
m_ItemsManager.Add(menu, wxID_SEPARATOR, _T(""), _T(""));
--
2.13.2.windows.1