MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / justifySelection

Method justifySelection

Engine/source/gui/editor/guiEditCtrl.cpp:1142–1249  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1140//-----------------------------------------------------------------------------
1141
1142void GuiEditCtrl::justifySelection( Justification j )
1143{
1144 S32 minX, maxX;
1145 S32 minY, maxY;
1146 S32 extentX, extentY;
1147
1148 if (mSelectedControls.size() < 2)
1149 return;
1150
1151 Vector<GuiControl *>::iterator i = mSelectedControls.begin();
1152 minX = (*i)->getLeft();
1153 maxX = minX + (*i)->getWidth();
1154 minY = (*i)->getTop();
1155 maxY = minY + (*i)->getHeight();
1156 extentX = (*i)->getWidth();
1157 extentY = (*i)->getHeight();
1158 i++;
1159 for(;i != mSelectedControls.end(); i++)
1160 {
1161 minX = getMin(minX, (*i)->getLeft());
1162 maxX = getMax(maxX, (*i)->getLeft() + (*i)->getWidth());
1163 minY = getMin(minY, (*i)->getTop());
1164 maxY = getMax(maxY, (*i)->getTop() + (*i)->getHeight());
1165 extentX += (*i)->getWidth();
1166 extentY += (*i)->getHeight();
1167 }
1168 S32 deltaX = maxX - minX;
1169 S32 deltaY = maxY - minY;
1170 switch(j)
1171 {
1172 case JUSTIFY_LEFT:
1173 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1174 if( !( *i )->isLocked() )
1175 (*i)->setLeft( minX );
1176 break;
1177 case JUSTIFY_TOP:
1178 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1179 if( !( *i )->isLocked() )
1180 (*i)->setTop( minY );
1181 break;
1182 case JUSTIFY_RIGHT:
1183 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1184 if( !( *i )->isLocked() )
1185 (*i)->setLeft( maxX - (*i)->getWidth() + 1 );
1186 break;
1187 case JUSTIFY_BOTTOM:
1188 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1189 if( !( *i )->isLocked() )
1190 (*i)->setTop( maxY - (*i)->getHeight() + 1 );
1191 break;
1192 case JUSTIFY_CENTER_VERTICAL:
1193 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1194 if( !( *i )->isLocked() )
1195 (*i)->setLeft( minX + ((deltaX - (*i)->getWidth()) >> 1 ));
1196 break;
1197 case JUSTIFY_CENTER_HORIZONTAL:
1198 for(i = mSelectedControls.begin(); i != mSelectedControls.end(); i++)
1199 if( !( *i )->isLocked() )

Callers 1

guiEditCtrl.cppFile · 0.80

Calls 10

getMaxFunction · 0.85
isLockedMethod · 0.80
setLeftMethod · 0.80
setTopMethod · 0.80
sizeMethod · 0.45
beginMethod · 0.45
getWidthMethod · 0.45
getHeightMethod · 0.45
endMethod · 0.45
insertMethod · 0.45

Tested by

no test coverage detected