{
EFloatingButton _control = null;
FloatingButtonMovablePosition _movablePosition = FloatingButtonMovablePosition.All;
- FloatingButtonPosition _position = FloatingButtonPosition.Right;
bool _isShown = true;
FloatingButtonItem _firstButton = null;
FloatingButtonItem _secondButton = null;
Mode = FloatingButtonMode.All,
MinimumHeight = 100,
MinimumWidth = 100,
+ AlignmentY = -1,
+ AlignmentX = -1,
+ WeightX = 1,
+ WeightY = 1,
};
UpdateLocation();
TForms.Context.MainWindow.RotationChanged += (s, e) => { UpdateLocation(); };
public FloatingButtonPosition Position
{
- get { return _position; }
+ get { return (FloatingButtonPosition)_control.Position; }
}
public bool IsShown
{
if (_movablePosition != FloatingButtonMovablePosition.None)
{
- _position = (FloatingButtonPosition)position;
UpdatePosition(animated);
}
}
{
public static readonly BindableProperty MovablePositionProperty = BindableProperty.Create(nameof(MovablePosition), typeof(FloatingButtonMovablePosition), typeof(FloatingButton), FloatingButtonMovablePosition.All);
- public static readonly BindableProperty PositionProperty = BindableProperty.Create(nameof(Position), typeof(FloatingButtonPosition), typeof(FloatingButton), FloatingButtonPosition.Right);
-
public static readonly BindableProperty IsShownProperty = BindableProperty.Create(nameof(IsShown), typeof(bool), typeof(FloatingButton), true);
public static readonly BindableProperty FirstButtonProperty = BindableProperty.Create(nameof(FirstButton), typeof(FloatingButtonItem), typeof(FloatingButton), null);
/// </summary>
public FloatingButtonPosition Position
{
- get { return (FloatingButtonPosition)GetValue(PositionProperty); }
+ get { return _floatingButton.Position; }
}
/// <summary>
throw new Exception("Object reference not set to an instance of a FloatingButton.");
SetBinding(MovablePositionProperty, new Binding(nameof(MovablePosition), mode: BindingMode.TwoWay, source: _floatingButton));
- SetBinding(PositionProperty, new Binding(nameof(Position), mode: BindingMode.TwoWay, source: _floatingButton));
SetBinding(FirstButtonProperty, new Binding(nameof(FirstButton), mode: BindingMode.TwoWay, source: _floatingButton));
SetBinding(SecondButtonProperty, new Binding(nameof(SecondButton), mode: BindingMode.TwoWay, source: _floatingButton));
}