From 7d691246f57bd11ceef70869a4e92bd8f7dcf224 Mon Sep 17 00:00:00 2001 From: Jonathan Jenne Date: Wed, 30 Jan 2019 15:27:07 +0100 Subject: [PATCH] jj: add app state --- Config/BaseConfig.vb | 12 ++++++----- Config/Config.vbproj | 6 ++++++ EDMI_ClientSuite/EDMI_ClientSuite.vbproj | 4 +++- EDMI_ClientSuite/MyAppSettings.vb | 10 --------- EDMI_ClientSuite/MyApplication.vb | 21 ++++++++----------- EDMI_ClientSuite/Settings/LicenseState.vb | 7 +++++++ EDMI_ClientSuite/Settings/ModuleState.vb | 7 +++++++ EDMI_ClientSuite/Settings/UserState.vb | 20 ++++++++++++++++++ EDMI_ClientSuite/frmMain.Designer.vb | 25 +++++++++++++++-------- EDMI_ClientSuite/frmMain.resx | 23 ++++++++++----------- EDMI_ClientSuite/frmMain.vb | 7 ++++--- 11 files changed, 91 insertions(+), 51 deletions(-) delete mode 100644 EDMI_ClientSuite/MyAppSettings.vb create mode 100644 EDMI_ClientSuite/Settings/LicenseState.vb create mode 100644 EDMI_ClientSuite/Settings/ModuleState.vb create mode 100644 EDMI_ClientSuite/Settings/UserState.vb diff --git a/Config/BaseConfig.vb b/Config/BaseConfig.vb index bc2a89d7..4e909d06 100644 --- a/Config/BaseConfig.vb +++ b/Config/BaseConfig.vb @@ -1,9 +1,9 @@ Imports System.IO -Imports NLog +Imports DigitalData.Modules.Logging Public MustInherit Class BaseConfig Private Const _userConfigFileName As String = "UserConfig.xml" - Private _logFactory As LogFactory + Private _logFactory As LogConfig Private _logger As Logger Protected Const _configKey As String = "Key" @@ -16,9 +16,11 @@ Public MustInherit Class BaseConfig End Get End Property - Public Sub New(LogFactory As LogFactory) - _logFactory = LogFactory - _logger = LogFactory.GetCurrentClassLogger() + Public Sub New(LogConfig As LogConfig) + _logFactory = LogConfig + _logger = LogConfig.GetLogger() + + End Sub Private Function GetUserConfigPath() As String diff --git a/Config/Config.vbproj b/Config/Config.vbproj index fa1c6cec..01170d53 100644 --- a/Config/Config.vbproj +++ b/Config/Config.vbproj @@ -111,5 +111,11 @@ Designer + + + {903b2d7d-3b80-4be9-8713-7447b704e1b0} + Logging + + \ No newline at end of file diff --git a/EDMI_ClientSuite/EDMI_ClientSuite.vbproj b/EDMI_ClientSuite/EDMI_ClientSuite.vbproj index 4936cbb5..ccaaac56 100644 --- a/EDMI_ClientSuite/EDMI_ClientSuite.vbproj +++ b/EDMI_ClientSuite/EDMI_ClientSuite.vbproj @@ -262,7 +262,9 @@ True - + + + True True diff --git a/EDMI_ClientSuite/MyAppSettings.vb b/EDMI_ClientSuite/MyAppSettings.vb deleted file mode 100644 index 62fd1d39..00000000 --- a/EDMI_ClientSuite/MyAppSettings.vb +++ /dev/null @@ -1,10 +0,0 @@ -Imports DigitalData.Modules.Logging - -Module MyAppSettings - Public APP_DB_VERSION As String - - Public USER_LANGUAGE As String = "de-DE" - Public MyLogger As Logger - Public MyLogConfig As LogConfig - End Module - diff --git a/EDMI_ClientSuite/MyApplication.vb b/EDMI_ClientSuite/MyApplication.vb index 222d8d84..23a4744a 100644 --- a/EDMI_ClientSuite/MyApplication.vb +++ b/EDMI_ClientSuite/MyApplication.vb @@ -1,23 +1,18 @@ Imports System.ServiceModel +Imports System.Threading Imports DigitalData.Modules.Logging Imports EDMI_ClientSuite.NetworkService_DDEDM Namespace My - ''' - ''' Helper Class to hold User State - ''' - Public Class User - Public Username As String - Public MachineName As String - - Public Sub New() - Username = Environment.UserName - MachineName = Environment.MachineName - End Sub + + Public Class ModuleLicense + End Class + ''' ''' Extends the My Namespace + ''' Example: My.LogConfig ''' Module Extension @@ -28,10 +23,12 @@ Namespace My ''' ''' Extends the My.Application Namespace + ''' Example: My.Application.User ''' Partial Class MyApplication ' User Config - Public User As New User() + Public User As New UserState() + Public License As New LicenseState() End Class End Namespace diff --git a/EDMI_ClientSuite/Settings/LicenseState.vb b/EDMI_ClientSuite/Settings/LicenseState.vb new file mode 100644 index 00000000..0e830809 --- /dev/null +++ b/EDMI_ClientSuite/Settings/LicenseState.vb @@ -0,0 +1,7 @@ +Public Class LicenseState + Public Modules As List(Of ModuleState) + + Public Sub New() + Modules = New List(Of ModuleState) + End Sub +End Class diff --git a/EDMI_ClientSuite/Settings/ModuleState.vb b/EDMI_ClientSuite/Settings/ModuleState.vb new file mode 100644 index 00000000..b7d16406 --- /dev/null +++ b/EDMI_ClientSuite/Settings/ModuleState.vb @@ -0,0 +1,7 @@ +Public Class ModuleState + Public Name As String + + Public Sub New(Name As String) + Me.Name = Name + End Sub +End Class diff --git a/EDMI_ClientSuite/Settings/UserState.vb b/EDMI_ClientSuite/Settings/UserState.vb new file mode 100644 index 00000000..b43dddbb --- /dev/null +++ b/EDMI_ClientSuite/Settings/UserState.vb @@ -0,0 +1,20 @@ +Imports System.Threading + +''' +''' Helper Class to hold User State +''' +Public Class UserState + Public UserName As String + Public MachineName As String + Public Language As String + + + ''' + ''' Initialize user object with values that can be read from the environment + ''' + Public Sub New() + Language = Thread.CurrentThread.CurrentCulture.Name + UserName = Environment.UserName + MachineName = Environment.MachineName + End Sub +End Class \ No newline at end of file diff --git a/EDMI_ClientSuite/frmMain.Designer.vb b/EDMI_ClientSuite/frmMain.Designer.vb index da9147d1..8efedc74 100644 --- a/EDMI_ClientSuite/frmMain.Designer.vb +++ b/EDMI_ClientSuite/frmMain.Designer.vb @@ -25,6 +25,7 @@ Partial Class frmMain Me.MainMenu = New DevExpress.XtraBars.Ribbon.ApplicationMenu(Me.components) Me.BarButtonExit = New DevExpress.XtraBars.BarButtonItem() Me.BarButtonUserSettings = New DevExpress.XtraBars.BarButtonItem() + Me.BarButtonConnectionSettings = New DevExpress.XtraBars.BarButtonItem() Me.LabelCurrentUser = New DevExpress.XtraBars.BarStaticItem() Me.LabelCurrentMachine = New DevExpress.XtraBars.BarStaticItem() Me.LabelCurrentVersion = New DevExpress.XtraBars.BarStaticItem() @@ -55,7 +56,7 @@ Partial Class frmMain Me.DockPanelProcessManager = New DevExpress.XtraBars.Docking.DockPanel() Me.DockPanel2_Container = New DevExpress.XtraBars.Docking.ControlContainer() Me.ProcessManagerOverview = New EDMI_ClientSuite.ProcessManagerOverview() - Me.BarButtonConnectionSettings = New DevExpress.XtraBars.BarButtonItem() + Me.LabelCurrentLanguage = New DevExpress.XtraBars.BarStaticItem() CType(Me.RibbonControl, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.MainMenu, System.ComponentModel.ISupportInitialize).BeginInit() CType(Me.DocumentManager, System.ComponentModel.ISupportInitialize).BeginInit() @@ -72,9 +73,9 @@ Partial Class frmMain ' Me.RibbonControl.ApplicationButtonDropDownControl = Me.MainMenu Me.RibbonControl.ExpandCollapseItem.Id = 0 - Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.BarButtonExit, Me.BarButtonUserSettings, Me.LabelCurrentUser, Me.LabelCurrentMachine, Me.LabelCurrentVersion, Me.BarButtonItem1, Me.BarButtonDock1, Me.SkinDropDownButtonItem1, Me.BarButtonDashboard, Me.BarButtonEntityDesigner, Me.BarButtonDeleteControl, Me.BarButtonConnectionSettings}) + Me.RibbonControl.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl.ExpandCollapseItem, Me.BarButtonExit, Me.BarButtonUserSettings, Me.LabelCurrentUser, Me.LabelCurrentMachine, Me.LabelCurrentVersion, Me.BarButtonItem1, Me.BarButtonDock1, Me.SkinDropDownButtonItem1, Me.BarButtonDashboard, Me.BarButtonEntityDesigner, Me.BarButtonDeleteControl, Me.BarButtonConnectionSettings, Me.LabelCurrentLanguage}) Me.RibbonControl.Location = New System.Drawing.Point(0, 0) - Me.RibbonControl.MaxItemId = 15 + Me.RibbonControl.MaxItemId = 16 Me.RibbonControl.Name = "RibbonControl" Me.RibbonControl.PageCategories.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageCategory() {Me.RibbonPageCategoryEntityDesigner}) Me.RibbonControl.PageHeaderItemLinks.Add(Me.SkinDropDownButtonItem1) @@ -104,6 +105,13 @@ Partial Class frmMain Me.BarButtonUserSettings.ImageOptions.Image = CType(resources.GetObject("BarButtonUserSettings.ImageOptions.Image"), System.Drawing.Image) Me.BarButtonUserSettings.Name = "BarButtonUserSettings" ' + 'BarButtonConnectionSettings + ' + Me.BarButtonConnectionSettings.Caption = "Verbindungseinstellungen" + Me.BarButtonConnectionSettings.Id = 14 + Me.BarButtonConnectionSettings.ImageOptions.Image = CType(resources.GetObject("BarButtonConnectionSettings.ImageOptions.Image"), System.Drawing.Image) + Me.BarButtonConnectionSettings.Name = "BarButtonConnectionSettings" + ' 'LabelCurrentUser ' Me.LabelCurrentUser.Caption = "Current User" @@ -235,6 +243,7 @@ Partial Class frmMain Me.RibbonStatusBar.ItemLinks.Add(Me.LabelCurrentUser) Me.RibbonStatusBar.ItemLinks.Add(Me.LabelCurrentMachine) Me.RibbonStatusBar.ItemLinks.Add(Me.LabelCurrentVersion) + Me.RibbonStatusBar.ItemLinks.Add(Me.LabelCurrentLanguage) Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 556) Me.RibbonStatusBar.Name = "RibbonStatusBar" Me.RibbonStatusBar.Ribbon = Me.RibbonControl @@ -332,12 +341,11 @@ Partial Class frmMain Me.ProcessManagerOverview.Size = New System.Drawing.Size(337, 163) Me.ProcessManagerOverview.TabIndex = 0 ' - 'BarButtonConnectionSettings + 'LabelCurrentLanguage ' - Me.BarButtonConnectionSettings.Caption = "Verbindungseinstellungen" - Me.BarButtonConnectionSettings.Id = 14 - Me.BarButtonConnectionSettings.ImageOptions.Image = CType(resources.GetObject("BarButtonItem2.ImageOptions.Image"), System.Drawing.Image) - Me.BarButtonConnectionSettings.Name = "BarButtonConnectionSettings" + Me.LabelCurrentLanguage.Caption = "BarStaticItem1" + Me.LabelCurrentLanguage.Id = 15 + Me.LabelCurrentLanguage.Name = "LabelCurrentLanguage" ' 'frmMain ' @@ -403,4 +411,5 @@ Partial Class frmMain Friend WithEvents RibbonPageGroup5 As DevExpress.XtraBars.Ribbon.RibbonPageGroup Friend WithEvents BarButtonDeleteControl As DevExpress.XtraBars.BarButtonItem Friend WithEvents BarButtonConnectionSettings As DevExpress.XtraBars.BarButtonItem + Friend WithEvents LabelCurrentLanguage As DevExpress.XtraBars.BarStaticItem End Class diff --git a/EDMI_ClientSuite/frmMain.resx b/EDMI_ClientSuite/frmMain.resx index 11b50c42..38fec89d 100644 --- a/EDMI_ClientSuite/frmMain.resx +++ b/EDMI_ClientSuite/frmMain.resx @@ -228,19 +228,18 @@ QmCC - + - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAAALXRFWHRUaXRsZQBEQjtTb3Vy - Y2U7U3RvcjtkYXRhc291cmNlO0RhdGFiYXNlO0VkaXQo9rqcAAABpUlEQVRYR8WVMU7DQBBFU9Aj0XED - CgokKKgRlJBrUCKqFCAFjkDHTZBoKNIilI5LQBOkFEgs/yE7cnZmQ7xexcWTnNn5/08cjzMIIfSKW9wk - bnGTuMXPyXWTbXEirsSjeBbv4kN8V3BNjTN66EWDduHlZbnFSrAvbsWrCJmgxQMvN8stqnkopsIzzQGv - oZdlClAJPKMuTL0sUwA1zyJxCWZelimAmueRuARzL8sUgOZIXIJWA/T+E/T+EPa+hiNxIUq9iPAaeVmm - AGrmGXgTd+JU5L6K0eKBV/YafokX8SAuxZnYEztiq4JrapzRQy8atLVP72t442WZAqj5JxJ3ZXx+/zQQ - hyJUcJ0coOQGeOGLIVIDlFrDONwMkRqgxBqmvvnS59QAXdfwWOap2w6LO5IaoMsaHsl4VXgN58XXcNUD - 1+QvHFID5Pwbtg6H1ABtN2CMrjL3QmuWwtGYcJBhmzXMCgd0JhxkCuuuYVY4kGXCAdOKXXEgWMXUGmJW - h8TBdd2EA1kmPAeZNcPWCge0xiwHmcWh/4YDWmOWg8yaA6wVDiGEwS9IKlJjkp5nnAAAAABJRU5ErkJg - gg== + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m + dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAtdEVYdFRpdGxlAERCO1NvdXJjZTtTdG9yO2RhdGFz + b3VyY2U7RGF0YWJhc2U7RWRpdCj2upwAAAGlSURBVFhHxZUxTsNAEEVT0CPRcQMKCiQoqBGUkGtQIqoU + IAWOQMdNkGgo0iKUjktAE6QUSCz/ITtydmZDvF7FxZOc2fn/TxyPMwgh9Ipb3CRucZO4xc/JdZNtcSKu + xKN4Fu/iQ3xXcE2NM3roRYN24eVlucVKsC9uxasImaDFAy83yy2qeSimwjPNAa+hl2UKUAk8oy5MvSxT + ADXPInEJZl6WKYCa55G4BHMvyxSA5khcglYD9P4T9P4Q9r6GI3EhSr2I8Bp5WaYAauYZeBN34lTkvorR + 4oFX9hp+iRfxIC7FmdgTO2KrgmtqnNFDLxq0tU/va3jjZZkCqPknEndlfH7/NBCHIlRwnRyg5AZ44Ysh + UgOUWsM43AyRGqDEGqa++dLn1ABd1/BY5qnbDos7khqgyxoeyXhVeA3nxddw1QPX5C8cUgPk/Bu2DofU + AG03YIyuMvdCa5bC0ZhwkGGbNcwKB3QmHGQK665hVjiQZcIB04pdcSBYxdQaYlaHxMF13YQDWSY8B5k1 + w9YKB7TGLAeZxaH/hgNaY5aDzJoDrBUOIYTBL0gqUmOSnmecAAAAAElFTkSuQmCC diff --git a/EDMI_ClientSuite/frmMain.vb b/EDMI_ClientSuite/frmMain.vb index 909cc805..ec4f7169 100644 --- a/EDMI_ClientSuite/frmMain.vb +++ b/EDMI_ClientSuite/frmMain.vb @@ -28,9 +28,10 @@ Public Class frmMain End Sub Private Sub FrmMain_Load(sender As Object, e As EventArgs) Handles Me.Load - LabelCurrentUser.Caption = Environment.UserName - LabelCurrentMachine.Caption = Environment.MachineName + LabelCurrentUser.Caption = My.Application.User.UserName + LabelCurrentMachine.Caption = My.Application.User.MachineName LabelCurrentVersion.Caption = My.Application.Info.Version.ToString + LabelCurrentLanguage.Caption = My.Application.User.Language Dim oDashboard = New frmDashboard() oDashboard.MdiParent = DocumentManager.MdiParent @@ -97,7 +98,7 @@ Public Class frmMain End Sub Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem1.ItemClick - Dim frm As New frmFileTest(MyLogConfig) + Dim frm As New frmFileTest(My.LogConfig) frm.MdiParent = DocumentManager.MdiParent frm.Show() End Sub