From ceda3be7416f29f8f3e954e0387e83d119841d3d Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Thu, 12 Jul 2018 14:20:05 +0200 Subject: [PATCH] jj: prevent opening of same window twice --- app/DD-Record-Organizer/ModuleHelperMethods.vb | 5 +++++ app/DD-Record-Organizer/ModuleRuntimeVariables.vb | 2 +- app/DD-Record-Organizer/frmConstructor_Main.vb | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/DD-Record-Organizer/ModuleHelperMethods.vb b/app/DD-Record-Organizer/ModuleHelperMethods.vb index 9a4cf05..18b4cb3 100644 --- a/app/DD-Record-Organizer/ModuleHelperMethods.vb +++ b/app/DD-Record-Organizer/ModuleHelperMethods.vb @@ -266,7 +266,12 @@ Module ModuleHelperMethods Public Sub OpenFormConstructor(id As Integer, Optional recordId As Integer = -1) Try + If CURRENT_OPEN_CONSTRUCTOR_FORMS.Contains(id) Then + Exit Sub + End If + CURRENT_CONSTRUCTOR_ID = id + CURRENT_OPEN_CONSTRUCTOR_FORMS.Add(id) Dim frm As New frmConstructor_Main() ' frm = frmForm_Constructor.Instance() diff --git a/app/DD-Record-Organizer/ModuleRuntimeVariables.vb b/app/DD-Record-Organizer/ModuleRuntimeVariables.vb index eff92c6..46937b4 100644 --- a/app/DD-Record-Organizer/ModuleRuntimeVariables.vb +++ b/app/DD-Record-Organizer/ModuleRuntimeVariables.vb @@ -47,7 +47,7 @@ Public CURRENT_DOKARTID As Integer Public CURRENT_DOKARTSTRING As String - + Public CURRENT_OPEN_CONSTRUCTOR_FORMS As New List(Of Integer) Public CURRENT_CONSTRUCTOR_ID As Integer = 1 Public CURRENT_CONSTRUCTOR_DETAIL_ID As Integer Public CURRENT_FILEID As Integer diff --git a/app/DD-Record-Organizer/frmConstructor_Main.vb b/app/DD-Record-Organizer/frmConstructor_Main.vb index 57c7650..b2e10e7 100644 --- a/app/DD-Record-Organizer/frmConstructor_Main.vb +++ b/app/DD-Record-Organizer/frmConstructor_Main.vb @@ -230,6 +230,8 @@ Public Class frmConstructor_Main End If ClassWindowLocation.SaveFormLocationSize(Me, CONSTRUCTORID, CURRENT_SCREEN_ID, "CONSTRUCTOR_MAIN") + CURRENT_OPEN_CONSTRUCTOR_FORMS.Remove(CONSTRUCTORID) + ' Verhindert, das noch geöffnete Records für immer gelockt sind If Not IsNothing(CURRENT_DOCVIEW) Then Try