Click here to Skip to main content
15,881,882 members
Articles / Desktop Programming / Windows Forms

Storm - the world's best IDE framework for .NET

Rate me:
Please Sign up or sign in to vote.
4.96/5 (82 votes)
4 Feb 2010LGPL311 min read 273.8K   6.5K   340  
Create fast, flexible, and extensible IDE applications easily with Storm - it takes nearly no code at all!
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using Storm;
using Storm.Plugins;
using Storm.Plugins.Attributes;
using Storm.Plugins.Classes;
using Storm.Plugins.Enums;
using Storm.Plugins.Interfaces;

namespace Plugin1
{
	[Plugin("PluginConsole", "Theodor \"Vestras\" Storm Kristensen",
	"Shows the debug messages from the PluginManager.", "1.0.0.4")]
	public partial class PluginConsole : UserControl, IPlugin
	{
		#region Fields

		private PluginManager _pluginManager = null;
		private Form _formParent             = null;
		private Icon _icon                   = null;

		private Type _type       = null;
		private string _assembly = "";
		private string _path     = "";
		private bool _enabled    = false;

		#endregion

		#region Properties

		public bool PluginEnabled
		{
			get { return _enabled; }
			set { _enabled = value; }
		}

		public PluginManager PluginManager
		{
			get { return _pluginManager; }
			set { _pluginManager = value; }
		}

		public Form FormParent
		{
			get { return _formParent; }
			set { _formParent = value; }
		}

		public Icon Icon
		{
			get { return _icon; }
			set { _icon = value; }
		}

		public string Assembly
		{
			get { return _assembly; }
			set { _assembly = value; }
		}

		public string Path
		{
			get { return _path; }
			set { _path = value; }
		}

		public Type Type
		{
			get { return _type; }
			set { _type = value; }
		}

		#endregion

		#region Methods

		#region Private

		private void OnTextAdded(object sender, EventArgs e)
		{ this.consoleText.Text = Storm.Plugins.Classes.Console.Text; }

		private void btnClear_Click(object sender, EventArgs e)
		{ this.consoleText.Text = ""; }

		#endregion

		#endregion

		/// <summary>
		/// Initializes the PluginConsole.
		/// </summary>
		public PluginConsole()
		{
			InitializeComponent();
			
			Dock = DockStyle.Bottom;
			Storm.Plugins.Classes.Console.TextAdded += OnTextAdded;
		}
	}
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The GNU Lesser General Public License (LGPLv3)



Comments and Discussions