Example #1
0
        public LayerButton(LayerDefinition definition, int y)
        {
            LayerDefinition = definition;
            InitializeComponent();
            Location = new Point(0, y);
            pictureBox.Image = Image.FromFile(Path.Combine(Ogmo.ProgramDirectory, @"Content\layers", LayerDefinition.Image));
            layerNameLabel.Text = definition.Name;

            //Init state
            selected = Ogmo.LayersWindow.CurrentLayerIndex != -1 && Ogmo.Project.LayerDefinitions[Ogmo.LayersWindow.CurrentLayerIndex] == LayerDefinition;
            layerNameLabel.BackColor = selected ? Selected : NotSelected;
            visibleCheckBox.Checked = LayerDefinition.Visible;

            //Add events
            Ogmo.LayersWindow.OnLayerChanged += onLayerChanged;
        }
        private void setControlsFromDefinition(LayerDefinition definition)
        {
            //Enabled stuff
            removeButton.Enabled = true;
            moveUpButton.Enabled = listBox.SelectedIndex > 0;
            moveDownButton.Enabled = listBox.SelectedIndex < listBox.Items.Count - 1;
            nameTextBox.Enabled = true;
            gridXTextBox.Enabled = true;
            gridYTextBox.Enabled = true;
            scrollXTextBox.Enabled = true;
            scrollYTextBox.Enabled = true;
            typeComboBox.Enabled = true;

            //Load properties
            nameTextBox.Text = definition.Name;
            gridXTextBox.Text = definition.Grid.Width.ToString();
            gridYTextBox.Text = definition.Grid.Height.ToString();
            scrollXTextBox.Text = definition.ScrollFactor.X.ToString();
            scrollYTextBox.Text = definition.ScrollFactor.Y.ToString();
            typeComboBox.SelectedIndex = LayerDefinition.LAYER_TYPES.FindIndex(e => e == definition.GetType());

            //Remove the old layer editor
            if (layerEditor != null)
                Controls.Remove(layerEditor);

            //Add the new one
            layerEditor = definition.GetEditor();
            if (layerEditor != null)
            {
                layerEditor.TabIndex = 6;
                Controls.Add(layerEditor);
            }
        }
Example #3
0
 private void onLayerChanged(LayerDefinition layerDefinition, int index)
 {
     EditorVisible = layerDefinition is TileLayerDefinition;
     if (EditorVisible && Ogmo.LayersWindow.CurrentLayer != null)
     {
         tilesetsComboBox.SelectedIndex = Ogmo.Project.Tilesets.IndexOf((Ogmo.LayersWindow.CurrentLayer as TileLayer).Tileset);
         tileSelector.Tileset = (Ogmo.LayersWindow.CurrentLayer as TileLayer).Tileset;
     }
 }
Example #4
0
 /*
  *  Events
  */
 private void onLayerChanged(LayerDefinition def, int index)
 {
     EditorVisible = def is EntityLayerDefinition;
 }
Example #5
0
        private void onLayerChanged(LayerDefinition def, int index)
        {
            Controls.Clear();

            if (def != null)
            {
                tools = toolsForLayerTypes[def.GetType()];

                for (int i = 0; i < tools.Length; i++)
                    Controls.Add(new ToolButton(tools[i], (i % 2) * 24, (i / 2) * 24, i));

                if (tools.Length > 0)
                    SetTool(tools[0]);
                else
                    ClearTool();
            }
        }
Example #6
0
 public Layer(Level level, LayerDefinition definition)
 {
     Level = level;
     Definition = definition;
 }
Example #7
0
 private void onLayerChanged(LayerDefinition layer, int index)
 {
     selected = layer == LayerDefinition;
     layerNameLabel.BackColor = selected ? Selected : NotSelected;
 }