protected override void Layout() { base.Layout(); _shield.X = X; _shield.Y = Y + (Height - _shield.Height) / 2; _position.X = Align(_shield.X + (_shield.Width - _position.Width) / 2); _position.Y = Align(_shield.Y + (_shield.Height - _position.Height) / 2 + 1); if (_flare != null) { _flare.Point(_shield.Center()); } _classIcon.X = Align(X + Width - _classIcon.Width); _classIcon.Y = _shield.Y; _desc.X = _shield.X + _shield.Width + Gap; _desc.MaxWidth = (int)(_classIcon.X - _desc.X); _desc.Measure(); _desc.Y = _position.Y + _position.BaseLine() - _desc.BaseLine(); }