]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/layout.cpp
suppressed compiler warning about unitialised umask value
[wxWidgets.git] / src / common / layout.cpp
index abb7f9bb7b891b2d9fa92060ddb362d5fc3e531c..305ef6f9665b95ae511c3b4d2078ae1184047f07 100644 (file)
 
 #include "wx/defs.h"
 
-#if USE_CONSTRAINTS
-
 #ifndef WX_PRECOMP
 #include "wx/window.h"
 #include "wx/utils.h"
 #include "wx/dialog.h"
 #include "wx/msgdlg.h"
+#include <wx/intl.h>
 #endif
 
 #include "wx/layout.h"
@@ -88,13 +87,13 @@ int wxSizerMarginY(wxWindow *win)
 }
 
 
-wxIndividualLayoutConstraint::wxIndividualLayoutConstraint(void)
+wxIndividualLayoutConstraint::wxIndividualLayoutConstraint()
 {
   myEdge = wxTop; relationship = wxUnconstrained; margin = 0; value = 0; percent = 0; otherEdge = wxTop;
-  done = FALSE; otherWin = NULL;
+  done = FALSE; otherWin = (wxWindow *) NULL;
 }
 
-wxIndividualLayoutConstraint::~wxIndividualLayoutConstraint(void)
+wxIndividualLayoutConstraint::~wxIndividualLayoutConstraint()
 {
 }
 
@@ -139,7 +138,7 @@ bool wxIndividualLayoutConstraint::ResetIfWin(wxWindow *otherW)
   if (otherW == otherWin)
   {
     myEdge = wxTop; relationship = wxAsIs; margin = 0; value = 0; percent = 0; otherEdge = wxTop;
-    otherWin = NULL;
+    otherWin = (wxWindow *) NULL;
     return TRUE;
   }
   else
