private void BtnEdit_Click(object sender, RoutedEventArgs e)
 {
     if (dgFurniture.Visibility.Equals(Visibility.Visible))
     {
         Furniture       copy            = (Furniture)SelectedFurniture.Clone();
         FurnitureWindow furnitureWindow = new FurnitureWindow(copy, FurnitureWindow.Operation.EDIT);
         furnitureWindow.Show();
     }
     else if (dgFurnitureType.Visibility.Equals(Visibility.Visible))
     {
         FurnitureType       copy            = (FurnitureType)SelectedFurnitureType.Clone();
         FurnitureTypeWindow furnitureWindow = new FurnitureTypeWindow(copy, FurnitureTypeWindow.Operation.EDIT);
         furnitureWindow.Show();
     }
     else if (dgSales.Visibility.Equals(Visibility.Visible))
     {
         Sale       copy       = (Sale)SelectedSale.Clone();
         SaleWindow saleWindow = new SaleWindow(copy, SaleWindow.Operation.EDIT);
         saleWindow.Show();
     }
     else if (dgUsers.Visibility.Equals(Visibility.Visible))
     {
         User       copy       = (User)SelectedUser.Clone();
         UserWindow userWindow = new UserWindow(copy, UserWindow.Operation.EDIT);
         userWindow.Show();
     }
     else if (dgAdditionalService.Visibility.Equals(Visibility.Visible))
     {
         AdditionalService       copy = (AdditionalService)SelectedAdditionalService.Clone();
         AdditionalServiceWindow additionalServiceWindow = new AdditionalServiceWindow(copy, AdditionalServiceWindow.Operation.EDIT);
         additionalServiceWindow.Show();
     }
 }
        private bool TryGetModel(out SgbFile model)
        {
            model = null;
            if (SelectedFurniture == null)
            {
                return(false);
            }

            try {
                model = SelectedFurniture.GetScene();

                var result = (model != null);
                if (!result)
                {
                    System.Windows.MessageBox.Show(string.Format("Unable to find model for {0}.", SelectedFurniture.Item.Name), "Model not found", System.Windows.MessageBoxButton.OK, System.Windows.MessageBoxImage.Error);
                }
                return(result);
            } catch (Exception e) {
                System.Windows.MessageBox.Show(string.Format("Failed to load model for {0}:{2}{3}", SelectedFurniture.Item.Name, Environment.NewLine, e), "Read failure", System.Windows.MessageBoxButton.OK, System.Windows.MessageBoxImage.Error);
                return(false);
            }
        }