예제 #1
0
 private void Button_Click(object sender, RoutedEventArgs e)
 {
     SpriteSelectionWindow.SetPageSetterAction((page) =>
     {
         this.Page = page;
     });
     SpriteSelectionWindow.ShowWindow(this.Page);
 }
 private void OnSpriteNameChanged(object sender, RoutedEventArgs e)
 {
     if (SelectedObj != null)
     {
         var window = new SpriteSelectionWindow();
         var obj    = SelectedObj;
         window.Sprite  = SelectedObj.Sprite;
         window.Closed += (s, args) =>
         {
             if (obj != null && obj.Sprite != window.Sprite)
             {
                 var op = new ModifyPropertyOperation(ApplicationSettings.Instance.ActiveProject, obj, nameof(Data.Article.Sprite), SelectedObj.Sprite, window.Sprite);
                 ApplicationSettings.Instance.ActiveProject.ExecuteOp(op);
                 Article.NoInvoke = true;
                 Article.Sprite   = window.Sprite;
                 Article.NoInvoke = false;
             }
         };
         window.Owner = App.Current.MainWindow;
         window.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterOwner;
         window.Show();
     }
 }
예제 #3
0
 private void OnSpriteNameChanged(object sender, RoutedEventArgs e)
 {
     if (SelectedTileset != null)
     {
         var tileset = SelectedTileset;
         var window  = new SpriteSelectionWindow();
         window.Sprite  = SelectedTileset.SpritePath;
         window.Closed += (s, args) =>
         {
             if (tileset != null && tileset.SpritePath != window.Sprite)
             {
                 var op = new ModifyTilesetOperation(ApplicationSettings.Instance.ActiveProject, tileset, nameof(Tileset.SpritePath), SelectedTileset.SpritePath, window.Sprite);
                 ApplicationSettings.Instance.ActiveProject.ExecuteOp(op);
                 TexData spr = viewer.LoadImage(Tileset.SpritePath);
                 SelectedTileset.TileWidth  = Clamp(SelectedTileset.TileWidth, 1, spr.image.Width);
                 SelectedTileset.TileHeight = Clamp(SelectedTileset.TileHeight, 1, spr.image.Height);
                 Update();
             }
         };
         window.Owner = App.Current.MainWindow;
         window.WindowStartupLocation = WindowStartupLocation.CenterOwner;
         window.Show();
     }
 }
예제 #4
0
        /// <summary>
        ///  Shows the sprite selection window.
        /// </summary>
        public void ShowSpriteSelectionWindow()
        {
            Window window = new SpriteSelectionWindow();

            window.Show();
        }