g.Parent = this;
GraphicObjects.Insert (0, g);
- g.RegisterForLayouting ((int)LayoutingType.Sizing);
+ g.RegisterForLayouting (LayoutingType.Sizing);
}
public void DeleteWidget(GraphicObject g)
{
Crow.Size newSize = this.ClientRectangle.Size;
if (lastSize != newSize) {
foreach (GraphicObject g in GraphicObjects)
- g.RegisterForLayouting ((int)LayoutingType.All);
+ g.RegisterForLayouting (LayoutingType.All);
lastSize = newSize;
}
g.Parent = this;
GraphicObjects.Insert (0, g);
- g.RegisterForLayouting ((int)LayoutingType.Sizing);
+ g.RegisterForLayouting (LayoutingType.Sizing);
}
public void DeleteWidget(GraphicObject g)
{
public override T addChild<T> (T child)
{
T tmp = base.addChild (child);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
return tmp;
}
public override void removeChild (GraphicObject child)
{
base.removeChild (child);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
#region Public Properties
foreach (GraphicObject c in Children.Where(ch=>ch.Visible)) {
c.Slot.X = d;
d += c.Slot.Width + Spacing;
- c.RegisterForLayouting ((int)LayoutingType.Y);
+ c.RegisterForLayouting (LayoutingType.Y);
}
} else {
foreach (GraphicObject c in Children.Where(ch=>ch.Visible)) {
c.Slot.Y = d;
d += c.Slot.Height + Spacing;
- c.RegisterForLayouting ((int)LayoutingType.X);
+ c.RegisterForLayouting (LayoutingType.X);
}
}
bmp = null;
if (Orientation == Orientation.Horizontal){
if(layoutType == LayoutingType.Width)
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}else if (layoutType == LayoutingType.Height)
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
public override void OnChildLayoutChanges (object sender, LayoutChangeEventArgs arg)
{
case LayoutingType.Width:
if (Orientation == Orientation.Horizontal) {
if (this.Bounds.Width < 0)
- this.RegisterForLayouting ((int)LayoutingType.Width);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.Width);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
break;
case LayoutingType.Height:
if (Orientation == Orientation.Vertical) {
if (this.Bounds.Height < 0)
- this.RegisterForLayouting ((int)LayoutingType.Height);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.Height);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
break;
}
Bounds.X = value;
NotifyValueChanged ("Left", Bounds.X);
- this.RegisterForLayouting ((int)LayoutingType.X);
+ this.RegisterForLayouting (LayoutingType.X);
}
}
[XmlAttributeAttribute()][DefaultValue(0)]
Bounds.Y = value;
NotifyValueChanged ("Top", Bounds.Y);
- this.RegisterForLayouting ((int)LayoutingType.Y);
+ this.RegisterForLayouting (LayoutingType.Y);
}
}
[XmlAttributeAttribute()][DefaultValue(0)]
Bounds.Width = value;
NotifyValueChanged ("Width", Bounds.Width);
- this.RegisterForLayouting ((int)LayoutingType.Width);
+ this.RegisterForLayouting (LayoutingType.Width);
}
}
[XmlAttributeAttribute()][DefaultValue(0)]
Bounds.Height = value;
NotifyValueChanged ("Height", Bounds.Height);
- this.RegisterForLayouting ((int)LayoutingType.Height);
+ this.RegisterForLayouting (LayoutingType.Height);
}
}
[XmlAttributeAttribute()][DefaultValue(false)]
if (this.Contains (HostContainer.hoverWidget))
HostContainer.hoverWidget = null;
if (Parent is GenericStack)
- Parent.RegisterForLayouting ((int)LayoutingType.Sizing | (int)LayoutingType.PositionChildren);
+ Parent.RegisterForLayouting (LayoutingType.Sizing | LayoutingType.PositionChildren);
NotifyValueChanged ("Visible", _isVisible);
}
}
public LayoutingType RegisteredLayoutings = 0;
- public virtual void RegisterForLayouting(int layoutType){
+ public virtual void RegisterForLayouting(LayoutingType layoutType){
if (RegisteredLayoutings == LayoutingType.None)
Interface.RegisteredGOForLayouting.Enqueue (this);
RegisteredLayoutings |= (LayoutingType)layoutType;
switch (layoutType) {
case LayoutingType.Width:
if (Width != 0 && Parent.getBounds().Width >=0) //update position in parent
- this.RegisterForLayouting ((int)LayoutingType.X);
+ this.RegisterForLayouting (LayoutingType.X);
break;
case LayoutingType.Height:
if (Height != 0 && Parent.getBounds().Height >=0) //update position in parent
- this.RegisterForLayouting ((int)LayoutingType.Y);
+ this.RegisterForLayouting (LayoutingType.Y);
break;
}
LayoutChanged.Raise (this, new LayoutChangeEventArgs (layoutType));
public override T addChild<T> (T child)
{
T tmp = base.addChild (child);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
return tmp;
}
public override void removeChild (GraphicObject child)
{
base.removeChild (child);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
#region Public Properties
_columnCount = value;
NotifyValueChanged ("ColumnCount", ColumnCount);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
}
[XmlAttributeAttribute()][DefaultValue(1)]
_rowCount = value;
NotifyValueChanged ("RowCount", RowCount);
- this.RegisterForLayouting ((int)LayoutingType.PositionChildren);
+ this.RegisterForLayouting (LayoutingType.PositionChildren);
}
}
public virtual int CaseWidth {
GraphicObject g = child as GraphicObject;
Children.Add(g);
g.Parent = this as GraphicObject;
- g.RegisterForLayouting ((int)LayoutingType.Sizing);
+ g.RegisterForLayouting (LayoutingType.Sizing);
g.LayoutChanged += OnChildLayoutChanges;
return (T)child;
}
child.ClearBinding ();
child.Parent = null;
Children.Remove(child);
- this.RegisterForLayouting ((int)LayoutingType.Sizing);
+ this.RegisterForLayouting (LayoutingType.Sizing);
}
public virtual void ClearChildren()
{
Children.RemoveAt(cpt-1);
cpt = children.Count;
}
- this.RegisterForLayouting ((int)LayoutingType.Sizing);
+ this.RegisterForLayouting (LayoutingType.Sizing);
ChildrenCleared.Raise (this, new EventArgs ());
}
public void putWidgetOnTop(GraphicObject w)
case LayoutingType.Width:
foreach (GraphicObject c in Children.Where(ch => ch.Visible)) {
if (c.getBounds ().Width == 0)
- c.RegisterForLayouting ((int)LayoutingType.Width);
+ c.RegisterForLayouting (LayoutingType.Width);
else
- c.RegisterForLayouting ((int)LayoutingType.X);
+ c.RegisterForLayouting (LayoutingType.X);
}
break;
case LayoutingType.Height:
foreach (GraphicObject c in Children.Where(ch => ch.Visible)) {
if (c.getBounds ().Height == 0)
- c.RegisterForLayouting ((int)LayoutingType.Height);
+ c.RegisterForLayouting (LayoutingType.Height);
else
- c.RegisterForLayouting ((int)LayoutingType.Y);
+ c.RegisterForLayouting (LayoutingType.Y);
}
break;
}
maxChildrenWidth = g.Slot.Width;
largestChild = g;
if (this.Bounds.Width < 0)
- this.RegisterForLayouting ((int)LayoutingType.Width);
+ this.RegisterForLayouting (LayoutingType.Width);
} else if (g == largestChild) {
//search for the new largest child
largestChild = null;
}
}
if (this.Bounds.Width < 0)
- this.RegisterForLayouting ((int)LayoutingType.Width);
+ this.RegisterForLayouting (LayoutingType.Width);
}
break;
case LayoutingType.Height:
maxChildrenHeight = g.Slot.Height;
tallestChild = g;
if (this.Bounds.Height < 0)
- this.RegisterForLayouting ((int)LayoutingType.Height);
+ this.RegisterForLayouting (LayoutingType.Height);
} else if (g == tallestChild) {
//search for the new tallest child
tallestChild = null;
}
}
if (this.Bounds.Height < 0)
- this.RegisterForLayouting ((int)LayoutingType.Height);
+ this.RegisterForLayouting (LayoutingType.Height);
}
break;
}
IGOLibHost HostContainer { get; }
List<LinkedListNode<LayoutingQueueItem>> RegisteredLQINodes { get; }
- void RegisterForLayouting(int layoutType);
+ void RegisterForLayouting(LayoutingType layoutType);
void UpdateLayout(LayoutingType layoutType);
lines = getLines;
this.registerForGraphicUpdate ();
- this.RegisterForLayouting ((int)LayoutingType.Sizing);
+ this.RegisterForLayouting (LayoutingType.Sizing);
NotifyValueChanged ("Text", _text);
}
}
if (tc == null)
return;
Rectangle r = this.ScreenCoordinates (this.Slot);
- if (((int)e.LayoutType & (int)LayoutingType.Width) > 0) {
+ if (e.LayoutType.HasFlag(LayoutingType.Width)) {
if (Content.Slot.Width < tc.ClientRectangle.Width) {
if (r.Left + Content.Slot.Width > tc.ClientRectangle.Right)
Content.Left = tc.ClientRectangle.Right - Content.Slot.Width;
} else
Content.Left = 0;
}
- if (((int)e.LayoutType & (int)LayoutingType.Height) > 0) {
+ if (e.LayoutType.HasFlag(LayoutingType.Height)) {
if (Content.Slot.Height < tc.ClientRectangle.Height) {
if (r.Bottom + Content.Slot.Height > tc.ClientRectangle.Bottom)
Content.Top = r.Top - Content.Slot.Height;
if (child != null) {
child.LayoutChanged -= OnChildLayoutChanges;
- this.RegisterForLayouting ((int)LayoutingType.Sizing);
+ this.RegisterForLayouting (LayoutingType.Sizing);
child.Parent = null;
}
if (child != null) {
child.Parent = this;
child.LayoutChanged += OnChildLayoutChanges;
- child.RegisterForLayouting ((int)LayoutingType.Sizing);
+ child.RegisterForLayouting (LayoutingType.Sizing);
}
return (T)_child;
case LayoutingType.Width:
if (child != null) {
if (child.getBounds ().Width == 0)
- child.RegisterForLayouting ((int)LayoutingType.Width);
+ child.RegisterForLayouting (LayoutingType.Width);
else
- child.RegisterForLayouting ((int)LayoutingType.X);
+ child.RegisterForLayouting (LayoutingType.X);
}
break;
case LayoutingType.Height:
if (child != null) {
if (child.getBounds ().Height == 0)
- child.RegisterForLayouting ((int)LayoutingType.Height);
+ child.RegisterForLayouting (LayoutingType.Height);
else
- child.RegisterForLayouting ((int)LayoutingType.Y);
+ child.RegisterForLayouting (LayoutingType.Y);
}
break;
}
break;
case LayoutingType.Width:
if (this.Bounds.Width < 0)
- this.RegisterForLayouting ((int)LayoutingType.Width);
+ this.RegisterForLayouting (LayoutingType.Width);
break;
case LayoutingType.Height:
if (this.Bounds.Height < 0)
- this.RegisterForLayouting ((int)LayoutingType.Height);
+ this.RegisterForLayouting (LayoutingType.Height);
break;
}
}
if (_cursorSize == value)
return;
_cursorSize = value;
- RegisterForLayouting ((int)LayoutingType.Sizing);
+ RegisterForLayouting (LayoutingType.Sizing);
registerForGraphicUpdate ();
NotifyValueChanged ("CursorSize", _cursorSize);
}
return;
_orientation = value;
- RegisterForLayouting ((int)LayoutingType.All);
+ RegisterForLayouting (LayoutingType.All);
NotifyValueChanged ("Orientation", _orientation);
}
}
break;
}
if (Width < 0)
- RegisterForLayouting ((int)LayoutingType.Width);
+ RegisterForLayouting (LayoutingType.Width);
if (Height < 0)
- RegisterForLayouting ((int)LayoutingType.Height);
+ RegisterForLayouting (LayoutingType.Height);
registerForGraphicUpdate();
}
#endregion
return;
registerForGraphicUpdate();
- this.RegisterForLayouting ((int)LayoutingType.Sizing);
+ this.RegisterForLayouting (LayoutingType.Sizing);
_text = value;
namespace Crow
{
- public enum LayoutingType
+ public enum LayoutingType : byte
{
None = 0x00,
X = 0x01,
g.Parent = this;
GraphicObjects.Insert (0, g);
- g.RegisterForLayouting ((int)LayoutingType.Sizing);
+ g.RegisterForLayouting (LayoutingType.Sizing);
}
public void DeleteWidget(GraphicObject g)
{
base.OnResize (e);
createContext ();
foreach (GraphicObject g in GraphicObjects) {
- g.RegisterForLayouting ((int)LayoutingType.All);
+ g.RegisterForLayouting (LayoutingType.All);
//g.registerForGraphicUpdate();
}
}
//TODO:uneeded list, should be removed
public List<LinkedListNode<LayoutingQueueItem>> RegisteredLQINodes { get; } = new List<LinkedListNode<LayoutingQueueItem>>();
- public void RegisterForLayouting (int layoutType) { throw new NotImplementedException (); }
+ public void RegisterForLayouting (LayoutingType layoutType) { throw new NotImplementedException (); }
public void UpdateLayout (LayoutingType layoutType) { throw new NotImplementedException (); }
public Rectangle ContextCoordinates (Rectangle r)
{