Imports System
Imports System.ComponentModel

Imports DevExpress.Xpo
Imports DevExpress.Data.Filtering

Imports DevExpress.ExpressApp
Imports DevExpress.Persistent.Base
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.Persistent.Validation

<DefaultClassOptions(), NavigationItem(False), CreatableItem(False)> _
Public Class AlertPeriodDaily
    Inherits BaseObject

    Private _AlertPeriod As AlertPeriod
    Private _AlertTime As DateTime
    Private _AlertHoure As Long
    Private _AlertMinute As Long

    Public Sub New(ByVal session As Session)
        MyBase.New(session)
    End Sub
    Public Overrides Sub AfterConstruction()
        MyBase.AfterConstruction()
    End Sub

    <Association("AlertPeriod-AlertPeriodDaily", GetType(AlertPeriod))> _
    Property AlertPeriod As AlertPeriod
        Get
            Return _AlertPeriod
        End Get
        Set(value As AlertPeriod)
            SetPropertyValue("AlertPeriod", _AlertPeriod, value)
        End Set
    End Property
    Property AlertTime As DateTime
        Get
            Return _AlertTime
        End Get
        Set(value As DateTime)
            SetPropertyValue("AlertTime", _AlertTime, value)
        End Set
    End Property
    <RuleRange("AlertPeriodDaily.AlertHoure", DefaultContexts.Save, 0, 23)> _
    Property AlertHoure As Long
        Get
            Return _AlertHoure
        End Get
        Set(value As Long)
            SetPropertyValue("AlertHoure", _AlertHoure, value)
        End Set
    End Property
    <RuleRange("AlertPeriodDaily.AlertMinute", DefaultContexts.Save, 0, 59)> _
    Property AlertMinute As Long
        Get
            Return _AlertMinute
        End Get
        Set(value As Long)
            SetPropertyValue("AlertMinute", _AlertMinute, value)
        End Set
    End Property
    ReadOnly Property DisplayName As String
        Get
            Return String.Format("{0} óra {1} perckor", AlertHoure, AlertMinute)
        End Get
    End Property
End Class
