private bool CanArrangeObject(InteriorObjectBase dragObject)
 {
     return
         this.PlaceHolder != null &&
         dragObject != null &&
         this.PlaceHolder.CanHoldObject(dragObject) &&
         !this.ArrangedItems.Any();
 }
 private void ArrangeObject(InteriorObjectBase @object)
 {
     if (this.CanArrangeObject(@object))
     {
         this.ArrangedItems.Add(@object);
         this.ArrangeObjectCommand.RaiseCanExecuteChanged();
     }
 }
 public override bool CanHoldObject(InteriorObjectBase obj)
 {
     return obj is Flower;
 }
 public virtual bool CanHoldObject(InteriorObjectBase obj)
 {
     return false;
 }
 public override bool CanHoldObject(InteriorObjectBase obj)
 {
     return obj is Table;
 }
 public override bool CanHoldObject(InteriorObjectBase obj)
 {
     return obj is Pathway;
 }