Common/ObjectPropertyDialog: Respect System attribute flag

This commit is contained in:
Jonathan Jenne 2022-03-10 15:54:35 +01:00
parent abb850192a
commit a6de7e0af2
6 changed files with 31 additions and 39 deletions

View File

@ -124,10 +124,6 @@
<Compile Include="IBaseForm.vb" /> <Compile Include="IBaseForm.vb" />
<Compile Include="IResultForm.vb" /> <Compile Include="IResultForm.vb" />
<Compile Include="My Project\AssemblyInfo.vb" /> <Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb"> <Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen> <AutoGen>True</AutoGen>
<DesignTime>True</DesignTime> <DesignTime>True</DesignTime>
@ -174,7 +170,6 @@
<None Include="app.config" /> <None Include="app.config" />
<None Include="My Project\Application.myapp"> <None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator> <Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None> </None>
<None Include="My Project\Settings.settings"> <None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator> <Generator>SettingsSingleFileGenerator</Generator>

View File

@ -1,13 +0,0 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On

View File

@ -255,78 +255,78 @@ Partial Class frmObjectPropertyDialog
' '
'txtCreatedWhen 'txtCreatedWhen
' '
Me.txtCreatedWhen.Location = New System.Drawing.Point(85, 37) Me.txtCreatedWhen.Location = New System.Drawing.Point(94, 37)
Me.txtCreatedWhen.Name = "txtCreatedWhen" Me.txtCreatedWhen.Name = "txtCreatedWhen"
Me.txtCreatedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtCreatedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtCreatedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtCreatedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtCreatedWhen.Properties.ReadOnly = True Me.txtCreatedWhen.Properties.ReadOnly = True
Me.txtCreatedWhen.Size = New System.Drawing.Size(199, 20) Me.txtCreatedWhen.Size = New System.Drawing.Size(190, 20)
Me.txtCreatedWhen.StyleController = Me.LayoutControlObject Me.txtCreatedWhen.StyleController = Me.LayoutControlObject
Me.txtCreatedWhen.TabIndex = 4 Me.txtCreatedWhen.TabIndex = 4
' '
'txtChangedWhen 'txtChangedWhen
' '
Me.txtChangedWhen.Location = New System.Drawing.Point(85, 61) Me.txtChangedWhen.Location = New System.Drawing.Point(94, 61)
Me.txtChangedWhen.Name = "txtChangedWhen" Me.txtChangedWhen.Name = "txtChangedWhen"
Me.txtChangedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtChangedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtChangedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtChangedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtChangedWhen.Properties.ReadOnly = True Me.txtChangedWhen.Properties.ReadOnly = True
Me.txtChangedWhen.Size = New System.Drawing.Size(199, 20) Me.txtChangedWhen.Size = New System.Drawing.Size(190, 20)
Me.txtChangedWhen.StyleController = Me.LayoutControlObject Me.txtChangedWhen.StyleController = Me.LayoutControlObject
Me.txtChangedWhen.TabIndex = 5 Me.txtChangedWhen.TabIndex = 5
' '
'txtAccessedWhen 'txtAccessedWhen
' '
Me.txtAccessedWhen.Location = New System.Drawing.Point(85, 85) Me.txtAccessedWhen.Location = New System.Drawing.Point(94, 85)
Me.txtAccessedWhen.Name = "txtAccessedWhen" Me.txtAccessedWhen.Name = "txtAccessedWhen"
Me.txtAccessedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtAccessedWhen.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtAccessedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtAccessedWhen.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtAccessedWhen.Properties.ReadOnly = True Me.txtAccessedWhen.Properties.ReadOnly = True
Me.txtAccessedWhen.Size = New System.Drawing.Size(199, 20) Me.txtAccessedWhen.Size = New System.Drawing.Size(190, 20)
Me.txtAccessedWhen.StyleController = Me.LayoutControlObject Me.txtAccessedWhen.StyleController = Me.LayoutControlObject
Me.txtAccessedWhen.TabIndex = 6 Me.txtAccessedWhen.TabIndex = 6
' '
'txtObjectId 'txtObjectId
' '
Me.txtObjectId.Location = New System.Drawing.Point(85, 12) Me.txtObjectId.Location = New System.Drawing.Point(94, 12)
Me.txtObjectId.Name = "txtObjectId" Me.txtObjectId.Name = "txtObjectId"
Me.txtObjectId.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtObjectId.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtObjectId.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtObjectId.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtObjectId.Properties.ReadOnly = True Me.txtObjectId.Properties.ReadOnly = True
Me.txtObjectId.Size = New System.Drawing.Size(475, 20) Me.txtObjectId.Size = New System.Drawing.Size(466, 20)
Me.txtObjectId.StyleController = Me.LayoutControlObject Me.txtObjectId.StyleController = Me.LayoutControlObject
Me.txtObjectId.TabIndex = 7 Me.txtObjectId.TabIndex = 7
' '
'txtCreatedWho 'txtCreatedWho
' '
Me.txtCreatedWho.Location = New System.Drawing.Point(361, 37) Me.txtCreatedWho.Location = New System.Drawing.Point(370, 37)
Me.txtCreatedWho.Name = "txtCreatedWho" Me.txtCreatedWho.Name = "txtCreatedWho"
Me.txtCreatedWho.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtCreatedWho.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtCreatedWho.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtCreatedWho.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtCreatedWho.Properties.ReadOnly = True Me.txtCreatedWho.Properties.ReadOnly = True
Me.txtCreatedWho.Size = New System.Drawing.Size(199, 20) Me.txtCreatedWho.Size = New System.Drawing.Size(190, 20)
Me.txtCreatedWho.StyleController = Me.LayoutControlObject Me.txtCreatedWho.StyleController = Me.LayoutControlObject
Me.txtCreatedWho.TabIndex = 8 Me.txtCreatedWho.TabIndex = 8
' '
'txtChangedWho 'txtChangedWho
' '
Me.txtChangedWho.Location = New System.Drawing.Point(361, 61) Me.txtChangedWho.Location = New System.Drawing.Point(370, 61)
Me.txtChangedWho.Name = "txtChangedWho" Me.txtChangedWho.Name = "txtChangedWho"
Me.txtChangedWho.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.txtChangedWho.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.txtChangedWho.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.txtChangedWho.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.txtChangedWho.Properties.ReadOnly = True Me.txtChangedWho.Properties.ReadOnly = True
Me.txtChangedWho.Size = New System.Drawing.Size(199, 20) Me.txtChangedWho.Size = New System.Drawing.Size(190, 20)
Me.txtChangedWho.StyleController = Me.LayoutControlObject Me.txtChangedWho.StyleController = Me.LayoutControlObject
Me.txtChangedWho.TabIndex = 9 Me.txtChangedWho.TabIndex = 9
' '
'TextEdit1 'TextEdit1
' '
Me.TextEdit1.Location = New System.Drawing.Point(361, 85) Me.TextEdit1.Location = New System.Drawing.Point(370, 85)
Me.TextEdit1.Name = "TextEdit1" Me.TextEdit1.Name = "TextEdit1"
Me.TextEdit1.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White Me.TextEdit1.Properties.AppearanceReadOnly.BackColor = System.Drawing.Color.White
Me.TextEdit1.Properties.AppearanceReadOnly.Options.UseBackColor = True Me.TextEdit1.Properties.AppearanceReadOnly.Options.UseBackColor = True
Me.TextEdit1.Properties.ReadOnly = True Me.TextEdit1.Properties.ReadOnly = True
Me.TextEdit1.Size = New System.Drawing.Size(199, 20) Me.TextEdit1.Size = New System.Drawing.Size(190, 20)
Me.TextEdit1.StyleController = Me.LayoutControlObject Me.TextEdit1.StyleController = Me.LayoutControlObject
Me.TextEdit1.TabIndex = 10 Me.TextEdit1.TabIndex = 10
' '

