private void SelectLayer(IRoomEditorFilter layer) { if (!_editorConstructed) { return; } if (layer == _layer) { return; } if (_layer != null) { _layer.FilterOff(); } _layer = layer ?? _emptyLayer; SetDefaultPropertyGridList(); SetPropertyGridObject(_room); lblTransparency.Visible = _layer.ShowTransparencySlider; sldTransparency.Visible = _layer.ShowTransparencySlider; chkCharacterOffset.Visible = _layer is CharactersEditorFilter; _layer.FilterOn(); bufferedPanel1.Invalidate(); // ensure that shortcut keys do not move the combobox bufferedPanel1.Focus(); }
protected override void OnPropertyChanged(string propertyName, object oldValue) { _room.Modified = true; bool needRefresh = false; // TODO: unfortunately had to duplicate handling of property change here; // cannot forward event to the CharacterComponent.OnPropertyChanged, // because its implementation relies on it being active Pane! if (propertyName == Character.PROPERTY_NAME_STARTINGROOM) { if (_characterLayer != null) { int oldRoom = (int)oldValue; _characterLayer.UpdateCharactersRoom(_characterLayer.SelectedCharacter, oldRoom); needRefresh = true; } } if (propertyName == RoomHotspot.PROPERTY_NAME_SCRIPT_NAME || propertyName == RoomObject.PROPERTY_NAME_SCRIPT_NAME || propertyName == Character.PROPERTY_NAME_SCRIPTNAME || needRefresh) { if (_layer != null) { // Force the layer to refresh its property list with the new name // TODO: find out if this hack can be avoided _layer.FilterOff(); _layer.FilterOn(); } RefreshLayersTree(); } }
protected override void OnPropertyChanged(string propertyName, object oldValue) { _room.Modified = true; if ((propertyName == RoomHotspot.PROPERTY_NAME_SCRIPT_NAME) || (propertyName == RoomObject.PROPERTY_NAME_SCRIPT_NAME)) { // Force the filter to refresh its property list with the new name _filter.FilterOff(); _filter.FilterOn(); } }
public RoomSettingsEditor(Room room) { this.SetStyle(ControlStyles.Selectable, true); InitializeComponent(); _room = room; if (_room.Resolution == RoomResolution.LowRes) { _state.ScaleFactor = 2; } else { _state.ScaleFactor = 1; } sldZoomLevel.Value = _state.ScaleFactor; _state.ScrollOffsetX = 0; _state.ScrollOffsetY = 0; _state.CurrentCursor = Cursors.Default; _filters.Add(new EmptyEditorFilter(bufferedPanel1, _room)); _filters.Add(new EdgesEditorFilter(bufferedPanel1, _room)); _filters.Add(new CharactersEditorFilter(bufferedPanel1, _room, Factory.AGSEditor.CurrentGame)); _filters.Add(new ObjectsEditorFilter(bufferedPanel1, _room)); _filters.Add(new HotspotsEditorFilter(bufferedPanel1, _room)); _filters.Add(new WalkableAreasEditorFilter(bufferedPanel1, _room)); _filters.Add(new WalkBehindsEditorFilter(bufferedPanel1, _room)); _filters.Add(new RegionsEditorFilter(bufferedPanel1, _room)); _filter = _filters[0]; _filter.FilterOn(); cmbViewType.Items.Add("Nothing"); cmbViewType.Items.Add("Edges"); cmbViewType.Items.Add("Characters"); cmbViewType.Items.Add("Objects"); cmbViewType.Items.Add("Hotspots"); cmbViewType.Items.Add("Walkable areas"); cmbViewType.Items.Add("Walk-behinds"); cmbViewType.Items.Add("Regions"); cmbViewType.SelectedIndex = 0; RepopulateBackgroundList(0); UpdateScrollableWindowSize(); this.MouseWheel += new MouseEventHandler(RoomSettingsEditor_MouseWheel); this.bufferedPanel1.MouseWheel += new MouseEventHandler(RoomSettingsEditor_MouseWheel); _editorConstructed = true; }
public RoomSettingsEditor(Room room) { this.SetStyle(ControlStyles.Selectable, true); InitializeComponent(); _room = room; if (_room.Resolution == RoomResolution.LowRes) { _state.ScaleFactor = 2; } else { _state.ScaleFactor = 1; } sldZoomLevel.Value = _state.ScaleFactor; _state.ScrollOffsetX = 0; _state.ScrollOffsetY = 0; _state.CurrentCursor = Cursors.Default; _filters.Add(new EmptyEditorFilter(bufferedPanel1, _room)); _filters.Add(new EdgesEditorFilter(bufferedPanel1, _room)); _filters.Add(new CharactersEditorFilter(bufferedPanel1, _room, Factory.AGSEditor.CurrentGame)); _filters.Add(new ObjectsEditorFilter(bufferedPanel1, _room)); _filters.Add(new HotspotsEditorFilter(bufferedPanel1, _room)); _filters.Add(new WalkableAreasEditorFilter(bufferedPanel1, _room)); _filters.Add(new WalkBehindsEditorFilter(bufferedPanel1, _room)); _filters.Add(new RegionsEditorFilter(bufferedPanel1, _room)); _filter = _filters[0]; _filter.FilterOn(); cmbViewType.Items.Add("Nothing"); cmbViewType.Items.Add("Edges"); cmbViewType.Items.Add("Characters"); cmbViewType.Items.Add("Objects"); cmbViewType.Items.Add("Hotspots"); cmbViewType.Items.Add("Walkable areas"); cmbViewType.Items.Add("Walk-behinds"); cmbViewType.Items.Add("Regions"); cmbViewType.SelectedIndex = 0; RepopulateBackgroundList(0); UpdateScrollableWindowSize(); this.MouseWheel += new MouseEventHandler(RoomSettingsEditor_MouseWheel); this.bufferedPanel1.MouseWheel += new MouseEventHandler(RoomSettingsEditor_MouseWheel); _editorConstructed = true; }
private void cmbViewType_SelectedIndexChanged(object sender, EventArgs e) { if (_editorConstructed) { _filter.FilterOff(); _filter = _filters[cmbViewType.SelectedIndex]; SetDefaultPropertyGridList(); Factory.GUIController.SetPropertyGridObject(_room); lblTransparency.Visible = _filter.ShowTransparencySlider; sldTransparency.Visible = _filter.ShowTransparencySlider; chkCharacterOffset.Visible = ((string)cmbViewType.SelectedItem == "Characters"); _filter.FilterOn(); bufferedPanel1.Invalidate(); // ensure that shortcut keys do not move the combobox bufferedPanel1.Focus(); } }
private void cmbViewType_SelectedIndexChanged(object sender, EventArgs e) { if (_editorConstructed) { _filter.FilterOff(); _filter = _filters[cmbViewType.SelectedIndex]; SetDefaultPropertyGridList(); Factory.GUIController.SetPropertyGridObject(_room); lblTransparency.Visible = _filter.ShowTransparencySlider; sldTransparency.Visible = _filter.ShowTransparencySlider; chkCharacterOffset.Visible = ((string)cmbViewType.SelectedItem == "Characters"); _filter.FilterOn(); bufferedPanel1.Invalidate(); // ensure that shortcut keys do not move the combobox bufferedPanel1.Focus(); } }