- gesturerecognizer_demo.zip
- GestureRecognizer_demo
- gesturerecognizer_src.zip
- GestureRecognizer_src
- cmgblade_src.zip
- MouseGesture
- cmgblade_demo.zip
- Gestures
- ArrowLeft.mgf
- ArrowLeftNET.mgn
- ArrowLeftTS.mgt
- ArrowRight.mgf
- ArrowRightNET.mgn
- ArrowRightTS.mgt
- Circle.mgf
- CircleNET.mgn
- CircleTS.mgt
- DownLeftLine.mgf
- DownLeftLineNET.mgn
- DownLeftLineTS.mgt
- DownRightLine.mgf
- DownRightLineNET.mgn
- DownRightLineTS.mgt
- DownUp.mgf
- DownUpNET.mgn
- DownUpTS.mgt
- Esse.mgf
- EsseNET.mgn
- EsseTS.mgt
- HourGlass.mgf
- HourGlassNET.mgn
- HourGlassTS.mgt
- LeftSquare.mgf
- LeftSquareNET.mgn
- LeftSquareTS.mgt
- LineDown.mgf
- LineDownNET.mgn
- LineDownTS.mgt
- LineLeft.mgf
- LineLeftNET.mgn
- LineLeftTS.mgt
- LineRight.mgf
- LineRightNET.mgn
- LineRightTS.mgt
- LineUp.mgf
- LineUpNET.mgn
- LineUpTS.mgt
- LLeft.mgf
- LLeftNET.mgn
- LLeftTS.mgt
- LRight.mgf
- LRightNET.mgn
- LRightTS.mgt
- Omega.mgf
- OmegaNET.mgn
- OmegaTS.mgt
- RightSquare.mgf
- RightSquareNET.mgn
- RightSquareTS.mgt
- UpDown.mgf
- UpDownNET.mgn
- UpDownTS.mgt
- UpLeftLine.mgf
- UpLeftLineNET.mgn
- UpLeftLineTS.mgt
- UpRightLine.mgf
- UpRightLineNET.mgn
- UpRightLineTS.mgt
- Whirl.mgf
- WhirlNET.mgn
- WhirlTS.mgt
- MouseGesture.exe
- mousegesturesrc.zip
|
using System;
using System.Drawing;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Drawing.Drawing2D;
namespace GestureRecognizer
{
public enum MessageType
{
Error,
Normal,
Info
}
public class TransparentLabel : System.Windows.Forms.Label
{
private Color m_BaseColor;
private int m_Transparency;
private Color m_StandardColor;
private Color m_InfoColor;
private Color m_ErrorColor;
public Color BaseColor { get { return m_BaseColor; } set { m_BaseColor = value; BackColor = Color.FromArgb(m_Transparency, value); Refresh(); } }
public int Transparency { get { return m_Transparency; } set { m_Transparency = value; BackColor = Color.FromArgb(value, m_BaseColor); Refresh(); } }
public Color StandardColor { get { return m_StandardColor; } set { m_StandardColor = value; Refresh(); } }
public Color InfoColor { get { return m_InfoColor; } set { m_InfoColor = value; Refresh(); } }
public Color ErrorColor { get { return m_ErrorColor; } set { m_ErrorColor = value; Refresh(); } }
public TransparentLabel()
{
SetStyle(ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.OptimizedDoubleBuffer, true);
DoubleBuffered = true;
m_StandardColor = Color.Gray;
m_InfoColor = Color.Blue;
m_ErrorColor = Color.Red;
ForeColor = m_InfoColor;
m_BaseColor = Color.Gray;
m_Transparency = 50;
BackColor = Color.FromArgb(m_Transparency, m_BaseColor);
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
e.Graphics.DrawRectangle(new Pen(BaseColor), 0, 0, Width - 1, Height - 1);
}
public void ShowMessage(string str, MessageType type)
{
Text = str;
#region Linking MessageType to Color
switch (type)
{
case MessageType.Normal:
{
ForeColor = m_StandardColor;
break;
}
case MessageType.Info:
{
ForeColor = m_InfoColor;
break;
}
case MessageType.Error:
{
ForeColor = m_ErrorColor;
break;
}
}
#endregion
Refresh();
//Invalidate();
}
public void ShowMessage(string str)
{
Text = str;
Refresh();
//Invalidate();
}
public void ShowMessage(string[] strs, MessageType type)
{
string text = "";
for (int i = 0; i < strs.Length; i++)
text += strs[i] + (i == strs.Length - 1 ? "" : "\n");
ShowMessage(text, type);
}
public void ShowMessage(string[] strs)
{
string text = "";
for (int i = 0; i < strs.Length; i++)
text += strs[i] + (i == strs.Length - 1 ? "" : "\n");
ShowMessage(text);
}
}
}
|
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.
I got my Computer Science (Engineering) Master's Degree at the Siena University (Italy), but I'm from Rieti (a small town next to Rome).
My hobbies are RPG, MMORGP, programming and 3D graphics.
At the moment I'm employed at Apex s.r.l. (Modena, Italy) as a senior software developer, working for a WPF/WCF project in Rome.