]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/fileconf.cpp
paper size, duplex support
[wxWidgets.git] / src / common / fileconf.cpp
index a3bcdb598368d439987bd1c6425a6b74e6a0032c..8d67e3a4f76d072a2afa08405ed121a49c980890 100644 (file)
@@ -1547,8 +1547,17 @@ void wxFileConfigGroup::Rename(const wxString& newName)
 {
     wxCHECK_RET( m_pParent, _T("the root group can't be renamed") );
 
+    if ( newName == m_strName )
+        return;
+
+    // we need to remove the group from the parent and it back under the new
+    // name to keep the parents array of subgroups alphabetically sorted
+    m_pParent->m_aSubgroups.Remove(this);
+
     m_strName = newName;
 
+    m_pParent->m_aSubgroups.Add(this);
+
     // update the group lines recursively
     UpdateGroupAndSubgroupsLines();
 }
@@ -1684,9 +1693,9 @@ bool wxFileConfigGroup::DeleteSubgroup(wxFileConfigGroup *pGroup)
 
     wxLogTrace( FILECONF_TRACE_MASK,
                 _T("  (m_pLine) = prev: %p, this %p, next %p"),
-                m_pLine ? m_pLine->Prev() : NULL,
-                m_pLine,
-                m_pLine ? m_pLine->Next() : NULL );
+                m_pLine ? wx_static_cast(void*, m_pLine->Prev()) : 0,
+                wx_static_cast(void*, m_pLine),
+                m_pLine ? wx_static_cast(void*, m_pLine->Next()) : 0 );
     wxLogTrace( FILECONF_TRACE_MASK,
                 _T("  text: '%s'"),
                 m_pLine ? m_pLine->Text().c_str() : wxEmptyString );