View File

@ -120,7 +120,7 @@
<assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> <assembly alias="DevExpress.Data.v21.2" name="DevExpress.Data.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<data name="frmObjectPropertyDialog.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="frmObjectPropertyDialog.IconOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v21.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjE5LjIsIFZlcnNpb249MTkuMi4z AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIxLjIsIFZlcnNpb249MjEuMi40
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/ dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAACcFAAAC77u/
PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi

View File

@ -88,7 +88,8 @@ Public Class frmObjectPropertyDialog
.ID = oRow.Item("ATTR_ID"), .ID = oRow.Item("ATTR_ID"),
.Title = oRow.Item("ATTR_TITLE"), .Title = oRow.Item("ATTR_TITLE"),
.TypeID = oRow.Item("TYPE_ID"), .TypeID = oRow.Item("TYPE_ID"),
.TypeName = oRow.Item("TYPE_NAME") .TypeName = oRow.Item("TYPE_NAME"),
.IsSystem = Convert.ToBoolean(oRow.Item("SYS_ATTRIBUTE"))
}) })
Next Next
@ -175,7 +176,8 @@ Public Class frmObjectPropertyDialog
End If End If
For Each oAttribute As Attribute In oAttributes For Each oAttribute As Attribute In oAttributes
Dim oControl = _Controls.GetControlForAttribute(oAttribute, True) Dim oEditable = ShouldControlBeEditable(oAttribute)
Dim oControl = _Controls.GetControlForAttribute(oAttribute, Not oEditable)
Dim oItem As LayoutControlItem = AttributeLayout.AddItem() Dim oItem As LayoutControlItem = AttributeLayout.AddItem()
oItem.Text = oAttribute.Title oItem.Text = oAttribute.Title
@ -188,11 +190,13 @@ Public Class frmObjectPropertyDialog
Dim oValue = Await GetAttributeValue(oItem.Name, _ObjectId) Dim oValue = Await GetAttributeValue(oItem.Name, _ObjectId)
Dim oEdit = DirectCast(oItem.Control, BaseEdit) Dim oEdit = DirectCast(oItem.Control, BaseEdit)
oEdit.EditValue = oValue oEdit.EditValue = oValue
ElseIf TypeOf oItem.Control Is GridControl Then ElseIf TypeOf oItem.Control Is GridControl Then
Dim oValueTable = Await GetAttributeValueAsTable(oItem.Name, _ObjectId) Dim oValueTable = Await GetAttributeValueAsTable(oItem.Name, _ObjectId)
Dim oGrid = DirectCast(oItem.Control, GridControl) Dim oGrid = DirectCast(oItem.Control, GridControl)
oGrid.DataSource = oValueTable oGrid.DataSource = oValueTable
End If End If
Next Next
Catch ex As Exception Catch ex As Exception
@ -200,6 +204,15 @@ Public Class frmObjectPropertyDialog
End Try End Try
End Sub End Sub
Private Function ShouldControlBeEditable(pAttribute As Attribute) As Boolean
If pAttribute.IsSystem Then
Return False
End If
Return True
End Function
Private Function ShowAttributeHistory(pDatatable As DataTable) As Boolean Private Function ShowAttributeHistory(pDatatable As DataTable) As Boolean
Try Try
If pDatatable.Rows.Count > 0 If pDatatable.Rows.Count > 0
@ -234,8 +247,4 @@ Public Class frmObjectPropertyDialog
Return False Return False
End Try End Try
End Function End Function
Private Sub TabFormControl1_Click(sender As Object, e As EventArgs) Handles TabFormControl1.Click
End Sub
End Class End Class

View File

@ -10,4 +10,5 @@
Public Property Title As String Public Property Title As String
Public Property TypeID As Long Public Property TypeID As Long
Public Property TypeName As String Public Property TypeName As String
Public Property IsSystem As Boolean
End Class End Class