﻿B4A=true
Group=Class
ModulesStructureVersion=1
Type=Class
Version=13.1
@EndOfDesignText@

private  Sub Class_Globals

	Private panTouch As Panel
	Private panClick As Panel
	Private panKoli As Panel
	
	Private callBack As Object
	Private mEventName As String = "Dialog"
	
	Private clickTouch As Boolean
	
	Private labContent  	As Label

	Private labTitle 	As Label
	Private labPositive  As Label
	Private labNegative   As Label
	Private labNeutral     As Label

End Sub

Public Sub Initialize(panKoli1 As Panel,mcallBack As Object)
	clickTouch = False
	panKoli = panKoli1
	callBack = mcallBack
End Sub

Public Sub addDialog(title As String,contentText As String,positiveText As String,negativeText As String,neutralText As String)
	
	If Not(clickTouch) Then
		
		panTouch.Initialize("panTouch")
		panKoli.AddView(panTouch,0,0,panKoli.Width,panKoli.Height)
		panTouch.Elevation = 20dip
		panTouch.Color = 0xaaeeeeee
		
		panClick.Initialize("panClick")
		panTouch.AddView(panClick,5%x,0,90%x,100dip)
 		func.color_border(panClick,Colors.White,5dip)
		
 		
		labTitle.Initialize("")
		labContent.Initialize("")
		labPositive.Initialize("labPositive")
		labNegative.Initialize("labNegative")
		labNeutral.Initialize("labNeutral")
		
		
		panClick.AddView(labTitle,5%x,0,80%x,50dip)
		labTitle.Typeface =Typeface.CreateNew(Typeface.LoadFromAssets(func.font3), Typeface.STYLE_BOLD)
		labTitle.Text=title
 		labTitle.Gravity=Bit.Or(func.gravitis,Gravity.CENTER_VERTICAL)
		labTitle.textColor = Colors.Black
		labTitle.TextSize = 14


		panClick.AddView(labContent,5%x,labTitle.Top+labTitle.Height+1%y,80%x,50dip)
		labContent.Typeface = Typeface.LoadFromAssets(func.font3)
		labContent.Text=contentText
		labContent.Gravity=Bit.Or(func.gravitis,Gravity.CENTER_VERTICAL)
		labContent.textColor = Colors.Black
		labContent.TextSize = 14

		labContent.Height = func.heightLabel(labContent,contentText)
 		
		
		panClick.AddView(labPositive,1.5%x,labContent.Top+labContent.Height+20dip,28%x,45dip)
		panClick.AddView(labNegative,31%x,labContent.Top+labContent.Height+20dip,28%x,45dip)
		panClick.AddView(labNeutral ,60.5%x,labContent.Top+labContent.Height+20dip,28%x,45dip)
 		
		
		labPositive.Typeface = Typeface.LoadFromAssets(func.font3)
		labPositive.Text=positiveText
		labPositive.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
		labPositive.textColor = Colors.Black
		labPositive.TextSize = 14
		
		labNegative.Typeface = Typeface.LoadFromAssets(func.font3)
		labNegative.Text=negativeText
		labNegative.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
		labNegative.textColor = Colors.Black
		labNegative.TextSize = 14

		labNeutral.Typeface = Typeface.LoadFromAssets(func.font3)
		labNeutral.Text=neutralText
		labNeutral.Gravity=Bit.Or(Gravity.CENTER,Gravity.CENTER_VERTICAL)
		labNeutral.textColor = Colors.Black
		labNeutral.TextSize = 14

		func.SetRipple(labPositive,0xeeeeeeee,0xaaeeeeee,5dip)
		func.SetRipple(labNegative,Colors.Transparent,0xaaeeeeee,5dip)
		func.SetRipple(labNeutral,Colors.Transparent,0xaaeeeeee,5dip)
		

	End If
	
	labTitle.Text=title
	labContent.Text=contentText

	labContent.Height = func.heightLabel(labContent,contentText)

	labPositive.Top = labContent.Top+labContent.Height+20dip
	labNegative.Top = labContent.Top+labContent.Height+20dip
	labNeutral.Top = labContent.Top+labContent.Height+20dip
	
	If positiveText = "" Then
		labPositive.Visible = False
	End If
		
	If negativeText = "" Then
		labNegative.Visible = False
	End If
		
	If neutralText = "" Then
		labNeutral.Visible = False
	End If
		
	panClick.Height = labNeutral.Top + labNeutral.Height + 10dip
	panClick.top = panTouch.Height / 2 - panClick.Height / 2

	clickTouch = True
 	panTouch.Visible = True
	
End Sub 

Private Sub panClick_Touch (Action As Int, X As Float, Y As Float)
End Sub

Private Sub labPositive_Click
	If SubExists(callBack, mEventName & "_Positive") Then
		CallSubDelayed(callBack, mEventName & "_Positive")
	End If
	visableFalse
End Sub

Private Sub labNegative_Click
	If SubExists(callBack, mEventName & "_Negative") Then
		CallSubDelayed(callBack, mEventName & "_Negative")
	End If
	visableFalse
End Sub

Private Sub labNeutral_Click
	visableFalse
End Sub

Private Sub panTouch_Touch (Action As Int, X As Float, Y As Float)
	visableFalse
End Sub

Private Sub visableFalse 
	panTouch.Visible = False
End Sub