private void SelectionChanged() { bool first = true; toggling = true; string nextimage = ""; foreach (Tile tile in Selection) { if (first) { SolidCheckButton.Active = tile.HasAttribute(Attribute.SOLID); UniSolidCheckButton.Active = tile.HasAttribute(Attribute.UNISOLID); IceCheckButton.Active = tile.HasAttribute(Attribute.ICE); WaterCheckButton.Active = tile.HasAttribute(Attribute.WATER); HurtsCheckButton.Active = tile.HasAttribute(Attribute.HURTS); FireCheckButton.Active = tile.HasAttribute(Attribute.FIRE); BrickCheckButton.Active = tile.HasAttribute(Attribute.BRICK); CoinCheckButton.Active = tile.HasAttribute(Attribute.COIN); FullBoxCheckButton.Active = tile.HasAttribute(Attribute.FULLBOX); SlopeCheckButton.Active = tile.HasAttribute(Attribute.SLOPE); GoalCheckButton.Active = tile.HasAttribute(Attribute.GOAL); HiddenCheckButton.Active = tile.Hidden; DontUseCheckButton.Active = tile.ID == -1; DataEntry.Text = tile.Data.ToString(); AnimFpsEntry.Text = tile.AnimFps.ToString(); IDEntry.Text = tile.ID.ToString(); IDEntry.IsEditable = true; first = false; if (tile.Images.Count > 0) { nextimage = ((ImageRegion)tile.Images[0]).ImageFile; } } else { IDEntry.Text += "," + tile.ID.ToString(); IDEntry.IsEditable = false; if (tile.Images.Count > 0 && ((ImageRegion)tile.Images[0]).ImageFile != nextimage) { nextimage = ""; pixbuf = null; } } } if (nextimage != currentimage) { ChangeImage(nextimage); } toggling = false; DrawingArea.QueueDraw(); }
///<summary>Force a complete redraw of the view</summary> public void Redraw() { if (!widgetRealized) { return; } Gdk.Rectangle alloc = drawingArea.Allocation; Resize(alloc.Width, alloc.Height); layout.AreaGroup.Invalidate(); drawingArea.QueueDraw(); }
private void SelectionChanged() { bool first = true; toggling = true; string nextimage = ""; foreach (Tile tile in Selection) { if (first) { SolidCheckButton.Active = tile.Solid; UniSolidCheckButton.Active = tile.UniSolid; IceCheckButton.Active = tile.Ice; WaterCheckButton.Active = tile.Water; SlopeCheckButton.Active = tile.Slope; HiddenCheckButton.Active = tile.Hidden; DontUseCheckButton.Active = tile.ID == -1; DataEntry.Text = tile.Data.ToString(); AnimFpsEntry.Text = tile.AnimFps.ToString(); IDEntry.Text = tile.ID.ToString(); IDEntry.Editable = true; first = false; if (tile.Images.Count > 0) { nextimage = ((ImageRegion)tile.Images[0]).ImageFile; } } else { IDEntry.Text += "," + tile.ID.ToString(); IDEntry.Editable = false; if (tile.Images.Count > 0 && ((ImageRegion)tile.Images[0]).ImageFile != nextimage) { nextimage = ""; pixbuf = null; } } } if (nextimage != currentimage) { ChangeImage(nextimage); } toggling = false; DrawingArea.QueueDraw(); }
/* * * DRAWINGAREA * */ public static void ErasePaint(Gtk.DrawingArea da, Gdk.Pixmap px) { px.DrawRectangle(da.Style.WhiteGC, true, 0, 0, da.Allocation.Width, da.Allocation.Height); da.QueueDraw(); // -- refresh }