SCV
4.2.1
Simple Components for Visual
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
SequentialGroup.h
Go to the documentation of this file.
1
#ifndef __SCV_SEQUENTIAL_GROUP_H__
2
#define __SCV_SEQUENTIAL_GROUP_H__
3
4
#include "
Group.h
"
5
6
namespace
scv {
7
8
class
SequentialGroup
:
public
Group
{
9
public
:
10
SequentialGroup
(
void
);
11
12
virtual
SequentialGroup
*
addGroup
(
Group
*group);
13
14
virtual
SequentialGroup
*
addComponent
(
Component
*component);
15
virtual
SequentialGroup
*
addComponent
(
Component
*component,
int
size);
16
virtual
SequentialGroup
*
addComponent
(
Component
*component,
int
min,
int
pref,
int
max);
17
18
virtual
SequentialGroup
*
addGap
(
int
size);
19
virtual
SequentialGroup
*
addGap
(
int
min,
int
pref,
int
max);
20
21
virtual
void
setValidSize
(
Spring::Axis
axis,
int
origin,
int
size);
22
23
virtual
inline
int
combined
(
int
a,
int
b);
24
25
SequentialGroup
*
setAutoCreateGaps
(
bool
autoCreatePadding
);
26
bool
getAutoCreateGap
(
void
)
const
;
27
28
inline
SequentialGroup
*
setAutoGapsSize
(
int
autoGapSize);
29
inline
int
getAutoGapsSize
(
void
)
const
;
30
31
protected
:
32
class
SpringDelta
{
33
public
:
34
int
_index
,
_delta
;
35
SpringDelta
(
int
index,
int
delta) {
36
_index
= index;
37
_delta
= delta;
38
}
39
bool
operator<
(
const
SpringDelta
&rhs)
const
{
return
_delta
< rhs.
_delta
; }
40
};
41
42
typedef
std::deque<SpringDelta>
SpringDeltaDeque
;
43
44
virtual
void
setValidSizeNotPreferred
(
Spring::Axis
axis,
int
origin,
int
size);
45
virtual
SpringDeltaDeque
buildResizableList
(
Spring::Axis
axis,
bool
useMin);
46
47
void
autoCreatePadding
(
void
);
48
49
bool
_autoCreatePadding
;
50
51
int
_autoGapSize
;
52
const
static
int
s_defaultGap
= 10;
53
};
54
56
57
int
SequentialGroup::combined
(
int
a,
int
b) {
58
return
constrain
(a) +
constrain
(b);
59
}
60
61
SequentialGroup
*
SequentialGroup::setAutoGapsSize
(
int
autoGapSize) {
62
_autoGapSize
= autoGapSize;
63
return
this
;
64
}
65
66
int
SequentialGroup::getAutoGapsSize
(
void
)
const
{
67
return
_autoGapSize
;
68
}
69
70
}
//namespace scv
71
72
#endif //__SCV_SEQUENTIAL_GROUP_H__
include
SCV
SequentialGroup.h
Generated on Fri Dec 14 2012 09:44:49 for SCV by
1.8.2