haiku/headers/libs/alm/Row.h
Clemens Zeidler 5b6fca0639 - Rework the ALM layout api. The AddItemTo* function are now related to the current Area. On default the current Area is the last added Area.
- Add some more const where appreciated.
- Fix some style issues and a leak in Row and Column.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38842 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-29 03:30:47 +00:00

61 lines
1019 B
C++

/*
* Copyright 2006 - 2010, Haiku, Inc. All rights reserved.
* Distributed under the terms of the MIT License.
*/
#ifndef ROW_H
#define ROW_H
#include "Constraint.h"
#include "LinearSpec.h"
namespace BALM {
class BALMLayout;
class YTab;
/**
* Represents a row defined by two y-tabs.
*/
class Row {
public:
~Row();
YTab* Top() const;
YTab* Bottom() const;
Row* Previous() const;
void SetPrevious(Row* value);
Row* Next() const;
void SetNext(Row* value);
void InsertBefore(Row* row);
void InsertAfter(Row* row);
Constraint* HasSameHeightAs(Row* row);
ConstraintList* Constraints() const;
protected:
Row(LinearSpec* ls);
protected:
LinearSpec* fLS;
YTab* fTop;
YTab* fBottom;
private:
Row* fPrevious;
Row* fNext;
Constraint* fPreviousGlue;
Constraint* fNextGlue;
ConstraintList fConstraints;
public:
friend class BALMLayout;
};
} // namespace BALM
using BALM::Row;
#endif // ROW_H