move clientsuite to GUIs.ClientSuite folder
This commit is contained in:
106
GUIs.ClientSuite/FormDesigner/Controls/Loader.vb
Normal file
106
GUIs.ClientSuite/FormDesigner/Controls/Loader.vb
Normal file
@@ -0,0 +1,106 @@
|
||||
Imports DevExpress.XtraEditors
|
||||
Imports DevExpress.XtraLayout
|
||||
Imports DigitalData.Controls.LookupGrid
|
||||
Imports DigitalData.GUIs.ClientSuite.Base
|
||||
Imports DigitalData.Modules.Logging
|
||||
|
||||
Namespace Controls
|
||||
Public Class ControlLoader
|
||||
Inherits BaseClass
|
||||
|
||||
Private _LayoutControlGroup As LayoutControlGroup
|
||||
Private _LayoutControls As List(Of BaseEdit)
|
||||
|
||||
Public ReadOnly Property LayoutControls As List(Of BaseEdit)
|
||||
Get
|
||||
If _LayoutControls Is Nothing Then
|
||||
_LayoutControls = New List(Of BaseEdit)
|
||||
End If
|
||||
Return _LayoutControls
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub New(LogConfig As LogConfig, LayoutControlGroup As LayoutControlGroup)
|
||||
MyBase.New(LogConfig)
|
||||
_LayoutControlGroup = LayoutControlGroup
|
||||
End Sub
|
||||
|
||||
Public Sub AddControl(Name As String, Value As String, LayoutControlGroup As LayoutControlGroup)
|
||||
Dim oTextEdit As New SimpleLabelItem() With {
|
||||
.Name = Name,
|
||||
.Text = Name & " - " & Value
|
||||
}
|
||||
|
||||
LayoutControlGroup.AddItem(oTextEdit)
|
||||
End Sub
|
||||
Public Sub AddControl(Name As String, Value As String)
|
||||
AddControl(Name, Value, _LayoutControlGroup)
|
||||
End Sub
|
||||
|
||||
Public Sub AddSeparator(LayoutControlGroup As LayoutControlGroup)
|
||||
Dim oSeparator = New SimpleSeparator()
|
||||
|
||||
LayoutControlGroup.AddItem(oSeparator)
|
||||
End Sub
|
||||
Public Sub AddSeparator()
|
||||
AddSeparator(_LayoutControlGroup)
|
||||
End Sub
|
||||
|
||||
Public Sub LoadControls(Datatable As DataTable, LayoutControlGroup As LayoutControlGroup)
|
||||
For Each oRow As DataRow In Datatable.Rows
|
||||
Dim oCaption As String = oRow.Item("COLNAME")
|
||||
Dim oControlType As String = oRow.Item("CTRLTYPE")
|
||||
Dim oControlId As Int64 = oRow.Item("RECORD_ID")
|
||||
Dim oEditor As BaseEdit = CreateLayoutControl(oControlType, oControlId, oControlId)
|
||||
|
||||
If oEditor Is Nothing Then
|
||||
Continue For
|
||||
End If
|
||||
|
||||
oEditor.Tag = New Metadata() With {
|
||||
.Id = oControlId,
|
||||
.Type = oControlType,
|
||||
.Caption = oCaption
|
||||
}
|
||||
|
||||
LayoutControls.Add(oEditor)
|
||||
LayoutControlGroup.AddItem(oCaption, oEditor)
|
||||
Next
|
||||
|
||||
LayoutControlGroup.AddItem(New EmptySpaceItem())
|
||||
End Sub
|
||||
Public Sub LoadControls(Datatable As DataTable)
|
||||
LoadControls(Datatable, _LayoutControlGroup)
|
||||
End Sub
|
||||
|
||||
Public Function CreateLayoutControl(Type As String, Name As String, Id As Int64)
|
||||
Dim oEditor As BaseEdit = Nothing
|
||||
|
||||
Logger.Debug("Create new Control of type {0} with name {1}", Type, Name)
|
||||
|
||||
Select Case Type
|
||||
Case ClassConstants.CONTROL_TEXTEDIT
|
||||
Dim oTextEdit As New TextEdit() With {.Name = Name}
|
||||
oEditor = oTextEdit
|
||||
Case ClassConstants.CONTROL_MEMOEDIT
|
||||
Dim oMemoEdit As New MemoEdit() With {.Name = Name}
|
||||
oEditor = oMemoEdit
|
||||
Case ClassConstants.CONTROL_DATEEDIT
|
||||
Dim oDateEdit As New DateEdit() With {.Name = Name}
|
||||
oEditor = oDateEdit
|
||||
Case ClassConstants.CONTROL_CHECKEDIT
|
||||
Dim oCheckEdit As New CheckEdit() With {.Name = Name}
|
||||
oEditor = oCheckEdit
|
||||
Case ClassConstants.CONTROL_COMBOEDIT
|
||||
Dim oComboEdit As New LookupControl2() With {.Name = Name}
|
||||
oEditor = oComboEdit
|
||||
Case Else
|
||||
oEditor = Nothing
|
||||
End Select
|
||||
|
||||
Return oEditor
|
||||
End Function
|
||||
End Class
|
||||
|
||||
End Namespace
|
||||
|
||||
Reference in New Issue
Block a user