173 lines
8.4 KiB
VB.net
173 lines
8.4 KiB
VB.net
Imports System
|
|
Imports System.ComponentModel
|
|
Imports System.Collections.Generic
|
|
Imports System.Diagnostics
|
|
Imports System.Text
|
|
|
|
Imports DevExpress.ExpressApp
|
|
Imports DevExpress.ExpressApp.Actions
|
|
Imports DevExpress.Persistent.Base
|
|
|
|
Public Class RecipeVC
|
|
Inherits DevExpress.ExpressApp.ViewController
|
|
Protected _selection As New ArrayList
|
|
Protected _noselect As Boolean = False
|
|
Public Sub New()
|
|
MyBase.New()
|
|
InitializeComponent()
|
|
RegisterActions(components)
|
|
End Sub
|
|
Protected Overrides Sub OnActivated()
|
|
MyBase.OnActivated()
|
|
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", False)
|
|
Frame.GetController(Of RecipeVC).aInsertServicesToRecipe.Active.SetItemValue("", False)
|
|
|
|
If View.Id = "Recipe_RecipeTo_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", True)
|
|
AddHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeToOther_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aInsertServicesToRecipe.Active.SetItemValue("", True)
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", True)
|
|
AddHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeFrom_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", True)
|
|
AddHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeFromOther_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", True)
|
|
AddHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
End Sub
|
|
Protected Overrides Sub OnDeactivated()
|
|
MyBase.OnDeactivated()
|
|
If View.Id = "Recipe_RecipeTo_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", False)
|
|
RemoveHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeToOther_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", False)
|
|
RemoveHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeFrom_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", False)
|
|
RemoveHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
If View.Id = "Recipe_RecipeFromOther_ListView" Then
|
|
Frame.GetController(Of RecipeVC).aRecipe_ChangeRowGroups.Active.SetItemValue("", False)
|
|
RemoveHandler View.SelectionChanged, AddressOf RecipeLines_SelectionChange
|
|
End If
|
|
End Sub
|
|
Private Sub RecipeLines_SelectionChange(ByVal sender As Object, ByVal e As System.EventArgs)
|
|
If View Is Nothing Then Exit Sub
|
|
If View.SelectedObjects.Count > 0 Then
|
|
If _noselect = False Then
|
|
_selection.Clear()
|
|
For Each _SelectedLines In View.SelectedObjects
|
|
_selection.Add(_SelectedLines)
|
|
Next
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub aRecipe_ChangeRowGroups_Cancel(sender As Object, e As System.EventArgs) Handles aRecipe_ChangeRowGroups.Cancel
|
|
_noselect = False
|
|
End Sub
|
|
Private Sub aRecipe_ChangeRowGroups_CustomizePopupWindowParams(sender As System.Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aRecipe_ChangeRowGroups.CustomizePopupWindowParams
|
|
_noselect = True
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _RecipePopup As RecipePopup = _onew.CreateObject(Of RecipePopup)()
|
|
If View.SelectedObjects.Count > 0 Then
|
|
e.View = Application.CreateDetailView(_onew, "RecipePopup_DetailView", False, _RecipePopup)
|
|
Else
|
|
Throw New UserFriendlyException("Nincs kijelölt elem!")
|
|
End If
|
|
End Sub
|
|
Private Sub aRecipe_ChangeRowGroups_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aRecipe_ChangeRowGroups.Execute
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _RecipePopup As RecipePopup = TryCast(e.PopupWindow.View.SelectedObjects(0), RecipePopup)
|
|
If View.Id = "Recipe_RecipeFrom_ListView" Then
|
|
Dim _RecipeFrom As RecipeFrom
|
|
For Each _RecipeFrom In _selection
|
|
If _RecipePopup.Change_RowGroup1 Then
|
|
_RecipeFrom.RowGroup1 = _RecipePopup.RowGroup1
|
|
End If
|
|
If _RecipePopup.Change_RowGroup2 Then
|
|
_RecipeFrom.RowGroup2 = _RecipePopup.RowGroup2
|
|
End If
|
|
_RecipeFrom.Save()
|
|
Next
|
|
End If
|
|
If View.Id = "Recipe_RecipeFromOther_ListView" Then
|
|
Dim _RecipeFromOther As RecipeFromOther
|
|
For Each _RecipeFromOther In _selection
|
|
If _RecipePopup.Change_RowGroup1 Then
|
|
_RecipeFromOther.RowGroup1 = _RecipePopup.RowGroup1
|
|
End If
|
|
If _RecipePopup.Change_RowGroup2 Then
|
|
_RecipeFromOther.RowGroup2 = _RecipePopup.RowGroup2
|
|
End If
|
|
_RecipeFromOther.Save()
|
|
Next
|
|
End If
|
|
If View.Id = "Recipe_RecipeTo_ListView" Then
|
|
Dim _RecipeTo As RecipeTo
|
|
For Each _RecipeTo In _selection
|
|
If _RecipePopup.Change_RowGroup1 Then
|
|
_RecipeTo.RowGroup1 = _RecipePopup.RowGroup1
|
|
End If
|
|
If _RecipePopup.Change_RowGroup2 Then
|
|
_RecipeTo.RowGroup2 = _RecipePopup.RowGroup2
|
|
End If
|
|
_RecipeTo.Save()
|
|
Next
|
|
End If
|
|
If View.Id = "Recipe_RecipeToOther_ListView" Then
|
|
Dim _RecipeToOther As RecipeToOther
|
|
For Each _RecipeToOther In _selection
|
|
If _RecipePopup.Change_RowGroup1 Then
|
|
_RecipeToOther.RowGroup1 = _RecipePopup.RowGroup1
|
|
End If
|
|
If _RecipePopup.Change_RowGroup2 Then
|
|
_RecipeToOther.RowGroup2 = _RecipePopup.RowGroup2
|
|
End If
|
|
_RecipeToOther.Save()
|
|
Next
|
|
End If
|
|
_ocur.CommitChanges()
|
|
_noselect = False
|
|
End Sub
|
|
|
|
Private Sub aInsertServicesToRecipe_CustomizePopupWindowParams(sender As Object, e As DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventArgs) Handles aInsertServicesToRecipe.CustomizePopupWindowParams
|
|
' Az akció a szolgáltatások listview-ját hozza fel.
|
|
Dim _onew As Xpo.XPObjectSpace = Application.CreateObjectSpace
|
|
Dim _CollectionSource As CollectionSource = New CollectionSource(_onew, GetType(Services))
|
|
|
|
e.View = Application.CreateListView("Services_ListView_Browse", _CollectionSource, False)
|
|
End Sub
|
|
Private Sub aInsertServicesToRecipe_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventArgs) Handles aInsertServicesToRecipe.Execute
|
|
'A popup-on kiválasztott szolgáltatásokból létrehoz a receptre szolgáltatás sorokat
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _Recipe As Recipe = TryCast(TryCast(TryCast(View, ListView).CollectionSource, PropertyCollectionSource).MasterObject, Recipe)
|
|
Dim _Services As Services
|
|
Dim _RecipeToOther_New As RecipeToOther
|
|
|
|
For Each _Services In e.PopupWindow.View.SelectedObjects
|
|
_RecipeToOther_New = _ocur.CreateObject(Of RecipeToOther)()
|
|
|
|
_RecipeToOther_New.Recipe = _ocur.GetObject(_Recipe)
|
|
_RecipeToOther_New.ShortName = _Services.ShortName
|
|
_RecipeToOther_New.Description = _Services.Description
|
|
_RecipeToOther_New.Units = _ocur.GetObject(_Services.Units)
|
|
_RecipeToOther_New.QTT = 1
|
|
_RecipeToOther_New.RowGroup1 = _Services.RowGroup1
|
|
_RecipeToOther_New.RowGroup2 = _Services.RowGroup2
|
|
|
|
_RecipeToOther_New.Save()
|
|
Next
|
|
_ocur.CommitChanges()
|
|
End Sub
|
|
End Class
|