16 #include <FL/Fl_Group.H> 
   17 #include <FL/Fl_Widget.H> 
   29   int n=Fl_Group::current()->children();
 
   32     Fl_Widget *c=Fl_Group::current()->child(n-1);
 
   33     return c->x()+c->w()+gap;
 
   45   int n=Fl_Group::current()->children();
 
   48     Fl_Widget *c=Fl_Group::current()->child(n-1);
 
   71   int n=Fl_Group::current()->children();
 
   72   for (
int i=0; i<n; i++)
 
   74     Fl_Widget *c=Fl_Group::current()->child(i);
 
   75     ret=std::max(ret, c->y()+c->h()+gap);
 
   90   int n=Fl_Group::current()->children();
 
   93     Fl_Group *g=Fl_Group::current();
 
   94     Fl_Widget *c=g->child(0);
 
   96     int xmin=c->x(), xmax=c->x()+c->w();
 
   97     int ymin=c->y(), ymax=c->y()+c->h();
 
   99     for (
int i=1; i<n; i++)
 
  102       xmin=std::min(xmin, c->x());
 
  103       xmax=std::max(xmax, c->x()+c->w());
 
  104       ymin=std::min(ymin, c->y());
 
  105       ymax=std::max(ymax, c->y()+c->h());
 
  108     if ((g->w() != xmax+xmin && g->w() != xmax+xmin+
GAP_SIZE) ||
 
  109       (g->h() != ymax+ymin && g->h() != ymax+ymin+
GAP_SIZE))
 
  111       Fl::warning(
"Size of group '%s' is %dx%d, but should be %dx%d!",
 
  112         group_name, g->w(), g->h(), xmax+xmin, ymax+ymin);
 
  120 #define ADD_RIGHT_XY addRightX(), addRightY() 
  121 #define ADD_BELOW_XY addBelowX(), addBelowY()