@@ -722,13 +721,15 @@ bool wxIndividualLayoutConstraint::SatisfyConstraint(wxLayoutConstraints *constr
 
 // Get the value of this edge or dimension, or if this
 // is not determinable, -1.
-int wxIndividualLayoutConstraint::GetEdge(wxEdge which, wxWindow *thisWin, wxWindow *other)
+int wxIndividualLayoutConstraint::GetEdge(wxEdge which,
+                                          wxWindow *thisWin,
+                                          wxWindow *other) const
 {
   // If the edge or dimension belongs to the parent, then we
   // know the dimension is obtainable immediately.
   // E.g. a wxExpandSizer may contain a button (but the button's
   // true parent is a panel, not the sizer)
-  if (other->GetChildren()->Member(thisWin))
+  if (other->GetChildren().Member(thisWin))
   {
     switch (which)
     {
@@ -942,7 +943,7 @@ int wxIndividualLayoutConstraint::GetEdge(wxEdge which, wxWindow *thisWin, wxWin
   return -1;
 }
 
-wxLayoutConstraints::wxLayoutConstraints(void)
+wxLayoutConstraints::wxLayoutConstraints()
 {
   left.SetEdge(wxLeft);
   top.SetEdge(wxTop);
@@ -954,7 +955,7 @@ wxLayoutConstraints::wxLayoutConstraints(void)
   height.SetEdge(wxHeight);
 }
 
-wxLayoutConstraints::~wxLayoutConstraints(void)
+wxLayoutConstraints::~wxLayoutConstraints()
 {
 }
 
@@ -1004,8 +1005,7 @@ bool wxLayoutConstraints::SatisfyConstraints(wxWindow *win, int *nChanges)
 
   *nChanges = noChanges;
 
-  return (left.GetDone() && top.GetDone() && right.GetDone() && bottom.GetDone() &&
-    centreX.GetDone() && centreY.GetDone());
+  return AreSatisfied();
 }
 
 /*
@@ -1052,7 +1052,7 @@ bool wxOldDoLayout(wxWindow *win)
 
   doneSoFar.Append(win);
 
-  wxNode *node = win->GetChildren()->First();
+  wxNode *node = win->GetChildren().First();
   while (node)
   {
     wxWindow *child = (wxWindow *)node->Data();
@@ -1077,7 +1077,7 @@ bool wxOldDoLayout(wxWindow *win)
   while ((noChanges > 0) && (noIterations < maxIterations))
   {
     noChanges = 0;
-    wxNode *node = win->GetChildren()->First();
+    wxNode *node = win->GetChildren().First();
     while (node)
     {
       wxWindow *child = (wxWindow *)node->Data();
@@ -1085,7 +1085,7 @@ bool wxOldDoLayout(wxWindow *win)
       if (constr)
       {
         int tempNoChanges = 0;
-        (void) constr->SatisfyConstraints(child, &tempNoChanges);
+        (void)constr->SatisfyConstraints(child, &tempNoChanges);
         noChanges += tempNoChanges;
       }
       node = node->Next();
@@ -1097,12 +1097,12 @@ bool wxOldDoLayout(wxWindow *win)
   // failed, so we can print a specific diagnostic message.
   if (noFailures > 0)
   {
-    wxDebugMsg("wxWindow::Layout() failed.\n");
+    wxDebugMsg(_("wxWindow::Layout() failed.\n"));
   }
 */
   // Now set the sizes and positions of the children, and
   // recursively call Layout().
-  node = win->GetChildren()->First();
+  node = win->GetChildren().First();
   while (node)
   {
     wxWindow *child = (wxWindow *)node->Data();
@@ -1136,7 +1136,7 @@ bool wxOldDoLayout(wxWindow *win)
   return TRUE;
 }
 
-wxSizer::wxSizer(void)
+wxSizer::wxSizer()
 {
   sizerBehaviour = wxSizerNone;
   borderX = 2;
@@ -1197,11 +1197,11 @@ bool wxSizer::Create(wxWindow *parent, wxSizerBehaviour behav)
   return TRUE;
 }
 
-wxSizer::~wxSizer(void)
+wxSizer::~wxSizer()
 {
   // Remove all children without deleting them,
   // or ~wxbWindow will delete proper windows _twice_
-  wxNode *node = GetChildren()->First();
+  wxNode *node = GetChildren().First();
   while (node)
   {
     wxNode *next = node->Next();
@@ -1209,7 +1209,7 @@ wxSizer::~wxSizer(void)
     if (!win->IsKindOf(CLASSINFO(wxSizer)))
        {
        delete node;
-               win->SetSizerParent(NULL);
+               win->SetSizerParent((wxWindow *) NULL);
        }
     else
     {
@@ -1221,8 +1221,8 @@ wxSizer::~wxSizer(void)
 
   if (m_sizerParent) // && !m_sizerParent->IsKindOf(CLASSINFO(wxSizer)))
   {
-    m_sizerParent->SetSizer(NULL);
-       m_sizerParent = NULL;
+    m_sizerParent->SetSizer((wxSizer *) NULL);
+       m_sizerParent = (wxWindow *) NULL;
   }
 
 }
@@ -1247,7 +1247,7 @@ void wxSizer::SetBorder(int x, int y)
 void wxSizer::AddSizerChild(wxWindow *child)
 {
   child->SetSizerParent(this);
-  GetChildren()->Append(child);
+  GetChildren().Append(child);
 
   // Add some constraints for the purpose of storing
   // the relative position of the window/sizer
@@ -1270,10 +1270,10 @@ void wxSizer::AddSizerChild(wxWindow *child)
 
 void wxSizer::RemoveSizerChild(wxWindow *child)
 {
-  GetChildren()->DeleteObject(child);
+  GetChildren().DeleteObject(child);
 }
 
-void wxSizer::SetSize(const int x, const int y, const int w, const int h, const int WXUNUSED(flags))
+void wxSizer::DoSetSize(int x, int y, int w, int h, int WXUNUSED(flags))
 {
   wxLayoutConstraints *constr = GetConstraints();
   if (x != -1)
@@ -1302,23 +1302,6 @@ void wxSizer::SetSize(const int x, const int y, const int w, const int h, const
   }
 }
 
-void wxSizer::Move(const int x, const int y)
-{
-  wxLayoutConstraints *constr = GetConstraints();
-  if (x != -1)
-  {
-    sizerX = x;
-    if (constr)
-      constr->left.SetValue(x);
-  }
-  if (y != -1)
-  {
-    sizerY = y;
-    if (constr)
-      constr->top.SetValue(y);
-  }
-}
-
 void wxSizer::GetSize(int *w, int *h) const
 {
   *w = sizerWidth;
@@ -1340,7 +1323,7 @@ bool wxSizer::LayoutPhase1(int *noChanges)
     {
       if (!m_sizerParent)
       {
-        wxMessageBox("wxExpandSizer has no parent!", "Sizer error", wxOK);
+        wxMessageBox(_("wxExpandSizer has no parent!"), _("Sizer error"), wxOK);
         return TRUE;
       }
 
@@ -1380,7 +1363,8 @@ bool wxSizer::LayoutPhase1(int *noChanges)
       // Find the bounding box and set own size
       int maxX = 0;
       int maxY = 0;
-      wxNode *node = GetChildren()->First();
+      
+      wxNode *node = GetChildren().First();
       while (node)
       {
         int x, y, width, height;
@@ -1391,10 +1375,11 @@ bool wxSizer::LayoutPhase1(int *noChanges)
           maxX = (x + width);
         if ((y+height) > maxY)
           maxY = (y + height);
+         
         node = node->Next();
       }
       SetSize(GetBorderX(), GetBorderY(), maxX, maxY);
-
+      
          // If this is the only sizer for the parent, size the parent to this sizer.
          if ( m_sizerParent && (m_sizerParent->GetSizer() == this) )
                m_sizerParent->SetClientSize(maxX + 2*GetBorderX(), maxY + 2*GetBorderY());
@@ -1488,7 +1473,7 @@ bool wxSizer::LayoutPhase2(int *noChanges)
  * wxRowColSizer
  */
  
-wxRowColSizer::wxRowColSizer(void)
+wxRowColSizer::wxRowColSizer()
 {
   rowOrCol = TRUE;
   rowOrColSize = 20;
@@ -1513,13 +1498,8 @@ bool wxRowColSizer::Create(wxWindow *parent, bool rc, int n, wxSizerBehaviour be
   return TRUE;
 }
 
-wxRowColSizer::~wxRowColSizer(void)
-{
-}
-
-void wxRowColSizer::SetSize(const int x, const int y, const int w, const int h, const int flags)
+wxRowColSizer::~wxRowColSizer()
 {
-  wxSizer::SetSize(x, y, w, h, flags);
 }
 
 bool wxRowColSizer::LayoutPhase1(int *noChanges)
@@ -1577,8 +1557,8 @@ bool wxRowColSizer::LayoutPhase1(int *noChanges)
     int currentY = borderY;
     int maxX = currentX;
     int maxY = currentY;
-    
-    wxNode *node = GetChildren()->First();
+
+    wxNode *node = GetChildren().First();
     while (node)
     {
       wxWindow *win = (wxWindow *)node->Data();
@@ -1677,7 +1657,7 @@ bool wxRowColSizer::LayoutPhase2(int *noChanges)
  * wxSpacingSizer
  */
  
-wxSpacingSizer::wxSpacingSizer(void)
+wxSpacingSizer::wxSpacingSizer()
 {
 }
 
@@ -1738,10 +1718,7 @@ bool wxSpacingSizer::Create(wxWindow *parent, wxRelationship rel, wxWindow *othe
   return TRUE;
 }
 
-wxSpacingSizer::~wxSpacingSizer(void)
+wxSpacingSizer::~wxSpacingSizer()
 {
 }
 
-
-
-#endif