*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.21" SourceFile="ctl32_balloontip_sample.scx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*
#INCLUDE "..\ctl32.h"

DEFINE CLASS dataenvironment AS dataenvironment 
 	*< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" />

	*<PropValue>
		DataSource = .NULL.
		Height = 200
		Left = 1
		Name = "Dataenvironment"
		Top = 220
		Width = 520
	*</PropValue>

ENDDEFINE

DEFINE CLASS form1 AS form 
 	*< CLASSDATA: Baseclass="form" Timestamp="" Scale="" Uniqueid="" />

	*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder 
	*< OBJECTDATA: ObjPath="Ctl32_balloontip1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Text1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Text3" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Text2" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Text4" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Label1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Label2" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Label3" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Label4" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Image1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Check1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Optiongroup1" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Check2" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Check3" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Check4" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Check6" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Optiongroup2" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Text5" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Command2" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Command3" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Command4" UniqueID="" Timestamp="" />
	*< OBJECTDATA: ObjPath="Command1" UniqueID="" Timestamp="" />

	*<PropValue>
		AllowOutput = .F.
		AutoCenter = .T.
		Caption = "ctl32_balloontip sample1"
		DoCreate = .T.
		Height = 338
		Icon = keys.ico
		KeyPreview = .T.
		MaxButton = .F.
		MinButton = .F.
		Name = "Form1"
		ShowTips = .T.
		Width = 631
	*</PropValue>

	ADD OBJECT 'Check1' AS checkbox WITH ;
		Alignment = 0, ;
		AutoSize = .T., ;
		Caption = "ctlActive", ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlActive", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 408, ;
		Name = "Check1", ;
		TabIndex = 2, ;
		TabStop = .F., ;
		Top = 24, ;
		Width = 59
		*< END OBJECT: BaseClass="checkbox" />

	ADD OBJECT 'Check2' AS checkbox WITH ;
		Alignment = 0, ;
		AutoSize = .T., ;
		Caption = "ctlCloseButton (XP)", ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlCloseButton", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 408, ;
		Name = "Check2", ;
		TabIndex = 5, ;
		TabStop = .F., ;
		Top = 48, ;
		Width = 110
		*< END OBJECT: BaseClass="checkbox" />

	ADD OBJECT 'Check3' AS checkbox WITH ;
		Alignment = 0, ;
		AutoSize = .T., ;
		Caption = "ctlFadeIn (XP)", ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlFadeIn", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 408, ;
		Name = "Check3", ;
		TabIndex = 7, ;
		TabStop = .F., ;
		Top = 72, ;
		Width = 86
		*< END OBJECT: BaseClass="checkbox" />

	ADD OBJECT 'Check4' AS checkbox WITH ;
		Alignment = 0, ;
		AutoSize = .T., ;
		Caption = "ctlFadeOut (XP)", ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlFadeOut", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 408, ;
		Name = "Check4", ;
		TabIndex = 10, ;
		TabStop = .F., ;
		Top = 96, ;
		Width = 94
		*< END OBJECT: BaseClass="checkbox" />

	ADD OBJECT 'Check6' AS checkbox WITH ;
		Alignment = 0, ;
		AutoSize = .T., ;
		Caption = "ctlIconLarge (Vista)", ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlIconLarge", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 408, ;
		Name = "Check6", ;
		TabIndex = 11, ;
		TabStop = .F., ;
		Top = 120, ;
		Width = 111
		*< END OBJECT: BaseClass="checkbox" />

	ADD OBJECT 'Command1' AS commandbutton WITH ;
		Caption = "No Icon", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 23, ;
		Left = 348, ;
		Name = "Command1", ;
		TabIndex = 19, ;
		TabStop = .F., ;
		Top = 228, ;
		Width = 73
		*< END OBJECT: BaseClass="commandbutton" />

	ADD OBJECT 'Command2' AS commandbutton WITH ;
		Caption = "Cancel", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 23, ;
		Left = 540, ;
		Name = "Command2", ;
		TabIndex = 20, ;
		TabStop = .F., ;
		Top = 228, ;
		Width = 60
		*< END OBJECT: BaseClass="commandbutton" />

	ADD OBJECT 'Command3' AS commandbutton WITH ;
		Caption = "Link", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 23, ;
		Left = 180, ;
		Name = "Command3", ;
		TabIndex = 17, ;
		TabStop = .F., ;
		Top = 228, ;
		Width = 73
		*< END OBJECT: BaseClass="commandbutton" />

	ADD OBJECT 'Command4' AS commandbutton WITH ;
		Caption = "Custom Icon", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 23, ;
		Left = 264, ;
		Name = "Command4", ;
		TabIndex = 18, ;
		TabStop = .F., ;
		Top = 228, ;
		Width = 73
		*< END OBJECT: BaseClass="commandbutton" />

	ADD OBJECT 'Ctl32_balloontip1' AS ctl32_balloontip WITH ;
		Left = 180, ;
		Name = "Ctl32_balloontip1", ;
		TabIndex = 1, ;
		Top = 12, ;
		ZOrderSet = 23, ;
		tmrHide.Name = "tmrHide", ;
		lblname.Name = "lblname", ;
		tmrShow.Name = "tmrShow"
		*< END OBJECT: ClassLib="..\ctl32_balloontip.vcx" BaseClass="container" />

	ADD OBJECT 'Image1' AS image WITH ;
		BackStyle = 0, ;
		Height = 32, ;
		Left = 12, ;
		Name = "Image1", ;
		Picture = keys.ico, ;
		Top = 6, ;
		Width = 32
		*< END OBJECT: BaseClass="image" />

	ADD OBJECT 'Label1' AS label WITH ;
		Anchor = 0, ;
		AutoSize = .T., ;
		BackStyle = 0, ;
		Caption = "User Name:", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 12, ;
		Name = "Label1", ;
		TabIndex = 6, ;
		Top = 52, ;
		Width = 58
		*< END OBJECT: BaseClass="label" />

	ADD OBJECT 'Label2' AS label WITH ;
		Anchor = 0, ;
		AutoSize = .T., ;
		BackStyle = 0, ;
		Caption = "Old password:", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 12, ;
		Name = "Label2", ;
		TabIndex = 9, ;
		Top = 90, ;
		Width = 71
		*< END OBJECT: BaseClass="label" />

	ADD OBJECT 'Label3' AS label WITH ;
		Anchor = 0, ;
		AutoSize = .T., ;
		BackStyle = 0, ;
		Caption = "New password:", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 12, ;
		Name = "Label3", ;
		TabIndex = 13, ;
		Top = 128, ;
		Width = 76
		*< END OBJECT: BaseClass="label" />

	ADD OBJECT 'Label4' AS label WITH ;
		Anchor = 0, ;
		AutoSize = .T., ;
		BackStyle = 0, ;
		Caption = "Confirm new password:", ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 15, ;
		Left = 12, ;
		Name = "Label4", ;
		TabIndex = 16, ;
		Top = 166, ;
		Width = 115
		*< END OBJECT: BaseClass="label" />

	ADD OBJECT 'Optiongroup1' AS optiongroup WITH ;
		ButtonCount = 8, ;
		Height = 168, ;
		Left = 540, ;
		Name = "Optiongroup1", ;
		TabIndex = 3, ;
		Top = 24, ;
		Value = 1, ;
		Width = 84, ;
		Option1.AutoSize = .T., ;
		Option1.Caption = "System", ;
		Option1.FontName = "Tahoma", ;
		Option1.FontSize = 8, ;
		Option1.Height = 15, ;
		Option1.Left = 5, ;
		Option1.Name = "Option1", ;
		Option1.TabStop = .F., ;
		Option1.ToolTipText = "This is the locale set by the user, not the OS install language", ;
		Option1.Top = 5, ;
		Option1.Value = 1, ;
		Option1.Width = 53, ;
		Option2.AutoSize = .T., ;
		Option2.Caption = "English", ;
		Option2.FontName = "Tahoma", ;
		Option2.FontSize = 8, ;
		Option2.Height = 15, ;
		Option2.Left = 5, ;
		Option2.Name = "Option2", ;
		Option2.TabStop = .F., ;
		Option2.Top = 24, ;
		Option2.Width = 51, ;
		Option3.AutoSize = .T., ;
		Option3.Caption = "Spanish", ;
		Option3.FontName = "Tahoma", ;
		Option3.FontSize = 8, ;
		Option3.Height = 15, ;
		Option3.Left = 5, ;
		Option3.Name = "Option3", ;
		Option3.TabStop = .F., ;
		Option3.Top = 43, ;
		Option3.Width = 55, ;
		Option4.AutoSize = .T., ;
		Option4.Caption = "French", ;
		Option4.FontName = "Tahoma", ;
		Option4.FontSize = 8, ;
		Option4.Height = 15, ;
		Option4.Left = 5, ;
		Option4.Name = "Option4", ;
		Option4.TabStop = .F., ;
		Option4.Top = 62, ;
		Option4.Width = 51, ;
		Option5.AutoSize = .T., ;
		Option5.Caption = "German", ;
		Option5.FontName = "Tahoma", ;
		Option5.FontSize = 8, ;
		Option5.Height = 15, ;
		Option5.Left = 5, ;
		Option5.Name = "Option5", ;
		Option5.TabStop = .F., ;
		Option5.Top = 81, ;
		Option5.Width = 55, ;
		Option6.AutoSize = .T., ;
		Option6.Caption = "Italian", ;
		Option6.FontName = "Tahoma", ;
		Option6.FontSize = 8, ;
		Option6.Height = 15, ;
		Option6.Left = 5, ;
		Option6.Name = "Option6", ;
		Option6.TabStop = .F., ;
		Option6.Top = 100, ;
		Option6.Width = 48, ;
		Option7.Caption = "Romanian", ;
		Option7.FontName = "Tahoma", ;
		Option7.FontSize = 8, ;
		Option7.Height = 17, ;
		Option7.Left = 5, ;
		Option7.Name = "Option7", ;
		Option7.TabStop = .F., ;
		Option7.Top = 119, ;
		Option7.Width = 67, ;
		Option8.AutoSize = .T., ;
		Option8.Caption = "Swedish ", ;
		Option8.FontName = "Tahoma", ;
		Option8.FontSize = 8, ;
		Option8.Height = 15, ;
		Option8.Left = 5, ;
		Option8.Name = "Option8", ;
		Option8.TabStop = .F., ;
		Option8.Top = 138, ;
		Option8.Width = 60
		*< END OBJECT: BaseClass="optiongroup" />

	ADD OBJECT 'Optiongroup2' AS optiongroup WITH ;
		ButtonCount = 3, ;
		ControlSource = "Thisform.ctl32_balloontip1.ctlStyle", ;
		Height = 63, ;
		Left = 403, ;
		Name = "Optiongroup2", ;
		TabIndex = 14, ;
		Top = 144, ;
		Value = 0, ;
		Width = 108, ;
		Option1.AutoSize = .T., ;
		Option1.Caption = "Balloon", ;
		Option1.FontName = "Tahoma", ;
		Option1.FontSize = 8, ;
		Option1.Height = 15, ;
		Option1.Left = 5, ;
		Option1.Name = "Option1", ;
		Option1.TabStop = .F., ;
		Option1.Top = 5, ;
		Option1.Value = 0, ;
		Option1.Width = 52, ;
		Option2.AutoSize = .T., ;
		Option2.Caption = "Rect", ;
		Option2.FontName = "Tahoma", ;
		Option2.FontSize = 8, ;
		Option2.Height = 15, ;
		Option2.Left = 5, ;
		Option2.Name = "Option2", ;
		Option2.TabStop = .F., ;
		Option2.Top = 24, ;
		Option2.Width = 40, ;
		Option3.AutoSize = .T., ;
		Option3.Caption = "Rect No Borders", ;
		Option3.FontName = "Tahoma", ;
		Option3.FontSize = 8, ;
		Option3.Height = 15, ;
		Option3.Left = 5, ;
		Option3.Name = "Option3", ;
		Option3.TabStop = .F., ;
		Option3.Top = 43, ;
		Option3.Width = 96
		*< END OBJECT: BaseClass="optiongroup" />

	ADD OBJECT 'Text1' AS textbox WITH ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		ForeColor = 50,50,50, ;
		Height = 22, ;
		Left = 156, ;
		Name = "Text1", ;
		SelectOnEntry = .T., ;
		TabIndex = 4, ;
		Top = 48, ;
		Value = , ;
		Width = 204, ;
		ZOrderSet = 1
		*< END OBJECT: BaseClass="textbox" />

	ADD OBJECT 'Text2' AS textbox WITH ;
		FontName = "Wingdings", ;
		FontSize = 8, ;
		Height = 22, ;
		Left = 156, ;
		Name = "Text2", ;
		PasswordChar = "l", ;
		TabIndex = 8, ;
		Top = 86, ;
		Width = 204, ;
		ZOrderSet = 2
		*< END OBJECT: BaseClass="textbox" />

	ADD OBJECT 'Text3' AS textbox WITH ;
		FontName = "Wingdings", ;
		FontSize = 8, ;
		Height = 22, ;
		Left = 156, ;
		Name = "Text3", ;
		PasswordChar = "l", ;
		TabIndex = 12, ;
		Top = 124, ;
		Width = 204, ;
		ZOrderSet = 2
		*< END OBJECT: BaseClass="textbox" />

	ADD OBJECT 'Text4' AS textbox WITH ;
		FontName = "Wingdings", ;
		FontSize = 8, ;
		Height = 22, ;
		Left = 156, ;
		Name = "Text4", ;
		PasswordChar = "l", ;
		TabIndex = 15, ;
		Top = 162, ;
		Width = 204, ;
		ZOrderSet = 2
		*< END OBJECT: BaseClass="textbox" />

	ADD OBJECT 'Text5' AS textbox WITH ;
		FontName = "Tahoma", ;
		FontSize = 8, ;
		Height = 23, ;
		Left = 12, ;
		Name = "Text5", ;
		ReadOnly = .T., ;
		TabIndex = 21, ;
		Top = 312, ;
		Width = 612
		*< END OBJECT: BaseClass="textbox" />
	
	PROCEDURE Destroy
		Set Default To (Thisform._SaveDefault)
		Set Path To (Thisform._SavePath)
		
		If Thisform.ShowWindow = 2 Then
			_Screen.Visible = .T.
		Endif
	ENDPROC

	PROCEDURE Init
		This.BorderStyle = 2
		Clear
		
	ENDPROC

	PROCEDURE Load
		Thisform.AddProperty([_SavePath], Set([Path]))
		Thisform.AddProperty([_SaveDefault], Sys(5) + Sys(2003))
		
		If Type("Application.ActiveProject") = [O] Then
			Application.DefaultFilePath = Application.ActiveProject.HomeDir
		Else
			Application.DefaultFilePath = Justpath(Substr(Sys(16),At([\],Sys(16))-Iif(At([\\],Sys(16))=0,2,1)))
		Endif
		
		Set Path To ".\.."
		
		
	ENDPROC

	PROCEDURE QueryUnload
		Clear Events
		
	ENDPROC

	PROCEDURE Command1.Click
		#Define CTL_BTPOS_NONE 		1
		#Define CTL_BTPOS_ACTIVECTRL 	2
		#Define CTL_BTPOS_CARET		3
		#Define CTL_BTPOS_SYS1270		4
		#Define CTL_BTPOS_CTRLREF		5
		
		#Define TTI_NONE				0
		#Define TTI_INFO				1
		#Define TTI_WARNING				2
		#Define TTI_ERROR				3
		#Define TTI_INFO_LARGE          4		&& VISTA
		#Define TTI_WARNING_LARGE       5		&& VISTA
		#Define TTI_ERROR_LARGE         6		&& VISTA
		
		With Thisform.ctl32_balloontip1
			.ctlVisible = 0
			.ctlCapsLockStyle = 0
			.ctlPositionStyle = CTL_BTPOS_SYS1270
			.ctlHideDelay = 5000
			.ctlIcon = 0
			.ctlTitle = "This is a BalloonTip With no icon"
			.ctlText = "This is the text"
			.ctlVisible = 1
		
		Endwith
		
	ENDPROC

	PROCEDURE Command2.Click
		Thisform.Release()
		Clear Events
		
	ENDPROC

	PROCEDURE Command3.Click
		#Define CTL_BTPOS_NONE 		1
		#Define CTL_BTPOS_ACTIVECTRL 	2
		#Define CTL_BTPOS_CARET		3
		#Define CTL_BTPOS_SYS1270		4
		#Define CTL_BTPOS_CTRLREF		5
		
		#Define TTI_NONE				0
		#Define TTI_INFO				1
		#Define TTI_WARNING				2
		#Define TTI_ERROR				3
		#Define TTI_INFO_LARGE          4		&& VISTA
		#Define TTI_WARNING_LARGE       5		&& VISTA
		#Define TTI_ERROR_LARGE         6		&& VISTA
		
		With Thisform.ctl32_balloontip1
			.ctlVisible = 0
			.ctlCapsLockStyle = 0
			.ctlControl = This
			.ctlPositionStyle = CTL_BTPOS_CTRLREF
			.ctlHideDelay = 5000
			.ctlIcon = 1
			.ctlTitle = "This is a BalloonTip With a Web Link"
			.ctlLinkURL = "http://www.goyanet.com.ar/vfp/ctl32_balloontip/balloontip.htm"
			.ctlLinkLabel = "ctl32_BalloonTip Homepage"
			.ctlText = [More info here: ] + .ctlLink + CRLF + [Please visit the site for full documentation.]
			.ctlVisible = 1
		
		Endwith
		
	ENDPROC

	PROCEDURE Command4.Click
		#Define CTL_BTPOS_NONE 		1
		#Define CTL_BTPOS_ACTIVECTRL 	2
		#Define CTL_BTPOS_CARET		3
		#Define CTL_BTPOS_SYS1270		4
		#Define CTL_BTPOS_CTRLREF		5
		
		#Define TTI_NONE				0
		#Define TTI_INFO				1
		#Define TTI_WARNING				2
		#Define TTI_ERROR				3
		#Define TTI_INFO_LARGE          4		&& VISTA
		#Define TTI_WARNING_LARGE       5		&& VISTA
		#Define TTI_ERROR_LARGE         6		&& VISTA
		
		With Thisform.ctl32_balloontip1
			.ctlVisible = 0
			.ctlCapsLockStyle = 0
			.ctlPositionStyle = CTL_BTPOS_ACTIVECTRL
			.ctlHideDelay = 5000
			.ctlIcon = [keys.ico]
			.ctlTitle = "This is a BalloonTip With a custom icon"
			.ctlText = "This only works in XP and up. lksdj aslkdj ñaslkdj añslkdj asñurer xnb lrye  fbc  seyrt lsv ckjfg fbljfliurey kauhreiaurh asjhliaue kasjhfl sjd wey mc udhqwiuey sdjhaew yt uwe wey sd cn hdash auyd asjdh sahsakjdhlaeyw akjdhawiues slahdas "
			.ctlVisible = 1
		
		Endwith
		
	ENDPROC

	PROCEDURE Ctl32_balloontip1.ctlhide
		Lparameters tnHideStyle As Integer
		
		Thisform.TEXT5.Value = "Last hide reason code: " + Transform(m.tnHideStyle)
		
		DoDefault(m.tnHideStyle)
		
	ENDPROC

	PROCEDURE Optiongroup1.InteractiveChange
		*!* Language Identifier Constants and Strings
		*!* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/intl/nls_61df.asp
		
		Do Case
		
			Case This.Value = 1
				Thisform.ctl32_balloontip1.ctlLangID = 0x0
			Case This.Value = 2
				Thisform.ctl32_balloontip1.ctlLangID = 0x0409
			Case This.Value = 3
				Thisform.ctl32_balloontip1.ctlLangID = 0x0c0a
			Case This.Value = 4
				Thisform.ctl32_balloontip1.ctlLangID = 0x040c
			Case This.Value = 5
				Thisform.ctl32_balloontip1.ctlLangID = 0x0407
			Case This.Value = 6
				Thisform.ctl32_balloontip1.ctlLangID = 0x0410
			Case This.Value = 7
				Thisform.ctl32_balloontip1.ctlLangID = 0x0418
			Case This.Value = 8
				Thisform.ctl32_balloontip1.ctlLangID = 0x041d
		
		Endcase
		
	ENDPROC

	PROCEDURE Text1.GotFocus
		#Define CTL_BTPOS_NONE 			1
		#Define CTL_BTPOS_ACTIVECTRL 	2
		#Define CTL_BTPOS_CARET			3
		#Define CTL_BTPOS_SYS1270		4
		#Define CTL_BTPOS_CTRLREF		5
		#Define CTL_BTPOS_MOUSE			6
		
		#Define CTL_STYLE_BALLOON		1
		#Define CTL_STYLE_RECT			2
		#Define CTL_STYLE_NOBORDER		3
		
		#Define TTI_NONE				0
		#Define TTI_INFO				1
		#Define TTI_WARNING				2
		#Define TTI_ERROR				3
		#Define TTI_INFO_LARGE          4		&& VISTA
		#Define TTI_WARNING_LARGE       5		&& VISTA
		#Define TTI_ERROR_LARGE         6		&& VISTA
		
			With Thisform.ctl32_balloontip1
				.ctlPositionStyle = CTL_BTPOS_CARET
				.ctlHideDelay = 5000
				.ctlCapsLockStyle = 0
				.ctlIcon = TTI_INFO
				.ctlTitle = "Username"
				.ctlText = "Enter your user name here with no spaces."
				.ctlVisible = 1
			Endwith
		
		
	ENDPROC

	PROCEDURE Text1.LostFocus
		Thisform.ctl32_balloontip1.ctlVisible = .f.
	ENDPROC

	PROCEDURE Text2.GotFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 1
		
		
		
		
		
	ENDPROC

	PROCEDURE Text2.KeyPress
		*!* BUG: Space is Used Instead of PasswordChar Character
		*!* support.microsoft.com/default.aspx?scid=kb;en-us;136559
		
		lparameters nKeyCode, nShiftAltCtrl
		if nKeyCode = 32 then
			keyboard [_] plain
			nodefault
		endif
		
	ENDPROC

	PROCEDURE Text2.LostFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 0
	ENDPROC

	PROCEDURE Text3.GotFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 1
		
		
		
		
		
		
		
	ENDPROC

	PROCEDURE Text3.KeyPress
		*!* BUG: Space is Used Instead of PasswordChar Character
		*!* support.microsoft.com/default.aspx?scid=kb;en-us;136559
		
		lparameters nKeyCode, nShiftAltCtrl
		if nKeyCode = 32 then
			keyboard [_] plain
			nodefault
		endif
	ENDPROC

	PROCEDURE Text3.LostFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 0
		
	ENDPROC

	PROCEDURE Text4.GotFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 1
		
		
		
		
		
		
		
	ENDPROC

	PROCEDURE Text4.KeyPress
		*!* BUG: Space is Used Instead of PasswordChar Character
		*!* support.microsoft.com/default.aspx?scid=kb;en-us;136559
		
		lparameters nKeyCode, nShiftAltCtrl
		if nKeyCode = 32 then
			keyboard [_] plain
			nodefault
		endif
	ENDPROC

	PROCEDURE Text4.LostFocus
		Thisform.ctl32_balloontip1.ctlCapsLockStyle = 0
		
	ENDPROC

ENDDEFINE
