commit 29bc02d707475090c0a7598235b21f0c7d4733a0 Author: Stefan Hutter Date: Sat Dec 9 12:41:58 2017 +0100 Initial commit diff --git a/.vs/DPM2016/v14/.suo b/.vs/DPM2016/v14/.suo new file mode 100644 index 0000000..1dddea8 Binary files /dev/null and b/.vs/DPM2016/v14/.suo differ diff --git a/.vs/DPM2016/v15/.suo b/.vs/DPM2016/v15/.suo new file mode 100644 index 0000000..2a19998 Binary files /dev/null and b/.vs/DPM2016/v15/.suo differ diff --git a/DPM2016.jmconfig b/DPM2016.jmconfig new file mode 100644 index 0000000..10eea63 --- /dev/null +++ b/DPM2016.jmconfig @@ -0,0 +1 @@ +false \ No newline at end of file diff --git a/DPM2016.sln b/DPM2016.sln new file mode 100644 index 0000000..2ec6a0c --- /dev/null +++ b/DPM2016.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.40629.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "DPM2016", "DPM2016\DPM2016.vbproj", "{C78BA301-98A0-41B2-B1C9-553567634286}" +EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "_FRReporting", "_FRReporting\_FRReporting.vbproj", "{C04C6268-6402-4DEB-8BFA-E6A233B55DBF}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {C78BA301-98A0-41B2-B1C9-553567634286}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C78BA301-98A0-41B2-B1C9-553567634286}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C78BA301-98A0-41B2-B1C9-553567634286}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C78BA301-98A0-41B2-B1C9-553567634286}.Release|Any CPU.Build.0 = Release|Any CPU + {C04C6268-6402-4DEB-8BFA-E6A233B55DBF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C04C6268-6402-4DEB-8BFA-E6A233B55DBF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C04C6268-6402-4DEB-8BFA-E6A233B55DBF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C04C6268-6402-4DEB-8BFA-E6A233B55DBF}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/DPM2016.v12.suo b/DPM2016.v12.suo new file mode 100644 index 0000000..49c2156 Binary files /dev/null and b/DPM2016.v12.suo differ diff --git a/DPM2016/Behandlung/Behandlung.Designer.vb b/DPM2016/Behandlung/Behandlung.Designer.vb new file mode 100644 index 0000000..29c8ee1 --- /dev/null +++ b/DPM2016/Behandlung/Behandlung.Designer.vb @@ -0,0 +1,460 @@ + +Partial Class Behandlung + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Behandlung)) + Me.tsbtndelete = New System.Windows.Forms.ToolStrip() + Me.tsbtnnewbehandlung = New System.Windows.Forms.ToolStripButton() + Me.tsbtndeletebehandlung = New System.Windows.Forms.ToolStripButton() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.treebehandlungen = New DevComponents.AdvTree.AdvTree() + Me.ctxmenubehandlung = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.NeueBehandlungToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem() + Me.BehandlungabschliessenToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem() + Me.BehandlungLöschenToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem() + Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components) + Me.Node2 = New DevComponents.AdvTree.Node() + Me.NodeConnector1 = New DevComponents.AdvTree.NodeConnector() + Me.ElementStyle1 = New DevComponents.DotNetBar.ElementStyle() + Me.NeueBehandlungToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BehandlungAbschliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BehandlungLöschenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStripMenuItem1 = New System.Windows.Forms.ToolStripSeparator() + Me.NeuerKostenvoranschlagToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.KostenvoranschlagAbschliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.KostenvoranschlagLöschenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.SuperTabControl1 = New DevComponents.DotNetBar.SuperTabControl() + Me.SuperTabControlPanel1 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.Panel2 = New System.Windows.Forms.Panel() + Me.Behandungdetail1 = New DPM2016.Benhandungdetail() + Me.STBehandlung = New DevComponents.DotNetBar.SuperTabItem() + Me.SuperTabControlPanel3 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.SuperTabControlPanel2 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.Leistungen1 = New DPM2016.Leistungen() + Me.STLeistung = New DevComponents.DotNetBar.SuperTabItem() + Me.tsbtnnew = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.tsbtnbehandlungdelete = New System.Windows.Forms.ToolStrip() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.BehandlungZurücksetzenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripSeparator() + Me.ToolStripMenuItem3 = New System.Windows.Forms.ToolStripSeparator() + Me.tsbtndelete.SuspendLayout() + Me.GroupBox1.SuspendLayout() + CType(Me.treebehandlungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ctxmenubehandlung.SuspendLayout() + CType(Me.SuperTabControl1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuperTabControl1.SuspendLayout() + Me.SuperTabControlPanel1.SuspendLayout() + Me.Panel2.SuspendLayout() + Me.SuperTabControlPanel2.SuspendLayout() + Me.Panel1.SuspendLayout() + Me.tsbtnbehandlungdelete.SuspendLayout() + Me.ContextMenuStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'tsbtndelete + ' + Me.tsbtndelete.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnnewbehandlung, Me.tsbtndeletebehandlung}) + Me.tsbtndelete.Location = New System.Drawing.Point(0, 0) + Me.tsbtndelete.Name = "tsbtndelete" + Me.tsbtndelete.Size = New System.Drawing.Size(1050, 25) + Me.tsbtndelete.TabIndex = 1 + Me.tsbtndelete.Text = "ToolStrip1" + ' + 'tsbtnnewbehandlung + ' + Me.tsbtnnewbehandlung.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnewbehandlung.Image = CType(resources.GetObject("tsbtnnewbehandlung.Image"), System.Drawing.Image) + Me.tsbtnnewbehandlung.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnewbehandlung.Name = "tsbtnnewbehandlung" + Me.tsbtnnewbehandlung.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnewbehandlung.Text = "Neue Behandlung" + ' + 'tsbtndeletebehandlung + ' + Me.tsbtndeletebehandlung.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtndeletebehandlung.Image = CType(resources.GetObject("tsbtndeletebehandlung.Image"), System.Drawing.Image) + Me.tsbtndeletebehandlung.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtndeletebehandlung.Name = "tsbtndeletebehandlung" + Me.tsbtndeletebehandlung.Size = New System.Drawing.Size(23, 22) + Me.tsbtndeletebehandlung.Text = "Behandlung löschen" + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.treebehandlungen) + Me.GroupBox1.Dock = System.Windows.Forms.DockStyle.Left + Me.GroupBox1.Location = New System.Drawing.Point(0, 25) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(220, 558) + Me.GroupBox1.TabIndex = 2 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Behandlungen" + ' + 'treebehandlungen + ' + Me.treebehandlungen.AccessibleRole = System.Windows.Forms.AccessibleRole.Outline + Me.treebehandlungen.AllowDrop = True + Me.treebehandlungen.AllowExternalDrop = False + Me.treebehandlungen.AllowUserToResizeColumns = False + Me.treebehandlungen.BackColor = System.Drawing.SystemColors.Window + ' + ' + ' + Me.treebehandlungen.BackgroundStyle.Class = "TreeBorderKey" + Me.treebehandlungen.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.treebehandlungen.ContextMenuStrip = Me.ctxmenubehandlung + Me.treebehandlungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.treebehandlungen.DragDropEnabled = False + Me.treebehandlungen.DragDropNodeCopyEnabled = False + Me.treebehandlungen.ImageList = Me.ImageList1 + Me.treebehandlungen.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F" + Me.treebehandlungen.Location = New System.Drawing.Point(3, 16) + Me.treebehandlungen.Name = "treebehandlungen" + Me.treebehandlungen.Nodes.AddRange(New DevComponents.AdvTree.Node() {Me.Node2}) + Me.treebehandlungen.NodesConnector = Me.NodeConnector1 + Me.treebehandlungen.NodeStyle = Me.ElementStyle1 + Me.treebehandlungen.PathSeparator = ";" + Me.treebehandlungen.Size = New System.Drawing.Size(214, 539) + Me.treebehandlungen.Styles.Add(Me.ElementStyle1) + Me.treebehandlungen.TabIndex = 0 + Me.treebehandlungen.Text = "AdvTree1" + ' + 'ctxmenubehandlung + ' + Me.ctxmenubehandlung.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.NeueBehandlungToolStripMenuItem1, Me.ToolStripMenuItem2, Me.BehandlungabschliessenToolStripMenuItem1, Me.BehandlungZurücksetzenToolStripMenuItem, Me.ToolStripMenuItem3, Me.BehandlungLöschenToolStripMenuItem1}) + Me.ctxmenubehandlung.Name = "ContextMenuStrip1" + Me.ctxmenubehandlung.Size = New System.Drawing.Size(210, 104) + ' + 'NeueBehandlungToolStripMenuItem1 + ' + Me.NeueBehandlungToolStripMenuItem1.Name = "NeueBehandlungToolStripMenuItem1" + Me.NeueBehandlungToolStripMenuItem1.Size = New System.Drawing.Size(209, 22) + Me.NeueBehandlungToolStripMenuItem1.Text = "&Neue Behandlung" + ' + 'BehandlungabschliessenToolStripMenuItem1 + ' + Me.BehandlungabschliessenToolStripMenuItem1.Name = "BehandlungabschliessenToolStripMenuItem1" + Me.BehandlungabschliessenToolStripMenuItem1.Size = New System.Drawing.Size(209, 22) + Me.BehandlungabschliessenToolStripMenuItem1.Text = "Behandlung &abschliessen" + ' + 'BehandlungLöschenToolStripMenuItem1 + ' + Me.BehandlungLöschenToolStripMenuItem1.Name = "BehandlungLöschenToolStripMenuItem1" + Me.BehandlungLöschenToolStripMenuItem1.Size = New System.Drawing.Size(209, 22) + Me.BehandlungLöschenToolStripMenuItem1.Text = "&Behandlung löschen" + ' + 'ImageList1 + ' + Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer) + Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent + Me.ImageList1.Images.SetKeyName(0, "Document Folder_32.png") + Me.ImageList1.Images.SetKeyName(1, "Favorites_#2_32.png") + Me.ImageList1.Images.SetKeyName(2, "Document_32.png") + Me.ImageList1.Images.SetKeyName(3, "Document_properties_32.png") + Me.ImageList1.Images.SetKeyName(4, "License_32.png") + ' + 'Node2 + ' + Me.Node2.Name = "Node2" + ' + 'NodeConnector1 + ' + Me.NodeConnector1.LineColor = System.Drawing.SystemColors.ControlText + ' + 'ElementStyle1 + ' + Me.ElementStyle1.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.ElementStyle1.Name = "ElementStyle1" + Me.ElementStyle1.TextColor = System.Drawing.SystemColors.ControlText + ' + 'NeueBehandlungToolStripMenuItem + ' + Me.NeueBehandlungToolStripMenuItem.Name = "NeueBehandlungToolStripMenuItem" + Me.NeueBehandlungToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.NeueBehandlungToolStripMenuItem.Text = "&Neue Behandlung" + ' + 'BehandlungAbschliessenToolStripMenuItem + ' + Me.BehandlungAbschliessenToolStripMenuItem.Name = "BehandlungAbschliessenToolStripMenuItem" + Me.BehandlungAbschliessenToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.BehandlungAbschliessenToolStripMenuItem.Text = "&Behandlung abschliessen" + ' + 'BehandlungLöschenToolStripMenuItem + ' + Me.BehandlungLöschenToolStripMenuItem.Name = "BehandlungLöschenToolStripMenuItem" + Me.BehandlungLöschenToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.BehandlungLöschenToolStripMenuItem.Text = "Behandlung &löschen" + ' + 'ToolStripMenuItem1 + ' + Me.ToolStripMenuItem1.Name = "ToolStripMenuItem1" + Me.ToolStripMenuItem1.Size = New System.Drawing.Size(240, 6) + ' + 'NeuerKostenvoranschlagToolStripMenuItem + ' + Me.NeuerKostenvoranschlagToolStripMenuItem.Name = "NeuerKostenvoranschlagToolStripMenuItem" + Me.NeuerKostenvoranschlagToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.NeuerKostenvoranschlagToolStripMenuItem.Text = "Neuer &Kostenvoranschlag" + ' + 'KostenvoranschlagAbschliessenToolStripMenuItem + ' + Me.KostenvoranschlagAbschliessenToolStripMenuItem.Name = "KostenvoranschlagAbschliessenToolStripMenuItem" + Me.KostenvoranschlagAbschliessenToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.KostenvoranschlagAbschliessenToolStripMenuItem.Text = "Kostenvoranschlag abschliessen" + ' + 'KostenvoranschlagLöschenToolStripMenuItem + ' + Me.KostenvoranschlagLöschenToolStripMenuItem.Name = "KostenvoranschlagLöschenToolStripMenuItem" + Me.KostenvoranschlagLöschenToolStripMenuItem.Size = New System.Drawing.Size(243, 22) + Me.KostenvoranschlagLöschenToolStripMenuItem.Text = "Kostenvoranschlag löschen" + ' + 'SuperTabControl1 + ' + ' + ' + ' + ' + ' + ' + Me.SuperTabControl1.ControlBox.CloseBox.Name = "" + ' + ' + ' + Me.SuperTabControl1.ControlBox.MenuBox.Name = "" + Me.SuperTabControl1.ControlBox.Name = "" + Me.SuperTabControl1.ControlBox.SubItems.AddRange(New DevComponents.DotNetBar.BaseItem() {Me.SuperTabControl1.ControlBox.MenuBox, Me.SuperTabControl1.ControlBox.CloseBox}) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel1) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel3) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel2) + Me.SuperTabControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControl1.Location = New System.Drawing.Point(220, 25) + Me.SuperTabControl1.Name = "SuperTabControl1" + Me.SuperTabControl1.ReorderTabsEnabled = True + Me.SuperTabControl1.SelectedTabFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold) + Me.SuperTabControl1.SelectedTabIndex = 0 + Me.SuperTabControl1.Size = New System.Drawing.Size(830, 558) + Me.SuperTabControl1.TabFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.SuperTabControl1.TabIndex = 9 + Me.SuperTabControl1.Tabs.AddRange(New DevComponents.DotNetBar.BaseItem() {Me.STBehandlung, Me.STLeistung}) + Me.SuperTabControl1.Text = "Rechnungstext" + ' + 'SuperTabControlPanel1 + ' + Me.SuperTabControlPanel1.Controls.Add(Me.Panel2) + Me.SuperTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel1.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel1.Name = "SuperTabControlPanel1" + Me.SuperTabControlPanel1.Size = New System.Drawing.Size(830, 533) + Me.SuperTabControlPanel1.TabIndex = 1 + Me.SuperTabControlPanel1.TabItem = Me.STBehandlung + ' + 'Panel2 + ' + Me.Panel2.Controls.Add(Me.Behandungdetail1) + Me.Panel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel2.Location = New System.Drawing.Point(0, 0) + Me.Panel2.Name = "Panel2" + Me.Panel2.Size = New System.Drawing.Size(830, 533) + Me.Panel2.TabIndex = 9 + ' + 'Behandungdetail1 + ' + Me.Behandungdetail1.Behandlungsnr = 0 + Me.Behandungdetail1.Behandlungsstatus = 0 + Me.Behandungdetail1.HasChanges = False + Me.Behandungdetail1.Location = New System.Drawing.Point(3, 6) + Me.Behandungdetail1.Name = "Behandungdetail1" + Me.Behandungdetail1.Patientnr = 0 + Me.Behandungdetail1.Size = New System.Drawing.Size(627, 642) + Me.Behandungdetail1.TabIndex = 0 + ' + 'STBehandlung + ' + Me.STBehandlung.AttachedControl = Me.SuperTabControlPanel1 + Me.STBehandlung.GlobalItem = False + Me.STBehandlung.Name = "STBehandlung" + Me.STBehandlung.Text = "Behandlung" + ' + 'SuperTabControlPanel3 + ' + Me.SuperTabControlPanel3.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel3.Location = New System.Drawing.Point(0, 0) + Me.SuperTabControlPanel3.Name = "SuperTabControlPanel3" + Me.SuperTabControlPanel3.Size = New System.Drawing.Size(830, 558) + Me.SuperTabControlPanel3.TabIndex = 0 + ' + 'SuperTabControlPanel2 + ' + Me.SuperTabControlPanel2.Controls.Add(Me.Panel1) + Me.SuperTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel2.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel2.Name = "SuperTabControlPanel2" + Me.SuperTabControlPanel2.Size = New System.Drawing.Size(830, 533) + Me.SuperTabControlPanel2.TabIndex = 0 + Me.SuperTabControlPanel2.TabItem = Me.STLeistung + ' + 'Panel1 + ' + Me.Panel1.Controls.Add(Me.Leistungen1) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel1.Location = New System.Drawing.Point(0, 0) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(830, 533) + Me.Panel1.TabIndex = 1 + ' + 'Leistungen1 + ' + Me.Leistungen1.behandler = 0 + Me.Leistungen1.Behandlungnr = 0 + Me.Leistungen1.Behandlungsstatus = 0 + Me.Leistungen1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Leistungen1.Frankenwert = 0R + Me.Leistungen1.Location = New System.Drawing.Point(0, 0) + Me.Leistungen1.Name = "Leistungen1" + Me.Leistungen1.Size = New System.Drawing.Size(830, 533) + Me.Leistungen1.TabIndex = 0 + ' + 'STLeistung + ' + Me.STLeistung.AttachedControl = Me.SuperTabControlPanel2 + Me.STLeistung.GlobalItem = False + Me.STLeistung.Name = "STLeistung" + Me.STLeistung.Text = "Leistungen" + ' + 'tsbtnnew + ' + Me.tsbtnnew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnew.Image = CType(resources.GetObject("tsbtnnew.Image"), System.Drawing.Image) + Me.tsbtnnew.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnew.Name = "tsbtnnew" + Me.tsbtnnew.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnew.Text = "Neue Behandlung" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "ToolStripButton1" + ' + 'tsbtnbehandlungdelete + ' + Me.tsbtnbehandlungdelete.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnnew, Me.ToolStripButton1}) + Me.tsbtnbehandlungdelete.Location = New System.Drawing.Point(0, 0) + Me.tsbtnbehandlungdelete.Name = "tsbtnbehandlungdelete" + Me.tsbtnbehandlungdelete.Size = New System.Drawing.Size(1050, 25) + Me.tsbtnbehandlungdelete.TabIndex = 1 + Me.tsbtnbehandlungdelete.Text = "ToolStrip1" + ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.NeueBehandlungToolStripMenuItem, Me.BehandlungAbschliessenToolStripMenuItem, Me.BehandlungLöschenToolStripMenuItem, Me.ToolStripMenuItem1, Me.NeuerKostenvoranschlagToolStripMenuItem, Me.KostenvoranschlagAbschliessenToolStripMenuItem, Me.KostenvoranschlagLöschenToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(244, 142) + ' + 'BehandlungZurücksetzenToolStripMenuItem + ' + Me.BehandlungZurücksetzenToolStripMenuItem.Name = "BehandlungZurücksetzenToolStripMenuItem" + Me.BehandlungZurücksetzenToolStripMenuItem.Size = New System.Drawing.Size(209, 22) + Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Behandlung zurücksetzen" + ' + 'ToolStripMenuItem2 + ' + Me.ToolStripMenuItem2.Name = "ToolStripMenuItem2" + Me.ToolStripMenuItem2.Size = New System.Drawing.Size(206, 6) + ' + 'ToolStripMenuItem3 + ' + Me.ToolStripMenuItem3.Name = "ToolStripMenuItem3" + Me.ToolStripMenuItem3.Size = New System.Drawing.Size(206, 6) + ' + 'Behandlung + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.SuperTabControl1) + Me.Controls.Add(Me.GroupBox1) + Me.Controls.Add(Me.tsbtndelete) + Me.Name = "Behandlung" + Me.Size = New System.Drawing.Size(1050, 583) + Me.tsbtndelete.ResumeLayout(False) + Me.tsbtndelete.PerformLayout() + Me.GroupBox1.ResumeLayout(False) + CType(Me.treebehandlungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ctxmenubehandlung.ResumeLayout(False) + CType(Me.SuperTabControl1, System.ComponentModel.ISupportInitialize).EndInit() + Me.SuperTabControl1.ResumeLayout(False) + Me.SuperTabControlPanel1.ResumeLayout(False) + Me.Panel2.ResumeLayout(False) + Me.SuperTabControlPanel2.ResumeLayout(False) + Me.Panel1.ResumeLayout(False) + Me.tsbtnbehandlungdelete.ResumeLayout(False) + Me.tsbtnbehandlungdelete.PerformLayout() + Me.ContextMenuStrip1.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents tsbtndelete As System.Windows.Forms.ToolStrip + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents treebehandlungen As DevComponents.AdvTree.AdvTree + Friend WithEvents NodeConnector1 As DevComponents.AdvTree.NodeConnector + Friend WithEvents ElementStyle1 As DevComponents.DotNetBar.ElementStyle + Friend WithEvents Node2 As DevComponents.AdvTree.Node + Friend WithEvents ImageList1 As System.Windows.Forms.ImageList + Friend WithEvents SuperTabControl1 As DevComponents.DotNetBar.SuperTabControl + Friend WithEvents SuperTabControlPanel1 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents STBehandlung As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents SuperTabControlPanel2 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Leistungen1 As DPM2016.Leistungen + Friend WithEvents STLeistung As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents Panel2 As System.Windows.Forms.Panel + Friend WithEvents Panel1 As System.Windows.Forms.Panel + Friend WithEvents Behandungdetail1 As DPM2016.Benhandungdetail + Friend WithEvents tsbtnnew As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtnbehandlungdelete As System.Windows.Forms.ToolStrip + Friend WithEvents tsbtnnewbehandlung As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtndeletebehandlung As System.Windows.Forms.ToolStripButton + Friend WithEvents ctxmenubehandlung As System.Windows.Forms.ContextMenuStrip + Friend WithEvents NeueBehandlungToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BehandlungAbschliessenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BehandlungLöschenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStripMenuItem1 As System.Windows.Forms.ToolStripSeparator + Friend WithEvents NeuerKostenvoranschlagToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents KostenvoranschlagAbschliessenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents KostenvoranschlagLöschenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents NeueBehandlungToolStripMenuItem1 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BehandlungabschliessenToolStripMenuItem1 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BehandlungLöschenToolStripMenuItem1 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ContextMenuStrip1 As System.Windows.Forms.ContextMenuStrip + Friend WithEvents SuperTabControlPanel3 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents ToolStripMenuItem2 As ToolStripSeparator + Friend WithEvents BehandlungZurücksetzenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents ToolStripMenuItem3 As ToolStripSeparator +End Class diff --git a/DPM2016/Behandlung/Behandlung.resx b/DPM2016/Behandlung/Behandlung.resx new file mode 100644 index 0000000..76b90ef --- /dev/null +++ b/DPM2016/Behandlung/Behandlung.resx @@ -0,0 +1,262 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAINSURBVDhPY6AVYAyc67K/+XD1/SYg9p3quAQqTiQIZWAO + Wu75Zu6Nuf9nX5/9322S/TmoDJEAaIDnctc3k69M/D/hSt9/p0nm56EyRAKwATZveq+0/O++0gg0wAiP + AfUMTOYLtWx81tnYB0CxZZ+ak88myw9dV8v/d1wp+e88T++2/XxtB591FvYeQOyyzsTeYJGyFVi/cAGn + Se6J5P99V5v+T7ze8H/Szbr/U27V/O++kfe/43rm/9Zr6f87r+f+775e9L/tSsH/hot5/yvPZf8P2Ov6 + ny+OXZlBLJfTogoo0H+9Fqi56v+U2xX/p94p/d9+M+5/283o/y03I/533Ur+33Mz63/79fT/DZdT/1ee + T/4fdtD5P28ImzqDUAaLRcQOwf9ph4T/554U+l94Ruh/wRnB/zXXzP633/H533rH83/5ZZ3/+af5/+cB + cdZx/v9JB/j++27lAhrAoM7A6cQgLRnPsFk2mWGbYhrDNuV0IA3EaQdFf3Y+sP3f/sDqf9gm8Q8gMRgG + qRWPZ9jAZ8EgBA4HIGBEwfYMLOGHmN7UPeb4X/eY67/7ciZQLKCqgWAcABiNiecY3nS8YvgPwj5rGEhP + B7kXBN4s+CT/f/5H+f9hG3lJNyBpr+6bOQ89/oNwwCJ1Eg1gYGCSymXYYdjGcAOExeIZ5kHFSQIsDCoM + 7GDMwMAMEUIHDAwAsbvzUSNPIp4AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJASURBVDhPfZNLSxtRFMdn5Suah0oChhiJmlGj8RGfiKIi + gouAEPULuMlSxe+Rrbt8hKEWGfJobNq5k0ZaJ7Vgq90ILW5auiiFLv8955oJiU37hwPDPfd3/ufMvVex + VTk4SF0mEprmcrmrS39JCwbdpZ0dzdjeTlWXHvUhmUw/nJ7i7e4uspGIxRurqZqqsPXp5ATG4iJyo6Np + mWBnCScSMNfXIVZXoatqQ5EafHwMMTcHY2ZGRkZVUwq3zc42LJaXYSwtQQ+HZZEafHQEEYtBTE3VQh8a + 0hSemduuh435eRizs9BDIasUj1u3h4cwydGcnIQZjaJEwblal/zBbdfDggB2+ZhMojQ9LaE3FOWJiUbY + lixCbdfD7ChGRmAMDEAEgzApss1gW7IIbTDIqRgIoOB04iXFK7cboqcHus/3b5jFSbG1ZVnxOF50dkr4 + tccDs7cXZa8XWb///+5Fgiv7+8gTeFEHX/p8eNfXh/f9/cgHAs3nL25sWJW9PeTIuUBRdLlk22WCr/x+ + XNP8N6EQboeHUXx6AgxbBGccDuQ6OnDR1SXdeeYctc3ON4OD+KyquI9E8IX+kajeE8XY3NSu6CLp7e3I + tLUhT0V4dt3rlRs4uO27cBj34+N4oCP9RrfxOx13SVU1pbCwkDpvbYXe0oIsFeGfd97d3TCn7JLa/krH + yuBPunC/VlZQiUYfH9WZw5G2Czx7AtviNZMu2w96SL/X1nAXiz0+JltnTmfqucejNYNtca48NqZd286K + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + 234, 17 + + + 124, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABO + DQAAAk1TRnQBSQFMAgEBBQEAATABAgEwAQIBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA + AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 + AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA + AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm + AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM + AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA + ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz + AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ + AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM + AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA + AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA + AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ + AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ + AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA + AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm + ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ + Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz + AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA + AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM + AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM + ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM + Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA + AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM + AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ + AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz + AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm + AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw + AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wMAAf8MHAH/MgAB/wEc + CfIC8QH0MgAB/wF4AZcBvAGXAQgG8gHxAfQxAAH/AfQBVQM0AVUBCAHyARsD8gHxAfQxAAEIAjQBVQQ0 + AZcDGwHyAfEB9DEAAfABNAFVAf8BGwM0AZgC8wIbAfEB9DAAAfQBVQFWAf8BeAHCARsCNAFVAbwC8wEb + AfEB9DAAAfQBVQGXAXgBNAFVAcIBGwI0AQgD8wHxAfQxAAHwBTQB9AGXAZgE8wHyAfQxAAEIAVsGNAGX + AfADvAEcAfQxAAH/AfQBVgE0AVUBNAFWAQgB8gH/AfYB9AHzARwB/zIAAf8BmQF4AbwBlwEIAvMB/wH0 + AfMBHAH/MwAB/wG8BPQC8wH0AfMBBwH/MwAB9AH/AfAE9ALzAfQBCAH/NQAB/wHxBfQBGwHwAf92AAH/ + AfQB8whSAUwCSwIAAf8BvAG0AW0BSwZSAVECSwEAAf8MHAH/AgAB/wwcAf8FAAFSCnoBUgEAAf8BtAOz + AbQB6wd6AVIBAAH/ARwJ8gLxAfQCAAH/ARwF8gEIAXEC8gLxAfQEAAH/AZoKegF5AQABvAGzAf8BugG7 + ArQBdAZ6AXkBAAH/ARwEGwbyAfEB9AIAAf8BHAQbAfACcQGYAvIB8QH0BAABdAGgAeUHegHlAVIBegH/ + AroB8wL0AbMBgQGRBHoB5QFSAXoBAAH/AZgE8wMbA/IB8QH0AgAB/wGYA/MB8AFxAncBcQLyAfEB9AMA + Af8BmgSgBXoBmgFZAXoB/wK7Av8C9AGBAZEEegGaAVkBegEAAf8BHAbzAxsB8gHxAfQCAAH/ARwC8wHw + AXECdwG7AXcBlwHyAfEB9AMAAXkBwwGgARoEoAF5AeUBoAFSAVkBmgEAAbwBwgHzAf8B9AG7AbMBmQPl + AaABUgFZAZoBAAH/AZgI8wIbAfEB9AIAAf8BmAHzAfEBcQGXAXcBnQFxAZgBcQHwAfEB9AMAAZoBwwEa + AsMEoAKaAVIBWQGaAQAB/wLCAfMBuwG6AbQDoAHlAaABUgFZAZoBAAH/Ae8J8wEbAfEB9AIAAf8B7wHz + AQgClwKdAfIBcQGdAXEB8QH0AgABGgLDAXoCmgHDBKABdAJZAZoBAAEbAcMBCAO7BaABdAJZAZoBAAH/ + AQcK8wHxAfQCAAH/AQcC8wGYAZ0BmALzAfIBcQGdAQgB9AIAApoBTQF1AXoBTQGaAsMBoAHDAXQCegEa + AQABmgfDAqABwwFSAnoBGgEAAf8BBwrzAfIB9AIAAf8BBwnzAXIBcQH0AgABwwGaAXUBoAGaAXUBmgHD + Av8BmQN6ARoBAAf2ApoFegEaAQAB/wEHBvMB8AO8ARwB9AIAAf8BBwbzAfADvAGXAZgCAAEaASYBTQL2 + AiYBwwH/AfQEmgHDAQAE/wGaARoImgHDAQAB/wEIBvMB/wH2AfQB8wEcAf8CAAH/AQgG8wH/AfYB9AHz + ARwBcgH/AQAB/wGaAU0CwwFNAZoB9gH/ARoBwwEaApoBwwUAAZoGwwEaApoBwwEAAf8BvAP0A/MB/wH0 + AfMBHAH/AwAB/wG8A/QD8wH/AfQB8wEcAf8BAAGYAQAB/wEaAnUBegF1AZoB9gHzAZoBwwH2ARoBwwH0 + BQABGwWaAcMB9gEaAcMB9AEAAf8BvAT0AvMB9AHzAQcB/wQAAf8BvAT0AvMB9AHzAQcB/wUAAf8B9AKa + ARoB9gHyAf8WAAH0Af8B8AT0AvMB9AEIAf8EAAH0Af8B8AT0AvMB9AEIAf8JAAL/GgAB/wHxBfQBGwHw + Af8GAAH/AfEF9AEbAfAB/0UAAUIBTQE+BwABPgMAASgDAAFAAwABIAMAAQEBAAEBBgABARYAA/8BAAHA + BwABwAcAAcAHAAGABwABgAcAAYAXAAGABwABgAcAAYAHAAHAAQEGAAHAAQMGAAGAAQcGAAHAAQ8GAAL/ + BgABwAEAAcABAAGAAQEBgAEBAfABAAGAAQABgAEBAYABAQHgAQABgAEAAYABAQGAAQEB4AMAAYABAQGA + AQEBwAMAAYABAQGAAQEBwAEAAYABAAGAAQEBgAEBAcABAAGAAQABgAEBAYABAQGAAQABgAEAAYABAQGA + AQEBgAEAAYABAAGAAQEBgAEBAYABAAGAAQABgAEBAYABAQGAAQABgAEAAYABAQGAAQABgAEAAfgBAAGA + AQMBgAECAYABAAH4AQABgAEHAYABBwHAAT8C/wEAAQ8BAAEPAfkD/wGAAR8BgAEfCP8L + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAINSURBVDhPY6AVYAyc67K/+XD1/SYg9p3quAQqTiQIZWAO + Wu75Zu6Nuf9nX5/9322S/TmoDJEAaIDnctc3k69M/D/hSt9/p0nm56EyRAKwATZveq+0/O++0gg0wAiP + AfUMTOYLtWx81tnYB0CxZZ+ak88myw9dV8v/d1wp+e88T++2/XxtB591FvYeQOyyzsTeYJGyFVi/cAGn + Se6J5P99V5v+T7ze8H/Szbr/U27V/O++kfe/43rm/9Zr6f87r+f+775e9L/tSsH/hot5/yvPZf8P2Ov6 + ny+OXZlBLJfTogoo0H+9Fqi56v+U2xX/p94p/d9+M+5/283o/y03I/533Ur+33Mz63/79fT/DZdT/1ee + T/4fdtD5P28ImzqDUAaLRcQOwf9ph4T/554U+l94Ruh/wRnB/zXXzP633/H533rH83/5ZZ3/+af5/+cB + cdZx/v9JB/j++27lAhrAoM7A6cQgLRnPsFk2mWGbYhrDNuV0IA3EaftFf3Y+sP3f/sDqf9gm8Q8gMRgG + qRWPZ9jAZ8EgBA4HIGBEwfYMLOGHmN7UPeb4X/eY67/7ciZQLKCqgWAcABiNiecY3nS8YvgPwj5rGEhP + B7kXBN4s+CT/f/5H+f9hG3lJNyBpr+6bOQ89/oNwwCJ1Eg1gYGCSymXYYdjGcAOExeIZ5kHFSQIsDCoM + 7GDMwMAMEUIHDAwArmHzT5KTHe0AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJASURBVDhPfZNLSxtRFMdn5Suah0oChhiJmlGj8RGfiKIi + gouAEPULuMlSxe+Rrbt8hKEWGfJobNq5k0ZaJ7Vgq90ILW5auiiFLv8955oJiU37hwPDPfd3/ufMvVex + VTk4SF0mEprmcrmrS39JCwbdpZ0dzdjeTlWXHvUhmUw/nJ7i7e4uspGIxRurqZqqsPXp5ATG4iJyo6Np + mWBnCScSMNfXIVZXoatqQ5EafHwMMTcHY2ZGRkZVUwq3zc42LJaXYSwtQQ+HZZEafHQEEYtBTE3VQh8a + 0hSemduuh435eRizs9BDIasUj1u3h4cwydGcnIQZjaJEwblal/zBbdfDggB2+ZhMojQ9LaE3FOWJiUbY + lixCbdfD7ChGRmAMDEAEgzApss1gW7IIbTDIqRgIoOB04iXFK7cboqcHus/3b5jFSbG1ZVnxOF50dkr4 + tccDs7cXZa8XWb///+5Fgiv7+8gTeFEHX/p8eNfXh/f9/cgHAs3nL25sWJW9PeTIuUBRdLlk22WCr/x+ + XNP8N6EQboeHUXx6AgxbBGccDuQ6OnDR1SXdeeYctc3ON4OD+KyquI9E8IX+kajeE8XY3NSu6CLp7e3I + tLUhT0V4dt3rlRs4uO27cBj34+N4oCP9RrfxOx13SVU1pbCwkDpvbYXe0oIsFeGfd97d3TCn7JLa/krH + yuBPunC/VlZQiUYfH9WZw5G2Czx7AtviNZMu2w96SL/X1nAXiz0+JltnTmfqucejNYNtca48NqZd286K + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + 17, 17 + + + 234, 17 + + \ No newline at end of file diff --git a/DPM2016/Behandlung/Behandlung.vb b/DPM2016/Behandlung/Behandlung.vb new file mode 100644 index 0000000..6737359 --- /dev/null +++ b/DPM2016/Behandlung/Behandlung.vb @@ -0,0 +1,494 @@ +Imports System.ComponentModel + +Public Class Behandlung + +#Region "Properties" + Dim m_patientnr As Integer + Property PatientNr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + Try + If value = 0 Then Exit Property + m_patientnr = value + Get_Behandlungen() + + Catch ex As Exception + log.Writelog("Behandlung: PatientNr Set: " + ex.Message, clsLog.Logtype.ApplError) + Dim a As Integer = 1 + End Try + End Set + End Property + + Dim m_haschanges As Boolean + Property HasChanges As Boolean + Get + Return m_haschanges + End Get + Set(value As Boolean) + m_haschanges = value + End Set + End Property + +#End Region + +#Region "Deklarationen" + Dim DB As New clsDB + Dim log As New clsLog + Dim FormReadonly As Boolean = False + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + +#End Region + +#Region "Closing / Check_Changes" + + ''' + ''' Prüfung, ob Datenänderungen vorgenommen wurden. + ''' + ''' + Private Function Check_Changes() As Boolean + If Me.FormReadonly Then + Return True + Exit Function + End If + Dim msgres As MsgBoxResult + If Me.HasChanges Then + msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) + Select Case msgres + Case MsgBoxResult.Yes + 'Save_Data() + Return True + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Me.HasChanges = False + Return True + End Select + Else + Return True + End If + End Function + +#End Region + +#Region "Eventhandler ChangeEreignisse" + ''' + ''' Allg Eventhandler für Chanage-Ereignise festlegen + ''' + ''' + ''' + Private Sub AddChanges(ByVal Container As Control) + Dim l As New List(Of Control) + Me.GetControl(Me, "*", l) + Dim evh As EventHandler = AddressOf ChangesMade + For Each c As Control In l + If TypeOf c Is TextBox Then + Dim ctl As TextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is MaskedTextBox Then + Dim ctl As MaskedTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is ComboBox Then + Dim ctl As ComboBox = c + AddHandler ctl.SelectedValueChanged, evh + End If + If TypeOf c Is RichTextBox Then + Dim ctl As RichTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is CheckBox Then + If c.Name <> "cboxNurAktive" Then + Dim ctl As CheckBox = c + AddHandler ctl.CheckedChanged, evh + End If + End If + If TypeOf c Is DateTimePicker Then + Dim ctl As DateTimePicker = c + AddHandler ctl.ValueChanged, evh + End If + + If TypeOf c Is CheckedListBox Then + Dim ctl As CheckedListBox = c + AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange + End If + Next + End Sub + ''' + ''' Envent-Handler für Change-Ereignisse + ''' + ''' + ''' + ''' + Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) + Me.HasChanges = True + Dim objtype As System.Type = sender.GetType + If objtype.Name = "MaskedTextBox" Then + Dim o As MaskedTextBox = sender + If o.Text = "01.01.1900" Then o.Text = " . . " + End If + End Sub + + Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) + Me.HasChanges = True + End Sub + + + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + + +#Region "Daten_Laden" + + + Sub Get_Behandlungen() + DB.Get_Tabledata("Behandlu", " where aktiv=1 and nrpatient=" + Me.PatientNr.ToString + " order by status, behandlungsbeginn desc") + Me.treebehandlungen.Nodes.Clear() + + Dim BH As New DevComponents.AdvTree.Node + Dim BHoffen As New DevComponents.AdvTree.Node + Dim BHabgeshlossen As New DevComponents.AdvTree.Node + Dim BHFakturiert As New DevComponents.AdvTree.Node + Dim kv As New DevComponents.AdvTree.Node + Dim kvoffen As New DevComponents.AdvTree.Node + Dim kvabgeschlossen As New DevComponents.AdvTree.Node + + BH.Text = "Behandlungen" + BH.Tag = -1 + BH.ImageIndex = 0 + BHoffen.Text = "Offen" + BHoffen.Tag = -11 + BHoffen.ImageIndex = 0 + BHabgeshlossen.Text = "Abgeschlossen" + BHabgeshlossen.Tag = -12 + BHabgeshlossen.ImageIndex = 0 + BHFakturiert.Text = "Fakturiert" + BHFakturiert.Tag = -13 + BHFakturiert.ImageIndex = 0 + BH.Nodes.Add(BHoffen) + BH.Nodes.Add(BHabgeshlossen) + BH.Nodes.Add(BHFakturiert) + kv.Text = "Kostenvoranschlag" + kv.Tag = -2 + kv.ImageIndex = 1 + kvoffen.Text = "Offen" + kvoffen.Tag = -22 + kvoffen.ImageIndex = 1 + kvabgeschlossen.Text = "Abgeschlossen" + kvabgeschlossen.Tag = -23 + kvabgeschlossen.ImageIndex = 1 + Me.treebehandlungen.Nodes.Add(BH) + Me.treebehandlungen.Nodes.Add(kv) + kv.Nodes.Add(kvoffen) + kv.Nodes.Add(kvabgeschlossen) + + Dim firstnode_tag As Integer = 0 + For Each r As DataRow In DB.dsDaten.Tables(0).Rows + If firstnode_tag = 0 Then firstnode_tag = r("nrbehandlung") + Dim tn As New DevComponents.AdvTree.Node + tn.Tag = r("nrbehandlung") + Dim total As Double = r("Total") + tn.Text = r("behandlungsbeginn") + " / " + total.ToString("N2") + Select Case r("status") + Case 1 + tn.ImageIndex = 2 + BHoffen.Nodes.Add(tn) + Case 2 + tn.ImageIndex = 3 + BHabgeshlossen.Nodes.Add(tn) + Case 3 + tn.ImageIndex = 4 + BHFakturiert.Nodes.Add(tn) + Case 4 + tn.ImageIndex = 2 + kvoffen.Nodes.Add(tn) + Case 5 + tn.ImageIndex = 3 + kvabgeschlossen.Nodes.Add(tn) + End Select + Next + Me.treebehandlungen.ExpandAll() + enable_disable_tabs(False) + Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, firstnode_tag, firstnode_tag) + If firstnode_tag <> 0 Then nodeselected() + + + + End Sub + +#End Region + + Private Sub treebehandlungen_Click(sender As Object, e As EventArgs) Handles treebehandlungen.Click + nodeselected() + End Sub + Sub nodeselected() + + Try + If Me.Behandungdetail1.HasChanges Then + Me.Behandungdetail1.Check_Changes() + End If + Globals.OnLoad = True + If Me.treebehandlungen.SelectedNode.Tag > 0 Then + Me.Behandungdetail1.Patientnr = Me.PatientNr + Me.Behandungdetail1.Behandlungsnr = Me.treebehandlungen.SelectedNode.Tag + Me.Leistungen1.Behandlungnr = Me.treebehandlungen.SelectedNode.Tag + Me.Leistungen1.Behandlungsstatus = Behandungdetail1.Behandlungsstatus + Me.Leistungen1.Dentotar = Behandungdetail1.cbboxNrAbrechnungstyp.Text = "Dentotar" + enable_disable_tabs(True) + refresh_tabs() + Else + enable_disable_tabs(False) + End If + + Catch ex As Exception + enable_disable_tabs(False) + Finally + Globals.OnLoad = False + End Try + End Sub + + Sub enable_disable_tabs(ByVal enable As Boolean) + Me.SuperTabControl1.Tabs(1).Enabled = enable + Me.SuperTabControl1.Tabs(0).Enabled = enable + Me.SuperTabControl1.Visible = enable + + End Sub + + + Private Sub DDTBehandlungsbeginn_DoubleClick(sender As Object, e As EventArgs) + sender.value = Now + End Sub + + Private Sub SuperTabControl1_SelectedTabChanged(sender As Object, e As DevComponents.DotNetBar.SuperTabStripSelectedTabChangedEventArgs) Handles SuperTabControl1.SelectedTabChanged + Try + refresh_tabs() + Catch + End Try + + End Sub + + Sub refresh_tabs() + Me.Leistungen1.TaxPunkte = Me.Behandungdetail1.cbboxNrtaxpunkt.SelectedValue + Me.Leistungen1.Frankenwert = Me.Behandungdetail1.mtxtTaxpunktwert.Text + Me.Leistungen1.behandler = Me.Behandungdetail1.cbboxnrbehandler.SelectedValue + Me.Leistungen1.Behandlungnr = Me.Behandungdetail1.Behandlungsnr + Me.Leistungen1.Dentotar = Me.Behandungdetail1.cbboxNrAbrechnungstyp.Text = "Dentotar" + Me.Leistungen1.refresh_leistungen() + + End Sub + Private Sub LöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) + + End Sub + + Private Sub evh_Behandlung_changed(behandlungsnummer As Integer, patientnr As Integer) Handles evh.Behandlung_changed + If Me.PatientNr = patientnr Then + Dim tn As DevComponents.AdvTree.Node + tn = Globals.FindNode(Me.treebehandlungen.Nodes, behandlungsnummer, behandlungsnummer) + Try + tn.Text = Me.Behandungdetail1.DDTBehandlungsbeginn.Text + " / " + Me.Behandungdetail1.txtcTotal.Text + Catch + End Try + End If + End Sub + + Private Sub evh_Behandlung_Inserted(Patientnr As Integer, Behandlungsnummer As Integer) Handles evh.Behandlung_Inserted + If Me.PatientNr = Patientnr Then + Get_Behandlungen() + Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, Behandlungsnummer, Behandlungsnummer) + End If + End Sub + + + + Private Sub evh_Taxpunktwert_changed(behandlungsnummer As Integer, patientnr As Integer, taxpunktwert As Double) Handles evh.Taxpunktwert_changed + Try + If Me.treebehandlungen.SelectedNode.Tag = behandlungsnummer Then + Leistungen1.Frankenwert = taxpunktwert + Leistungen1.Recalc_Leistungen() + End If + Catch ex As Exception + End Try + + End Sub + + Private Sub Benhandungdetail1_Load(sender As Object, e As EventArgs) Handles Behandungdetail1.Load + + End Sub + + + Private Sub tsbtnnewbehandlung_Click(sender As Object, e As EventArgs) Handles tsbtnnewbehandlung.Click + Dim db As New clsDB + Dim pat As New clsDB + pat.Get_Tabledata("Privat", "where nrprivat=" + Me.PatientNr.ToString) + Dim newkey As Integer = db.Get_DBKey("Behandlung") + db.Get_Tabledata("Behandlu", " where nrbehandlung=0") + + + Dim r As DataRow + r = db.dsDaten.Tables(0).NewRow + + For Each c As DataColumn In db.dsDaten.Tables(0).Columns + r.Item(c) = db.dsDaten.Tables(0).Rows(0).Item(c) + Next + + + r.Item("nrbehandlung") = newkey + r.Item("nrpatient") = Me.PatientNr + r.Item("nrbehandler") = 1 + r.Item("nrrgtyp") = pat.dsDaten.Tables(0).Rows(0).Item("nrrgtyp") + r.Item("rabatt") = pat.dsDaten.Tables(0).Rows(0).Item("rabatt") + r.Item("nrestyp") = pat.dsDaten.Tables(0).Rows(0).Item("estyp") + r.Item("behandlungsbeginn") = Now + r.Item("status") = 1 + r.Item("statusdatum") = Now + r.Item("erstellt_am") = Now + r.Item("mutiert_am") = Now + r.Item("mutierer") = Globals.ActUser + r.Item("aktiv") = True + db.dsDaten.Tables(0).Rows.Add(r) + db.Update_Data() + pat.Dispose() + db.Dispose() + + Me.Get_Behandlungen() + Try + Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, newkey, newkey) + Me.nodeselected() + Catch ex As Exception + End Try + End Sub + + Private Sub tsbtndeletebehandlung_Click(sender As Object, e As EventArgs) Handles tsbtndeletebehandlung.Click + If MsgBox("Datensatz wirklich löschen?", vbYesNo + vbQuestion, "Behandlung löschen") = MsgBoxResult.Yes Then + Dim db As New clsDB + db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.treebehandlungen.SelectedNode.Tag.ToString) + db.dsDaten.Tables(0).Rows(0).Item("aktiv") = 0 + db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now + db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser + db.Update_Data() + db.Dispose() + Me.Get_Behandlungen() + End If + End Sub + + Private Sub BehandlungAbschliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BehandlungAbschliessenToolStripMenuItem.Click + + End Sub + + Private Sub NeueBehandlungToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles NeueBehandlungToolStripMenuItem1.Click + Me.tsbtnnewbehandlung_Click(sender, e) + End Sub + + Private Sub BehandlungLöschenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles BehandlungLöschenToolStripMenuItem1.Click + Me.tsbtndeletebehandlung_Click(sender, e) + End Sub + + Private Sub BehandlungabschliessenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles BehandlungabschliessenToolStripMenuItem1.Click + Me.Behandungdetail1.Save_Data() + Dim db As New clsDB + Dim key As Integer = Me.treebehandlungen.SelectedNode.Tag + db.Get_Tabledata("Behandlu", "where nrbehandlung=" + Me.treebehandlungen.SelectedNode.Tag.ToString) + db.dsDaten.Tables(0).Rows(0).Item("Status") = 2 + db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now + db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser + db.Update_Data() + db.Dispose() + Me.Get_Behandlungen() + Me.treebehandlungen.SelectedNode = Globals.FindNode(Me.treebehandlungen.Nodes, key, key) + Me.nodeselected() + End Sub + + Private Sub tsbtndelete_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles tsbtndelete.ItemClicked + + End Sub + + Private Sub ctxmenubehandlung_Opening(sender As Object, e As CancelEventArgs) Handles ctxmenubehandlung.Opening + Try + Dim i As Integer = Me.treebehandlungen.SelectedNode.Parent.Tag + Me.ctxmenubehandlung.Enabled = True + Select Case i + Case -11 + Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = False + Me.BehandlungabschliessenToolStripMenuItem1.Enabled = True + Case -12 + Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = True + Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False + Case -13 + Me.BehandlungZurücksetzenToolStripMenuItem.Enabled = True + Me.BehandlungabschliessenToolStripMenuItem1.Enabled = False + + End Select + Select Case i + Case > -20 + Me.BehandlungabschliessenToolStripMenuItem1.Text = "Behandlung abschliessen" + Me.NeueBehandlungToolStripMenuItem1.Text = "Neue Behandlung" + Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Behandlung zurücksetzen" + Me.BehandlungZurücksetzenToolStripMenuItem.Visible = True + Me.BehandlungLöschenToolStripMenuItem1.Text = "Behandlung löschen" + Case < -20 + Me.BehandlungabschliessenToolStripMenuItem1.Text = "Kostenvoranschlag abschliessen" + Me.NeueBehandlungToolStripMenuItem1.Text = "Neuer Kostenvoranschlag" + Me.BehandlungZurücksetzenToolStripMenuItem.Text = "Kostenvoranschlag zurücksetzen" + Me.BehandlungZurücksetzenToolStripMenuItem.Visible = False + Me.BehandlungLöschenToolStripMenuItem1.Text = "Kostenvoranschlag löschen" + + End Select + + + Catch + Me.ctxmenubehandlung.Enabled = False + End Try + + End Sub +End Class diff --git a/DPM2016/Behandlung/Benhandungdetail.Designer.vb b/DPM2016/Behandlung/Benhandungdetail.Designer.vb new file mode 100644 index 0000000..32ad839 --- /dev/null +++ b/DPM2016/Behandlung/Benhandungdetail.Designer.vb @@ -0,0 +1,1132 @@ + _ +Partial Class Benhandungdetail + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Benhandungdetail)) + Me.GrpPatient = New System.Windows.Forms.GroupBox() + Me.cbboxNRESTyp = New DPM2016.MyCombobox() + Me.Label6 = New System.Windows.Forms.Label() + Me.cbboxnrbehandler = New DPM2016.MyCombobox() + Me.Label7 = New System.Windows.Forms.Label() + Me.grpZusammenfassugn = New System.Windows.Forms.GroupBox() + Me.txtcTotal = New System.Windows.Forms.Label() + Me.lblTotal = New System.Windows.Forms.Label() + Me.txtcRabatt = New System.Windows.Forms.Label() + Me.lblRabatt = New System.Windows.Forms.Label() + Me.txtcVorauszahlungen = New System.Windows.Forms.Label() + Me.lblVorauszahlungen = New System.Windows.Forms.Label() + Me.txtcRatenzuschlat = New System.Windows.Forms.Label() + Me.lblRatenzuschlag = New System.Windows.Forms.Label() + Me.txtcBehandlungstotal = New System.Windows.Forms.Label() + Me.lblBehandlungstotal = New System.Windows.Forms.Label() + Me.txtcKVTotal = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.GrpGaramt = New System.Windows.Forms.GroupBox() + Me.lblFallNummer = New System.Windows.Forms.Label() + Me.cbboxNrAnsprechpartner = New DPM2016.MyCombobox() + Me.lblAnsprechpartner = New System.Windows.Forms.Label() + Me.txtFallnummer = New System.Windows.Forms.TextBox() + Me.cbboxNrGarant = New DPM2016.MyCombobox() + Me.lblgarant = New System.Windows.Forms.Label() + Me.rbPrivatPersonen = New System.Windows.Forms.RadioButton() + Me.rbkk = New System.Windows.Forms.RadioButton() + Me.rbdiverseFirmen = New System.Windows.Forms.RadioButton() + Me.rbiv = New System.Windows.Forms.RadioButton() + Me.rbfs = New System.Windows.Forms.RadioButton() + Me.rbversicherung = New System.Windows.Forms.RadioButton() + Me.GrpRaten = New System.Windows.Forms.GroupBox() + Me.txtAnzahlraten = New Syncfusion.Windows.Forms.Tools.DoubleTextBox() + Me.mtxtRatenzuschlag = New Syncfusion.Windows.Forms.Tools.DoubleTextBox() + Me.xxtxtAnzahlraten = New System.Windows.Forms.NumericUpDown() + Me.chkUngeraterateamstart = New System.Windows.Forms.CheckBox() + Me.Label4 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.lblZuschlagRaten = New System.Windows.Forms.Label() + Me.lblAnzahlRaten = New System.Windows.Forms.Label() + Me.grpBehandlungsdaten = New System.Windows.Forms.GroupBox() + Me.DDTRGStellung = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.DDTBehandlungsende = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.DDTBehandlungsbeginn = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.btnAbschliessen = New System.Windows.Forms.Button() + Me.btnZuruecksetzen = New System.Windows.Forms.Button() + Me.lblRGStellung = New System.Windows.Forms.Label() + Me.Label15 = New System.Windows.Forms.Label() + Me.lblBegin = New System.Windows.Forms.Label() + Me.grpAbrechnung = New System.Windows.Forms.GroupBox() + Me.mtxtRabatt = New Syncfusion.Windows.Forms.Tools.DoubleTextBox() + Me.mtxtTaxpunktwert = New Syncfusion.Windows.Forms.Tools.DoubleTextBox() + Me.lblRabattwert = New System.Windows.Forms.Label() + Me.lblTaxpunkte = New System.Windows.Forms.Label() + Me.lblFrankenwert = New System.Windows.Forms.Label() + Me.chkMitdatum = New System.Windows.Forms.CheckBox() + Me.chkAndrucken_Taxpunkte = New System.Windows.Forms.CheckBox() + Me.chkRabattGesamt = New System.Windows.Forms.CheckBox() + Me.cbboxNrtaxpunkt = New DPM2016.MyCombobox() + Me.cbboxNrAnsatz = New DPM2016.MyCombobox() + Me.lblAnsatz = New System.Windows.Forms.Label() + Me.cbboxNrAbrechnungstyp = New DPM2016.MyCombobox() + Me.lblAbrechnungstyp = New System.Windows.Forms.Label() + Me.cbboxNRRGtyp = New DPM2016.MyCombobox() + Me.lblRechnungstyp = New System.Windows.Forms.Label() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnSave = New System.Windows.Forms.ToolStripButton() + Me.ToolStripDropDownButton1 = New System.Windows.Forms.ToolStripDropDownButton() + Me.VorschaRechnungToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.DesignRechnungToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.GrpRechnungstext = New System.Windows.Forms.GroupBox() + Me.cbboxrgtext = New DPM2016.MyCombobox() + Me.txtRechnungsbemerkung = New System.Windows.Forms.TextBox() + Me.GrpPatient.SuspendLayout() + Me.grpZusammenfassugn.SuspendLayout() + Me.GrpGaramt.SuspendLayout() + Me.GrpRaten.SuspendLayout() + CType(Me.txtAnzahlraten, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.mtxtRatenzuschlag, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.xxtxtAnzahlraten, System.ComponentModel.ISupportInitialize).BeginInit() + Me.grpBehandlungsdaten.SuspendLayout() + CType(Me.DDTRGStellung, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DDTBehandlungsende, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DDTBehandlungsbeginn, System.ComponentModel.ISupportInitialize).BeginInit() + Me.grpAbrechnung.SuspendLayout() + CType(Me.mtxtRabatt, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.mtxtTaxpunktwert, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ToolStrip1.SuspendLayout() + Me.GrpRechnungstext.SuspendLayout() + Me.SuspendLayout() + ' + 'GrpPatient + ' + Me.GrpPatient.Controls.Add(Me.cbboxNRESTyp) + Me.GrpPatient.Controls.Add(Me.Label6) + Me.GrpPatient.Controls.Add(Me.cbboxnrbehandler) + Me.GrpPatient.Controls.Add(Me.Label7) + Me.GrpPatient.Location = New System.Drawing.Point(3, 31) + Me.GrpPatient.Name = "GrpPatient" + Me.GrpPatient.Size = New System.Drawing.Size(300, 84) + Me.GrpPatient.TabIndex = 9 + Me.GrpPatient.TabStop = False + Me.GrpPatient.Text = "Patient / Behandler" + ' + 'cbboxNRESTyp + ' + Me.cbboxNRESTyp.Dataselection = Nothing + Me.cbboxNRESTyp.Displaymember = Nothing + Me.cbboxNRESTyp.Location = New System.Drawing.Point(72, 52) + Me.cbboxNRESTyp.Name = "cbboxNRESTyp" + Me.cbboxNRESTyp.Size = New System.Drawing.Size(216, 21) + Me.cbboxNRESTyp.TabIndex = 22 + Me.cbboxNRESTyp.Table = Nothing + Me.cbboxNRESTyp.TableAlias = "" + Me.cbboxNRESTyp.Valuemember = Nothing + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Location = New System.Drawing.Point(6, 56) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(59, 13) + Me.Label6.TabIndex = 21 + Me.Label6.Text = "Einzahlung" + ' + 'cbboxnrbehandler + ' + Me.cbboxnrbehandler.Dataselection = Nothing + Me.cbboxnrbehandler.Displaymember = Nothing + Me.cbboxnrbehandler.Location = New System.Drawing.Point(72, 24) + Me.cbboxnrbehandler.Name = "cbboxnrbehandler" + Me.cbboxnrbehandler.Size = New System.Drawing.Size(216, 21) + Me.cbboxnrbehandler.TabIndex = 20 + Me.cbboxnrbehandler.Table = Nothing + Me.cbboxnrbehandler.TableAlias = "" + Me.cbboxnrbehandler.Valuemember = Nothing + ' + 'Label7 + ' + Me.Label7.AutoSize = True + Me.Label7.Location = New System.Drawing.Point(6, 28) + Me.Label7.Name = "Label7" + Me.Label7.Size = New System.Drawing.Size(55, 13) + Me.Label7.TabIndex = 19 + Me.Label7.Text = "Behandler" + ' + 'grpZusammenfassugn + ' + Me.grpZusammenfassugn.Controls.Add(Me.txtcTotal) + Me.grpZusammenfassugn.Controls.Add(Me.lblTotal) + Me.grpZusammenfassugn.Controls.Add(Me.txtcRabatt) + Me.grpZusammenfassugn.Controls.Add(Me.lblRabatt) + Me.grpZusammenfassugn.Controls.Add(Me.txtcVorauszahlungen) + Me.grpZusammenfassugn.Controls.Add(Me.lblVorauszahlungen) + Me.grpZusammenfassugn.Controls.Add(Me.txtcRatenzuschlat) + Me.grpZusammenfassugn.Controls.Add(Me.lblRatenzuschlag) + Me.grpZusammenfassugn.Controls.Add(Me.txtcBehandlungstotal) + Me.grpZusammenfassugn.Controls.Add(Me.lblBehandlungstotal) + Me.grpZusammenfassugn.Controls.Add(Me.txtcKVTotal) + Me.grpZusammenfassugn.Controls.Add(Me.Label2) + Me.grpZusammenfassugn.Location = New System.Drawing.Point(0, 364) + Me.grpZusammenfassugn.Name = "grpZusammenfassugn" + Me.grpZusammenfassugn.Size = New System.Drawing.Size(306, 141) + Me.grpZusammenfassugn.TabIndex = 11 + Me.grpZusammenfassugn.TabStop = False + Me.grpZusammenfassugn.Text = "Zusammenfassung" + ' + 'txtcTotal + ' + Me.txtcTotal.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtcTotal.Location = New System.Drawing.Point(169, 119) + Me.txtcTotal.Name = "txtcTotal" + Me.txtcTotal.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcTotal.Size = New System.Drawing.Size(92, 13) + Me.txtcTotal.TabIndex = 11 + Me.txtcTotal.Text = "0.00" + Me.txtcTotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblTotal + ' + Me.lblTotal.AutoSize = True + Me.lblTotal.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblTotal.Location = New System.Drawing.Point(7, 119) + Me.lblTotal.Name = "lblTotal" + Me.lblTotal.Size = New System.Drawing.Size(36, 13) + Me.lblTotal.TabIndex = 10 + Me.lblTotal.Text = "Total" + ' + 'txtcRabatt + ' + Me.txtcRabatt.Location = New System.Drawing.Point(176, 97) + Me.txtcRabatt.Name = "txtcRabatt" + Me.txtcRabatt.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcRabatt.Size = New System.Drawing.Size(85, 13) + Me.txtcRabatt.TabIndex = 9 + Me.txtcRabatt.Text = "0.00" + Me.txtcRabatt.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblRabatt + ' + Me.lblRabatt.AutoSize = True + Me.lblRabatt.Location = New System.Drawing.Point(7, 97) + Me.lblRabatt.Name = "lblRabatt" + Me.lblRabatt.Size = New System.Drawing.Size(53, 13) + Me.lblRabatt.TabIndex = 8 + Me.lblRabatt.Text = "./. Rabatt" + ' + 'txtcVorauszahlungen + ' + Me.txtcVorauszahlungen.Location = New System.Drawing.Point(176, 84) + Me.txtcVorauszahlungen.Name = "txtcVorauszahlungen" + Me.txtcVorauszahlungen.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcVorauszahlungen.Size = New System.Drawing.Size(85, 13) + Me.txtcVorauszahlungen.TabIndex = 7 + Me.txtcVorauszahlungen.Text = "0.00" + Me.txtcVorauszahlungen.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblVorauszahlungen + ' + Me.lblVorauszahlungen.AutoSize = True + Me.lblVorauszahlungen.Location = New System.Drawing.Point(7, 84) + Me.lblVorauszahlungen.Name = "lblVorauszahlungen" + Me.lblVorauszahlungen.Size = New System.Drawing.Size(103, 13) + Me.lblVorauszahlungen.TabIndex = 6 + Me.lblVorauszahlungen.Text = "./. Vorauszahlungen" + ' + 'txtcRatenzuschlat + ' + Me.txtcRatenzuschlat.Location = New System.Drawing.Point(176, 71) + Me.txtcRatenzuschlat.Name = "txtcRatenzuschlat" + Me.txtcRatenzuschlat.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcRatenzuschlat.Size = New System.Drawing.Size(85, 13) + Me.txtcRatenzuschlat.TabIndex = 5 + Me.txtcRatenzuschlat.Text = "0.00" + Me.txtcRatenzuschlat.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblRatenzuschlag + ' + Me.lblRatenzuschlag.AutoSize = True + Me.lblRatenzuschlag.Location = New System.Drawing.Point(7, 71) + Me.lblRatenzuschlag.Name = "lblRatenzuschlag" + Me.lblRatenzuschlag.Size = New System.Drawing.Size(87, 13) + Me.lblRatenzuschlag.TabIndex = 4 + Me.lblRatenzuschlag.Text = "+ Ratenzuschlag" + ' + 'txtcBehandlungstotal + ' + Me.txtcBehandlungstotal.Location = New System.Drawing.Point(176, 58) + Me.txtcBehandlungstotal.Name = "txtcBehandlungstotal" + Me.txtcBehandlungstotal.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcBehandlungstotal.Size = New System.Drawing.Size(85, 13) + Me.txtcBehandlungstotal.TabIndex = 3 + Me.txtcBehandlungstotal.Text = "0.00" + Me.txtcBehandlungstotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'lblBehandlungstotal + ' + Me.lblBehandlungstotal.AutoSize = True + Me.lblBehandlungstotal.Location = New System.Drawing.Point(6, 58) + Me.lblBehandlungstotal.Name = "lblBehandlungstotal" + Me.lblBehandlungstotal.Size = New System.Drawing.Size(89, 13) + Me.lblBehandlungstotal.TabIndex = 2 + Me.lblBehandlungstotal.Text = "Behandlungstotal" + ' + 'txtcKVTotal + ' + Me.txtcKVTotal.Location = New System.Drawing.Point(176, 30) + Me.txtcKVTotal.Name = "txtcKVTotal" + Me.txtcKVTotal.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtcKVTotal.Size = New System.Drawing.Size(85, 13) + Me.txtcKVTotal.TabIndex = 1 + Me.txtcKVTotal.Text = "0.00" + Me.txtcKVTotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(5, 30) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(55, 13) + Me.Label2.TabIndex = 0 + Me.Label2.Text = "KV-Betrag" + ' + 'GrpGaramt + ' + Me.GrpGaramt.Controls.Add(Me.lblFallNummer) + Me.GrpGaramt.Controls.Add(Me.cbboxNrAnsprechpartner) + Me.GrpGaramt.Controls.Add(Me.lblAnsprechpartner) + Me.GrpGaramt.Controls.Add(Me.txtFallnummer) + Me.GrpGaramt.Controls.Add(Me.cbboxNrGarant) + Me.GrpGaramt.Controls.Add(Me.lblgarant) + Me.GrpGaramt.Controls.Add(Me.rbPrivatPersonen) + Me.GrpGaramt.Controls.Add(Me.rbkk) + Me.GrpGaramt.Controls.Add(Me.rbdiverseFirmen) + Me.GrpGaramt.Controls.Add(Me.rbiv) + Me.GrpGaramt.Controls.Add(Me.rbfs) + Me.GrpGaramt.Controls.Add(Me.rbversicherung) + Me.GrpGaramt.Location = New System.Drawing.Point(312, 283) + Me.GrpGaramt.Name = "GrpGaramt" + Me.GrpGaramt.Size = New System.Drawing.Size(299, 222) + Me.GrpGaramt.TabIndex = 14 + Me.GrpGaramt.TabStop = False + Me.GrpGaramt.Text = "Garant" + ' + 'lblFallNummer + ' + Me.lblFallNummer.AutoSize = True + Me.lblFallNummer.Location = New System.Drawing.Point(8, 162) + Me.lblFallNummer.Name = "lblFallNummer" + Me.lblFallNummer.Size = New System.Drawing.Size(62, 13) + Me.lblFallNummer.TabIndex = 32 + Me.lblFallNummer.Text = "FallNummer" + ' + 'cbboxNrAnsprechpartner + ' + Me.cbboxNrAnsprechpartner.Dataselection = Nothing + Me.cbboxNrAnsprechpartner.Displaymember = Nothing + Me.cbboxNrAnsprechpartner.Location = New System.Drawing.Point(94, 131) + Me.cbboxNrAnsprechpartner.Name = "cbboxNrAnsprechpartner" + Me.cbboxNrAnsprechpartner.Size = New System.Drawing.Size(196, 21) + Me.cbboxNrAnsprechpartner.TabIndex = 31 + Me.cbboxNrAnsprechpartner.Table = Nothing + Me.cbboxNrAnsprechpartner.TableAlias = "" + Me.cbboxNrAnsprechpartner.Valuemember = Nothing + ' + 'lblAnsprechpartner + ' + Me.lblAnsprechpartner.AutoSize = True + Me.lblAnsprechpartner.Location = New System.Drawing.Point(8, 135) + Me.lblAnsprechpartner.Name = "lblAnsprechpartner" + Me.lblAnsprechpartner.Size = New System.Drawing.Size(85, 13) + Me.lblAnsprechpartner.TabIndex = 30 + Me.lblAnsprechpartner.Text = "Ansprechpartner" + ' + 'txtFallnummer + ' + Me.txtFallnummer.Location = New System.Drawing.Point(94, 159) + Me.txtFallnummer.Name = "txtFallnummer" + Me.txtFallnummer.Size = New System.Drawing.Size(196, 20) + Me.txtFallnummer.TabIndex = 29 + ' + 'cbboxNrGarant + ' + Me.cbboxNrGarant.Dataselection = Nothing + Me.cbboxNrGarant.Displaymember = Nothing + Me.cbboxNrGarant.Location = New System.Drawing.Point(94, 103) + Me.cbboxNrGarant.Name = "cbboxNrGarant" + Me.cbboxNrGarant.Size = New System.Drawing.Size(196, 21) + Me.cbboxNrGarant.TabIndex = 28 + Me.cbboxNrGarant.Table = Nothing + Me.cbboxNrGarant.TableAlias = "" + Me.cbboxNrGarant.Valuemember = Nothing + ' + 'lblgarant + ' + Me.lblgarant.AutoSize = True + Me.lblgarant.Location = New System.Drawing.Point(8, 107) + Me.lblgarant.Name = "lblgarant" + Me.lblgarant.Size = New System.Drawing.Size(39, 13) + Me.lblgarant.TabIndex = 27 + Me.lblgarant.Text = "Garant" + ' + 'rbPrivatPersonen + ' + Me.rbPrivatPersonen.AutoSize = True + Me.rbPrivatPersonen.Location = New System.Drawing.Point(135, 70) + Me.rbPrivatPersonen.Name = "rbPrivatPersonen" + Me.rbPrivatPersonen.Size = New System.Drawing.Size(100, 17) + Me.rbPrivatPersonen.TabIndex = 5 + Me.rbPrivatPersonen.TabStop = True + Me.rbPrivatPersonen.Text = "Privat-Personen" + Me.rbPrivatPersonen.UseVisualStyleBackColor = True + ' + 'rbkk + ' + Me.rbkk.AutoSize = True + Me.rbkk.Location = New System.Drawing.Point(11, 71) + Me.rbkk.Name = "rbkk" + Me.rbkk.Size = New System.Drawing.Size(93, 17) + Me.rbkk.TabIndex = 4 + Me.rbkk.TabStop = True + Me.rbkk.Text = "Krankenkasse" + Me.rbkk.UseVisualStyleBackColor = True + ' + 'rbdiverseFirmen + ' + Me.rbdiverseFirmen.AutoSize = True + Me.rbdiverseFirmen.Location = New System.Drawing.Point(135, 47) + Me.rbdiverseFirmen.Name = "rbdiverseFirmen" + Me.rbdiverseFirmen.Size = New System.Drawing.Size(95, 17) + Me.rbdiverseFirmen.TabIndex = 3 + Me.rbdiverseFirmen.TabStop = True + Me.rbdiverseFirmen.Text = "Diverse Firmen" + Me.rbdiverseFirmen.UseVisualStyleBackColor = True + ' + 'rbiv + ' + Me.rbiv.AutoSize = True + Me.rbiv.Location = New System.Drawing.Point(11, 48) + Me.rbiv.Name = "rbiv" + Me.rbiv.Size = New System.Drawing.Size(64, 17) + Me.rbiv.TabIndex = 2 + Me.rbiv.TabStop = True + Me.rbiv.Text = "IV-Stelle" + Me.rbiv.UseVisualStyleBackColor = True + ' + 'rbfs + ' + Me.rbfs.AutoSize = True + Me.rbfs.Location = New System.Drawing.Point(135, 25) + Me.rbfs.Name = "rbfs" + Me.rbfs.Size = New System.Drawing.Size(83, 17) + Me.rbfs.TabIndex = 1 + Me.rbfs.TabStop = True + Me.rbfs.Text = "Fürsorgeamt" + Me.rbfs.UseVisualStyleBackColor = True + ' + 'rbversicherung + ' + Me.rbversicherung.AutoSize = True + Me.rbversicherung.Location = New System.Drawing.Point(11, 26) + Me.rbversicherung.Name = "rbversicherung" + Me.rbversicherung.Size = New System.Drawing.Size(87, 17) + Me.rbversicherung.TabIndex = 0 + Me.rbversicherung.TabStop = True + Me.rbversicherung.Text = "Versicherung" + Me.rbversicherung.UseVisualStyleBackColor = True + ' + 'GrpRaten + ' + Me.GrpRaten.Controls.Add(Me.txtAnzahlraten) + Me.GrpRaten.Controls.Add(Me.mtxtRatenzuschlag) + Me.GrpRaten.Controls.Add(Me.xxtxtAnzahlraten) + Me.GrpRaten.Controls.Add(Me.chkUngeraterateamstart) + Me.GrpRaten.Controls.Add(Me.Label4) + Me.GrpRaten.Controls.Add(Me.Label3) + Me.GrpRaten.Controls.Add(Me.lblZuschlagRaten) + Me.GrpRaten.Controls.Add(Me.lblAnzahlRaten) + Me.GrpRaten.Location = New System.Drawing.Point(3, 282) + Me.GrpRaten.Name = "GrpRaten" + Me.GrpRaten.Size = New System.Drawing.Size(303, 76) + Me.GrpRaten.TabIndex = 12 + Me.GrpRaten.TabStop = False + Me.GrpRaten.Text = "Raten" + ' + 'txtAnzahlraten + ' + Me.txtAnzahlraten.BackGroundColor = System.Drawing.SystemColors.Window + Me.txtAnzahlraten.BeforeTouchSize = New System.Drawing.Size(61, 20) + Me.txtAnzahlraten.Cursor = System.Windows.Forms.Cursors.IBeam + Me.txtAnzahlraten.DoubleValue = 0R + Me.txtAnzahlraten.Location = New System.Drawing.Point(93, 19) + Me.txtAnzahlraten.Metrocolor = System.Drawing.Color.FromArgb(CType(CType(209, Byte), Integer), CType(CType(211, Byte), Integer), CType(CType(212, Byte), Integer)) + Me.txtAnzahlraten.Name = "txtAnzahlraten" + Me.txtAnzahlraten.NullString = "" + Me.txtAnzahlraten.NumberDecimalDigits = 0 + Me.txtAnzahlraten.Size = New System.Drawing.Size(61, 20) + Me.txtAnzahlraten.Style = Syncfusion.Windows.Forms.Tools.TextBoxExt.theme.[Default] + Me.txtAnzahlraten.TabIndex = 32 + Me.txtAnzahlraten.Text = "0" + Me.txtAnzahlraten.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'mtxtRatenzuschlag + ' + Me.mtxtRatenzuschlag.BackGroundColor = System.Drawing.SystemColors.Window + Me.mtxtRatenzuschlag.BeforeTouchSize = New System.Drawing.Size(61, 20) + Me.mtxtRatenzuschlag.Cursor = System.Windows.Forms.Cursors.IBeam + Me.mtxtRatenzuschlag.DoubleValue = 1.0R + Me.mtxtRatenzuschlag.Location = New System.Drawing.Point(93, 51) + Me.mtxtRatenzuschlag.Metrocolor = System.Drawing.Color.FromArgb(CType(CType(209, Byte), Integer), CType(CType(211, Byte), Integer), CType(CType(212, Byte), Integer)) + Me.mtxtRatenzuschlag.Name = "mtxtRatenzuschlag" + Me.mtxtRatenzuschlag.NullString = "" + Me.mtxtRatenzuschlag.Size = New System.Drawing.Size(61, 20) + Me.mtxtRatenzuschlag.Style = Syncfusion.Windows.Forms.Tools.TextBoxExt.theme.[Default] + Me.mtxtRatenzuschlag.TabIndex = 31 + Me.mtxtRatenzuschlag.Text = "1.00" + Me.mtxtRatenzuschlag.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'xxtxtAnzahlraten + ' + Me.xxtxtAnzahlraten.Location = New System.Drawing.Point(173, 51) + Me.xxtxtAnzahlraten.Name = "xxtxtAnzahlraten" + Me.xxtxtAnzahlraten.Size = New System.Drawing.Size(61, 20) + Me.xxtxtAnzahlraten.TabIndex = 8 + Me.xxtxtAnzahlraten.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'chkUngeraterateamstart + ' + Me.chkUngeraterateamstart.AutoSize = True + Me.chkUngeraterateamstart.Location = New System.Drawing.Point(282, 33) + Me.chkUngeraterateamstart.Name = "chkUngeraterateamstart" + Me.chkUngeraterateamstart.Size = New System.Drawing.Size(15, 14) + Me.chkUngeraterateamstart.TabIndex = 30 + Me.chkUngeraterateamstart.UseVisualStyleBackColor = True + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(173, 33) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(38, 13) + Me.Label4.TabIndex = 29 + Me.Label4.Text = "Betrag" + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(173, 20) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(129, 13) + Me.Label3.TabIndex = 28 + Me.Label3.Text = "Erste Rate mit ungeradem" + ' + 'lblZuschlagRaten + ' + Me.lblZuschlagRaten.AutoSize = True + Me.lblZuschlagRaten.Location = New System.Drawing.Point(9, 51) + Me.lblZuschlagRaten.Name = "lblZuschlagRaten" + Me.lblZuschlagRaten.Size = New System.Drawing.Size(78, 13) + Me.lblZuschlagRaten.TabIndex = 26 + Me.lblZuschlagRaten.Text = "Ratenzuschlag" + ' + 'lblAnzahlRaten + ' + Me.lblAnzahlRaten.AutoSize = True + Me.lblAnzahlRaten.Location = New System.Drawing.Point(9, 23) + Me.lblAnzahlRaten.Name = "lblAnzahlRaten" + Me.lblAnzahlRaten.Size = New System.Drawing.Size(71, 13) + Me.lblAnzahlRaten.TabIndex = 23 + Me.lblAnzahlRaten.Text = "Anzahl Raten" + ' + 'grpBehandlungsdaten + ' + Me.grpBehandlungsdaten.Controls.Add(Me.DDTRGStellung) + Me.grpBehandlungsdaten.Controls.Add(Me.DDTBehandlungsende) + Me.grpBehandlungsdaten.Controls.Add(Me.DDTBehandlungsbeginn) + Me.grpBehandlungsdaten.Controls.Add(Me.btnAbschliessen) + Me.grpBehandlungsdaten.Controls.Add(Me.btnZuruecksetzen) + Me.grpBehandlungsdaten.Controls.Add(Me.lblRGStellung) + Me.grpBehandlungsdaten.Controls.Add(Me.Label15) + Me.grpBehandlungsdaten.Controls.Add(Me.lblBegin) + Me.grpBehandlungsdaten.Location = New System.Drawing.Point(3, 124) + Me.grpBehandlungsdaten.Name = "grpBehandlungsdaten" + Me.grpBehandlungsdaten.Size = New System.Drawing.Size(303, 151) + Me.grpBehandlungsdaten.TabIndex = 10 + Me.grpBehandlungsdaten.TabStop = False + Me.grpBehandlungsdaten.Text = "Behandlung" + ' + 'DDTRGStellung + ' + ' + ' + ' + Me.DDTRGStellung.BackgroundStyle.Class = "DateTimeInputBackground" + Me.DDTRGStellung.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTRGStellung.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.DDTRGStellung.ButtonDropDown.Visible = True + Me.DDTRGStellung.IsPopupCalendarOpen = False + Me.DDTRGStellung.Location = New System.Drawing.Point(129, 70) + ' + ' + ' + ' + ' + ' + Me.DDTRGStellung.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTRGStellung.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.DDTRGStellung.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.DDTRGStellung.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTRGStellung.MonthCalendar.DisplayMonth = New Date(2015, 5, 1, 0, 0, 0, 0) + Me.DDTRGStellung.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + ' + ' + ' + Me.DDTRGStellung.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.DDTRGStellung.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTRGStellung.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.DDTRGStellung.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTRGStellung.MonthCalendar.TodayButtonVisible = True + Me.DDTRGStellung.Name = "DDTRGStellung" + Me.DDTRGStellung.Size = New System.Drawing.Size(162, 20) + Me.DDTRGStellung.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.DDTRGStellung.TabIndex = 212 + ' + 'DDTBehandlungsende + ' + ' + ' + ' + Me.DDTBehandlungsende.BackgroundStyle.Class = "DateTimeInputBackground" + Me.DDTBehandlungsende.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsende.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.DDTBehandlungsende.ButtonDropDown.Visible = True + Me.DDTBehandlungsende.IsPopupCalendarOpen = False + Me.DDTBehandlungsende.Location = New System.Drawing.Point(129, 43) + ' + ' + ' + ' + ' + ' + Me.DDTBehandlungsende.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsende.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.DDTBehandlungsende.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.DDTBehandlungsende.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsende.MonthCalendar.DisplayMonth = New Date(2015, 5, 1, 0, 0, 0, 0) + Me.DDTBehandlungsende.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + ' + ' + ' + Me.DDTBehandlungsende.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.DDTBehandlungsende.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTBehandlungsende.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.DDTBehandlungsende.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsende.MonthCalendar.TodayButtonVisible = True + Me.DDTBehandlungsende.Name = "DDTBehandlungsende" + Me.DDTBehandlungsende.Size = New System.Drawing.Size(162, 20) + Me.DDTBehandlungsende.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.DDTBehandlungsende.TabIndex = 211 + ' + 'DDTBehandlungsbeginn + ' + ' + ' + ' + Me.DDTBehandlungsbeginn.BackgroundStyle.Class = "DateTimeInputBackground" + Me.DDTBehandlungsbeginn.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsbeginn.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.DDTBehandlungsbeginn.ButtonDropDown.Visible = True + Me.DDTBehandlungsbeginn.IsPopupCalendarOpen = False + Me.DDTBehandlungsbeginn.Location = New System.Drawing.Point(129, 18) + ' + ' + ' + ' + ' + ' + Me.DDTBehandlungsbeginn.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsbeginn.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.DDTBehandlungsbeginn.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.DDTBehandlungsbeginn.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsbeginn.MonthCalendar.DisplayMonth = New Date(2015, 5, 1, 0, 0, 0, 0) + Me.DDTBehandlungsbeginn.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + ' + ' + ' + Me.DDTBehandlungsbeginn.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.DDTBehandlungsbeginn.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.DDTBehandlungsbeginn.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.DDTBehandlungsbeginn.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DDTBehandlungsbeginn.MonthCalendar.TodayButtonVisible = True + Me.DDTBehandlungsbeginn.Name = "DDTBehandlungsbeginn" + Me.DDTBehandlungsbeginn.Size = New System.Drawing.Size(162, 20) + Me.DDTBehandlungsbeginn.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.DDTBehandlungsbeginn.TabIndex = 39 + ' + 'btnAbschliessen + ' + Me.btnAbschliessen.Location = New System.Drawing.Point(8, 100) + Me.btnAbschliessen.Name = "btnAbschliessen" + Me.btnAbschliessen.Size = New System.Drawing.Size(124, 23) + Me.btnAbschliessen.TabIndex = 209 + Me.btnAbschliessen.Text = "Abschliessen" + Me.btnAbschliessen.UseVisualStyleBackColor = True + ' + 'btnZuruecksetzen + ' + Me.btnZuruecksetzen.Location = New System.Drawing.Point(173, 100) + Me.btnZuruecksetzen.Name = "btnZuruecksetzen" + Me.btnZuruecksetzen.Size = New System.Drawing.Size(124, 23) + Me.btnZuruecksetzen.TabIndex = 208 + Me.btnZuruecksetzen.Text = "Zurücksetzen" + Me.btnZuruecksetzen.UseVisualStyleBackColor = True + ' + 'lblRGStellung + ' + Me.lblRGStellung.AutoSize = True + Me.lblRGStellung.BackColor = System.Drawing.Color.Transparent + Me.lblRGStellung.Location = New System.Drawing.Point(9, 76) + Me.lblRGStellung.Name = "lblRGStellung" + Me.lblRGStellung.Size = New System.Drawing.Size(108, 13) + Me.lblRGStellung.TabIndex = 207 + Me.lblRGStellung.Text = "RG-Stellung nicht vor" + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.BackColor = System.Drawing.Color.Transparent + Me.Label15.Location = New System.Drawing.Point(9, 50) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(32, 13) + Me.Label15.TabIndex = 205 + Me.Label15.Text = "Ende" + ' + 'lblBegin + ' + Me.lblBegin.AutoSize = True + Me.lblBegin.BackColor = System.Drawing.Color.Transparent + Me.lblBegin.Location = New System.Drawing.Point(9, 26) + Me.lblBegin.Name = "lblBegin" + Me.lblBegin.Size = New System.Drawing.Size(40, 13) + Me.lblBegin.TabIndex = 204 + Me.lblBegin.Text = "Beginn" + ' + 'grpAbrechnung + ' + Me.grpAbrechnung.Controls.Add(Me.mtxtRabatt) + Me.grpAbrechnung.Controls.Add(Me.mtxtTaxpunktwert) + Me.grpAbrechnung.Controls.Add(Me.lblRabattwert) + Me.grpAbrechnung.Controls.Add(Me.lblTaxpunkte) + Me.grpAbrechnung.Controls.Add(Me.lblFrankenwert) + Me.grpAbrechnung.Controls.Add(Me.chkMitdatum) + Me.grpAbrechnung.Controls.Add(Me.chkAndrucken_Taxpunkte) + Me.grpAbrechnung.Controls.Add(Me.chkRabattGesamt) + Me.grpAbrechnung.Controls.Add(Me.cbboxNrtaxpunkt) + Me.grpAbrechnung.Controls.Add(Me.cbboxNrAnsatz) + Me.grpAbrechnung.Controls.Add(Me.lblAnsatz) + Me.grpAbrechnung.Controls.Add(Me.cbboxNrAbrechnungstyp) + Me.grpAbrechnung.Controls.Add(Me.lblAbrechnungstyp) + Me.grpAbrechnung.Controls.Add(Me.cbboxNRRGtyp) + Me.grpAbrechnung.Controls.Add(Me.lblRechnungstyp) + Me.grpAbrechnung.Location = New System.Drawing.Point(312, 31) + Me.grpAbrechnung.Name = "grpAbrechnung" + Me.grpAbrechnung.Size = New System.Drawing.Size(299, 244) + Me.grpAbrechnung.TabIndex = 13 + Me.grpAbrechnung.TabStop = False + Me.grpAbrechnung.Text = "Abrechnung" + ' + 'mtxtRabatt + ' + Me.mtxtRabatt.BackGroundColor = System.Drawing.SystemColors.Window + Me.mtxtRabatt.BeforeTouchSize = New System.Drawing.Size(61, 20) + Me.mtxtRabatt.Cursor = System.Windows.Forms.Cursors.IBeam + Me.mtxtRabatt.DoubleValue = 1.0R + Me.mtxtRabatt.Location = New System.Drawing.Point(190, 163) + Me.mtxtRabatt.Metrocolor = System.Drawing.Color.FromArgb(CType(CType(209, Byte), Integer), CType(CType(211, Byte), Integer), CType(CType(212, Byte), Integer)) + Me.mtxtRabatt.Name = "mtxtRabatt" + Me.mtxtRabatt.NullString = "" + Me.mtxtRabatt.Size = New System.Drawing.Size(100, 20) + Me.mtxtRabatt.Style = Syncfusion.Windows.Forms.Tools.TextBoxExt.theme.[Default] + Me.mtxtRabatt.TabIndex = 40 + Me.mtxtRabatt.Text = "1.00" + Me.mtxtRabatt.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'mtxtTaxpunktwert + ' + Me.mtxtTaxpunktwert.BackGroundColor = System.Drawing.SystemColors.Window + Me.mtxtTaxpunktwert.BeforeTouchSize = New System.Drawing.Size(61, 20) + Me.mtxtTaxpunktwert.Cursor = System.Windows.Forms.Cursors.IBeam + Me.mtxtTaxpunktwert.DoubleValue = 1.0R + Me.mtxtTaxpunktwert.Location = New System.Drawing.Point(190, 109) + Me.mtxtTaxpunktwert.Metrocolor = System.Drawing.Color.FromArgb(CType(CType(209, Byte), Integer), CType(CType(211, Byte), Integer), CType(CType(212, Byte), Integer)) + Me.mtxtTaxpunktwert.Name = "mtxtTaxpunktwert" + Me.mtxtTaxpunktwert.NullString = "" + Me.mtxtTaxpunktwert.Size = New System.Drawing.Size(100, 20) + Me.mtxtTaxpunktwert.Style = Syncfusion.Windows.Forms.Tools.TextBoxExt.theme.[Default] + Me.mtxtTaxpunktwert.TabIndex = 39 + Me.mtxtTaxpunktwert.Text = "1.00" + Me.mtxtTaxpunktwert.TextAlign = System.Windows.Forms.HorizontalAlignment.Right + ' + 'lblRabattwert + ' + Me.lblRabattwert.AutoSize = True + Me.lblRabattwert.Location = New System.Drawing.Point(8, 167) + Me.lblRabattwert.Name = "lblRabattwert" + Me.lblRabattwert.Size = New System.Drawing.Size(61, 13) + Me.lblRabattwert.TabIndex = 38 + Me.lblRabattwert.Text = "Rabatt in %" + ' + 'lblTaxpunkte + ' + Me.lblTaxpunkte.AutoSize = True + Me.lblTaxpunkte.Location = New System.Drawing.Point(8, 141) + Me.lblTaxpunkte.Name = "lblTaxpunkte" + Me.lblTaxpunkte.Size = New System.Drawing.Size(58, 13) + Me.lblTaxpunkte.TabIndex = 37 + Me.lblTaxpunkte.Text = "Taxpunkte" + ' + 'lblFrankenwert + ' + Me.lblFrankenwert.AutoSize = True + Me.lblFrankenwert.Location = New System.Drawing.Point(8, 112) + Me.lblFrankenwert.Name = "lblFrankenwert" + Me.lblFrankenwert.Size = New System.Drawing.Size(66, 13) + Me.lblFrankenwert.TabIndex = 36 + Me.lblFrankenwert.Text = "Frankenwert" + ' + 'chkMitdatum + ' + Me.chkMitdatum.AutoSize = True + Me.chkMitdatum.Location = New System.Drawing.Point(6, 216) + Me.chkMitdatum.Name = "chkMitdatum" + Me.chkMitdatum.Size = New System.Drawing.Size(128, 17) + Me.chkMitdatum.TabIndex = 35 + Me.chkMitdatum.Text = "Leistungen mit Datum" + Me.chkMitdatum.UseVisualStyleBackColor = True + ' + 'chkAndrucken_Taxpunkte + ' + Me.chkAndrucken_Taxpunkte.AutoSize = True + Me.chkAndrucken_Taxpunkte.Location = New System.Drawing.Point(179, 193) + Me.chkAndrucken_Taxpunkte.Name = "chkAndrucken_Taxpunkte" + Me.chkAndrucken_Taxpunkte.Size = New System.Drawing.Size(111, 17) + Me.chkAndrucken_Taxpunkte.TabIndex = 34 + Me.chkAndrucken_Taxpunkte.Text = "TP/Fr. andrucken" + Me.chkAndrucken_Taxpunkte.UseVisualStyleBackColor = True + ' + 'chkRabattGesamt + ' + Me.chkRabattGesamt.AutoSize = True + Me.chkRabattGesamt.Location = New System.Drawing.Point(6, 193) + Me.chkRabattGesamt.Name = "chkRabattGesamt" + Me.chkRabattGesamt.Size = New System.Drawing.Size(145, 17) + Me.chkRabattGesamt.TabIndex = 33 + Me.chkRabattGesamt.Text = "Rabatt auf Gesamtbetrag" + Me.chkRabattGesamt.UseVisualStyleBackColor = True + ' + 'cbboxNrtaxpunkt + ' + Me.cbboxNrtaxpunkt.Dataselection = Nothing + Me.cbboxNrtaxpunkt.Displaymember = Nothing + Me.cbboxNrtaxpunkt.Location = New System.Drawing.Point(97, 138) + Me.cbboxNrtaxpunkt.Name = "cbboxNrtaxpunkt" + Me.cbboxNrtaxpunkt.Size = New System.Drawing.Size(196, 21) + Me.cbboxNrtaxpunkt.TabIndex = 30 + Me.cbboxNrtaxpunkt.Table = Nothing + Me.cbboxNrtaxpunkt.TableAlias = "" + Me.cbboxNrtaxpunkt.Valuemember = Nothing + ' + 'cbboxNrAnsatz + ' + Me.cbboxNrAnsatz.Dataselection = Nothing + Me.cbboxNrAnsatz.Displaymember = Nothing + Me.cbboxNrAnsatz.Location = New System.Drawing.Point(94, 81) + Me.cbboxNrAnsatz.Name = "cbboxNrAnsatz" + Me.cbboxNrAnsatz.Size = New System.Drawing.Size(196, 21) + Me.cbboxNrAnsatz.TabIndex = 28 + Me.cbboxNrAnsatz.Table = Nothing + Me.cbboxNrAnsatz.TableAlias = "" + Me.cbboxNrAnsatz.Valuemember = Nothing + ' + 'lblAnsatz + ' + Me.lblAnsatz.AutoSize = True + Me.lblAnsatz.Location = New System.Drawing.Point(8, 85) + Me.lblAnsatz.Name = "lblAnsatz" + Me.lblAnsatz.Size = New System.Drawing.Size(39, 13) + Me.lblAnsatz.TabIndex = 27 + Me.lblAnsatz.Text = "Ansatz" + ' + 'cbboxNrAbrechnungstyp + ' + Me.cbboxNrAbrechnungstyp.Dataselection = Nothing + Me.cbboxNrAbrechnungstyp.Displaymember = Nothing + Me.cbboxNrAbrechnungstyp.Location = New System.Drawing.Point(94, 53) + Me.cbboxNrAbrechnungstyp.Name = "cbboxNrAbrechnungstyp" + Me.cbboxNrAbrechnungstyp.Size = New System.Drawing.Size(196, 21) + Me.cbboxNrAbrechnungstyp.TabIndex = 26 + Me.cbboxNrAbrechnungstyp.Table = Nothing + Me.cbboxNrAbrechnungstyp.TableAlias = "" + Me.cbboxNrAbrechnungstyp.Valuemember = Nothing + ' + 'lblAbrechnungstyp + ' + Me.lblAbrechnungstyp.AutoSize = True + Me.lblAbrechnungstyp.Location = New System.Drawing.Point(8, 57) + Me.lblAbrechnungstyp.Name = "lblAbrechnungstyp" + Me.lblAbrechnungstyp.Size = New System.Drawing.Size(84, 13) + Me.lblAbrechnungstyp.TabIndex = 25 + Me.lblAbrechnungstyp.Text = "Abrechnungstyp" + ' + 'cbboxNRRGtyp + ' + Me.cbboxNRRGtyp.Dataselection = Nothing + Me.cbboxNRRGtyp.Displaymember = Nothing + Me.cbboxNRRGtyp.Location = New System.Drawing.Point(94, 25) + Me.cbboxNRRGtyp.Name = "cbboxNRRGtyp" + Me.cbboxNRRGtyp.Size = New System.Drawing.Size(196, 21) + Me.cbboxNRRGtyp.TabIndex = 24 + Me.cbboxNRRGtyp.Table = Nothing + Me.cbboxNRRGtyp.TableAlias = "" + Me.cbboxNRRGtyp.Valuemember = Nothing + ' + 'lblRechnungstyp + ' + Me.lblRechnungstyp.AutoSize = True + Me.lblRechnungstyp.Location = New System.Drawing.Point(8, 29) + Me.lblRechnungstyp.Name = "lblRechnungstyp" + Me.lblRechnungstyp.Size = New System.Drawing.Size(76, 13) + Me.lblRechnungstyp.TabIndex = 23 + Me.lblRechnungstyp.Text = "Rechnungstyp" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnSave, Me.ToolStripDropDownButton1}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(615, 25) + Me.ToolStrip1.TabIndex = 15 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnSave + ' + Me.tsbtnSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnSave.Image = CType(resources.GetObject("tsbtnSave.Image"), System.Drawing.Image) + Me.tsbtnSave.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnSave.Name = "tsbtnSave" + Me.tsbtnSave.Size = New System.Drawing.Size(23, 22) + Me.tsbtnSave.Text = "Speichern" + ' + 'ToolStripDropDownButton1 + ' + Me.ToolStripDropDownButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripDropDownButton1.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.VorschaRechnungToolStripMenuItem, Me.DesignRechnungToolStripMenuItem}) + Me.ToolStripDropDownButton1.Image = CType(resources.GetObject("ToolStripDropDownButton1.Image"), System.Drawing.Image) + Me.ToolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripDropDownButton1.Name = "ToolStripDropDownButton1" + Me.ToolStripDropDownButton1.Size = New System.Drawing.Size(29, 22) + Me.ToolStripDropDownButton1.Text = "ToolStripDropDownButton1" + ' + 'VorschaRechnungToolStripMenuItem + ' + Me.VorschaRechnungToolStripMenuItem.Name = "VorschaRechnungToolStripMenuItem" + Me.VorschaRechnungToolStripMenuItem.Size = New System.Drawing.Size(172, 22) + Me.VorschaRechnungToolStripMenuItem.Text = "Vorscha Rechnung" + ' + 'DesignRechnungToolStripMenuItem + ' + Me.DesignRechnungToolStripMenuItem.Name = "DesignRechnungToolStripMenuItem" + Me.DesignRechnungToolStripMenuItem.Size = New System.Drawing.Size(172, 22) + Me.DesignRechnungToolStripMenuItem.Text = "Design Rechnung" + ' + 'GrpRechnungstext + ' + Me.GrpRechnungstext.Controls.Add(Me.cbboxrgtext) + Me.GrpRechnungstext.Controls.Add(Me.txtRechnungsbemerkung) + Me.GrpRechnungstext.Location = New System.Drawing.Point(3, 511) + Me.GrpRechnungstext.Name = "GrpRechnungstext" + Me.GrpRechnungstext.Size = New System.Drawing.Size(608, 141) + Me.GrpRechnungstext.TabIndex = 16 + Me.GrpRechnungstext.TabStop = False + Me.GrpRechnungstext.Text = "Rechnungstext" + ' + 'cbboxrgtext + ' + Me.cbboxrgtext.Dataselection = Nothing + Me.cbboxrgtext.Displaymember = Nothing + Me.cbboxrgtext.Location = New System.Drawing.Point(5, 20) + Me.cbboxrgtext.Name = "cbboxrgtext" + Me.cbboxrgtext.Size = New System.Drawing.Size(600, 21) + Me.cbboxrgtext.TabIndex = 21 + Me.cbboxrgtext.Table = Nothing + Me.cbboxrgtext.TableAlias = "" + Me.cbboxrgtext.Valuemember = Nothing + ' + 'txtRechnungsbemerkung + ' + Me.txtRechnungsbemerkung.Dock = System.Windows.Forms.DockStyle.Bottom + Me.txtRechnungsbemerkung.Location = New System.Drawing.Point(3, 47) + Me.txtRechnungsbemerkung.Multiline = True + Me.txtRechnungsbemerkung.Name = "txtRechnungsbemerkung" + Me.txtRechnungsbemerkung.Size = New System.Drawing.Size(602, 91) + Me.txtRechnungsbemerkung.TabIndex = 17 + ' + 'Benhandungdetail + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.GrpRechnungstext) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.GrpPatient) + Me.Controls.Add(Me.grpZusammenfassugn) + Me.Controls.Add(Me.GrpGaramt) + Me.Controls.Add(Me.GrpRaten) + Me.Controls.Add(Me.grpBehandlungsdaten) + Me.Controls.Add(Me.grpAbrechnung) + Me.Name = "Benhandungdetail" + Me.Size = New System.Drawing.Size(615, 695) + Me.GrpPatient.ResumeLayout(False) + Me.GrpPatient.PerformLayout() + Me.grpZusammenfassugn.ResumeLayout(False) + Me.grpZusammenfassugn.PerformLayout() + Me.GrpGaramt.ResumeLayout(False) + Me.GrpGaramt.PerformLayout() + Me.GrpRaten.ResumeLayout(False) + Me.GrpRaten.PerformLayout() + CType(Me.txtAnzahlraten, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.mtxtRatenzuschlag, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.xxtxtAnzahlraten, System.ComponentModel.ISupportInitialize).EndInit() + Me.grpBehandlungsdaten.ResumeLayout(False) + Me.grpBehandlungsdaten.PerformLayout() + CType(Me.DDTRGStellung, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DDTBehandlungsende, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DDTBehandlungsbeginn, System.ComponentModel.ISupportInitialize).EndInit() + Me.grpAbrechnung.ResumeLayout(False) + Me.grpAbrechnung.PerformLayout() + CType(Me.mtxtRabatt, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.mtxtTaxpunktwert, System.ComponentModel.ISupportInitialize).EndInit() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.GrpRechnungstext.ResumeLayout(False) + Me.GrpRechnungstext.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents GrpPatient As System.Windows.Forms.GroupBox + Friend WithEvents cbboxNRESTyp As DPM2016.MyCombobox + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents cbboxnrbehandler As DPM2016.MyCombobox + Friend WithEvents Label7 As System.Windows.Forms.Label + Friend WithEvents grpZusammenfassugn As System.Windows.Forms.GroupBox + Friend WithEvents txtcTotal As System.Windows.Forms.Label + Friend WithEvents lblTotal As System.Windows.Forms.Label + Friend WithEvents txtcRabatt As System.Windows.Forms.Label + Friend WithEvents lblRabatt As System.Windows.Forms.Label + Friend WithEvents txtcVorauszahlungen As System.Windows.Forms.Label + Friend WithEvents lblVorauszahlungen As System.Windows.Forms.Label + Friend WithEvents txtcRatenzuschlat As System.Windows.Forms.Label + Friend WithEvents lblRatenzuschlag As System.Windows.Forms.Label + Friend WithEvents txtcBehandlungstotal As System.Windows.Forms.Label + Friend WithEvents lblBehandlungstotal As System.Windows.Forms.Label + Friend WithEvents txtcKVTotal As System.Windows.Forms.Label + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents GrpGaramt As System.Windows.Forms.GroupBox + Friend WithEvents lblFallNummer As System.Windows.Forms.Label + Friend WithEvents cbboxNrAnsprechpartner As DPM2016.MyCombobox + Friend WithEvents lblAnsprechpartner As System.Windows.Forms.Label + Friend WithEvents txtFallnummer As System.Windows.Forms.TextBox + Friend WithEvents cbboxNrGarant As DPM2016.MyCombobox + Friend WithEvents lblgarant As System.Windows.Forms.Label + Friend WithEvents rbPrivatPersonen As System.Windows.Forms.RadioButton + Friend WithEvents rbkk As System.Windows.Forms.RadioButton + Friend WithEvents rbdiverseFirmen As System.Windows.Forms.RadioButton + Friend WithEvents rbiv As System.Windows.Forms.RadioButton + Friend WithEvents rbfs As System.Windows.Forms.RadioButton + Friend WithEvents rbversicherung As System.Windows.Forms.RadioButton + Friend WithEvents GrpRaten As System.Windows.Forms.GroupBox + Friend WithEvents xxtxtAnzahlraten As System.Windows.Forms.NumericUpDown + Friend WithEvents chkUngeraterateamstart As System.Windows.Forms.CheckBox + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents lblZuschlagRaten As System.Windows.Forms.Label + Friend WithEvents lblAnzahlRaten As System.Windows.Forms.Label + Friend WithEvents grpBehandlungsdaten As System.Windows.Forms.GroupBox + Friend WithEvents DDTRGStellung As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents DDTBehandlungsende As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents DDTBehandlungsbeginn As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents btnAbschliessen As System.Windows.Forms.Button + Friend WithEvents btnZuruecksetzen As System.Windows.Forms.Button + Friend WithEvents lblRGStellung As System.Windows.Forms.Label + Friend WithEvents Label15 As System.Windows.Forms.Label + Friend WithEvents lblBegin As System.Windows.Forms.Label + Friend WithEvents grpAbrechnung As System.Windows.Forms.GroupBox + Friend WithEvents lblRabattwert As System.Windows.Forms.Label + Friend WithEvents lblTaxpunkte As System.Windows.Forms.Label + Friend WithEvents lblFrankenwert As System.Windows.Forms.Label + Friend WithEvents chkMitdatum As System.Windows.Forms.CheckBox + Friend WithEvents chkAndrucken_Taxpunkte As System.Windows.Forms.CheckBox + Friend WithEvents chkRabattGesamt As System.Windows.Forms.CheckBox + Friend WithEvents cbboxNrtaxpunkt As DPM2016.MyCombobox + Friend WithEvents cbboxNrAnsatz As DPM2016.MyCombobox + Friend WithEvents lblAnsatz As System.Windows.Forms.Label + Friend WithEvents cbboxNrAbrechnungstyp As DPM2016.MyCombobox + Friend WithEvents lblAbrechnungstyp As System.Windows.Forms.Label + Friend WithEvents cbboxNRRGtyp As DPM2016.MyCombobox + Friend WithEvents lblRechnungstyp As System.Windows.Forms.Label + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents tsbtnSave As System.Windows.Forms.ToolStripButton + Friend WithEvents mtxtTaxpunktwert As Syncfusion.Windows.Forms.Tools.DoubleTextBox + Friend WithEvents mtxtRabatt As Syncfusion.Windows.Forms.Tools.DoubleTextBox + Friend WithEvents mtxtRatenzuschlag As Syncfusion.Windows.Forms.Tools.DoubleTextBox + Friend WithEvents ToolStripDropDownButton1 As ToolStripDropDownButton + Friend WithEvents VorschaRechnungToolStripMenuItem As ToolStripMenuItem + Friend WithEvents DesignRechnungToolStripMenuItem As ToolStripMenuItem + Friend WithEvents txtAnzahlraten As Syncfusion.Windows.Forms.Tools.DoubleTextBox + Friend WithEvents GrpRechnungstext As GroupBox + Friend WithEvents cbboxrgtext As MyCombobox + Friend WithEvents txtRechnungsbemerkung As TextBox +End Class diff --git a/DPM2016/Behandlung/Benhandungdetail.resx b/DPM2016/Behandlung/Benhandungdetail.resx new file mode 100644 index 0000000..f2e6bbe --- /dev/null +++ b/DPM2016/Behandlung/Benhandungdetail.resx @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + \ No newline at end of file diff --git a/DPM2016/Behandlung/Benhandungdetail.vb b/DPM2016/Behandlung/Benhandungdetail.vb new file mode 100644 index 0000000..1f8a7ad --- /dev/null +++ b/DPM2016/Behandlung/Benhandungdetail.vb @@ -0,0 +1,868 @@ +Public Class Benhandungdetail + Dim db As New clsDB + Dim log As New clsLog + Dim FormReadonly As Boolean = False + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + Dim m_behandlungsnr As Integer + Dim OnGetData As Boolean = False + Dim OnLoad As Boolean = False + Property Behandlungsnr As Integer + Get + Return m_behandlungsnr + End Get + Set(value As Integer) + m_behandlungsnr = value + If value <> 0 Then + Get_Stammdaten() + OnGetData = True + Get_Data() + OnGetData = False + Recalc_Totale() + End If + End Set + End Property + + Dim M_behandlungsstatus As Integer + Property Behandlungsstatus As Integer + Get + Return M_behandlungsstatus + End Get + Set(value As Integer) + M_behandlungsstatus = value + enable_disable_fields() + End Set + End Property + Dim m_haschanges As Boolean + Property HasChanges As Boolean + Get + Return m_haschanges + End Get + Set(value As Boolean) + m_haschanges = value + End Set + End Property + + Dim m_patientnr As Integer + Property Patientnr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + m_patientnr = value + + End Set + End Property + + + + +#Region "Closing / Check_Changes" + + ''' + ''' Prüfung, ob Datenänderungen vorgenommen wurden. + ''' + ''' + Public Function Check_Changes() As Boolean + If Me.FormReadonly Then + Return True + Exit Function + End If + Dim msgres As MsgBoxResult + If Me.HasChanges Then + msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) + Select Case msgres + Case MsgBoxResult.Yes + Save_Data() + Return True + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Me.HasChanges = False + Return True + End Select + Else + Return True + End If + End Function + +#End Region + +#Region "Eventhandler ChangeEreignisse" + ''' + ''' Allg Eventhandler für Chanage-Ereignise festlegen + ''' + ''' + ''' + Private Sub AddChanges(ByVal Container As Control) + Dim l As New List(Of Control) + Me.GetControl(Me, "*", l) + Dim evh As EventHandler = AddressOf ChangesMade + For Each c As Control In l + If TypeOf c Is TextBox Then + Dim ctl As TextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is MaskedTextBox Then + Dim ctl As MaskedTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is ComboBox Then + Dim ctl As ComboBox = c + AddHandler ctl.SelectedValueChanged, evh + End If + If TypeOf c Is RichTextBox Then + Dim ctl As RichTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is CheckBox Then + If c.Name <> "cboxNurAktive" Then + Dim ctl As CheckBox = c + AddHandler ctl.CheckedChanged, evh + End If + End If + If TypeOf c Is DateTimePicker Then + Dim ctl As DateTimePicker = c + AddHandler ctl.ValueChanged, evh + End If + If TypeOf c Is DevComponents.Editors.DateTimeAdv.DateTimeInput Then + Dim ctl As DevComponents.Editors.DateTimeAdv.DateTimeInput = c + AddHandler ctl.ValueChanged, evh + End If + If TypeOf c Is CheckedListBox Then + Dim ctl As CheckedListBox = c + AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange + End If + Next + End Sub + ''' + ''' Envent-Handler für Change-Ereignisse + ''' + ''' + ''' + ''' + Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) + Me.HasChanges = True + Dim objtype As System.Type = sender.GetType + If objtype.Name = "MaskedTextBox" Then + Dim o As MaskedTextBox = sender + If o.Text = "01.01.1900" Then o.Text = " . . " + End If + End Sub + + Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) + Me.HasChanges = True + End Sub + + + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + +#Region "Get_Save" + + Dim NrAnsprechpartner As Integer = 0 + Sub Get_Data() + db.Get_Tabledata("behandlu", " where nrbehandlung=" + Me.Behandlungsnr.ToString) + Dim r As DataRow = db.dsDaten.Tables(0).Rows(0) + Me.Behandlungsstatus = r("status") + Me.NrAnsprechpartner = r("nrAnsprechpartner") + + + Get_Data_Controls(Me, r) + + Try + If r("nrgarant") > 0 Then + Get_Garantdata(r("nrgarant")) + End If + Catch ex As Exception + + End Try + + AddChanges(Me) + Me.HasChanges = False + End Sub + + Sub Get_Data_Controls(ByVal ictl As Control, ByRef R As DataRow) + For Each ctl As Control In ictl.Controls + + If ctl.Controls.Count = 0 Or (ctl.Controls.Count = 1 And Microsoft.VisualBasic.Left(UCase(ctl.Name), 5) = "CBBOX") Then + get_data_for_control(ctl, R) + Else + Get_Data_Controls(ctl, R) + End If + Next + End Sub + + Sub get_data_for_control(ByRef ctl As Control, ByRef R As DataRow) + For Each c As DataColumn In db.dsDaten.Tables(0).Columns + Try + If UCase(ctl.Name) = "TXT" + UCase(c.ColumnName) Then + ctl.Text = R(c.ColumnName) + 'Exit For + End If + If UCase(ctl.Name) = "TXTC" + UCase(c.ColumnName) Then + Try + Dim wert As Double + wert = R(c.ColumnName) + ctl.Text = wert.ToString("N2") + Catch + ctl.Text = "0.00" + End Try + 'Exit For + End If + + + + If UCase(ctl.Name) = "MTXT" + UCase(c.ColumnName) Then + Dim mtxt As Object + mtxt = ctl + Dim v As Double = R(c.ColumnName) + Dim s As String + s = v.ToString("F") + mtxt.Text = s + 'Exit For + End If + If UCase(ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + + Dim ct As MyCombobox + Dim o As Object = ctl + Try + o.SelectedValue = R(c.ColumnName) + Catch ex As Exception + MsgBox(ex.Message) + o.selectedvalue = -1 + End Try + Try + Catch + End Try + + + 'Exit For + End If + If UCase(ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = ctl + Try + dt.Value = R(c.ColumnName) + 'Exit For + Catch ex As Exception + dt.Value = Nothing + End Try + End If + If UCase(ctl.Name) = "DDT" + UCase(c.ColumnName) Then + Dim dt As DevComponents.Editors.DateTimeAdv.DateTimeInput + dt = ctl + Try + dt.Value = R(c.ColumnName) + 'Exit For + Catch ex As Exception + dt.Value = Nothing + End Try + End If + If UCase(ctl.Name) = "CHK" + UCase(c.ColumnName) Then + Dim dt As CheckBox + dt = ctl + Try + dt.Checked = R(c.ColumnName) + 'Exit For + Catch + dt.Checked = False + End Try + End If + + Catch ex As Exception + MsgBox(ex.Message + " / " + ctl.Name + " / " + R(c.ColumnName)) + End Try + + Next + + End Sub + + Sub Get_Garantdata(ByVal Key As Integer) + Dim garantdatan As New DataTable + If Key > 49999 Then + db.Get_Tabledata("Firma", "", "Select nrfirma,name1+', '+ort as Name1 from firma where aktiv=1 and nrfirma=" + Key.ToString + " order by name1") + Else + db.Get_Tabledata("Privat", "", "Select nrprivat,name+' '+vorname+', '+plz+' '+ort as Name1 from privat where nrprivat=" + Key.ToString + " and aktiv=1 and garant=1 order by name, vorname") + End If + + + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + If Key > 49999 Then + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Else + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrprivat" + End If + + If Key > 49999 Then + get_ansprechpartner(Key) + End If + + End Sub + + Sub get_ansprechpartner(ByVal key As Integer) + Try + Dim ansprechpartnerdaten As New DataTable + db.Get_Tabledata("FAAP", "", "Select nrfirmaap, Name from firmaap where nrfirma=" + key.ToString) + Me.cbboxNrAnsprechpartner.DataSource = Nothing + ansprechpartnerdaten = db.dsDaten.Tables(0).Copy + Me.cbboxNrAnsprechpartner.DataSource = ansprechpartnerdaten + Me.cbboxNrAnsprechpartner.Displaymember = "Name" + Me.cbboxNrAnsprechpartner.Valuemember = "nrfirmaap" + + If Me.NrAnsprechpartner <> 0 Then + Me.cbboxNrAnsprechpartner.SelectedValue = Me.NrAnsprechpartner + End If + + Catch ex As Exception + MsgBox(ex.Message) + End Try + + End Sub + + + Sub Save_Data() + If Globals.OnLoad = True Then Exit Sub + If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub + db.Get_Tabledata("behandlu", " where nrbehandlung=" + Me.Behandlungsnr.ToString) + Dim r As DataRow = db.dsDaten.Tables(0).Rows(0) + + For Each ctl As Control In Me.Controls + If UCase(ctl.Name.Substring(0, 3)) = "GRP" Then + save_controldata(r, ctl) + End If + Next + r("Mutiert_am") = Now + r("mutierer") = Globals.ActUser + r("total") = Me.txtcTotal.Text + + db.Update_Data() + Me.HasChanges = False + + End Sub + + Sub save_controldata(r As DataRow, ictl As Control) + For Each c As DataColumn In db.dsDaten.Tables(0).Columns + + For Each Ctl As Control In ictl.Controls + If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then + If UCase(Ctl.Name) <> "TXTMUTIERT_AM" And UCase(Ctl.Name) <> "TXTERSTLLT_AM" Then + r(c.ColumnName) = Ctl.Text + 'Exit For + End If + End If + If UCase(Ctl.Name) = "MTXT" + UCase(c.ColumnName) Then + r(c.ColumnName) = Ctl.Text + 'Exit For + End If + If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + Dim ct As MyCombobox + Dim o As Object = Ctl + Try + r(c.ColumnName) = o.selectedvalue + Catch ex As Exception + r(c.ColumnName) = 0 + End Try + 'Exit For + End If + If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = Ctl + r(c.ColumnName) = dt.Value + 'Exit For + End If + If UCase(Ctl.Name) = "CHK" + UCase(c.ColumnName) Then + Dim dt As CheckBox + dt = Ctl + r(c.ColumnName) = dt.Checked + 'Exit For + End If + If UCase(Ctl.Name) = "DDT" + UCase(c.ColumnName) Then + Dim dt As DevComponents.Editors.DateTimeAdv.DateTimeInput + dt = Ctl + r(c.ColumnName) = dt.Value + 'xit For + End If + Next + Next + + End Sub +#End Region + + + Public Sub Get_Stammdaten() + Me.cbboxnrbehandler.Dataselection = db.Get_SQL(2) + Me.cbboxnrbehandler.TableAlias = "Behandler_BH" + Me.cbboxnrbehandler.Table = "Behandler" + Me.cbboxnrbehandler.Displaymember = "Name" + Me.cbboxnrbehandler.Valuemember = "nrprivat" + + Me.cbboxNRESTyp.Dataselection = "Select * FROM ESTYP WHERE AKTIV=1" + Me.cbboxNRESTyp.TableAlias = "ESTYP_BH" + Me.cbboxNRESTyp.Table = "ESTyp" + Me.cbboxNRESTyp.Displaymember = "estyp" + Me.cbboxNRESTyp.Valuemember = "nrestyp" + + Me.cbboxNRRGtyp.TableAlias = "RGTYP_BH" + Me.cbboxNRRGtyp.Table = "RGTyp" + Me.cbboxNRRGtyp.Displaymember = "bezd" + Me.cbboxNRRGtyp.Valuemember = "nrrgtyp" + + Me.cbboxNrAbrechnungstyp.TableAlias = "AbrTyp_BH" + Me.cbboxNrAbrechnungstyp.Table = "Abrtyp" + Me.cbboxNrAbrechnungstyp.Displaymember = "bezd" + Me.cbboxNrAbrechnungstyp.Valuemember = "nrabrechnungstyp" + + Me.cbboxNrAnsatz.Table = "Ansatz" + Me.cbboxNrAnsatz.Displaymember = "Funktionsbezeichnung" + Me.cbboxNrAnsatz.Valuemember = "NRAnsatz" + + 'Me.cbboxNRESTyp.Dataselection = "Select * FROM taxpunkt WHERE AKTIV=1" + Me.cbboxNrtaxpunkt.Table = "Taxpunkt" + Me.cbboxNrtaxpunkt.Displaymember = "Bezd" + Me.cbboxNrtaxpunkt.Valuemember = "nrtaxpunkt" + Me.OnLoad = True + Me.cbboxrgtext.Dataselection = db.Get_SQL(21) + Me.cbboxrgtext.TableAlias = "Rechnungstext" + Me.cbboxrgtext.Table = "Rechtext" + Me.cbboxrgtext.Displaymember = "Textd" + Me.cbboxrgtext.Valuemember = "Nrrechnungstext" + Me.OnLoad = False + + End Sub + + Public Sub Recalc_Totale() + Dim zdb As New clsDB + Dim vz As Double = 0 + zdb.Get_Tabledata("Zahlung", "where aktiv=1 And vorauszahlung=1 And nrbehandlung=" + Me.Behandlungsnr.ToString) + For Each r As DataRow In zdb.dsDaten.Tables(0).Rows + vz = vz + r("Betrag") + Next + zdb.Dispose() + + Dim rz As Double + Try + If Me.txtAnzahlraten.Text > 0 Then + rz = Me.mtxtRatenzuschlag.Text + Else + rz = 0 + End If + + + Catch ex As Exception + rz = 0 + End Try + + Dim ssototal As Double + + Dim ldb As New clsDB + ldb.Get_Tabledata("Leistung", "where nrbehandlung=" + Me.Behandlungsnr.ToString + " And aktiv=1") + Dim total As Double + For Each r As DataRow In ldb.dsDaten.Tables(0).Rows + If r("aktiv") = True Then + If r("sso_Nummer") > 3999 And r("sso_nummer") < 5000 Then ssototal = ssototal + r("total") + total = total + r("Total") + End If + Next + Me.txtcBehandlungstotal.Text = total.ToString("N2") + total = 0 + ldb.Dispose() + + + + + total = total + txtcBehandlungstotal.Text + + + Me.txtcRatenzuschlat.Text = Globals.Round5(rz.ToString).ToString + total = total - vz + Me.txtcVorauszahlungen.Text = Globals.Round5(vz.ToString).ToString + + Try + Dim stotal As Double = total + If chkRabattGesamt.Checked Then + total = (100 - mtxtRabatt.Text) * total / 100 + Else + total = stotal - (ssototal / 100 * Me.mtxtRabatt.Text) + + End If + Me.txtcRabatt.Text = ((stotal - total) * -1).ToString + Me.txtcRabatt.Text = Globals.Round5(Me.txtcRabatt.Text) + Catch ex As Exception + total = 0 + End Try + total = total + rz + Me.txtcTotal.Text = Globals.Round5(total.ToString).ToString + evh.Fire_Totale_Berechnet(Me.Behandlungsnr) + Try + evh.Fire_Total_Berechnet(Me.Behandlungsnr, Me.txtcTotal.Text) + Catch + End Try + End Sub + + Private Sub evh_Leistung_Changed(Behandlungsnummer As Integer, total As Double) Handles evh.Leistung_Changed + If Me.Behandlungsnr = Behandlungsnummer Then + Me.txtcBehandlungstotal.Text = total.ToString("N2") + End If + Recalc_Totale() + End Sub + + Private Sub evh_PatSaved(Nr As Integer) Handles evh.PatSaved + If Me.Patientnr = Nr Then Save_Data() + End Sub + + + + + + Private Sub evh_Totale_Berechnet(behandlungsnummer As Integer) Handles evh.Totale_Berechnet + If Me.Behandlungsnr = behandlungsnummer Then + If Globals.OnLoad = True Then Exit Sub + + Save_Data() + evh.Fire_Behandlung_Changed(Me.Behandlungsnr, Me.Patientnr) + End If + End Sub + + + 'Private Sub mtxtTaxpunktwert_Leave(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.Leave + ' If Not IsNumeric(Me.mtxtTaxpunktwert.Text) Then + ' MsgBox("Wert ungültig.", MsgBoxStyle.Exclamation) + ' Me.mtxtTaxpunktwert.Focus() + ' Me.mtxtTaxpunktwert.SelectAll() + ' Exit Sub + ' End If + ' evh.fire_Taxpunktwert_Changed(Me.Behandlungsnr, Me.Patientnr, Me.mtxtTaxpunktwert.Text) + 'End Sub + + 'Private Sub txtcRabatt_Leave(sender As Object, e As EventArgs) Handles mtxtRabatt.Leave + ' If Not IsNumeric(Me.mtxtRabatt.Text) Then + ' MsgBox("Wert ungültig.", MsgBoxStyle.Exclamation) + ' Me.mtxtRabatt.Focus() + ' Me.mtxtRabatt.SelectAll() + ' Exit Sub + ' End If + ' Recalc_Totale() + 'End Sub + + + Private Sub txtcTotal_TextChanged(sender As Object, e As EventArgs) Handles txtcTotal.TextChanged + Try + evh.Fire_Total_Berechnet(Me.Behandlungsnr, Me.txtcTotal.Text) + Catch + End Try + + End Sub + + + Private Sub cbboxNRRGtyp_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNRRGtyp.SelectedValueChanged + If OnGetData Then Exit Sub + Try + For Each r As DataRow In IntTables.Inttables.Tables("rgtyp").Rows + If r("nrrgtyp") = Me.cbboxNRRGtyp.SelectedValue Then + Me.cbboxNrAbrechnungstyp.SelectedValue = r.Item("nrabrechnungstyp") + End If + Next + Catch + End Try + + End Sub + + Private Sub cbboxNrAbrechnungstyp_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrAbrechnungstyp.SelectedValueChanged + If OnGetData Then Exit Sub + Try + For Each r As DataRow In IntTables.Inttables.Tables("abrtyp_bh").Rows + If r("Nrabrechnungstyp") = Me.cbboxNrAbrechnungstyp.SelectedValue Then + Me.cbboxNrAnsatz.SelectedValue = r("nransatz") + Me.cbboxNrtaxpunkt.SelectedValue = r("nrtaxpunkt") + If r("taxpunktwertfix") = True Then Me.cbboxNrtaxpunkt.Enabled = False Else Me.cbboxNrtaxpunkt.Enabled = True + If r("ansatzfix") = True Then mtxtTaxpunktwert.Enabled = False Else Me.mtxtTaxpunktwert.Enabled = True + End If + Next + Catch ex As Exception + End Try + End Sub + + Private Sub cbboxNrAnsatz_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrAnsatz.SelectedValueChanged + If OnGetData Then Exit Sub + Try + For Each r As DataRow In IntTables.Inttables.Tables("ansatz").Rows + If r("nransatz") = Me.cbboxNrAnsatz.SelectedValue Then + mtxtTaxpunktwert.Text = r("taxpunktwert") + Recalc_Totale() + End If + Next + Catch ex As Exception + + End Try + End Sub + + Private Sub tsbtnSave_Click(sender As Object, e As EventArgs) Handles tsbtnSave.Click + Me.Save_Data() + End Sub + + + Sub Enable_Disable_fields(Optional enable As Boolean = False) + Select Case Me.Behandlungsstatus + Case 1, 4 + + enable = True + Case Else + + enable = False + End Select + + Me.GrpPatient.Enabled = enable + Me.grpAbrechnung.Enabled = enable + Me.grpBehandlungsdaten.Enabled = enable + Me.GrpGaramt.Enabled = enable + Me.GrpRaten.Enabled = enable + Me.tsbtnSave.Enabled = enable + End Sub + + + Private Sub txtAnzahlRaten_ValueChanged(sender As Object, e As EventArgs) Handles txtAnzahlraten.TextChanged + Me.Recalc_Totale() + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) + Dim f As New frmReportView(1, True, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString) + f.Show() + 'f.Vorschau_Rechnung() + f.Close() + End Sub + + Private Sub mtxtRatenzuschlag_TextChanged(sender As Object, e As EventArgs) Handles mtxtRatenzuschlag.TextChanged + Me.Recalc_Totale() + End Sub + + Private Sub mtxtRabatt_TextChanged(sender As Object, e As EventArgs) Handles mtxtRabatt.TextChanged + Recalc_Totale() + End Sub + + Private Sub chkRabattGesamt_CheckedChanged(sender As Object, e As EventArgs) Handles chkRabattGesamt.CheckedChanged + Recalc_Totale() + End Sub + + Private Sub rbversicherung_CheckedChanged(sender As Object, e As EventArgs) Handles rbversicherung.CheckedChanged + If rbversicherung.Checked Then + Dim garantdatan As New DataTable + db.Get_Tabledata("Firma", "", "Select nrfirma, name1 +', '+ort as Name1 from firma where vs=1 and aktiv=1 order by name1") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Me.cbboxNrGarant.Focus() + Me.rbversicherung.Checked = False + End If + End Sub + + Private Sub rbfs_CheckedChanged(sender As Object, e As EventArgs) Handles rbfs.CheckedChanged + If rbfs.Checked Then + Dim garantdatan As New DataTable + db.Get_Tabledata("Firma", "", "Select nrfirma,name1+', '+ort as Name1 from firma where fs=1 and aktiv=1 order by name1") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Me.cbboxNrGarant.Focus() + Me.rbfs.Checked = False + End If + End Sub + + Private Sub rbiv_CheckedChanged(sender As Object, e As EventArgs) Handles rbiv.CheckedChanged + If rbiv.Checked Then + Dim garantdatan As New DataTable + db.Get_Tabledata("Firma", "", "Select nrfirma,name1+', '+ort as Name1 from firma where iv=1 and aktiv=1 order by name1") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Me.cbboxNrGarant.Focus() + Me.rbiv.Checked = False + End If + End Sub + + Private Sub rbdiverseFirmen_CheckedChanged(sender As Object, e As EventArgs) Handles rbdiverseFirmen.CheckedChanged + Dim garantdatan As New DataTable + db.Get_Tabledata("Firma", "", "Select nrfirma,name1+', '+ort as Name1 from firma where aktiv=1 order by name1") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Me.cbboxNrGarant.Focus() + Me.rbdiverseFirmen.Checked = False + End Sub + + Private Sub rbkk_CheckedChanged(sender As Object, e As EventArgs) Handles rbkk.CheckedChanged + If rbkk.Checked Then + Dim garantdatan As New DataTable + db.Get_Tabledata("Firma", "", "Select nrfirma,name1+', '+ort as Name1 from firma where kk=1 and aktiv=1 order by name1") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrfirma" + Me.cbboxNrGarant.Focus() + Me.rbkk.Checked = False + End If + End Sub + + Private Sub rbPrivatPersonen_CheckedChanged(sender As Object, e As EventArgs) Handles rbPrivatPersonen.CheckedChanged + If rbPrivatPersonen.Checked Then + Dim garantdatan As New DataTable + db.Get_Tabledata("Privat", "", "Select nrprivat,name+' '+vorname+', '+plz+' '+ort as Name1 from privat where aktiv=1 and garant=1 order by name, vorname") + Me.cbboxNrGarant.DataSource = Nothing + garantdatan = db.dsDaten.Tables(0).Copy + Me.cbboxNrGarant.DataSource = garantdatan + Me.cbboxNrGarant.Displaymember = "name1" + Me.cbboxNrGarant.Valuemember = "nrprivat" + Me.cbboxNrGarant.Focus() + Me.rbPrivatPersonen.Checked = False + + End If + End Sub + + + + Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked + + End Sub + + Private Sub cbboxNrGarant_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxNrGarant.SelectedIndexChanged + Try + get_ansprechpartner(Me.cbboxNrGarant.SelectedValue) + Catch + End Try + End Sub + + Private Sub mtxtTaxpunktwert_TextChanged(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.Leave + If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub + Me.Save_Data() + db.Recalc_Leistungen(Me.Behandlungsnr, Me.mtxtTaxpunktwert.Text) + Me.Save_Data() + Recalc_Totale() + End Sub + + Private Sub cbboxNrAnsatz_SelectedIndexChanged_1(sender As Object, e As EventArgs) Handles cbboxNrAnsatz.SelectedIndexChanged + If Me.Behandlungsstatus <> 1 And Me.Behandlungsstatus <> 4 Then Exit Sub + Me.Save_Data() + db.Recalc_Leistungen(Me.Behandlungsnr, Me.mtxtTaxpunktwert.Text) + Me.Save_Data() + Recalc_Totale() + End Sub + + Private Sub ToolStripButton1_Click_1(sender As Object, e As EventArgs) + + End Sub + + Private Sub ToolStripDropDownButton1_Click(sender As Object, e As EventArgs) Handles ToolStripDropDownButton1.Click + Dim f As New frmReportView(Me.cbboxNRESTyp.SelectedValue, True, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString) + f.Show() + f.Visible = False + f.Print_Rechnung() + f.Close() + End Sub + + Private Sub DesignRechnungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DesignRechnungToolStripMenuItem.Click + Dim f As New frmReportView(Me.cbboxNRESTyp.SelectedValue, True, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString) + f.Show() + f.Print_Rechnung(False, True) + f.Close() + End Sub + + Private Sub VorschaRechnungToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles VorschaRechnungToolStripMenuItem.Click + Dim f As New frmReportView(1, False, "Vorschau Rechung", " where nrbehandlung = " + Me.Behandlungsnr.ToString, Me.Behandlungsnr.ToString) + f.Show() + f.Print_Rechnung(True, False) + 'f.Close() + End Sub + + Private Sub cbboxnrbehandler_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxnrbehandler.SelectedIndexChanged + + End Sub + + Private Sub cbboxrgtext_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbboxrgtext.SelectedIndexChanged + If OnLoad Then Exit Sub + Me.txtRechnungsbemerkung.Text = Me.cbboxrgtext.Text + End Sub + + Private Sub btnAbschliessen_Click(sender As Object, e As EventArgs) Handles btnAbschliessen.Click + If MsgBox("Behandlung abschliessen?", vbYesNo = vbYes) Then + + End If + End Sub + + Private Sub btnZuruecksetzen_Click(sender As Object, e As EventArgs) Handles btnZuruecksetzen.Click + + End Sub + + + + + + + 'Private Sub mtxtRatenzuschlag_TextChanged(sender As Object, e As EventArgs) Handles mtxtRatenzuschlag.TextChanged + ' Me.Recalc_Totale() + 'End Sub + + 'Private Sub mtxtTaxpunktwert_TextChanged(sender As Object, e As EventArgs) Handles mtxtTaxpunktwert.TextChanged + ' mtxtTaxpunktwert_Leave(sender, e) + 'End Sub +End Class diff --git a/DPM2016/Behandlung/Leistungen.Designer.vb b/DPM2016/Behandlung/Leistungen.Designer.vb new file mode 100644 index 0000000..ebeb2f4 --- /dev/null +++ b/DPM2016/Behandlung/Leistungen.Designer.vb @@ -0,0 +1,710 @@ + _ +Partial Class Leistungen + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Leistungen)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tslabelbhtotal = New System.Windows.Forms.ToolStripLabel() + Me.GrpTarif = New System.Windows.Forms.GroupBox() + Me.TabTarife = New System.Windows.Forms.TabControl() + Me.TabPage1 = New System.Windows.Forms.TabPage() + Me.lbtarif1 = New DevComponents.DotNetBar.ListBoxAdv() + Me.ToolStrip2 = New System.Windows.Forms.ToolStrip() + Me.tsUp = New System.Windows.Forms.ToolStripButton() + Me.tsDown = New System.Windows.Forms.ToolStripButton() + Me.txtfilter = New System.Windows.Forms.ToolStripTextBox() + Me.Panel4 = New System.Windows.Forms.Panel() + Me.TreeTarifGruppen = New DevComponents.AdvTree.AdvTree() + Me.Node1 = New DevComponents.AdvTree.Node() + Me.NodeConnector1 = New DevComponents.AdvTree.NodeConnector() + Me.ElementStyle1 = New DevComponents.DotNetBar.ElementStyle() + Me.TabPage2 = New System.Windows.Forms.TabPage() + Me.lbPakete = New DevComponents.DotNetBar.ListBoxAdv() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.btnPaketeinfuegen = New System.Windows.Forms.Button() + Me.intAnzahl = New DevComponents.Editors.IntegerInput() + Me.lblAnzahl = New System.Windows.Forms.Label() + Me.grpLeistungsdetails = New System.Windows.Forms.GroupBox() + Me.txtBezD = New System.Windows.Forms.TextBox() + Me.lblBeschreibung = New System.Windows.Forms.Label() + Me.cbboxnrbehandler = New DPM2016.MyCombobox() + Me.lblbehandler = New System.Windows.Forms.Label() + Me.BtnInsertLeistung = New System.Windows.Forms.Button() + Me.txtTotal = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.lblWert = New System.Windows.Forms.Label() + Me.diwert = New DevComponents.Editors.DoubleInput() + Me.lblMenge = New System.Windows.Forms.Label() + Me.DIMenge = New DevComponents.Editors.DoubleInput() + Me.lblTaxpunkte = New System.Windows.Forms.Label() + Me.DIPunkte = New DevComponents.Editors.DoubleInput() + Me.txtPosition = New System.Windows.Forms.TextBox() + Me.lblPosition = New System.Windows.Forms.Label() + Me.lbldatum = New System.Windows.Forms.Label() + Me.dtdatum = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.GrpLeistungen = New System.Windows.Forms.GroupBox() + Me.C1Leistungen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ctxMenuLeistung = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.BearbeitenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.LöschenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.AnzeigenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.Panel2 = New System.Windows.Forms.Panel() + Me.Panel3 = New System.Windows.Forms.Panel() + Me.ToolStrip1.SuspendLayout() + Me.GrpTarif.SuspendLayout() + Me.TabTarife.SuspendLayout() + Me.TabPage1.SuspendLayout() + Me.ToolStrip2.SuspendLayout() + CType(Me.TreeTarifGruppen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.TabPage2.SuspendLayout() + Me.Panel1.SuspendLayout() + CType(Me.intAnzahl, System.ComponentModel.ISupportInitialize).BeginInit() + Me.grpLeistungsdetails.SuspendLayout() + CType(Me.diwert, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DIMenge, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DIPunkte, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GrpLeistungen.SuspendLayout() + CType(Me.C1Leistungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ctxMenuLeistung.SuspendLayout() + Me.Panel2.SuspendLayout() + Me.Panel3.SuspendLayout() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tslabelbhtotal}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(842, 25) + Me.ToolStrip1.TabIndex = 0 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tslabelbhtotal + ' + Me.tslabelbhtotal.Name = "tslabelbhtotal" + Me.tslabelbhtotal.Size = New System.Drawing.Size(88, 22) + Me.tslabelbhtotal.Text = "ToolStripLabel1" + ' + 'GrpTarif + ' + Me.GrpTarif.Controls.Add(Me.TabTarife) + Me.GrpTarif.Dock = System.Windows.Forms.DockStyle.Left + Me.GrpTarif.Location = New System.Drawing.Point(0, 0) + Me.GrpTarif.Name = "GrpTarif" + Me.GrpTarif.Size = New System.Drawing.Size(498, 284) + Me.GrpTarif.TabIndex = 1 + Me.GrpTarif.TabStop = False + Me.GrpTarif.Text = "Tarife" + ' + 'TabTarife + ' + Me.TabTarife.Controls.Add(Me.TabPage1) + Me.TabTarife.Controls.Add(Me.TabPage2) + Me.TabTarife.Dock = System.Windows.Forms.DockStyle.Left + Me.TabTarife.Location = New System.Drawing.Point(3, 16) + Me.TabTarife.Name = "TabTarife" + Me.TabTarife.SelectedIndex = 0 + Me.TabTarife.Size = New System.Drawing.Size(489, 265) + Me.TabTarife.TabIndex = 0 + ' + 'TabPage1 + ' + Me.TabPage1.Controls.Add(Me.lbtarif1) + Me.TabPage1.Controls.Add(Me.ToolStrip2) + Me.TabPage1.Controls.Add(Me.Panel4) + Me.TabPage1.Controls.Add(Me.TreeTarifGruppen) + Me.TabPage1.Location = New System.Drawing.Point(4, 22) + Me.TabPage1.Name = "TabPage1" + Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage1.Size = New System.Drawing.Size(481, 239) + Me.TabPage1.TabIndex = 0 + Me.TabPage1.Text = "Tarif" + Me.TabPage1.UseVisualStyleBackColor = True + ' + 'lbtarif1 + ' + Me.lbtarif1.AutoScroll = True + ' + ' + ' + Me.lbtarif1.BackgroundStyle.Class = "ListBoxAdv" + Me.lbtarif1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.lbtarif1.ContainerControlProcessDialogKey = True + Me.lbtarif1.Dock = System.Windows.Forms.DockStyle.Fill + Me.lbtarif1.DragDropSupport = True + Me.lbtarif1.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F" + Me.lbtarif1.Location = New System.Drawing.Point(196, 28) + Me.lbtarif1.Name = "lbtarif1" + Me.lbtarif1.Size = New System.Drawing.Size(282, 208) + Me.lbtarif1.TabIndex = 5 + Me.lbtarif1.Text = "ListBoxAdv1" + ' + 'ToolStrip2 + ' + Me.ToolStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsUp, Me.tsDown, Me.txtfilter}) + Me.ToolStrip2.Location = New System.Drawing.Point(196, 3) + Me.ToolStrip2.Name = "ToolStrip2" + Me.ToolStrip2.Size = New System.Drawing.Size(282, 25) + Me.ToolStrip2.TabIndex = 6 + Me.ToolStrip2.Text = "ToolStrip2" + ' + 'tsUp + ' + Me.tsUp.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsUp.Image = CType(resources.GetObject("tsUp.Image"), System.Drawing.Image) + Me.tsUp.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsUp.Name = "tsUp" + Me.tsUp.Size = New System.Drawing.Size(23, 22) + Me.tsUp.Text = "ToolStripButton1" + ' + 'tsDown + ' + Me.tsDown.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsDown.Image = CType(resources.GetObject("tsDown.Image"), System.Drawing.Image) + Me.tsDown.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsDown.Name = "tsDown" + Me.tsDown.Size = New System.Drawing.Size(23, 22) + Me.tsDown.Text = "ToolStripButton2" + ' + 'txtfilter + ' + Me.txtfilter.Name = "txtfilter" + Me.txtfilter.Size = New System.Drawing.Size(100, 25) + ' + 'Panel4 + ' + Me.Panel4.Dock = System.Windows.Forms.DockStyle.Left + Me.Panel4.Location = New System.Drawing.Point(181, 3) + Me.Panel4.Name = "Panel4" + Me.Panel4.Size = New System.Drawing.Size(15, 233) + Me.Panel4.TabIndex = 5 + ' + 'TreeTarifGruppen + ' + Me.TreeTarifGruppen.AccessibleRole = System.Windows.Forms.AccessibleRole.Outline + Me.TreeTarifGruppen.AllowDrop = True + Me.TreeTarifGruppen.BackColor = System.Drawing.SystemColors.Window + ' + ' + ' + Me.TreeTarifGruppen.BackgroundStyle.Class = "TreeBorderKey" + Me.TreeTarifGruppen.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.TreeTarifGruppen.Dock = System.Windows.Forms.DockStyle.Left + Me.TreeTarifGruppen.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F" + Me.TreeTarifGruppen.Location = New System.Drawing.Point(3, 3) + Me.TreeTarifGruppen.Name = "TreeTarifGruppen" + Me.TreeTarifGruppen.Nodes.AddRange(New DevComponents.AdvTree.Node() {Me.Node1}) + Me.TreeTarifGruppen.NodesConnector = Me.NodeConnector1 + Me.TreeTarifGruppen.NodeStyle = Me.ElementStyle1 + Me.TreeTarifGruppen.PathSeparator = ";" + Me.TreeTarifGruppen.Size = New System.Drawing.Size(178, 233) + Me.TreeTarifGruppen.Styles.Add(Me.ElementStyle1) + Me.TreeTarifGruppen.TabIndex = 7 + Me.TreeTarifGruppen.Text = "AdvTree1" + ' + 'Node1 + ' + Me.Node1.Expanded = True + Me.Node1.Name = "Node1" + Me.Node1.Text = "Node1" + ' + 'NodeConnector1 + ' + Me.NodeConnector1.LineColor = System.Drawing.SystemColors.ControlText + ' + 'ElementStyle1 + ' + Me.ElementStyle1.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.ElementStyle1.Name = "ElementStyle1" + Me.ElementStyle1.TextColor = System.Drawing.SystemColors.ControlText + ' + 'TabPage2 + ' + Me.TabPage2.Controls.Add(Me.lbPakete) + Me.TabPage2.Controls.Add(Me.Panel1) + Me.TabPage2.Location = New System.Drawing.Point(4, 22) + Me.TabPage2.Name = "TabPage2" + Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage2.Size = New System.Drawing.Size(481, 239) + Me.TabPage2.TabIndex = 1 + Me.TabPage2.Text = "Leistungspaket" + Me.TabPage2.UseVisualStyleBackColor = True + ' + 'lbPakete + ' + Me.lbPakete.AutoScroll = True + ' + ' + ' + Me.lbPakete.BackgroundStyle.Class = "ListBoxAdv" + Me.lbPakete.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.lbPakete.ContainerControlProcessDialogKey = True + Me.lbPakete.Dock = System.Windows.Forms.DockStyle.Fill + Me.lbPakete.DragDropSupport = True + Me.lbPakete.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F" + Me.lbPakete.Location = New System.Drawing.Point(3, 33) + Me.lbPakete.Name = "lbPakete" + Me.lbPakete.Size = New System.Drawing.Size(475, 203) + Me.lbPakete.TabIndex = 2 + Me.lbPakete.Text = "ListBoxAdv1" + ' + 'Panel1 + ' + Me.Panel1.Controls.Add(Me.btnPaketeinfuegen) + Me.Panel1.Controls.Add(Me.intAnzahl) + Me.Panel1.Controls.Add(Me.lblAnzahl) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Top + Me.Panel1.Location = New System.Drawing.Point(3, 3) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(475, 30) + Me.Panel1.TabIndex = 1 + ' + 'btnPaketeinfuegen + ' + Me.btnPaketeinfuegen.Location = New System.Drawing.Point(197, 3) + Me.btnPaketeinfuegen.Name = "btnPaketeinfuegen" + Me.btnPaketeinfuegen.Size = New System.Drawing.Size(75, 23) + Me.btnPaketeinfuegen.TabIndex = 1 + Me.btnPaketeinfuegen.Text = "Einfügen" + Me.btnPaketeinfuegen.UseVisualStyleBackColor = True + ' + 'intAnzahl + ' + ' + ' + ' + Me.intAnzahl.BackgroundStyle.Class = "DateTimeInputBackground" + Me.intAnzahl.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.intAnzahl.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.intAnzahl.Location = New System.Drawing.Point(49, 5) + Me.intAnzahl.Name = "intAnzahl" + Me.intAnzahl.ShowUpDown = True + Me.intAnzahl.Size = New System.Drawing.Size(142, 20) + Me.intAnzahl.TabIndex = 0 + Me.intAnzahl.Value = 1 + ' + 'lblAnzahl + ' + Me.lblAnzahl.AutoSize = True + Me.lblAnzahl.Location = New System.Drawing.Point(4, 8) + Me.lblAnzahl.Name = "lblAnzahl" + Me.lblAnzahl.Size = New System.Drawing.Size(39, 13) + Me.lblAnzahl.TabIndex = 0 + Me.lblAnzahl.Text = "Anzahl" + ' + 'grpLeistungsdetails + ' + Me.grpLeistungsdetails.Controls.Add(Me.txtBezD) + Me.grpLeistungsdetails.Controls.Add(Me.lblBeschreibung) + Me.grpLeistungsdetails.Controls.Add(Me.cbboxnrbehandler) + Me.grpLeistungsdetails.Controls.Add(Me.lblbehandler) + Me.grpLeistungsdetails.Controls.Add(Me.BtnInsertLeistung) + Me.grpLeistungsdetails.Controls.Add(Me.txtTotal) + Me.grpLeistungsdetails.Controls.Add(Me.Label1) + Me.grpLeistungsdetails.Controls.Add(Me.lblWert) + Me.grpLeistungsdetails.Controls.Add(Me.diwert) + Me.grpLeistungsdetails.Controls.Add(Me.lblMenge) + Me.grpLeistungsdetails.Controls.Add(Me.DIMenge) + Me.grpLeistungsdetails.Controls.Add(Me.lblTaxpunkte) + Me.grpLeistungsdetails.Controls.Add(Me.DIPunkte) + Me.grpLeistungsdetails.Controls.Add(Me.txtPosition) + Me.grpLeistungsdetails.Controls.Add(Me.lblPosition) + Me.grpLeistungsdetails.Controls.Add(Me.lbldatum) + Me.grpLeistungsdetails.Controls.Add(Me.dtdatum) + Me.grpLeistungsdetails.Location = New System.Drawing.Point(498, 3) + Me.grpLeistungsdetails.Name = "grpLeistungsdetails" + Me.grpLeistungsdetails.Size = New System.Drawing.Size(341, 275) + Me.grpLeistungsdetails.TabIndex = 2 + Me.grpLeistungsdetails.TabStop = False + Me.grpLeistungsdetails.Text = "Leistungsdetails" + ' + 'txtBezD + ' + Me.txtBezD.Location = New System.Drawing.Point(85, 115) + Me.txtBezD.Multiline = True + Me.txtBezD.Name = "txtBezD" + Me.txtBezD.Size = New System.Drawing.Size(177, 45) + Me.txtBezD.TabIndex = 6 + ' + 'lblBeschreibung + ' + Me.lblBeschreibung.AutoSize = True + Me.lblBeschreibung.Location = New System.Drawing.Point(11, 118) + Me.lblBeschreibung.Name = "lblBeschreibung" + Me.lblBeschreibung.Size = New System.Drawing.Size(72, 13) + Me.lblBeschreibung.TabIndex = 22 + Me.lblBeschreibung.Text = "Beschreibung" + ' + 'cbboxnrbehandler + ' + Me.cbboxnrbehandler.Dataselection = Nothing + Me.cbboxnrbehandler.Displaymember = Nothing + Me.cbboxnrbehandler.Location = New System.Drawing.Point(85, 61) + Me.cbboxnrbehandler.Name = "cbboxnrbehandler" + Me.cbboxnrbehandler.Size = New System.Drawing.Size(177, 21) + Me.cbboxnrbehandler.TabIndex = 1 + Me.cbboxnrbehandler.Table = Nothing + Me.cbboxnrbehandler.TableAlias = "" + Me.cbboxnrbehandler.Valuemember = Nothing + ' + 'lblbehandler + ' + Me.lblbehandler.AutoSize = True + Me.lblbehandler.Location = New System.Drawing.Point(11, 63) + Me.lblbehandler.Name = "lblbehandler" + Me.lblbehandler.Size = New System.Drawing.Size(55, 13) + Me.lblbehandler.TabIndex = 14 + Me.lblbehandler.Text = "Behandler" + ' + 'BtnInsertLeistung + ' + Me.BtnInsertLeistung.Location = New System.Drawing.Point(14, 248) + Me.BtnInsertLeistung.Name = "BtnInsertLeistung" + Me.BtnInsertLeistung.Size = New System.Drawing.Size(120, 23) + Me.BtnInsertLeistung.TabIndex = 7 + Me.BtnInsertLeistung.Text = "Leistung einfügen" + Me.BtnInsertLeistung.UseVisualStyleBackColor = True + ' + 'txtTotal + ' + Me.txtTotal.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtTotal.Location = New System.Drawing.Point(49, 220) + Me.txtTotal.Name = "txtTotal" + Me.txtTotal.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtTotal.Size = New System.Drawing.Size(92, 13) + Me.txtTotal.TabIndex = 12 + Me.txtTotal.Text = "0.00www" + Me.txtTotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label1.Location = New System.Drawing.Point(11, 220) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(36, 13) + Me.Label1.TabIndex = 10 + Me.Label1.Text = "Total" + ' + 'lblWert + ' + Me.lblWert.AutoSize = True + Me.lblWert.Location = New System.Drawing.Point(11, 196) + Me.lblWert.Name = "lblWert" + Me.lblWert.Size = New System.Drawing.Size(30, 13) + Me.lblWert.TabIndex = 9 + Me.lblWert.Text = "Wert" + ' + 'diwert + ' + ' + ' + ' + Me.diwert.BackgroundStyle.Class = "DateTimeInputBackground" + Me.diwert.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.diwert.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.diwert.Increment = 1.0R + Me.diwert.Location = New System.Drawing.Point(85, 192) + Me.diwert.Name = "diwert" + Me.diwert.ShowUpDown = True + Me.diwert.Size = New System.Drawing.Size(68, 20) + Me.diwert.TabIndex = 4 + ' + 'lblMenge + ' + Me.lblMenge.AutoSize = True + Me.lblMenge.Location = New System.Drawing.Point(11, 169) + Me.lblMenge.Name = "lblMenge" + Me.lblMenge.Size = New System.Drawing.Size(40, 13) + Me.lblMenge.TabIndex = 7 + Me.lblMenge.Text = "Menge" + ' + 'DIMenge + ' + ' + ' + ' + Me.DIMenge.BackgroundStyle.Class = "DateTimeInputBackground" + Me.DIMenge.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DIMenge.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.DIMenge.Increment = 1.0R + Me.DIMenge.Location = New System.Drawing.Point(85, 166) + Me.DIMenge.Name = "DIMenge" + Me.DIMenge.ShowUpDown = True + Me.DIMenge.Size = New System.Drawing.Size(68, 20) + Me.DIMenge.TabIndex = 3 + ' + 'lblTaxpunkte + ' + Me.lblTaxpunkte.AutoSize = True + Me.lblTaxpunkte.Location = New System.Drawing.Point(159, 169) + Me.lblTaxpunkte.Name = "lblTaxpunkte" + Me.lblTaxpunkte.Size = New System.Drawing.Size(41, 13) + Me.lblTaxpunkte.TabIndex = 5 + Me.lblTaxpunkte.Text = "Punkte" + ' + 'DIPunkte + ' + ' + ' + ' + Me.DIPunkte.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DIPunkte.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.DIPunkte.Increment = 1.0R + Me.DIPunkte.Location = New System.Drawing.Point(206, 166) + Me.DIPunkte.Name = "DIPunkte" + Me.DIPunkte.ShowUpDown = True + Me.DIPunkte.Size = New System.Drawing.Size(56, 20) + Me.DIPunkte.TabIndex = 5 + ' + 'txtPosition + ' + Me.txtPosition.Location = New System.Drawing.Point(85, 89) + Me.txtPosition.Name = "txtPosition" + Me.txtPosition.Size = New System.Drawing.Size(56, 20) + Me.txtPosition.TabIndex = 2 + ' + 'lblPosition + ' + Me.lblPosition.AutoSize = True + Me.lblPosition.Location = New System.Drawing.Point(11, 92) + Me.lblPosition.Name = "lblPosition" + Me.lblPosition.Size = New System.Drawing.Size(44, 13) + Me.lblPosition.TabIndex = 2 + Me.lblPosition.Text = "Position" + ' + 'lbldatum + ' + Me.lbldatum.AutoSize = True + Me.lbldatum.Location = New System.Drawing.Point(11, 38) + Me.lbldatum.Name = "lbldatum" + Me.lbldatum.Size = New System.Drawing.Size(38, 13) + Me.lbldatum.TabIndex = 1 + Me.lbldatum.Text = "Datum" + ' + 'dtdatum + ' + ' + ' + ' + Me.dtdatum.BackgroundStyle.Class = "DateTimeInputBackground" + Me.dtdatum.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.dtdatum.ButtonDropDown.Visible = True + Me.dtdatum.IsPopupCalendarOpen = False + Me.dtdatum.Location = New System.Drawing.Point(85, 35) + ' + ' + ' + ' + ' + ' + Me.dtdatum.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.dtdatum.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.DisplayMonth = New Date(2015, 6, 1, 0, 0, 0, 0) + Me.dtdatum.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + ' + ' + ' + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.TodayButtonVisible = True + Me.dtdatum.Name = "dtdatum" + Me.dtdatum.Size = New System.Drawing.Size(177, 20) + Me.dtdatum.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.dtdatum.TabIndex = 0 + ' + 'GrpLeistungen + ' + Me.GrpLeistungen.Controls.Add(Me.C1Leistungen) + Me.GrpLeistungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.GrpLeistungen.Location = New System.Drawing.Point(0, 0) + Me.GrpLeistungen.Name = "GrpLeistungen" + Me.GrpLeistungen.Size = New System.Drawing.Size(842, 158) + Me.GrpLeistungen.TabIndex = 3 + Me.GrpLeistungen.TabStop = False + Me.GrpLeistungen.Text = "Leistungen" + ' + 'C1Leistungen + ' + Me.C1Leistungen.AlternatingRows = True + Me.C1Leistungen.ContextMenuStrip = Me.ctxMenuLeistung + Me.C1Leistungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Leistungen.FilterBar = True + Me.C1Leistungen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Leistungen.Images.Add(CType(resources.GetObject("C1Leistungen.Images"), System.Drawing.Image)) + Me.C1Leistungen.Location = New System.Drawing.Point(3, 16) + Me.C1Leistungen.Name = "C1Leistungen" + Me.C1Leistungen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Leistungen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Leistungen.PreviewInfo.ZoomFactor = 75.0R + Me.C1Leistungen.PrintInfo.PageSettings = CType(resources.GetObject("C1Leistungen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Leistungen.Size = New System.Drawing.Size(836, 139) + Me.C1Leistungen.TabIndex = 2 + Me.C1Leistungen.Text = "C1TrueDBGrid1" + Me.C1Leistungen.PropBag = resources.GetString("C1Leistungen.PropBag") + ' + 'ctxMenuLeistung + ' + Me.ctxMenuLeistung.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BearbeitenToolStripMenuItem, Me.LöschenToolStripMenuItem, Me.AnzeigenToolStripMenuItem}) + Me.ctxMenuLeistung.Name = "ctxMenuLeistung" + Me.ctxMenuLeistung.Size = New System.Drawing.Size(131, 70) + ' + 'BearbeitenToolStripMenuItem + ' + Me.BearbeitenToolStripMenuItem.Name = "BearbeitenToolStripMenuItem" + Me.BearbeitenToolStripMenuItem.Size = New System.Drawing.Size(130, 22) + Me.BearbeitenToolStripMenuItem.Text = "&Bearbeiten" + ' + 'LöschenToolStripMenuItem + ' + Me.LöschenToolStripMenuItem.Name = "LöschenToolStripMenuItem" + Me.LöschenToolStripMenuItem.Size = New System.Drawing.Size(130, 22) + Me.LöschenToolStripMenuItem.Text = "&Löschen" + ' + 'AnzeigenToolStripMenuItem + ' + Me.AnzeigenToolStripMenuItem.Name = "AnzeigenToolStripMenuItem" + Me.AnzeigenToolStripMenuItem.Size = New System.Drawing.Size(130, 22) + Me.AnzeigenToolStripMenuItem.Text = "Anzeigen" + ' + 'Panel2 + ' + Me.Panel2.Controls.Add(Me.GrpTarif) + Me.Panel2.Controls.Add(Me.grpLeistungsdetails) + Me.Panel2.Dock = System.Windows.Forms.DockStyle.Top + Me.Panel2.Location = New System.Drawing.Point(0, 25) + Me.Panel2.Name = "Panel2" + Me.Panel2.Size = New System.Drawing.Size(842, 284) + Me.Panel2.TabIndex = 4 + ' + 'Panel3 + ' + Me.Panel3.Controls.Add(Me.GrpLeistungen) + Me.Panel3.Dock = System.Windows.Forms.DockStyle.Fill + Me.Panel3.Location = New System.Drawing.Point(0, 309) + Me.Panel3.Name = "Panel3" + Me.Panel3.Size = New System.Drawing.Size(842, 158) + Me.Panel3.TabIndex = 5 + ' + 'Leistungen + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.Panel3) + Me.Controls.Add(Me.Panel2) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "Leistungen" + Me.Size = New System.Drawing.Size(842, 467) + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.GrpTarif.ResumeLayout(False) + Me.TabTarife.ResumeLayout(False) + Me.TabPage1.ResumeLayout(False) + Me.TabPage1.PerformLayout() + Me.ToolStrip2.ResumeLayout(False) + Me.ToolStrip2.PerformLayout() + CType(Me.TreeTarifGruppen, System.ComponentModel.ISupportInitialize).EndInit() + Me.TabPage2.ResumeLayout(False) + Me.Panel1.ResumeLayout(False) + Me.Panel1.PerformLayout() + CType(Me.intAnzahl, System.ComponentModel.ISupportInitialize).EndInit() + Me.grpLeistungsdetails.ResumeLayout(False) + Me.grpLeistungsdetails.PerformLayout() + CType(Me.diwert, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DIMenge, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DIPunkte, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).EndInit() + Me.GrpLeistungen.ResumeLayout(False) + CType(Me.C1Leistungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ctxMenuLeistung.ResumeLayout(False) + Me.Panel2.ResumeLayout(False) + Me.Panel3.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents GrpTarif As System.Windows.Forms.GroupBox + Friend WithEvents grpLeistungsdetails As System.Windows.Forms.GroupBox + Friend WithEvents TabTarife As System.Windows.Forms.TabControl + Friend WithEvents TabPage1 As System.Windows.Forms.TabPage + Friend WithEvents TabPage2 As System.Windows.Forms.TabPage + Friend WithEvents Panel1 As System.Windows.Forms.Panel + Friend WithEvents lblAnzahl As System.Windows.Forms.Label + Friend WithEvents GrpLeistungen As System.Windows.Forms.GroupBox + Friend WithEvents intAnzahl As DevComponents.Editors.IntegerInput + Friend WithEvents txtPosition As System.Windows.Forms.TextBox + Friend WithEvents lblPosition As System.Windows.Forms.Label + Friend WithEvents lbldatum As System.Windows.Forms.Label + Friend WithEvents dtdatum As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents lblWert As System.Windows.Forms.Label + Friend WithEvents diwert As DevComponents.Editors.DoubleInput + Friend WithEvents lblMenge As System.Windows.Forms.Label + Friend WithEvents DIMenge As DevComponents.Editors.DoubleInput + Friend WithEvents lblTaxpunkte As System.Windows.Forms.Label + Friend WithEvents DIPunkte As DevComponents.Editors.DoubleInput + Friend WithEvents BtnInsertLeistung As System.Windows.Forms.Button + Friend WithEvents txtTotal As System.Windows.Forms.Label + Friend WithEvents Panel2 As System.Windows.Forms.Panel + Friend WithEvents Panel3 As System.Windows.Forms.Panel + Friend WithEvents Panel4 As System.Windows.Forms.Panel + Friend WithEvents ToolStrip2 As System.Windows.Forms.ToolStrip + Friend WithEvents tsUp As System.Windows.Forms.ToolStripButton + Friend WithEvents tsDown As System.Windows.Forms.ToolStripButton + Friend WithEvents txtfilter As System.Windows.Forms.ToolStripTextBox + Friend WithEvents lblbehandler As System.Windows.Forms.Label + Friend WithEvents cbboxnrbehandler As DPM2016.MyCombobox + Friend WithEvents txtBezD As System.Windows.Forms.TextBox + Friend WithEvents lblBeschreibung As System.Windows.Forms.Label + Friend WithEvents C1Leistungen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ctxMenuLeistung As System.Windows.Forms.ContextMenuStrip + Friend WithEvents BearbeitenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents LöschenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents lbtarif1 As DevComponents.DotNetBar.ListBoxAdv + Friend WithEvents TreeTarifGruppen As DevComponents.AdvTree.AdvTree + Friend WithEvents Node1 As DevComponents.AdvTree.Node + Friend WithEvents NodeConnector1 As DevComponents.AdvTree.NodeConnector + Friend WithEvents ElementStyle1 As DevComponents.DotNetBar.ElementStyle + Friend WithEvents btnPaketeinfuegen As System.Windows.Forms.Button + Friend WithEvents lbPakete As DevComponents.DotNetBar.ListBoxAdv + Friend WithEvents tslabelbhtotal As System.Windows.Forms.ToolStripLabel + Friend WithEvents AnzeigenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + +End Class diff --git a/DPM2016/Behandlung/Leistungen.resx b/DPM2016/Behandlung/Leistungen.resx new file mode 100644 index 0000000..a5ab83d --- /dev/null +++ b/DPM2016/Behandlung/Leistungen.resx @@ -0,0 +1,199 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 124, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + 379, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 834, 137</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 834, 137</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/Behandlung/Leistungen.vb b/DPM2016/Behandlung/Leistungen.vb new file mode 100644 index 0000000..374c028 --- /dev/null +++ b/DPM2016/Behandlung/Leistungen.vb @@ -0,0 +1,784 @@ +Public Class Leistungen + + Dim db As New clsDB + + Dim m_behandlungnr As Integer + Property Behandlungnr As Integer + Get + Return m_behandlungnr + End Get + Set(value As Integer) + m_behandlungnr = value + load_data() + End Set + End Property + + Dim m_dentotar As Boolean = False + Property Dentotar As Boolean + Get + Return m_dentotar + End Get + Set(value As Boolean) + m_dentotar = value + load_data() + End Set + End Property + + Dim m_Behandlungsstatus As Integer + Property Behandlungsstatus As Integer + Get + Return m_Behandlungsstatus + End Get + Set(value As Integer) + m_Behandlungsstatus = value + Select Case value + Case 1, 4 + Me.grpLeistungsdetails.Enabled = True + Me.GrpTarif.Enabled = True + Me.BearbeitenToolStripMenuItem.Enabled = True + Me.LöschenToolStripMenuItem.Enabled = True + Case Else + Me.grpLeistungsdetails.Enabled = False + Me.GrpTarif.Enabled = False + Me.BearbeitenToolStripMenuItem.Enabled = False + Me.LöschenToolStripMenuItem.Enabled = False + End Select + End Set + End Property + + + + Enum Taxpunkttyp + Privat = 1 + Suva = 2 + Minmal = 3 + Maximal = 4 + Dentotar = 5 + End Enum + Dim m_taxpunkte As Taxpunkttyp + Property TaxPunkte As Taxpunkttyp + Get + Return m_taxpunkte + End Get + Set(value As Taxpunkttyp) + m_taxpunkte = value + End Set + End Property + + Dim intSort As Integer = 0 + + Dim m_frankenwert As Double + Property Frankenwert As Double + Get + Return m_frankenwert + End Get + Set(value As Double) + m_frankenwert = value + Me.diwert.Value = value + End Set + End Property + + Dim m_behandler As Integer + Property behandler As Integer + Get + Return m_behandler + End Get + Set(value As Integer) + m_behandler = value + End Set + End Property + + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + + Sub load_data() + Try + + db.Get_Tarife() + Me.TreeTarifGruppen.Nodes.Clear() + If Dentotar = True Then + For Each r As DataRow In IntTables.Inttables.Tables("Tarife").Rows + Select Case Trim(r("Bezeichnung")) + Case "Dentotar" + Dim tn As New DevComponents.AdvTree.Node + tn.Text = r("Bezeichnung") + Me.TreeTarifGruppen.Nodes.Add(tn) + Dim sortstring As String = "KapitelNrNeu" + Dim dv As New DataView(IntTables.Inttables.Tables("dentotar"), "Level=1 and KapitelNrNeu<>'00'", sortstring, DataViewRowState.CurrentRows) + For Each rowView As DataRowView In dv + Dim r2 As DataRow = rowView.Row + Dim tn1 As New DevComponents.AdvTree.Node + tn1.Text = r2("Leistungd") + tn1.DataKey = r2("KapitelnrNeu") + tn1.Tag = r2("KapitelLeistung") + tn.Nodes.Add(tn1) + Next + + Case "SSO-Tarif 01.04.1994" + Case Else + Dim tn As New DevComponents.AdvTree.Node + tn.Text = r("bezeichnung") + tn.DataKey = r("nummervon") + tn.Tag = r("nummerbis") + 'tn.Tag = r("nummervon") + Me.TreeTarifGruppen.Nodes.Add(tn) + For Each r1 As DataRow In IntTables.Inttables.Tables("tarifgrp").Rows + If r1("tarifvon").ToString >= tn.DataKey.ToString And r1("tarifbis").ToString <= tn.Tag.ToString Then + Dim tn1 As New DevComponents.AdvTree.Node + tn1.Text = r1("tarifgruppe") + tn1.DataKey = r1("tarifvon") + tn1.Tag = r1("tarifbis") + tn.Nodes.Add(tn1) + End If + Next + + End Select + Next + + Me.lbPakete.Items.Clear() + Me.lbPakete.DataSource = IntTables.Inttables.Tables("Tarpaket") + Me.lbPakete.DisplayMember = "Paketbezeichnung" + Me.lbPakete.ValueMember = "nrpaket" + Me.lbPakete.SelectedIndex = 0 + + Me.TreeTarifGruppen.SelectedNode = Me.TreeTarifGruppen.Nodes(0) + Me.cbboxnrbehandler.Dataselection = db.Get_SQL(2) + Me.cbboxnrbehandler.TableAlias = "Behandler_BH" + Me.cbboxnrbehandler.Table = "Behandler" + Me.cbboxnrbehandler.Displaymember = "Name" + Me.cbboxnrbehandler.Valuemember = "nrprivat" + Load_Tarif() + + Exit Sub + End If + + For Each r As DataRow In IntTables.Inttables.Tables("Tarife").Rows + If r("Bezeichnung") <> "Dentotar" Then + Dim tn As New DevComponents.AdvTree.Node + tn.Text = r("bezeichnung") + tn.DataKey = r("nummervon") + tn.Tag = r("nummerbis") + 'tn.Tag = r("nummervon") + Me.TreeTarifGruppen.Nodes.Add(tn) + For Each r1 As DataRow In IntTables.Inttables.Tables("tarifgrp").Rows + If r1("tarifvon").ToString >= tn.DataKey.ToString And r1("tarifbis").ToString <= tn.Tag.ToString Then + Dim tn1 As New DevComponents.AdvTree.Node + tn1.Text = r1("tarifgruppe") + tn1.DataKey = r1("tarifvon") + tn1.Tag = r1("tarifbis") + tn.Nodes.Add(tn1) + End If + Next + End If + + Next + + Me.lbPakete.Items.Clear() + Me.lbPakete.DataSource = IntTables.Inttables.Tables("Tarpaket") + Me.lbPakete.DisplayMember = "Paketbezeichnung" + Me.lbPakete.ValueMember = "nrpaket" + Me.lbPakete.SelectedIndex = 0 + + Me.TreeTarifGruppen.SelectedNode = Me.TreeTarifGruppen.Nodes(0) + Me.cbboxnrbehandler.Dataselection = db.Get_SQL(2) + Me.cbboxnrbehandler.TableAlias = "Behandler_BH" + Me.cbboxnrbehandler.Table = "Behandler" + Me.cbboxnrbehandler.Displaymember = "Name" + Me.cbboxnrbehandler.Valuemember = "nrprivat" + Load_Tarif() + Catch ex As Exception + MsgBox(ex.Message) + End Try + + + End Sub + + Sub Load_Tarif() + Dim dv As DataView + Dim dv1 As DataView + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + + Try + Dim db As New DataView(IntTables.Inttables.Tables("Dentotar")) + Dim sortstring As String = "leistungnrneu, leistungd" + Dim Wherestring As String = "Level=3 and Kapitelleistung='Lei' and KapitelNrNeu like '" + Me.TreeTarifGruppen.SelectedNode.DataKeyString + "%'" + dv = New DataView(IntTables.Inttables.Tables("dentotar"), Wherestring, sortstring, DataViewRowState.CurrentRows) + Me.lbtarif1.DataSource = Nothing + Me.lbtarif1.DataSource = dv + Me.lbtarif1.DisplayMember = "nr_bez" + Me.lbtarif1.ValueMember = "LeistungNrNeu" + Exit Sub + + Catch ex As Exception + MsgBox(ex.Message) + End Try + + End If + db.Get_Tarif() + Try + Dim SortString As String = "" + If intSort = 0 Then + SortString = "Nr_Bez asc" + Else + SortString = "Nr_Bez desc" + End If + dv1 = New DataView(IntTables.Inttables.Tables("Tarif"), "SSO_Nummer >=" + Me.TreeTarifGruppen.SelectedNode.DataKeyString + " and SSO_Nummer <=" + Me.TreeTarifGruppen.SelectedNode.TagString, SortString, DataViewRowState.CurrentRows) + + + + lbtarif1.DataSource = Nothing + lbtarif1.DataSource = dv1 + lbtarif1.DisplayMember = "nr_Bez" + lbtarif1.ValueMember = "nrtarif" + + Catch ex As Exception + 'MsgBox(ex.Message) + End Try + + End Sub + + + Private Sub lbtarif_SelectedIndexChanged(sender As Object, e As EventArgs) + Load_Tarif() + End Sub + + Private Sub tsUp_Click(sender As Object, e As EventArgs) Handles tsUp.Click + intSort = 0 + Load_Tarif() + End Sub + + Private Sub tsDown_Click(sender As Object, e As EventArgs) Handles tsDown.Click + intSort = 1 + Load_Tarif() + End Sub + + Private Sub txtfilter_KeyDown(sender As Object, e As KeyEventArgs) Handles txtfilter.KeyDown + If e.KeyCode <> Keys.Enter Then + + + End If + End Sub + + Private Sub txtfilter_KeyUp(sender As Object, e As KeyEventArgs) Handles txtfilter.KeyUp + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + If e.KeyCode <> Keys.Enter Then + Me.lbtarif1.DataSource = Nothing + Dim sortstring As String + Dim wherestring As String + + Dim db As New DataView(IntTables.Inttables.Tables("Dentotar"), "", "leistungnrneu", DataViewRowState.CurrentRows) + db.RowFilter = "nr_bez like '%" + Me.txtfilter.Text + "%'" + Me.lbtarif1.DataSource = db + Me.lbtarif1.DisplayMember = "nr_bez" + Me.lbtarif1.ValueMember = "LeistungNrNeu" + End If + Exit Sub + End If + + If e.KeyCode <> Keys.Enter Then + Me.lbtarif1.DataSource = Nothing + Dim SortString As String = "" + If intSort = 0 Then + SortString = "Nr_Bez asc" + Else + SortString = "Nr_Bez desc" + End If + + 'Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "nrtarifgruppe=" + Me.lbtarife.SelectedValue.ToString, SortString, DataViewRowState.CurrentRows) + 'Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "SSO_Nummer >=" + Me.TreeTarifGruppen.SelectedNode.DataKeyString + " and SSO_Nummer <=" + Me.TreeTarifGruppen.SelectedNode.TagString, SortString, DataViewRowState.CurrentRows) + Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "", SortString, DataViewRowState.CurrentRows) + + dv.RowFilter = "NR_BEZ like '%" + Me.txtfilter.Text + "%'" + Me.lbtarif1.DataSource = dv + Me.lbtarif1.DisplayMember = "nr_Bez" + Me.lbtarif1.ValueMember = "nrtarif" + Else + Try + If Me.lbtarif1.SelectedItems.Count = 1 Then + Me.lbtarif1_ItemClick(sender, e) + Me.lbtarif1_ItemDoubleClick(sender, e) + Me.txtfilter.SelectAll() + End If + + Catch ex As Exception + Me.txtfilter.SelectAll() + + End Try + End If + End Sub + + Private Sub lbtarif1_ItemClick(sender As Object, e As EventArgs) Handles lbtarif1.ItemClick + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + Dim sortstring As String = "" + Dim wherestring As String = "Leistungnrneu='" + Me.lbtarif1.SelectedValue.ToString + "'" + Dim db As New DataView(IntTables.Inttables.Tables("Dentotar"), wherestring, sortstring, DataViewRowState.CurrentRows) + 'Me.txtPosition.Text = db.Item("Leistungnrneu").ToString + Me.txtPosition.Text = Me.lbtarif1.SelectedValue.ToString + txtPosition_TextChanged(sender, e) + Exit Sub + + End If + Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "nrtarif=" + Me.lbtarif1.SelectedValue.ToString, "", DataViewRowState.CurrentRows) + For Each drv As DataRowView In dv + Me.txtPosition.Text = drv.Item("sso_nummer").ToString + txtPosition_TextChanged(sender, e) + Exit Sub + Next + End Sub + + Private Sub lbtarif1_ItemDoubleClick(sender As Object, e As EventArgs) Handles lbtarif1.ItemDoubleClick + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + Dim dv1 As New DataView(IntTables.Inttables.Tables("Dentotar"), "Leistungnrneu='" + Me.lbtarif1.SelectedValue.ToString + "'", "", DataViewRowState.CurrentRows) + For Each drv As DataRowView In dv1 + Me.txtPosition.Text = drv.Item("Leistungnrneu").ToString + txtPosition_TextChanged(sender, e) + Me.BtnInsertLeistung_Click(sender, e) + Exit Sub + Next + + Exit Sub + + End If + Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "nrtarif=" + Me.lbtarif1.SelectedValue.ToString, "", DataViewRowState.CurrentRows) + For Each drv As DataRowView In dv + Me.txtPosition.Text = drv.Item("sso_nummer").ToString + txtPosition_TextChanged(sender, e) + Me.BtnInsertLeistung_Click(sender, e) + Exit Sub + Next + + End Sub + + Private Sub txtPosition_TextChanged(sender As Object, e As EventArgs) Handles txtPosition.Leave + If Me.dtdatum.Value = "00:00:00" Then Me.dtdatum.Value = Now + Try + If cbboxnrbehandler.SelectedValue < 1 Then Me.cbboxnrbehandler.SelectedValue = Me.behandler + Catch ex As Exception + Me.cbboxnrbehandler.SelectedValue = Me.behandler + End Try + 'Me.cbboxnrbehandler.SelectedValue = Me.behandler + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + Dim sortstring As String = "" + Dim wherestring As String = "LeistungnrNeu='" + Me.txtPosition.Text + "'" + Dim dv1 As New DataView(IntTables.Inttables.Tables("Dentotar"), wherestring, sortstring, DataViewRowState.CurrentRows) + Dim dr As DataRowView + dr = dv1(0) + If dr.Item("Abrechnungseinheit") = "TP" Then + Select Case Me.TaxPunkte + Case Taxpunkttyp.Maximal + Me.DIPunkte.Value = dr.Item("pp_max") + Case Taxpunkttyp.Minmal + Me.DIPunkte.Value = dr.Item("pp_min") + Case Taxpunkttyp.Privat + Me.DIPunkte.Value = dr.Item("pp_privat") + Case Taxpunkttyp.Suva + Me.DIPunkte.Value = dr.Item("Taxpunkte_UV_MV_IV") + Case Taxpunkttyp.Dentotar + Me.DIPunkte.Value = dr.Item("Taxpunkte_UV_MV_IV") + Case Else + + End Select + End If + Me.DIMenge.Text = 1 + Me.diwert.Text = 1 + Me.DIPunkte.Enabled = True + Me.txtBezD.Text = dr.Item("LeistungD") + Exit Sub + + End If + Dim dv As New DataView(IntTables.Inttables.Tables("Tarif"), "sso_nummer=" + Me.txtPosition.Text.ToString, "", DataViewRowState.CurrentRows) + For Each drv As DataRowView In dv + If drv.Item("Frankenbetrag") < 0.1 Then + Select Case Me.TaxPunkte + Case Taxpunkttyp.Maximal + Me.DIPunkte.Value = drv.Item("maximaltarif") + Case Taxpunkttyp.Minmal + Me.DIPunkte.Value = drv.Item("minimaltarif") + Case Taxpunkttyp.Privat + Me.DIPunkte.Value = drv.Item("privattarif") + Case Taxpunkttyp.Suva + Me.DIPunkte.Value = drv.Item("suvatarif") + Case Taxpunkttyp.Dentotar + Me.DIPunkte.Value = drv.Item("Taxpunkte_UV_MV_IV") + Case Else + + End Select + Me.DIMenge.Text = 1 + Me.diwert.Text = Me.Frankenwert + Me.DIPunkte.Enabled = True + Me.txtBezD.Text = drv.Item("BezD") + Else + Me.DIPunkte.Value = 0 + Me.DIPunkte.Enabled = False + Me.DIMenge.Value = 1 + Dim b As Double + + b = drv.Item("Frankenbetrag") + Me.diwert.Value = b + Me.txtBezD.Text = drv.Item("BezD") + End If + Exit Sub + Next + End Sub + + Private Sub DIPunkte_ValueChanged(sender As Object, e As EventArgs) Handles DIPunkte.ValueChanged, DIMenge.ValueChanged, diwert.ValueChanged + Try + Dim total As Double + If DIPunkte.Value > 0 Then + total = DIPunkte.Value * DIMenge.Value * diwert.Value + Me.txtTotal.Text = total.ToString("N2") + Else + total = DIMenge.Value * diwert.Value + Me.txtTotal.Text = total.ToString("N2") + End If + + Catch + End Try + End Sub + + Private Sub BtnInsertLeistung_Click(sender As Object, e As EventArgs) Handles BtnInsertLeistung.Click + leistung_einfuegen() + End Sub + + Private Sub diwert_KeyDown(sender As Object, e As KeyEventArgs) Handles txtPosition.KeyDown, txtBezD.KeyDown, diwert.KeyDown, DIPunkte.KeyDown, DIMenge.KeyDown + If e.KeyCode = Keys.Enter Then + + If sender.name = "txtPosition" Then Me.txtPosition_TextChanged(sender, e) + Leistung_Einfuegen() + Me.txtPosition.Focus() + Me.txtPosition.SelectAll() + End If + End Sub + + Sub Leistung_Einfuegen_Dentotar(ByVal SSONummer As String, ByVal anzahl As Integer) + Dim dv As DataView + Dim sortstring As String = "" + Dim wherestring As String = "LeistungNrNeu='" + Me.txtPosition.Text.ToString + "'" + + If SSONummer = "" Then + dv = New DataView(IntTables.Inttables.Tables("Dentotar"), wherestring, sortstring, DataViewRowState.CurrentRows) + Else + wherestring = SSONummer + dv = New DataView(IntTables.Inttables.Tables("Dentotar"), wherestring, sortstring, DataViewRowState.CurrentRows) + + End If + Dim drv As DataRowView = dv(0) + Dim db As New clsDB + Dim newkey As Integer = db.Get_DBKey("Leistung") + + db.Get_Tabledata("Leistung", " where nrleistung=0") + + Dim r As DataRow + r = db.dsDaten.Tables(0).NewRow + + r.Item(0) = newkey + r.Item("Erstellt_am") = Now + r.Item("mutiert_am") = Now + r.Item("mutierer") = Globals.ActUser + r.Item("aktiv") = True + + r.Item("Datum") = Me.dtdatum.Value + r.Item("nrbehandlung") = Me.Behandlungnr + r.Item("mandant") = 1 + r.Item("nrtarifgruppe") = 0 + r.Item("nrtarif") = 0 + r.Item("sso_nummer") = drv("LeistungNrNeu") + If SSONummer = "" Then + r.Item("bezd") = Me.txtBezD.Text + Else + r.Item("bezd") = drv("Leistungd") + End If + + If SSONummer = "" Then + r.Item("taxpunkte") = Me.DIPunkte.Value + Else + If drv.Item("Frankenbetrag") < 0.1 Then + Select Case Me.TaxPunkte + Case Taxpunkttyp.Maximal + r.Item("taxpunkte") = drv.Item("pp_amx") + Case Taxpunkttyp.Minmal + r.Item("taxpunkte") = drv.Item("pp_min") + Case Taxpunkttyp.Privat + r.Item("taxpunkte") = drv.Item("pp_privat") + Case Taxpunkttyp.Suva + r.Item("taxpunkte") = drv.Item("Taxpunkte_UV_MV_IV") + Case Taxpunkttyp.Dentotar + Me.DIPunkte.Value = drv.Item("Taxpunkte_UV_MV_IV") + Case Else + + End Select + End If + End If + + If SSONummer = "" Then + r.Item("menge") = Me.DIMenge.Value + Else + r.Item("menge") = anzahl + End If + If SSONummer = "" Then + r.Item("frankenprotaxpunkt") = Me.diwert.Value + Else + r.Item("frankenprotaxpunkt") = Frankenwert + End If + + If SSONummer = "" Then + r.Item("total") = Me.txtTotal.Text + Else + Dim total As Double + If drv.Item("frankenbetrag") < 0.1 Then + total = r.Item("taxpunkte") * anzahl * 1 + r.Item("total") = total.ToString("N2") + Else + total = anzahl * 1 + r.Item("total") = total.ToString("N2") + + End If + End If + + If DIPunkte.Enabled = False Then r.Item("absolut") = 1 Else r.Item("absolut") = 0 + r.Item("nrbehandler") = Me.cbboxnrbehandler.SelectedValue + db.dsDaten.Tables(0).Rows.Add(r) + db.Update_Data() + db.Dispose() + refresh_leistungen() + + End Sub + + Sub Leistung_Einfuegen(Optional ssonummer As String = "", Optional anzahl As Integer = 1) + If Dentotar = True And Len(Me.TreeTarifGruppen.SelectedNode.DataKeyString) < 3 Then + Leistung_Einfuegen_Dentotar(ssonummer, anzahl) + Exit Sub + End If + + + Dim dv As DataView + If ssonummer = "" Then + dv = New DataView(IntTables.Inttables.Tables("Tarif"), "sso_nummer=" + Me.txtPosition.Text.ToString, "", DataViewRowState.CurrentRows) + Else + dv = New DataView(IntTables.Inttables.Tables("Tarif"), "sso_nummer=" + ssonummer.ToString, "", DataViewRowState.CurrentRows) + End If + Dim drv As DataRowView = dv(0) + + Dim db As New clsDB + Dim newkey As Integer = db.Get_DBKey("Leistung") + + db.Get_Tabledata("Leistung", " where nrleistung=0") + + Dim r As DataRow + r = db.dsDaten.Tables(0).NewRow + + r.Item(0) = newkey + r.Item("Erstellt_am") = Now + r.Item("mutiert_am") = Now + r.Item("mutierer") = Globals.ActUser + r.Item("aktiv") = True + + r.Item("Datum") = Me.dtdatum.Value + r.Item("nrbehandlung") = Me.Behandlungnr + r.Item("mandant") = 1 + r.Item("nrtarifgruppe") = drv("NrTarifgruppe") + r.Item("nrtarif") = drv("Nrtarif") + r.Item("sso_nummer") = drv("SSO_Nummer") + If ssonummer = "" Then + r.Item("bezd") = Me.txtBezD.Text + Else + r.Item("bezd") = drv("bezd") + End If + + If ssonummer = "" Then + r.Item("taxpunkte") = Me.DIPunkte.Value + Else + If drv.Item("Frankenbetrag") < 0.1 Then + Select Case Me.TaxPunkte + Case Taxpunkttyp.Maximal + r.Item("taxpunkte") = drv.Item("maximaltarif") + Case Taxpunkttyp.Minmal + r.Item("taxpunkte") = drv.Item("minimaltarif") + Case Taxpunkttyp.Privat + r.Item("taxpunkte") = drv.Item("privattarif") + Case Taxpunkttyp.Suva + r.Item("taxpunkte") = drv.Item("suvatarif") + Case Taxpunkttyp.Dentotar + Me.DIPunkte.Value = drv.Item("Taxpunkte_UV_MV_IV") + Case Else + + End Select + End If + End If + + If ssonummer = "" Then + r.Item("menge") = Me.DIMenge.Value + Else + r.Item("menge") = anzahl + End If + If ssonummer = "" Then + r.Item("frankenprotaxpunkt") = Me.diwert.Value + Else + r.Item("frankenprotaxpunkt") = Frankenwert + End If + + If ssonummer = "" Then + r.Item("total") = Me.txtTotal.Text + Else + Dim total As Double + If drv.Item("frankenbetrag") < 0.1 Then + total = r.Item("taxpunkte") * anzahl * r.Item("Frankenprotaxpunkt") + r.Item("total") = total.ToString("N2") + Else + total = anzahl * r.Item("frankenprotaxpunkt").value + r.Item("total") = total.ToString("N2") + + End If + End If + + If DIPunkte.Enabled = False Then r.Item("absolut") = 1 Else r.Item("absolut") = 0 + r.Item("nrbehandler") = Me.cbboxnrbehandler.SelectedValue + db.dsDaten.Tables(0).Rows.Add(r) + db.Update_Data() + db.Dispose() + refresh_leistungen() + + End Sub + + Dim ldb As New clsDB + Dim spalten As New Tabellenspalte + Sub refresh_leistungen() + Me.C1Leistungen.DataSource = Nothing + ldb.dsDaten.Tables.Clear() + ldb.Get_Tabledata("Leistung", " where aktiv=1 and nrbehandlung=" + Me.Behandlungnr.ToString + " and aktiv=1") + Me.C1Leistungen.DataSource = ldb.dsDaten.Tables(0) + Me.C1Leistungen.DataMember = ldb.dsDaten.Tables(0).TableName + spalten.Spaltentitel_aktualisieren(Me.C1Leistungen, ldb.dsDaten.Tables(0).TableName, ldb.dsDaten.Tables(0)) + EVH.Fire_Leistung_Changed(Me.Behandlungnr, calc_Leistungstotal) + End Sub + + Private Sub BearbeitenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BearbeitenToolStripMenuItem.Click + Me.C1Leistungen_DoubleClick(sender, e) + End Sub + + Private Sub LöschenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles LöschenToolStripMenuItem.Click + Try + If MsgBox("Leistung wirklich löschen?", vbYesNo + vbQuestion) = MsgBoxResult.Yes Then + If Me.C1Leistungen.SelectedRows.Count < 2 Then + ldb.delete_leistung(Me.C1Leistungen.Columns("nrleistung").Value) + refresh_leistungen() + Exit Sub + End If + If Me.C1Leistungen.SelectedRows.Count > 1 Then + Dim colRows As C1.Win.C1TrueDBGrid.SelectedRowCollection + + Dim cl As New Collection + + colRows = Me.C1Leistungen.SelectedRows + For ic = 0 To colRows.Count - 1 + cl.Add(Me.C1Leistungen.Columns(0).CellValue(colRows(ic))) + Next ic + For i = 1 To cl.Count + ldb.delete_leistung(cl(i)) + Next + refresh_leistungen() + End If + End If + Catch ex As Exception + + End Try + End Sub + + + + Private Sub TreeTarifGruppen_NodeClick(sender As Object, e As DevComponents.AdvTree.TreeNodeMouseEventArgs) Handles TreeTarifGruppen.NodeClick + Load_Tarif() + End Sub + + Private Sub btnPaketeinfuegen_Click(sender As Object, e As EventArgs) Handles btnPaketeinfuegen.Click + If Me.dtdatum.Value = "00:00:00" Then Me.dtdatum.Value = Now + Try + If cbboxnrbehandler.SelectedValue < 1 Then Me.cbboxnrbehandler.SelectedValue = Me.behandler + Catch ex As Exception + Me.cbboxnrbehandler.SelectedValue = Me.behandler + End Try + Me.cbboxnrbehandler.SelectedValue = Me.behandler + + Dim dv As New DataView(IntTables.Inttables.Tables("paketpos"), "nrpaket=" + Me.lbPakete.SelectedValue.ToString, "", DataViewRowState.CurrentRows) + For Each drv As DataRowView In dv + Dim dvt As New DataView(IntTables.Inttables.Tables("Tarif"), "nrtarif=" + drv.Item("nrtarif").ToString, "", DataViewRowState.CurrentRows) + For Each dvtr As DataRowView In dvt + Leistung_Einfuegen(dvtr("SSO_Nummer").ToString, Me.intAnzahl.Value) + Next + Next + + End Sub + + + Public Function calc_Leistungstotal() As Double + Dim total As Double + For Each r As DataRow In ldb.dsDaten.Tables(0).Rows + If r("aktiv") = True Then + total = total + r("Total") + End If + Next + Return total + End Function + + Public Function Recalc_Leistungen() + ldb.Get_Tabledata("Leistung", " where aktiv=1 and nrbehandlung=" + Me.Behandlungnr.ToString + " and aktiv=1") + For Each r As DataRow In ldb.dsDaten.Tables(0).Rows + If r("absolut") = 0 Then + r("frankenprotaxpunkt") = Me.Frankenwert + r("total") = Globals.Round5(r("Menge") * r("Taxpunkte") * r("frankenprotaxpunkt")) + End If + Next + ldb.Update_Data() + refresh_leistungen() + End Function + + Private Sub lbPakete_DoubleClick(sender As Object, e As EventArgs) Handles lbPakete.DoubleClick + btnPaketeinfuegen_Click(sender, e) + End Sub + + + + Private Sub evh_Total_Berechnet(behandlungsnummer As Integer, Total As Double) Handles evh.Total_Berechnet + If Me.Behandlungnr = behandlungsnummer Then Me.tslabelbhtotal.Text = "Behandlungstotal: " + Total.ToString("N2") + End Sub + + Private Sub C1Leistungen_DoubleClick(sender As Object, e As EventArgs) Handles C1Leistungen.DoubleClick + Try + Dim f As New frmLeistungDetail + f.cbboxnrbehandler.Dataselection = db.Get_SQL(2) + f.cbboxnrbehandler.TableAlias = "Behandler_BH" + f.cbboxnrbehandler.Table = "Behandler" + f.cbboxnrbehandler.Displaymember = "Name" + f.cbboxnrbehandler.Valuemember = "nrprivat" + f.Leistungsnummer = C1Leistungen.Columns(0).Value + If Me.grpLeistungsdetails.Enabled = False Then f.IsReadonly = True Else f.IsReadonly = False + f.ShowDialog() + Me.refresh_leistungen() + Catch + End Try + + End Sub + + + + Private Sub AnzeigenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AnzeigenToolStripMenuItem.Click + Dim f As New frmLeistungDetail + f.cbboxnrbehandler.Dataselection = db.Get_SQL(2) + f.cbboxnrbehandler.TableAlias = "Behandler_BH" + f.cbboxnrbehandler.Table = "Behandler" + f.cbboxnrbehandler.Displaymember = "Name" + f.cbboxnrbehandler.Valuemember = "nrprivat" + f.Leistungsnummer = C1Leistungen.Columns(0).Value + f.IsReadonly = True + f.ShowDialog() + + + End Sub + + Private Sub GrpTarif_Enter(sender As Object, e As EventArgs) Handles GrpTarif.Enter + + End Sub + + Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked + + End Sub +End Class diff --git a/DPM2016/Behandlung/frmLeistungDetail.Designer.vb b/DPM2016/Behandlung/frmLeistungDetail.Designer.vb new file mode 100644 index 0000000..6d5878c --- /dev/null +++ b/DPM2016/Behandlung/frmLeistungDetail.Designer.vb @@ -0,0 +1,340 @@ + _ +Partial Class frmLeistungDetail + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.grpLeistungsdetails = New System.Windows.Forms.GroupBox() + Me.lblSSONummer = New System.Windows.Forms.Label() + Me.lblTarifnr = New System.Windows.Forms.Label() + Me.lblLeistungsbeschreibung = New System.Windows.Forms.Label() + Me.txtBezD = New System.Windows.Forms.TextBox() + Me.cbboxnrbehandler = New DPM2016.MyCombobox() + Me.lblbehandler = New System.Windows.Forms.Label() + Me.btnSave = New System.Windows.Forms.Button() + Me.txtTotal = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.lblWert = New System.Windows.Forms.Label() + Me.diwert = New DevComponents.Editors.DoubleInput() + Me.lblMenge = New System.Windows.Forms.Label() + Me.DIMenge = New DevComponents.Editors.DoubleInput() + Me.lblTaxpunkte = New System.Windows.Forms.Label() + Me.DIPunkte = New DevComponents.Editors.DoubleInput() + Me.lbldatum = New System.Windows.Forms.Label() + Me.dtdatum = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.grpLeistungsdetails.SuspendLayout() + CType(Me.diwert, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DIMenge, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.DIPunkte, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(272, 25) + Me.ToolStrip1.TabIndex = 1 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'grpLeistungsdetails + ' + Me.grpLeistungsdetails.Controls.Add(Me.lblSSONummer) + Me.grpLeistungsdetails.Controls.Add(Me.lblTarifnr) + Me.grpLeistungsdetails.Controls.Add(Me.lblLeistungsbeschreibung) + Me.grpLeistungsdetails.Controls.Add(Me.txtBezD) + Me.grpLeistungsdetails.Controls.Add(Me.cbboxnrbehandler) + Me.grpLeistungsdetails.Controls.Add(Me.lblbehandler) + Me.grpLeistungsdetails.Controls.Add(Me.btnSave) + Me.grpLeistungsdetails.Controls.Add(Me.txtTotal) + Me.grpLeistungsdetails.Controls.Add(Me.Label1) + Me.grpLeistungsdetails.Controls.Add(Me.lblWert) + Me.grpLeistungsdetails.Controls.Add(Me.diwert) + Me.grpLeistungsdetails.Controls.Add(Me.lblMenge) + Me.grpLeistungsdetails.Controls.Add(Me.DIMenge) + Me.grpLeistungsdetails.Controls.Add(Me.lblTaxpunkte) + Me.grpLeistungsdetails.Controls.Add(Me.DIPunkte) + Me.grpLeistungsdetails.Controls.Add(Me.lbldatum) + Me.grpLeistungsdetails.Controls.Add(Me.dtdatum) + Me.grpLeistungsdetails.Dock = System.Windows.Forms.DockStyle.Fill + Me.grpLeistungsdetails.Location = New System.Drawing.Point(0, 25) + Me.grpLeistungsdetails.Name = "grpLeistungsdetails" + Me.grpLeistungsdetails.Size = New System.Drawing.Size(272, 324) + Me.grpLeistungsdetails.TabIndex = 3 + Me.grpLeistungsdetails.TabStop = False + Me.grpLeistungsdetails.Text = "Leistungsdetails" + ' + 'lblSSONummer + ' + Me.lblSSONummer.AutoSize = True + Me.lblSSONummer.Location = New System.Drawing.Point(77, 25) + Me.lblSSONummer.Name = "lblSSONummer" + Me.lblSSONummer.Size = New System.Drawing.Size(31, 13) + Me.lblSSONummer.TabIndex = 26 + Me.lblSSONummer.Text = "0000" + ' + 'lblTarifnr + ' + Me.lblTarifnr.AutoSize = True + Me.lblTarifnr.Location = New System.Drawing.Point(6, 25) + Me.lblTarifnr.Name = "lblTarifnr" + Me.lblTarifnr.Size = New System.Drawing.Size(42, 13) + Me.lblTarifnr.TabIndex = 25 + Me.lblTarifnr.Text = "TarifNr." + ' + 'lblLeistungsbeschreibung + ' + Me.lblLeistungsbeschreibung.AutoSize = True + Me.lblLeistungsbeschreibung.Location = New System.Drawing.Point(6, 53) + Me.lblLeistungsbeschreibung.Name = "lblLeistungsbeschreibung" + Me.lblLeistungsbeschreibung.Size = New System.Drawing.Size(72, 13) + Me.lblLeistungsbeschreibung.TabIndex = 23 + Me.lblLeistungsbeschreibung.Text = "Beschreibung" + ' + 'txtBezD + ' + Me.txtBezD.Location = New System.Drawing.Point(80, 52) + Me.txtBezD.Multiline = True + Me.txtBezD.Name = "txtBezD" + Me.txtBezD.Size = New System.Drawing.Size(177, 45) + Me.txtBezD.TabIndex = 6 + ' + 'cbboxnrbehandler + ' + Me.cbboxnrbehandler.Dataselection = Nothing + Me.cbboxnrbehandler.Displaymember = Nothing + Me.cbboxnrbehandler.Location = New System.Drawing.Point(80, 129) + Me.cbboxnrbehandler.Name = "cbboxnrbehandler" + Me.cbboxnrbehandler.SelectedValue = Nothing + Me.cbboxnrbehandler.Size = New System.Drawing.Size(177, 22) + Me.cbboxnrbehandler.TabIndex = 1 + Me.cbboxnrbehandler.Table = Nothing + Me.cbboxnrbehandler.TableAlias = "" + Me.cbboxnrbehandler.Valuemember = Nothing + ' + 'lblbehandler + ' + Me.lblbehandler.AutoSize = True + Me.lblbehandler.Location = New System.Drawing.Point(6, 131) + Me.lblbehandler.Name = "lblbehandler" + Me.lblbehandler.Size = New System.Drawing.Size(55, 13) + Me.lblbehandler.TabIndex = 14 + Me.lblbehandler.Text = "Behandler" + ' + 'btnSave + ' + Me.btnSave.Location = New System.Drawing.Point(9, 244) + Me.btnSave.Name = "btnSave" + Me.btnSave.Size = New System.Drawing.Size(120, 23) + Me.btnSave.TabIndex = 7 + Me.btnSave.Text = "Speichern" + Me.btnSave.UseVisualStyleBackColor = True + ' + 'txtTotal + ' + Me.txtTotal.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtTotal.Location = New System.Drawing.Point(44, 216) + Me.txtTotal.Name = "txtTotal" + Me.txtTotal.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.txtTotal.Size = New System.Drawing.Size(92, 13) + Me.txtTotal.TabIndex = 12 + Me.txtTotal.Text = "0.00www" + Me.txtTotal.TextAlign = System.Drawing.ContentAlignment.MiddleRight + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label1.Location = New System.Drawing.Point(6, 216) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(36, 13) + Me.Label1.TabIndex = 10 + Me.Label1.Text = "Total" + ' + 'lblWert + ' + Me.lblWert.AutoSize = True + Me.lblWert.Location = New System.Drawing.Point(6, 191) + Me.lblWert.Name = "lblWert" + Me.lblWert.Size = New System.Drawing.Size(30, 13) + Me.lblWert.TabIndex = 9 + Me.lblWert.Text = "Wert" + ' + 'diwert + ' + ' + ' + ' + Me.diwert.BackgroundStyle.Class = "DateTimeInputBackground" + Me.diwert.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.diwert.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.diwert.Increment = 1.0R + Me.diwert.Location = New System.Drawing.Point(80, 187) + Me.diwert.Name = "diwert" + Me.diwert.ShowUpDown = True + Me.diwert.Size = New System.Drawing.Size(56, 20) + Me.diwert.TabIndex = 4 + ' + 'lblMenge + ' + Me.lblMenge.AutoSize = True + Me.lblMenge.Location = New System.Drawing.Point(6, 164) + Me.lblMenge.Name = "lblMenge" + Me.lblMenge.Size = New System.Drawing.Size(40, 13) + Me.lblMenge.TabIndex = 7 + Me.lblMenge.Text = "Menge" + ' + 'DIMenge + ' + ' + ' + ' + Me.DIMenge.BackgroundStyle.Class = "DateTimeInputBackground" + Me.DIMenge.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DIMenge.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.DIMenge.Increment = 1.0R + Me.DIMenge.Location = New System.Drawing.Point(80, 161) + Me.DIMenge.Name = "DIMenge" + Me.DIMenge.ShowUpDown = True + Me.DIMenge.Size = New System.Drawing.Size(56, 20) + Me.DIMenge.TabIndex = 3 + ' + 'lblTaxpunkte + ' + Me.lblTaxpunkte.AutoSize = True + Me.lblTaxpunkte.Location = New System.Drawing.Point(154, 164) + Me.lblTaxpunkte.Name = "lblTaxpunkte" + Me.lblTaxpunkte.Size = New System.Drawing.Size(41, 13) + Me.lblTaxpunkte.TabIndex = 5 + Me.lblTaxpunkte.Text = "Punkte" + ' + 'DIPunkte + ' + ' + ' + ' + Me.DIPunkte.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.DIPunkte.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.DIPunkte.Increment = 1.0R + Me.DIPunkte.Location = New System.Drawing.Point(201, 161) + Me.DIPunkte.Name = "DIPunkte" + Me.DIPunkte.ShowUpDown = True + Me.DIPunkte.Size = New System.Drawing.Size(56, 20) + Me.DIPunkte.TabIndex = 5 + ' + 'lbldatum + ' + Me.lbldatum.AutoSize = True + Me.lbldatum.Location = New System.Drawing.Point(6, 106) + Me.lbldatum.Name = "lbldatum" + Me.lbldatum.Size = New System.Drawing.Size(38, 13) + Me.lbldatum.TabIndex = 1 + Me.lbldatum.Text = "Datum" + ' + 'dtdatum + ' + ' + ' + ' + Me.dtdatum.BackgroundStyle.Class = "DateTimeInputBackground" + Me.dtdatum.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.dtdatum.ButtonDropDown.Visible = True + Me.dtdatum.IsPopupCalendarOpen = False + Me.dtdatum.Location = New System.Drawing.Point(80, 103) + ' + ' + ' + Me.dtdatum.MonthCalendar.AnnuallyMarkedDates = New Date(-1) {} + ' + ' + ' + Me.dtdatum.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.dtdatum.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.DisplayMonth = New Date(2015, 6, 1, 0, 0, 0, 0) + Me.dtdatum.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + Me.dtdatum.MonthCalendar.MarkedDates = New Date(-1) {} + Me.dtdatum.MonthCalendar.MonthlyMarkedDates = New Date(-1) {} + ' + ' + ' + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.TodayButtonVisible = True + Me.dtdatum.MonthCalendar.WeeklyMarkedDays = New System.DayOfWeek(-1) {} + Me.dtdatum.Name = "dtdatum" + Me.dtdatum.Size = New System.Drawing.Size(177, 20) + Me.dtdatum.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.dtdatum.TabIndex = 0 + ' + 'frmLeistungDetail + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(272, 349) + Me.Controls.Add(Me.grpLeistungsdetails) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "frmLeistungDetail" + Me.Text = "frmLeistungDetail" + Me.grpLeistungsdetails.ResumeLayout(False) + Me.grpLeistungsdetails.PerformLayout() + CType(Me.diwert, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DIMenge, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.DIPunkte, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents grpLeistungsdetails As System.Windows.Forms.GroupBox + Friend WithEvents txtBezD As System.Windows.Forms.TextBox + Friend WithEvents cbboxnrbehandler As DPM2016.MyCombobox + Friend WithEvents lblbehandler As System.Windows.Forms.Label + Friend WithEvents btnSave As System.Windows.Forms.Button + Friend WithEvents txtTotal As System.Windows.Forms.Label + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents lblWert As System.Windows.Forms.Label + Friend WithEvents diwert As DevComponents.Editors.DoubleInput + Friend WithEvents lblMenge As System.Windows.Forms.Label + Friend WithEvents DIMenge As DevComponents.Editors.DoubleInput + Friend WithEvents lblTaxpunkte As System.Windows.Forms.Label + Friend WithEvents DIPunkte As DevComponents.Editors.DoubleInput + Friend WithEvents lbldatum As System.Windows.Forms.Label + Friend WithEvents dtdatum As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents lblSSONummer As System.Windows.Forms.Label + Friend WithEvents lblTarifnr As System.Windows.Forms.Label + Friend WithEvents lblLeistungsbeschreibung As System.Windows.Forms.Label +End Class diff --git a/DPM2016/Behandlung/frmLeistungDetail.resx b/DPM2016/Behandlung/frmLeistungDetail.resx new file mode 100644 index 0000000..00da1f0 --- /dev/null +++ b/DPM2016/Behandlung/frmLeistungDetail.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/DPM2016/Behandlung/frmLeistungDetail.vb b/DPM2016/Behandlung/frmLeistungDetail.vb new file mode 100644 index 0000000..cbf9c0c --- /dev/null +++ b/DPM2016/Behandlung/frmLeistungDetail.vb @@ -0,0 +1,74 @@ +Public Class frmLeistungDetail + + Dim m_leistungsnummer As Integer + Property Leistungsnummer As Integer + Get + Return m_leistungsnummer + End Get + Set(value As Integer) + m_leistungsnummer = value + update_data() + End Set + End Property + + Dim m_IsReadOnly As Boolean + Property IsReadonly As Boolean + Get + Return m_IsReadOnly + End Get + Set(value As Boolean) + m_IsReadOnly = value + If value = True Then grpLeistungsdetails.Enabled = False Else grpLeistungsdetails.Enabled = True + End Set + End Property + + Private Sub frmLeistungDetail_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + End Sub + + Dim db As New clsDB + Sub Update_data() + + db.get_leistung(Me.Leistungsnummer) + Me.lblSSONummer.Text = db.dsDaten.Tables(0).Rows(0).Item("sso_nummer") + Me.txtBezD.Text = db.dsDaten.Tables(0).Rows(0).Item("bezd") + Me.dtdatum.Value = db.dsDaten.Tables(0).Rows(0).Item("datum") + Me.DIMenge.Value = db.dsDaten.Tables(0).Rows(0).Item("menge") + Me.DIPunkte.Value = db.dsDaten.Tables(0).Rows(0).Item("taxpunkte") + Me.diwert.Value = db.dsDaten.Tables(0).Rows(0).Item("frankenprotaxpunkt") + Me.cbboxnrbehandler.SelectedValue = db.dsDaten.Tables(0).Rows(0).Item("nrbehandler") + If DIPunkte.Value = 0 Then DIPunkte.Enabled = False Else DIPunkte.Enabled = True + Dim t As Double + t = db.dsDaten.Tables(0).Rows(0).Item("total") + Me.txtTotal.Text = t.ToString("N2") + + End Sub + + Private Sub DIPunkte_ValueChanged(sender As Object, e As EventArgs) Handles DIPunkte.ValueChanged, DIMenge.ValueChanged, diwert.ValueChanged + Try + Dim total As Double + If DIPunkte.Value > 0 Then + total = DIPunkte.Value * DIMenge.Value * diwert.Value + Me.txtTotal.Text = total.ToString("N2") + Else + total = DIMenge.Value * diwert.Value + Me.txtTotal.Text = total.ToString("N2") + End If + + Catch + End Try + End Sub + + Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click + Me.lblSSONummer.Text = db.dsDaten.Tables(0).Rows(0).Item("sso_nummer") + db.dsDaten.Tables(0).Rows(0).Item("bezd") = Me.txtBezD.Text + db.dsDaten.Tables(0).Rows(0).Item("datum") = Me.dtdatum.Value + db.dsDaten.Tables(0).Rows(0).Item("menge") = Me.DIMenge.Value + db.dsDaten.Tables(0).Rows(0).Item("taxpunkte") = Me.DIPunkte.Value + db.dsDaten.Tables(0).Rows(0).Item("frankenprotaxpunkt") = Me.diwert.Value + db.dsDaten.Tables(0).Rows(0).Item("nrbehandler") = Me.cbboxnrbehandler.SelectedValue + db.dsDaten.Tables(0).Rows(0).Item("total") = Me.txtTotal.Text + db.Update_Data() + Me.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/DPM2016.vbproj b/DPM2016/DPM2016.vbproj new file mode 100644 index 0000000..55a98c9 --- /dev/null +++ b/DPM2016/DPM2016.vbproj @@ -0,0 +1,412 @@ + + + + + Debug + AnyCPU + {C78BA301-98A0-41B2-B1C9-553567634286} + WinExe + DPM2016.My.MyApplication + DPM2016 + DPM2016 + 512 + WindowsForms + v4.0 + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + + AnyCPU + true + full + true + true + bin\Debug\ + DPM2016.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + false + + + AnyCPU + pdbonly + false + true + true + bin\Release\ + DPM2016.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + false + + + On + + + Binary + + + Off + + + On + + + + ..\..\..\Klassen\TreeViewAdv\Aga.Controls\bin\Debug\Aga.Controls.dll + + + + False + C:\Program Files (x86)\DotNetBar for Windows Forms\DevComponents.DotNetBar.Schedule.dll + + + False + C:\Program Files (x86)\DotNetBar for Windows Forms\DevComponents.DotNetBar2.dll + + + True + + + False + C:\Program Files (x86)\FastReports\FastReport.Net\FastReport.dll + + + False + C:\Program Files (x86)\FastReports\FastReport.Net\FastReport.Bars.dll + + + False + C:\Program Files (x86)\FastReports\FastReport.Net\FastReport.Editor.dll + + + False + ..\..\..\ITSM\Vertragsverwaltung\bin\Debug\FlexCel.dll + + + False + C:\Program Files (x86)\Syncfusion\Essential Studio\13.3.0.7\Assemblies\4.0\Syncfusion.Core.dll + + + + + + + + + + + + + + + + + + + + + + + + + ..\_FRReporting\bin\Debug\_FRReporting.dll + + + + + + + + + + + + + + + + + Behandlung.vb + + + UserControl + + + Benhandungdetail.vb + + + UserControl + + + frmLeistungDetail.vb + + + Form + + + Leistungen.vb + + + UserControl + + + + frmPrivatSelect.vb + + + Form + + + + frmprogress.vb + + + Form + + + + frmFakturierung.vb + + + Form + + + Finanzen.vb + + + UserControl + + + frmFirma.vb + + + Form + + + frmFirmaAP.vb + + + Form + + + Form + + + frmMain.vb + Form + + + Krankengeschichte.vb + + + UserControl + + + + Component + + + Patient.vb + + + Form + + + PatientAbrechnung.vb + + + UserControl + + + PatientDetails.vb + + + UserControl + + + + frmReportauswahl.vb + + + Form + + + frmReportView.vb + + + Form + + + frmAuswertungen.vb + + + Form + + + frmStammdaten.vb + + + Form + + + + clsStammdaten_Bez.vb + + + UserControl + + + clsStammdaten_flat.vb + + + UserControl + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + Form + + + + + + + Behandlung.vb + + + Benhandungdetail.vb + + + frmLeistungDetail.vb + + + Leistungen.vb + + + frmPrivatSelect.vb + + + frmprogress.vb + + + frmFakturierung.vb + + + Finanzen.vb + + + frmFirma.vb + + + frmFirmaAP.vb + + + frmMain.vb + + + Krankengeschichte.vb + + + Patient.vb + + + PatientAbrechnung.vb + + + PatientDetails.vb + + + frmReportauswahl.vb + + + frmReportView.vb + + + frmAuswertungen.vb + + + frmStammdaten.vb + + + clsStammdaten_Bez.vb + + + clsStammdaten_flat.vb + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + Always + + + Always + Database1.mdf + + + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + true + + + + + \ No newline at end of file diff --git a/DPM2016/DPM2016.vbproj.user b/DPM2016/DPM2016.vbproj.user new file mode 100644 index 0000000..efc7b61 --- /dev/null +++ b/DPM2016/DPM2016.vbproj.user @@ -0,0 +1,13 @@ + + + + + + + + + + de-DE + false + + \ No newline at end of file diff --git a/DPM2016/Database/IntTables.vb b/DPM2016/Database/IntTables.vb new file mode 100644 index 0000000..cec9384 --- /dev/null +++ b/DPM2016/Database/IntTables.vb @@ -0,0 +1,22 @@ +Module IntTables + Public Inttables As New DataSet + Public orte As New DataTable + + Public Function GetOrt(ByVal plz As String) As String + If orte.Rows.Count = 0 Then + Dim db As New clsDB + db.Get_Tabledata("Orte") + orte = db.dsDaten.Tables(0).Copy + db.Dispose() + End If + Dim ort As String = "" + For Each r As DataRow In orte.Rows + If r("plz").ToString = plz Then + ort = r("ort") + Exit For + + End If + Next + Return ort + End Function +End Module diff --git a/DPM2016/Database/clsDB.vb b/DPM2016/Database/clsDB.vb new file mode 100644 index 0000000..75dbd63 --- /dev/null +++ b/DPM2016/Database/clsDB.vb @@ -0,0 +1,603 @@ +Imports System.Data.SqlClient +Imports System.Data.SqlTypes +Imports System.IO + + +Public Class clsDB +#Region "Deklarationen" + Dim m_connectionstring As String + + Property Connectionstring As String + Get + Return m_connectionstring + End Get + Set(value As String) + m_connectionstring = value + End Set + End Property + + Sub New() + Me.Connectionstring = My.Settings.ConnectionString + End Sub + + Public dsDaten As New DataSet + Public dssql As New DataSet + Public dadaten As SqlDataAdapter + +#End Region + +#Region "Allgemein Get / Save" + Public Sub Dispose() + dsDaten.Dispose() + dssql.Dispose() + dadaten.Dispose() + End Sub + + Public Function Get_Datavalue(sql As String, args As String) As String + Try + Try + dsDaten.Clear() + dsDaten.Tables.Clear() + 'If SP = True Then + ' Dim sqlcmd As New SqlCommand + ' Dim sqlconnect As New SqlConnection + ' sqlconnect.ConnectionString = Me.Connectionstring + ' sqlcmd.CommandType = CommandType.StoredProcedure + ' sqlcmd.CommandText = tablename + ' For Each r As DataRow In SP_Params.Rows + ' sqlcmd.Parameters.Add(r("Paramname"), SqlDbType.VarChar) + ' sqlcmd.Parameters(sqlcmd.Parameters.Count - 1).Value = r("Paramvalue") + ' Next + ' sqlcmd.Connection = sqlconnect + ' dadaten.SelectCommand = sqlcmd + ' dadaten.Fill(dsDaten, sql) + + 'End If + If sql <> "" Then + sql = sql.Replace("&ARGS&", args) + dadaten = New SqlDataAdapter(sql, Me.Connectionstring) + + End If + Dim dt As New DataTable + dadaten.Fill(dt) + Return dt.Rows(0).Item(0) + Catch ex As Exception + Dim a As Integer = 1 + End Try + + Catch ex As Exception + Dim a As Integer = 1 + End Try + End Function + Public Sub Get_Tabledata(ByVal tablename As String, Optional wherestatement As String = "", Optional SQL As String = "", Optional args As String = "", Optional SP As Boolean = False, Optional SP_Params As DataTable = Nothing) + If SP = True Then + + End If + Try + dsDaten.Clear() + dsDaten.Tables.Clear() + If SP = True Then + Dim sqlcmd As New SqlCommand + Dim sqlconnect As New SqlConnection + sqlconnect.ConnectionString = Me.Connectionstring + sqlcmd.CommandType = CommandType.StoredProcedure + sqlcmd.CommandText = tablename + For Each r As DataRow In SP_Params.Rows + sqlcmd.Parameters.Add(r("Paramname"), SqlDbType.VarChar) + sqlcmd.Parameters(sqlcmd.Parameters.Count - 1).Value = r("Paramvalue") + Next + sqlcmd.Connection = sqlconnect + dadaten.SelectCommand = sqlcmd + dadaten.Fill(dsDaten, tablename) + + End If + If SQL <> "" Then + SQL = SQL.Replace("&ARGS&", args) + dadaten = New SqlDataAdapter(SQL, Me.Connectionstring) + Else + dadaten = New SqlDataAdapter("select * from " + tablename + " " + wherestatement, Me.Connectionstring) + End If + 'dadaten = New SqlDataAdapter("select * from " + tablename + " " + wherestatement, Me.Connectionstring) + dadaten.Fill(dsDaten, tablename) + Catch ex As Exception + Dim a As Integer = 1 + End Try + End Sub + + + + Public Sub Update_Data() + Dim cb As New SqlCommandBuilder(dadaten) + dadaten.Update(dsDaten, dsDaten.Tables(0).TableName) + End Sub + + Dim da As SqlDataAdapter + Dim qb As New SqlCommandBuilder + Public daten As New DataSet + Public Function Get_Tabledata_for_Update(ByVal Tablename As String, Optional StoredProc As Boolean = False, Optional is_SQL_String As Boolean = False) As DataTable + Dim sqlconnect As New SqlConnection + Dim ds As New DataSet + ds.Tables.Clear() + sqlconnect.ConnectionString = Me.Connectionstring + sqlconnect.Open() + da = New SqlDataAdapter("", sqlconnect) + Dim sqlcmd As New SqlCommand + sqlcmd.Connection = sqlconnect + If StoredProc = True Then + sqlcmd.CommandType = CommandType.StoredProcedure + sqlcmd.CommandText = Tablename + Else + sqlcmd.CommandType = CommandType.Text + sqlcmd.CommandText = "Select * from " + Tablename + End If + If is_SQL_String = True Then + sqlcmd.CommandText = Tablename + End If + ' sqlcmd.CommandType = CommandType.StoredProcedure + ' sqlcmd.CommandText = "Berufsliste" + da.SelectCommand = sqlcmd + da.Fill(daten, "Daten") + qb = New SqlCommandBuilder(da) + End Function + + Public Sub Update_Tabeldata() + da.Update(daten, "Daten") + End Sub + + Public Sub Exec_Prod(ByVal Procedure As String) + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + + scmCmdToExecute.CommandText = Procedure + Dim conn As New SqlConnection(My.Settings.ConnectionString) + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn + Try + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + Return + Catch ex As Exception + MsgBox(ex.Message) + Finally + scmCmdToExecute.Connection.Close() + End Try + End Sub + + Public Function updatedata(ByVal Tablename As String, ByVal sourcetable As DataTable, Optional StoredProc As Boolean = False, Optional is_SQL_String As Boolean = False) As DataSet + Dim sqlconnect As New SqlConnection + Dim ds As New DataSet + Dim qb As New SqlCommandBuilder + ds.Tables.Clear() + sqlconnect.ConnectionString = Me.Connectionstring + sqlconnect.Open() + Dim da As New SqlDataAdapter("", sqlconnect) + Dim sqlcmd As New SqlCommand + sqlcmd.Connection = sqlconnect + If StoredProc = True Then + sqlcmd.CommandType = CommandType.StoredProcedure + sqlcmd.CommandText = Tablename + Else + sqlcmd.CommandType = CommandType.Text + sqlcmd.CommandText = "Select * from " + Tablename + End If + If is_SQL_String = True Then + sqlcmd.CommandText = Tablename + End If + ' sqlcmd.CommandType = CommandType.StoredProcedure + ' sqlcmd.CommandText = "Berufsliste" + da.SelectCommand = sqlcmd + da.Fill(ds, "Daten") + qb = New SqlCommandBuilder(da) + For Each c As DataColumn In sourcetable.Columns + ds.Tables(0).Rows(0).Item(c.ColumnName) = sourcetable.Rows(0).Item(c.ColumnName) + Next + da.Update(ds, "Daten") + End Function + + Public Function Insert_New_Entry(Table As String, Optional KeyName As String = "", Optional getdbkey As Boolean = False, Optional sqlstring As String = "") As DataTable + Dim dbkey As Integer = 0 + If getdbkey Then + dsDaten.Tables.Clear() + + Get_Tabledata("firmaap", "", sqlstring, "", False) + dbkey = dsDaten.Tables(0).Rows(0).Item(0) + 1 + End If + Dim sqlconnect As New SqlConnection + Dim ds As New DataSet + ds.Tables.Clear() + sqlconnect.ConnectionString = Me.Connectionstring + Dim da As New SqlDataAdapter("", sqlconnect) + Dim sqlcmd As New SqlCommand + sqlcmd.Connection = sqlconnect + Dim sql As String + sqlcmd.CommandText = "Insert into " + Table + " (" + KeyName + ",aktiv,erstellt_am,mutiert_am,mutierer) values(" + dbkey.ToString + ",1,getdate(),getdate()," + Globals.ActUser.ToString + ")" + sqlconnect.Open() + sqlcmd.ExecuteNonQuery() + sqlconnect.Close() + Dim data As New DataTable + dsDaten.Tables.Clear() + Get_Tabledata(Table, "", "Select top 1 * from " + Table + " order by " + KeyName + " desc") + + + Return dsDaten.Tables(0) + + End Function + +#End Region + +#Region "Spalten" + Public Sub Generate_SpaltenData(ByVal tablename As String) + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dttable As New DataTable(tablename) + scmCmdToExecute.CommandText = "dbo.[sp_update_spalten]" + Dim conn As New SqlConnection(My.Settings.ConnectionString) + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@Tablename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, tablename)) + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + Return + Catch ex As Exception + MsgBox(ex.Message) + Finally + scmCmdToExecute.Connection.Close() + End Try + End Sub + + Public Function Get_Spaltendata() + Try + Dim dbRow As DataRow + Dim dsPartner As New DataSet + dadaten = New SqlDataAdapter("select * from Spalten where aktiv=1", Me.Connectionstring) + dadaten.Fill(dsDaten, "Daten") + Catch + End Try + End Function + + Public Function Get_SQL(ByVal nr As Integer) As String + Try + If Globals.SQLStatements.Rows.Count = 0 Then + dssql.Clear() + dadaten = New SqlDataAdapter("select * from sql_statements", Me.Connectionstring) + dadaten.Fill(dssql, "SQLStatements") + Globals.SQLStatements = dssql.Tables(0).Copy + End If + For Each r As DataRow In Globals.SQLStatements.Rows + If r(0) = nr Then + Return r(1) + Exit Function + + End If + Next + Catch + End Try + + End Function + +#End Region + +#Region "Suche" + Public Function Search(ByVal Type As String, ByVal Searchstring As String) As Integer + Select Case Type + Case "Patient" + If IsNumeric(Searchstring) Then + Get_Tabledata("privat", " where nrprivat=" + Searchstring + " order by name, vorname, ort") + If dsDaten.Tables(0).Rows.Count = 0 Then + MsgBox("Keine Daten mit der Nr. " + Searchstring + " gefunden.", vbExclamation) + Return -1 + End If + Else + Get_Tabledata("privat", " where name like '" + Searchstring + "%'" + " order by name, vorname, ort") + If dsDaten.Tables(0).Rows.Count = 0 Then + MsgBox("Keine Daten mit dem Suchbegriff " + Searchstring + " gefunden.", vbExclamation) + Return -1 + End If + End If + If dsDaten.Tables(0).Rows.Count = 1 Then + Return (dsDaten.Tables(0).Rows(0).Item("nrprivat")) + Else + Dim f As New frmPrivatSelect + f.TreeView1.Nodes.Clear() + + For Each r As DataRow In dsDaten.Tables(0).Rows + Dim tn As New TreeNode + tn.Text = r("nrprivat").ToString + " " + r("Name") + " " + r("vorname") + ", " + r("PLZ") + " " + r("ort") + tn.Tag = r("nrprivat") + f.TreeView1.Nodes.Add(tn) + Next + f.TreeView1.SelectedNode = f.TreeView1.Nodes(0) + f.StartPosition = FormStartPosition.CenterParent + f.ShowDialog() + If f.DialogResult = DialogResult.OK Then + Return f.TreeView1.SelectedNode.Tag + Else + Return -1 + End If + End If + Return -1 + + + End Select + End Function +#End Region + +#Region "Log" + Public Function WriteLog(ByVal Entry As String, ByVal logtype As Integer) + Try + Dim conn As New SqlConnection(Me.Connectionstring) + Dim sql As String + sql = "Insert Log (Eintrag,logtype ) values('" + Entry + "'," + logtype.ToString + ")" + Dim cm As New SqlCommand(sql, conn) + conn.Open() + cm.ExecuteNonQuery() + conn.Close() + conn.Dispose() + cm.Dispose() + Catch ex As Exception + MsgBox(ex.Message) + End Try + End Function +#End Region + +#Region "Utils" + Public Function Get_DBKey(ByVal Tablename As String) As Integer + Select Case Tablename + Case "Privat" + Me.Get_Tabledata("NewKeyPrivat", "", Me.Get_SQL(15)) + Case "Leistung" + Me.Get_Tabledata("NewKeyLeistung", "", Me.Get_SQL(17)) + Case "Behandlung" + Me.Get_Tabledata("NewKeyBehandlung", "", Me.Get_SQL(18)) + Case "Zahlung" + Me.Get_Tabledata("NewKeyZahlung", "", Me.Get_SQL(20)) + End Select + Return Me.dsDaten.Tables(0).Rows(0).Item(0) + End Function +#End Region + +#Region "Tarife / Leistungen" + Public Function Get_Tarife() As DataTable + Dim found As Boolean = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "Tarife" Then + found = True + End If + Next + If Not found Then + Me.Get_Tabledata("Tarife", "order by nummervon") + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + + found = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "Tarifgrp" Then + found = True + + End If + Next + + If Not found Then + Me.Get_Tabledata("Tarifgrp", "order by tarifvon") + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + + found = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "Tarpaket" Then + found = True + End If + Next + If Not found Then + Me.Get_Tabledata("Tarpaket", "order by paketbezeichnung") + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + If Not found Then + + End If + + found = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "paketpos" Then + found = True + End If + Next + If Not found Then + Me.Get_Tabledata("paketpos", "order by nrpaket") + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + + found = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "Dentotar" Then + found = True + End If + Next + If Not found Then + Me.Get_Tabledata("Dentotar", "", Get_SQL(23)) + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + + End Function + + Public Function Get_Tarif() As DataTable + Dim found As Boolean = False + For Each t As DataTable In IntTables.Inttables.Tables + If t.TableName = "Tarif" Then + found = True + Exit Function + End If + Next + If Not found Then + Me.Get_Tabledata("Tarif", "", Get_SQL(16)) + IntTables.Inttables.Tables.Add(dsDaten.Tables(0).Copy) + End If + End Function + + + Public Sub Recalc_Leistungen(ByVal nrbehandlung As Integer, taxpunktwert As Double) + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + + scmCmdToExecute.CommandText = "dbo.[sp_recalc_leistungen]" + Dim conn As New SqlConnection(My.Settings.ConnectionString) + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@nrbehandlung", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, nrbehandlung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@taxpunktwert", SqlDbType.Float, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, taxpunktwert)) + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + Return + Catch ex As Exception + MsgBox(ex.Message) + Finally + scmCmdToExecute.Connection.Close() + End Try + End Sub + + + +#End Region + +#Region "Leistung" + Public Function delete_leistung(ByVal nrleistung As Integer) + Get_Tabledata("Leistung", "where nrleistung=" + nrleistung.ToString, "") + dsDaten.Tables(0).Rows(0).Item("Aktiv") = 0 + dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now + dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser + Update_Data() + + + End Function + + Public Function Get_Leistung(ByVal nrleistung As Integer) + Get_Tabledata("Leistung", "where nrleistung=" + nrleistung.ToString, "") + + End Function +#End Region + +#Region "Auswertungen" + Public Function get_reportdata(ByVal Reportnr As Integer, ByVal Parameter As String) As String + Get_Tabledata("Auswertung", "where Auswertungnr=" + Reportnr.ToString, "", "") + Dim sql As String + Dim typ As String + sql = dsDaten.Tables(0).Rows(0).Item("sql") + typ = dsDaten.Tables(0).Rows(0).Item("sqltype") + If Parameter <> "" Then sql = sql + " " + Parameter + + Dim Filename As String = My.Settings.TempPath + "\" + dsDaten.Tables(0).Rows(0).Item("BEZEICHNUNG") + ".FRX" + dsDaten.Clear() + Select Case UCase(typ) + Case "SQL" + Get_Tabledata("Auswertungsdaten", "", sql, "") + Return Filename + End Select + End Function +#End Region + +#Region "Fakturierung" + Public Sub Rechnung_buchen(ByVal Type As Integer, ByVal Rechnungsnummer As String, rate As String, behandlungsnummer As String, ByVal Betrag As Decimal) + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.sp_Rechnung_Buchen" + Dim conn As New SqlConnection(My.Settings.ConnectionString) + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@Type", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Type)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@Fakturanr", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Rechnungsnummer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@Hauptfaktura", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Rechnungsnummer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@Rate", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, rate)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@behandlungsnummer", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, behandlungsnummer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@Betrag", SqlDbType.Float, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Betrag)) + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + Return + Catch ex As Exception + MsgBox(ex.Message) + Finally + scmCmdToExecute.Connection.Close() + End Try + + End Sub + +#End Region + +#Region "Documenthandling" + + Public Function Save_RptDatei(ByVal Auswertungnr As Integer, ByVal Auswertungname As String) As String + Return Save_File("Select * from auswertung where auswertungnr=" + Auswertungnr.ToString, Auswertungname, "Reportdatei") + End Function + + Public Function Get_RptDatei(ByVal Auswertungnr As Integer, ByVal Auswertungname As String) As String + Return Get_file("Select * from auswertung where auswertungnr=" + Auswertungnr.ToString, Auswertungname, "Reportdatei") + End Function + + Public Function Save_File(ByVal sql As String, ByVal filename As String, ByVal DBAttribut As String) As String + Dim Connection As New SqlConnection() + Dim DA As New SqlDataAdapter(sql, Connection) + Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim fs As New System.IO.FileStream(filename, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Read) + Dim mydata(fs.Length) As Byte + fs.Read(mydata, 0, fs.Length) + fs.Close() + Try + Connection.ConnectionString = My.Settings.ConnectionString + Connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + If ds.Tables(0).Rows.Count = 0 Then + MsgBox("Datei kann nicht gespeichert werden.", MsgBoxStyle.Critical) + Exit Function + Else + myRow = ds.Tables(0).Rows(0) + myRow.Item(DBAttribut) = mydata + DA.Update(ds, "RptFile") + End If + Return filename + Catch ex As Exception + MsgBox(ex.Message) + filename = "" + Return filename + Finally + fs = Nothing + cb = Nothing + ds = Nothing + DA = Nothing + Connection.Close() + Connection = Nothing + End Try + End Function + + Public Function Get_file(ByVal sql As String, filename As String, DBAttribut As String) As String + Dim connection As New SqlConnection() + Dim DA As New SqlDataAdapter(sql, connection) + Dim CB As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Try + connection.ConnectionString = My.Settings.ConnectionString + connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + myRow = ds.Tables(0).Rows(0) + Dim MyData() As Byte + MyData = myRow.Item(DBAttribut) + Dim K As Long + K = UBound(MyData) + Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write) + fs.Write(MyData, 0, K) + fs.Close() + fs = Nothing + Return filename + Catch ex As Exception + Return "" + Finally + CB = Nothing + ds = Nothing + DA = Nothing + connection.Close() + connection = Nothing + End Try + End Function + +#End Region +End Class diff --git a/DPM2016/Database/frmPrivatSelect.Designer.vb b/DPM2016/Database/frmPrivatSelect.Designer.vb new file mode 100644 index 0000000..1fb739a --- /dev/null +++ b/DPM2016/Database/frmPrivatSelect.Designer.vb @@ -0,0 +1,74 @@ + _ +Partial Class frmPrivatSelect + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.TreeView1 = New System.Windows.Forms.TreeView() + Me.Button1 = New System.Windows.Forms.Button() + Me.Button2 = New System.Windows.Forms.Button() + Me.SuspendLayout() + ' + 'TreeView1 + ' + Me.TreeView1.FullRowSelect = True + Me.TreeView1.HotTracking = True + Me.TreeView1.Location = New System.Drawing.Point(13, 28) + Me.TreeView1.Name = "TreeView1" + Me.TreeView1.Size = New System.Drawing.Size(259, 221) + Me.TreeView1.TabIndex = 0 + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(13, 260) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(75, 23) + Me.Button1.TabIndex = 1 + Me.Button1.Text = "OK" + Me.Button1.UseVisualStyleBackColor = True + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(197, 260) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(75, 23) + Me.Button2.TabIndex = 2 + Me.Button2.Text = "Abbruch" + Me.Button2.UseVisualStyleBackColor = True + ' + 'frmPrivatSelect + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(284, 295) + Me.Controls.Add(Me.Button2) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.TreeView1) + Me.Name = "frmPrivatSelect" + Me.Text = "frmPrivatSelect" + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents TreeView1 As TreeView + Friend WithEvents Button1 As Button + Friend WithEvents Button2 As Button +End Class diff --git a/DPM2016/Database/frmPrivatSelect.resx b/DPM2016/Database/frmPrivatSelect.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/DPM2016/Database/frmPrivatSelect.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/Database/frmPrivatSelect.vb b/DPM2016/Database/frmPrivatSelect.vb new file mode 100644 index 0000000..9170bfb --- /dev/null +++ b/DPM2016/Database/frmPrivatSelect.vb @@ -0,0 +1,38 @@ + +Public Class frmPrivatSelect + Dim intNr As Integer + + Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeView1.AfterSelect + Try + intNr = Me.TreeView1.SelectedNode.Tag + Catch ex As Exception + + End Try + End Sub + + Private Sub TreeView1_DoubleClick(sender As Object, e As EventArgs) Handles TreeView1.DoubleClick + Try + intNr = Me.TreeView1.SelectedNode.Tag + Me.DialogResult = DialogResult.OK + Me.Close() + Catch ex As Exception + + End Try + + End Sub + + Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click + Try + intNr = Me.TreeView1.SelectedNode.Tag + Me.DialogResult = DialogResult.OK + Me.Close() + Catch ex As Exception + + End Try + End Sub + + Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click + Me.DialogResult = DialogResult.Abort + Me.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/Database1.mdf b/DPM2016/Database1.mdf new file mode 100644 index 0000000..b3240fc Binary files /dev/null and b/DPM2016/Database1.mdf differ diff --git a/DPM2016/Database1_log.ldf b/DPM2016/Database1_log.ldf new file mode 100644 index 0000000..96f648f Binary files /dev/null and b/DPM2016/Database1_log.ldf differ diff --git a/DPM2016/Diverses/frmprogress.Designer.vb b/DPM2016/Diverses/frmprogress.Designer.vb new file mode 100644 index 0000000..f3c0923 --- /dev/null +++ b/DPM2016/Diverses/frmprogress.Designer.vb @@ -0,0 +1,61 @@ + _ +Partial Class frmprogress + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.ProgressBar1 = New System.Windows.Forms.ProgressBar() + Me.titel = New System.Windows.Forms.Label() + Me.SuspendLayout() + ' + 'ProgressBar1 + ' + Me.ProgressBar1.Location = New System.Drawing.Point(13, 37) + Me.ProgressBar1.Name = "ProgressBar1" + Me.ProgressBar1.Size = New System.Drawing.Size(794, 23) + Me.ProgressBar1.TabIndex = 0 + ' + 'titel + ' + Me.titel.AutoSize = True + Me.titel.Location = New System.Drawing.Point(13, 13) + Me.titel.Name = "titel" + Me.titel.Size = New System.Drawing.Size(23, 13) + Me.titel.TabIndex = 1 + Me.titel.Text = "titel" + ' + 'frmprogress + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(819, 86) + Me.Controls.Add(Me.titel) + Me.Controls.Add(Me.ProgressBar1) + Me.Name = "frmprogress" + Me.Text = "Fortschrittsanzeige" + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents ProgressBar1 As ProgressBar + Friend WithEvents titel As Label +End Class diff --git a/DPM2016/Diverses/frmprogress.resx b/DPM2016/Diverses/frmprogress.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/DPM2016/Diverses/frmprogress.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/Diverses/frmprogress.vb b/DPM2016/Diverses/frmprogress.vb new file mode 100644 index 0000000..d1b528f --- /dev/null +++ b/DPM2016/Diverses/frmprogress.vb @@ -0,0 +1,26 @@ +Public Class frmprogress + + Dim min As Integer + + Sub New(ByVal min As Integer, ByVal max As Integer, ByVal titel As String) + + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + + Me.ProgressBar1.Minimum = min + Me.ProgressBar1.Maximum = max + Me.titel.Text = titel + ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. + + End Sub + Private Sub frmprogress_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + End Sub + + Public Sub Init_Progressbar(ByVal min As Integer, ByVal max As Integer, Optional titel As String = "") + Me.ProgressBar1.Minimum = min + Me.ProgressBar1.Maximum = max + If titel <> "" Then Me.titel.Text = titel + Me.ProgressBar1.Value = min + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/EventHandler/Generic_Event_Handler.vb b/DPM2016/EventHandler/Generic_Event_Handler.vb new file mode 100644 index 0000000..229fbfc --- /dev/null +++ b/DPM2016/EventHandler/Generic_Event_Handler.vb @@ -0,0 +1,45 @@ + +Public Class Generic_Event_Handler + + Public Event PatName_Changed(ByVal name As String, ByVal nr As Integer) + Public Event PatSaved(ByVal Nr As Integer) + Public Event Leistung_Changed(ByVal Behandlungsnummer As Integer, Total As Double) + Public Event Totale_Berechnet(ByVal behandlungsnummer As Integer) + Public Event Behandlung_changed(ByVal behandlungsnummer As Integer, patientnr As Integer) + Public Event Taxpunktwert_changed(ByVal behandlungsnummer As Integer, patientnr As Integer, taxpunktwert As Double) + Public Event Total_Berechnet(ByVal behandlungsnummer As Integer, Total As Double) + Public Event Behandlung_Inserted(ByVal Patientnr As Integer, ByVal Behandlungsnummer As Integer) + + Public Function Fire_PatName_Changed(ByVal name As String, ByVal nr As Integer) + RaiseEvent PatName_Changed(name, nr) + End Function + + Public Function Fire_PatSaved(ByVal nr As Integer) + RaiseEvent PatSaved(nr) + End Function + + Public Function Fire_Leistung_Changed(ByVal Behandlungsnummer As Integer, total As Double) + RaiseEvent Leistung_Changed(Behandlungsnummer, total) + End Function + + Public Function Fire_Totale_Berechnet(ByVal Behandlungsnummer As Integer) + RaiseEvent Totale_Berechnet(Behandlungsnummer) + End Function + + Public Function Fire_Behandlung_Changed(ByVal behandlungsnummer As Integer, ByVal patientnr As Integer) + RaiseEvent Behandlung_changed(behandlungsnummer, patientnr) + End Function + + Public Function fire_Taxpunktwert_Changed(ByVal behandlungsnummer As Integer, patientnr As Integer, taxpunktwert As Double) + RaiseEvent Taxpunktwert_changed(behandlungsnummer, patientnr, taxpunktwert) + End Function + + Public Function Fire_Total_Berechnet(ByVal Behandlungsnummer As Integer, ByVal Total As Double) + RaiseEvent Total_Berechnet(Behandlungsnummer, Total) + End Function + + Public Function Fire_Behandlung_Inserted(ByVal Patientnr As Integer, ByVal Behandlungsnr As Integer) + RaiseEvent Behandlung_Inserted(Patientnr, Behandlungsnr) + End Function +End Class + diff --git a/DPM2016/Fakturierung/frmFakturierung.Designer.vb b/DPM2016/Fakturierung/frmFakturierung.Designer.vb new file mode 100644 index 0000000..10b8827 --- /dev/null +++ b/DPM2016/Fakturierung/frmFakturierung.Designer.vb @@ -0,0 +1,322 @@ + _ +Partial Class frmFakturierung + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFakturierung)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnquit = New System.Windows.Forms.ToolStripButton() + Me.tsbtnSave = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnew = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripLabel1 = New System.Windows.Forms.ToolStripLabel() + Me.tstxtsuche = New System.Windows.Forms.ToolStripTextBox() + Me.tsbtnfirst = New System.Windows.Forms.ToolStripButton() + Me.tsbtprev = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnext = New System.Windows.Forms.ToolStripButton() + Me.tsbtnlast = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.grpOffeneRechnungen = New System.Windows.Forms.GroupBox() + Me.C1Abgeschlossen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.GrpAusgeschlosseneRechnungen = New System.Windows.Forms.GroupBox() + Me.C1Ausgeschlossen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton() + Me.MenuStrip1.SuspendLayout() + Me.ToolStrip1.SuspendLayout() + Me.grpOffeneRechnungen.SuspendLayout() + CType(Me.C1Abgeschlossen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GrpAusgeschlosseneRechnungen.SuspendLayout() + CType(Me.C1Ausgeschlossen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(773, 24) + Me.MenuStrip1.TabIndex = 20 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnquit, Me.tsbtnSave, Me.tsbtnnew, Me.ToolStripButton4, Me.ToolStripButton2, Me.ToolStripButton3, Me.ToolStripLabel1, Me.tstxtsuche, Me.tsbtnfirst, Me.tsbtprev, Me.tsbtnnext, Me.tsbtnlast, Me.ToolStripButton1, Me.ToolStripButton5}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(773, 25) + Me.ToolStrip1.TabIndex = 21 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnquit + ' + Me.tsbtnquit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnquit.Image = CType(resources.GetObject("tsbtnquit.Image"), System.Drawing.Image) + Me.tsbtnquit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnquit.Name = "tsbtnquit" + Me.tsbtnquit.Size = New System.Drawing.Size(23, 22) + Me.tsbtnquit.Text = "Schliessen" + ' + 'tsbtnSave + ' + Me.tsbtnSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnSave.Image = CType(resources.GetObject("tsbtnSave.Image"), System.Drawing.Image) + Me.tsbtnSave.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnSave.Name = "tsbtnSave" + Me.tsbtnSave.Size = New System.Drawing.Size(23, 22) + Me.tsbtnSave.Text = "Speichern" + Me.tsbtnSave.Visible = False + ' + 'tsbtnnew + ' + Me.tsbtnnew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnew.Image = CType(resources.GetObject("tsbtnnew.Image"), System.Drawing.Image) + Me.tsbtnnew.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnew.Name = "tsbtnnew" + Me.tsbtnnew.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnew.Text = "Neuer Datensatz" + Me.tsbtnnew.Visible = False + ' + 'ToolStripButton4 + ' + Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image) + Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton4.Name = "ToolStripButton4" + Me.ToolStripButton4.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton4.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton4.Visible = False + ' + 'ToolStripButton2 + ' + Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image) + Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton2.Name = "ToolStripButton2" + Me.ToolStripButton2.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton2.Text = "Dokument löschen" + Me.ToolStripButton2.Visible = False + ' + 'ToolStripButton3 + ' + Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image) + Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton3.Name = "ToolStripButton3" + Me.ToolStripButton3.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton3.Text = "Dokument anzeigen" + Me.ToolStripButton3.Visible = False + ' + 'ToolStripLabel1 + ' + Me.ToolStripLabel1.Name = "ToolStripLabel1" + Me.ToolStripLabel1.Size = New System.Drawing.Size(39, 22) + Me.ToolStripLabel1.Text = "Suche" + Me.ToolStripLabel1.Visible = False + ' + 'tstxtsuche + ' + Me.tstxtsuche.Name = "tstxtsuche" + Me.tstxtsuche.Size = New System.Drawing.Size(100, 25) + Me.tstxtsuche.Visible = False + ' + 'tsbtnfirst + ' + Me.tsbtnfirst.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnfirst.Image = CType(resources.GetObject("tsbtnfirst.Image"), System.Drawing.Image) + Me.tsbtnfirst.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnfirst.Name = "tsbtnfirst" + Me.tsbtnfirst.Size = New System.Drawing.Size(23, 22) + Me.tsbtnfirst.Text = "Erster Datensatz" + Me.tsbtnfirst.Visible = False + ' + 'tsbtprev + ' + Me.tsbtprev.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtprev.Image = CType(resources.GetObject("tsbtprev.Image"), System.Drawing.Image) + Me.tsbtprev.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtprev.Name = "tsbtprev" + Me.tsbtprev.Size = New System.Drawing.Size(23, 22) + Me.tsbtprev.Text = "Vorheriger Datensatz" + Me.tsbtprev.Visible = False + ' + 'tsbtnnext + ' + Me.tsbtnnext.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnext.Image = CType(resources.GetObject("tsbtnnext.Image"), System.Drawing.Image) + Me.tsbtnnext.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnext.Name = "tsbtnnext" + Me.tsbtnnext.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnext.Text = "nächster Datensatz" + Me.tsbtnnext.Visible = False + ' + 'tsbtnlast + ' + Me.tsbtnlast.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnlast.Image = CType(resources.GetObject("tsbtnlast.Image"), System.Drawing.Image) + Me.tsbtnlast.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnlast.Name = "tsbtnlast" + Me.tsbtnlast.Size = New System.Drawing.Size(23, 22) + Me.tsbtnlast.Text = "Letzter Datensatz" + Me.tsbtnlast.Visible = False + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "ToolStripButton1" + ' + 'grpOffeneRechnungen + ' + Me.grpOffeneRechnungen.Controls.Add(Me.C1Abgeschlossen) + Me.grpOffeneRechnungen.Dock = System.Windows.Forms.DockStyle.Top + Me.grpOffeneRechnungen.Location = New System.Drawing.Point(0, 49) + Me.grpOffeneRechnungen.Name = "grpOffeneRechnungen" + Me.grpOffeneRechnungen.Size = New System.Drawing.Size(773, 161) + Me.grpOffeneRechnungen.TabIndex = 22 + Me.grpOffeneRechnungen.TabStop = False + Me.grpOffeneRechnungen.Text = "Abgeschlossene Behandlungen" + ' + 'C1Abgeschlossen + ' + Me.C1Abgeschlossen.AlternatingRows = True + Me.C1Abgeschlossen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Abgeschlossen.FilterBar = True + Me.C1Abgeschlossen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Abgeschlossen.Images.Add(CType(resources.GetObject("C1Abgeschlossen.Images"), System.Drawing.Image)) + Me.C1Abgeschlossen.Location = New System.Drawing.Point(3, 16) + Me.C1Abgeschlossen.Name = "C1Abgeschlossen" + Me.C1Abgeschlossen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Abgeschlossen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Abgeschlossen.PreviewInfo.ZoomFactor = 75.0R + Me.C1Abgeschlossen.PrintInfo.PageSettings = CType(resources.GetObject("C1Abgeschlossen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Abgeschlossen.Size = New System.Drawing.Size(767, 142) + Me.C1Abgeschlossen.TabIndex = 3 + Me.C1Abgeschlossen.Text = "C1TrueDBGrid1" + Me.C1Abgeschlossen.PropBag = resources.GetString("C1Abgeschlossen.PropBag") + ' + 'GrpAusgeschlosseneRechnungen + ' + Me.GrpAusgeschlosseneRechnungen.Controls.Add(Me.C1Ausgeschlossen) + Me.GrpAusgeschlosseneRechnungen.Dock = System.Windows.Forms.DockStyle.Top + Me.GrpAusgeschlosseneRechnungen.Location = New System.Drawing.Point(0, 210) + Me.GrpAusgeschlosseneRechnungen.Name = "GrpAusgeschlosseneRechnungen" + Me.GrpAusgeschlosseneRechnungen.Size = New System.Drawing.Size(773, 161) + Me.GrpAusgeschlosseneRechnungen.TabIndex = 23 + Me.GrpAusgeschlosseneRechnungen.TabStop = False + Me.GrpAusgeschlosseneRechnungen.Text = "Ausgeschlossen" + ' + 'C1Ausgeschlossen + ' + Me.C1Ausgeschlossen.AlternatingRows = True + Me.C1Ausgeschlossen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Ausgeschlossen.FilterBar = True + Me.C1Ausgeschlossen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Ausgeschlossen.Images.Add(CType(resources.GetObject("C1Ausgeschlossen.Images"), System.Drawing.Image)) + Me.C1Ausgeschlossen.Location = New System.Drawing.Point(3, 16) + Me.C1Ausgeschlossen.Name = "C1Ausgeschlossen" + Me.C1Ausgeschlossen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Ausgeschlossen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Ausgeschlossen.PreviewInfo.ZoomFactor = 75.0R + Me.C1Ausgeschlossen.PrintInfo.PageSettings = CType(resources.GetObject("C1Ausgeschlossen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Ausgeschlossen.Size = New System.Drawing.Size(767, 142) + Me.C1Ausgeschlossen.TabIndex = 3 + Me.C1Ausgeschlossen.Text = "C1TrueDBGrid1" + Me.C1Ausgeschlossen.PropBag = resources.GetString("C1Ausgeschlossen.PropBag") + ' + 'ToolStripButton5 + ' + Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image) + Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton5.Name = "ToolStripButton5" + Me.ToolStripButton5.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton5.Text = "ToolStripButton5" + ' + 'frmFakturierung + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(773, 363) + Me.Controls.Add(Me.GrpAusgeschlosseneRechnungen) + Me.Controls.Add(Me.grpOffeneRechnungen) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Name = "frmFakturierung" + Me.Text = "frmFakturierung" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.grpOffeneRechnungen.ResumeLayout(False) + CType(Me.C1Abgeschlossen, System.ComponentModel.ISupportInitialize).EndInit() + Me.GrpAusgeschlosseneRechnungen.ResumeLayout(False) + CType(Me.C1Ausgeschlossen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents MenuStrip1 As MenuStrip + Friend WithEvents DateiToolStripMenuItem As ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents ToolStrip1 As ToolStrip + Friend WithEvents tsbtnquit As ToolStripButton + Friend WithEvents tsbtnSave As ToolStripButton + Friend WithEvents tsbtnnew As ToolStripButton + Friend WithEvents ToolStripButton4 As ToolStripButton + Friend WithEvents ToolStripButton2 As ToolStripButton + Friend WithEvents ToolStripButton3 As ToolStripButton + Friend WithEvents ToolStripLabel1 As ToolStripLabel + Friend WithEvents tstxtsuche As ToolStripTextBox + Friend WithEvents tsbtnfirst As ToolStripButton + Friend WithEvents tsbtprev As ToolStripButton + Friend WithEvents tsbtnnext As ToolStripButton + Friend WithEvents tsbtnlast As ToolStripButton + Friend WithEvents grpOffeneRechnungen As GroupBox + Friend WithEvents GrpAusgeschlosseneRechnungen As GroupBox + Friend WithEvents C1Abgeschlossen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents C1Ausgeschlossen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ToolStripButton1 As ToolStripButton + Friend WithEvents ToolStripButton5 As ToolStripButton +End Class diff --git a/DPM2016/Fakturierung/frmFakturierung.resx b/DPM2016/Fakturierung/frmFakturierung.resx new file mode 100644 index 0000000..f0f4e32 --- /dev/null +++ b/DPM2016/Fakturierung/frmFakturierung.resx @@ -0,0 +1,435 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 124, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + 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 + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + 6YeQrFnzP+dStr84zVH5AAAAAElFTkSuQmCC + + + + + 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 + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 765, 140</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 765, 140</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 765, 140</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 765, 140</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/Fakturierung/frmFakturierung.vb b/DPM2016/Fakturierung/frmFakturierung.vb new file mode 100644 index 0000000..ee8d3a6 --- /dev/null +++ b/DPM2016/Fakturierung/frmFakturierung.vb @@ -0,0 +1,34 @@ +Public Class frmFakturierung + + Dim db As New clsDB + Private Sub frmFakturierung_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Dim abgeschlossen As New DataTable + Dim ausgeschlossen As New DataTable + db.Get_Tabledata("view_abgeschlossene_Behandlungen") + abgeschlossen = db.dsDaten.Tables(0).Copy + ausgeschlossen = abgeschlossen.Copy + ausgeschlossen.Rows.Clear() + Me.C1Abgeschlossen.DataSource = abgeschlossen + Me.C1Abgeschlossen.DataMember = abgeschlossen.TableName + Me.C1Ausgeschlossen.DataSource = ausgeschlossen + Me.C1Ausgeschlossen.DataMember = ausgeschlossen.TableName + End Sub + + Private Sub ToolStripButton5_Click(sender As Object, e As EventArgs) Handles ToolStripButton5.Click + Dim dt As New DataTable + dt = Me.C1Abgeschlossen.DataSource + Dim f As New frmReportView() + For Each r In dt.Rows + If r.item("raten") > 0 Then + Dim i As Integer + For i = 1 To r.item("raten") + f.Fakturierung(r.item("nrestyp"), r.item("nrbehandlung"), " where nrbehandlung = " + r.item("nrbehandlung").ToString, i) + Next + Else + f.Fakturierung(r.item("nrestyp"), r.item("nrbehandlung"), " where nrbehandlung = " + r.item("nrbehandlung").ToString, 0) + End If + Next + f.Visible = False + f.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/Finanzaen/Finanzen.Designer.vb b/DPM2016/Finanzaen/Finanzen.Designer.vb new file mode 100644 index 0000000..915f9aa --- /dev/null +++ b/DPM2016/Finanzaen/Finanzen.Designer.vb @@ -0,0 +1,321 @@ + _ +Partial Class Finanzen + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Finanzen)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.GrpZahlung = New System.Windows.Forms.GroupBox() + Me.btnBuchen = New System.Windows.Forms.Button() + Me.chkVorauszahlung = New System.Windows.Forms.CheckBox() + Me.lblVorauszahlung = New System.Windows.Forms.Label() + Me.cbboxKonto = New DPM2016.MyCombobox() + Me.lblKonto = New System.Windows.Forms.Label() + Me.lblBetrag = New System.Windows.Forms.Label() + Me.diBetrag = New DevComponents.Editors.DoubleInput() + Me.lbldatum = New System.Windows.Forms.Label() + Me.dtdatum = New DevComponents.Editors.DateTimeAdv.DateTimeInput() + Me.txtRGNummer = New System.Windows.Forms.TextBox() + Me.lblRechnungsnummer = New System.Windows.Forms.Label() + Me.GrpZahlungen = New System.Windows.Forms.GroupBox() + Me.C1Zahlungen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.GrpBehandlungen = New System.Windows.Forms.GroupBox() + Me.C1OffeneRechnungen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.GrpZahlung.SuspendLayout() + CType(Me.diBetrag, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GrpZahlungen.SuspendLayout() + CType(Me.C1Zahlungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GrpBehandlungen.SuspendLayout() + CType(Me.C1OffeneRechnungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(990, 25) + Me.ToolStrip1.TabIndex = 0 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'GrpZahlung + ' + Me.GrpZahlung.Controls.Add(Me.btnBuchen) + Me.GrpZahlung.Controls.Add(Me.chkVorauszahlung) + Me.GrpZahlung.Controls.Add(Me.lblVorauszahlung) + Me.GrpZahlung.Controls.Add(Me.cbboxKonto) + Me.GrpZahlung.Controls.Add(Me.lblKonto) + Me.GrpZahlung.Controls.Add(Me.lblBetrag) + Me.GrpZahlung.Controls.Add(Me.diBetrag) + Me.GrpZahlung.Controls.Add(Me.lbldatum) + Me.GrpZahlung.Controls.Add(Me.dtdatum) + Me.GrpZahlung.Controls.Add(Me.txtRGNummer) + Me.GrpZahlung.Controls.Add(Me.lblRechnungsnummer) + Me.GrpZahlung.Dock = System.Windows.Forms.DockStyle.Left + Me.GrpZahlung.Location = New System.Drawing.Point(0, 25) + Me.GrpZahlung.Name = "GrpZahlung" + Me.GrpZahlung.Size = New System.Drawing.Size(345, 562) + Me.GrpZahlung.TabIndex = 1 + Me.GrpZahlung.TabStop = False + Me.GrpZahlung.Text = "Zahlung" + ' + 'btnBuchen + ' + Me.btnBuchen.Location = New System.Drawing.Point(22, 165) + Me.btnBuchen.Name = "btnBuchen" + Me.btnBuchen.Size = New System.Drawing.Size(75, 23) + Me.btnBuchen.TabIndex = 19 + Me.btnBuchen.Text = "Buchen" + Me.btnBuchen.UseVisualStyleBackColor = True + ' + 'chkVorauszahlung + ' + Me.chkVorauszahlung.AutoSize = True + Me.chkVorauszahlung.Location = New System.Drawing.Point(147, 139) + Me.chkVorauszahlung.Name = "chkVorauszahlung" + Me.chkVorauszahlung.Size = New System.Drawing.Size(15, 14) + Me.chkVorauszahlung.TabIndex = 18 + Me.chkVorauszahlung.UseVisualStyleBackColor = True + ' + 'lblVorauszahlung + ' + Me.lblVorauszahlung.AutoSize = True + Me.lblVorauszahlung.Location = New System.Drawing.Point(20, 139) + Me.lblVorauszahlung.Name = "lblVorauszahlung" + Me.lblVorauszahlung.Size = New System.Drawing.Size(77, 13) + Me.lblVorauszahlung.TabIndex = 17 + Me.lblVorauszahlung.Text = "Vorauszahlung" + ' + 'cbboxKonto + ' + Me.cbboxKonto.Dataselection = Nothing + Me.cbboxKonto.Displaymember = Nothing + Me.cbboxKonto.Location = New System.Drawing.Point(147, 109) + Me.cbboxKonto.Name = "cbboxKonto" + Me.cbboxKonto.Size = New System.Drawing.Size(177, 21) + Me.cbboxKonto.TabIndex = 15 + Me.cbboxKonto.Table = Nothing + Me.cbboxKonto.TableAlias = "" + Me.cbboxKonto.Valuemember = Nothing + ' + 'lblKonto + ' + Me.lblKonto.AutoSize = True + Me.lblKonto.Location = New System.Drawing.Point(20, 112) + Me.lblKonto.Name = "lblKonto" + Me.lblKonto.Size = New System.Drawing.Size(55, 13) + Me.lblKonto.TabIndex = 16 + Me.lblKonto.Text = "Behandler" + ' + 'lblBetrag + ' + Me.lblBetrag.AutoSize = True + Me.lblBetrag.Location = New System.Drawing.Point(20, 87) + Me.lblBetrag.Name = "lblBetrag" + Me.lblBetrag.Size = New System.Drawing.Size(38, 13) + Me.lblBetrag.TabIndex = 11 + Me.lblBetrag.Text = "Betrag" + ' + 'diBetrag + ' + ' + ' + ' + Me.diBetrag.BackgroundStyle.Class = "DateTimeInputBackground" + Me.diBetrag.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.diBetrag.ButtonFreeText.Shortcut = DevComponents.DotNetBar.eShortcut.F2 + Me.diBetrag.Increment = 1.0R + Me.diBetrag.Location = New System.Drawing.Point(147, 81) + Me.diBetrag.Name = "diBetrag" + Me.diBetrag.ShowUpDown = True + Me.diBetrag.Size = New System.Drawing.Size(86, 20) + Me.diBetrag.TabIndex = 10 + ' + 'lbldatum + ' + Me.lbldatum.AutoSize = True + Me.lbldatum.Location = New System.Drawing.Point(20, 62) + Me.lbldatum.Name = "lbldatum" + Me.lbldatum.Size = New System.Drawing.Size(38, 13) + Me.lbldatum.TabIndex = 3 + Me.lbldatum.Text = "Datum" + ' + 'dtdatum + ' + ' + ' + ' + Me.dtdatum.BackgroundStyle.Class = "DateTimeInputBackground" + Me.dtdatum.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.ButtonDropDown.Shortcut = DevComponents.DotNetBar.eShortcut.AltDown + Me.dtdatum.ButtonDropDown.Visible = True + Me.dtdatum.IsPopupCalendarOpen = False + Me.dtdatum.Location = New System.Drawing.Point(147, 55) + ' + ' + ' + ' + ' + ' + Me.dtdatum.MonthCalendar.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.CalendarDimensions = New System.Drawing.Size(1, 1) + Me.dtdatum.MonthCalendar.ClearButtonVisible = True + ' + ' + ' + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground2 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarBackground + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTop = DevComponents.DotNetBar.eStyleBorderType.Solid + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.BarDockedBorder + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.BorderTopWidth = 1 + Me.dtdatum.MonthCalendar.CommandsBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.DisplayMonth = New Date(2015, 6, 1, 0, 0, 0, 0) + Me.dtdatum.MonthCalendar.FirstDayOfWeek = System.DayOfWeek.Monday + ' + ' + ' + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColor2SchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorGradientAngle = 90 + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.BackColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground + Me.dtdatum.MonthCalendar.NavigationBackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.dtdatum.MonthCalendar.TodayButtonVisible = True + Me.dtdatum.Name = "dtdatum" + Me.dtdatum.Size = New System.Drawing.Size(177, 20) + Me.dtdatum.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled + Me.dtdatum.TabIndex = 2 + ' + 'txtRGNummer + ' + Me.txtRGNummer.Location = New System.Drawing.Point(147, 32) + Me.txtRGNummer.Name = "txtRGNummer" + Me.txtRGNummer.Size = New System.Drawing.Size(177, 20) + Me.txtRGNummer.TabIndex = 1 + ' + 'lblRechnungsnummer + ' + Me.lblRechnungsnummer.AutoSize = True + Me.lblRechnungsnummer.Location = New System.Drawing.Point(20, 35) + Me.lblRechnungsnummer.Name = "lblRechnungsnummer" + Me.lblRechnungsnummer.Size = New System.Drawing.Size(99, 13) + Me.lblRechnungsnummer.TabIndex = 0 + Me.lblRechnungsnummer.Text = "Rechnungsnummer" + ' + 'GrpZahlungen + ' + Me.GrpZahlungen.Controls.Add(Me.C1Zahlungen) + Me.GrpZahlungen.Dock = System.Windows.Forms.DockStyle.Top + Me.GrpZahlungen.Location = New System.Drawing.Point(345, 25) + Me.GrpZahlungen.Name = "GrpZahlungen" + Me.GrpZahlungen.Size = New System.Drawing.Size(645, 249) + Me.GrpZahlungen.TabIndex = 2 + Me.GrpZahlungen.TabStop = False + Me.GrpZahlungen.Text = "Verbuchte Zahlungen" + ' + 'C1Zahlungen + ' + Me.C1Zahlungen.AlternatingRows = True + Me.C1Zahlungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Zahlungen.FilterBar = True + Me.C1Zahlungen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Zahlungen.Images.Add(CType(resources.GetObject("C1Zahlungen.Images"), System.Drawing.Image)) + Me.C1Zahlungen.Location = New System.Drawing.Point(3, 16) + Me.C1Zahlungen.Name = "C1Zahlungen" + Me.C1Zahlungen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Zahlungen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Zahlungen.PreviewInfo.ZoomFactor = 75.0R + Me.C1Zahlungen.PrintInfo.PageSettings = CType(resources.GetObject("C1Zahlungen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Zahlungen.Size = New System.Drawing.Size(639, 230) + Me.C1Zahlungen.TabIndex = 3 + Me.C1Zahlungen.Text = "C1TrueDBGrid1" + Me.C1Zahlungen.PropBag = resources.GetString("C1Zahlungen.PropBag") + ' + 'GrpBehandlungen + ' + Me.GrpBehandlungen.Controls.Add(Me.C1OffeneRechnungen) + Me.GrpBehandlungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.GrpBehandlungen.Location = New System.Drawing.Point(345, 274) + Me.GrpBehandlungen.Name = "GrpBehandlungen" + Me.GrpBehandlungen.Size = New System.Drawing.Size(645, 313) + Me.GrpBehandlungen.TabIndex = 3 + Me.GrpBehandlungen.TabStop = False + Me.GrpBehandlungen.Text = "Offene Rechnungen" + ' + 'C1OffeneRechnungen + ' + Me.C1OffeneRechnungen.AlternatingRows = True + Me.C1OffeneRechnungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1OffeneRechnungen.FilterBar = True + Me.C1OffeneRechnungen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1OffeneRechnungen.Images.Add(CType(resources.GetObject("C1OffeneRechnungen.Images"), System.Drawing.Image)) + Me.C1OffeneRechnungen.Location = New System.Drawing.Point(3, 16) + Me.C1OffeneRechnungen.Name = "C1OffeneRechnungen" + Me.C1OffeneRechnungen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1OffeneRechnungen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1OffeneRechnungen.PreviewInfo.ZoomFactor = 75.0R + Me.C1OffeneRechnungen.PrintInfo.PageSettings = CType(resources.GetObject("C1OffeneRechnungen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1OffeneRechnungen.Size = New System.Drawing.Size(639, 294) + Me.C1OffeneRechnungen.TabIndex = 4 + Me.C1OffeneRechnungen.Text = "C1OffeneRechnungen" + Me.C1OffeneRechnungen.PropBag = resources.GetString("C1OffeneRechnungen.PropBag") + ' + 'Finanzen + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.GrpBehandlungen) + Me.Controls.Add(Me.GrpZahlungen) + Me.Controls.Add(Me.GrpZahlung) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "Finanzen" + Me.Size = New System.Drawing.Size(990, 587) + Me.GrpZahlung.ResumeLayout(False) + Me.GrpZahlung.PerformLayout() + CType(Me.diBetrag, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.dtdatum, System.ComponentModel.ISupportInitialize).EndInit() + Me.GrpZahlungen.ResumeLayout(False) + CType(Me.C1Zahlungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.GrpBehandlungen.ResumeLayout(False) + CType(Me.C1OffeneRechnungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents GrpZahlung As System.Windows.Forms.GroupBox + Friend WithEvents GrpZahlungen As System.Windows.Forms.GroupBox + Friend WithEvents GrpBehandlungen As System.Windows.Forms.GroupBox + Friend WithEvents C1Zahlungen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents txtRGNummer As System.Windows.Forms.TextBox + Friend WithEvents lblRechnungsnummer As System.Windows.Forms.Label + Friend WithEvents C1OffeneRechnungen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents lbldatum As System.Windows.Forms.Label + Friend WithEvents dtdatum As DevComponents.Editors.DateTimeAdv.DateTimeInput + Friend WithEvents lblBetrag As System.Windows.Forms.Label + Friend WithEvents diBetrag As DevComponents.Editors.DoubleInput + Friend WithEvents btnBuchen As System.Windows.Forms.Button + Friend WithEvents chkVorauszahlung As System.Windows.Forms.CheckBox + Friend WithEvents lblVorauszahlung As System.Windows.Forms.Label + Friend WithEvents cbboxKonto As DPM2016.MyCombobox + Friend WithEvents lblKonto As System.Windows.Forms.Label + +End Class diff --git a/DPM2016/Finanzaen/Finanzen.resx b/DPM2016/Finanzaen/Finanzen.resx new file mode 100644 index 0000000..6961e6d --- /dev/null +++ b/DPM2016/Finanzaen/Finanzen.resx @@ -0,0 +1,202 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 637, 228</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 637, 228</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}Style2{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}Heading{ForeColor:ControlText;Border:Flat,ControlDark,0, 1, 0, 1;AlignVert:Center;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style1{}Caption{AlignHorz:Center;}Style6{}FilterBar{BackColor:Info;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 637, 292</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 637, 292</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/Finanzaen/Finanzen.vb b/DPM2016/Finanzaen/Finanzen.vb new file mode 100644 index 0000000..94466a6 --- /dev/null +++ b/DPM2016/Finanzaen/Finanzen.vb @@ -0,0 +1,91 @@ +Public Class Finanzen + + Dim dbz As New clsDB + Dim dbk As New clsDB + Dim spalten As New Tabellenspalte + Dim m_patientnr As Integer + Property Patientnr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + m_patientnr = value + Refresh_Konto() + Refresh_Zahlungen() + End Set + End Property + + Dim Zahlungen As New DataTable + Dim Offene_Rechnungen As New DataTable + Sub Refresh_Zahlungen() + Try + dbz.Get_Tabledata("Zahlung", "", dbz.Get_SQL(19), Me.Patientnr.ToString) + Zahlungen = dbz.dsDaten.Tables(0).Copy + Me.C1Zahlungen.DataSource = Nothing + Me.C1Zahlungen.DataSource = Zahlungen + Me.C1Zahlungen.DataMember = dbz.dsDaten.Tables(0).TableName + dbz.Get_Tabledata("OffeneRechnungen", "", dbz.Get_SQL(22), Me.Patientnr.ToString) + Offene_Rechnungen = dbz.dsDaten.Tables(0).Copy + Me.C1OffeneRechnungen.DataSource = Nothing + Me.C1OffeneRechnungen.DataSource = Offene_Rechnungen + Me.C1OffeneRechnungen.DataMember = Offene_Rechnungen.TableName + spalten.Spaltentitel_aktualisieren(Me.C1OffeneRechnungen, "Offene_Rechnungen", Offene_Rechnungen) + Catch ex As Exception + MsgBox(ex.Message) + End Try + + End Sub + Public Sub Refresh_Data() + refresh_konto() + Refresh_Zahlungen() + End Sub + Sub refresh_konto() + dbk.Get_Tabledata("Konto", "where aktiv=1") + Me.cbboxKonto.DataSource = dbk.dsDaten.Tables(0) + Me.cbboxKonto.Displaymember = "Konto" + Me.cbboxKonto.Valuemember = "nrkonto" + + End Sub + + Private Sub txtRGNummer_TextChanged(sender As Object, e As EventArgs) Handles txtRGNummer.TextChanged + If Me.txtRGNummer.Text <> "" Then + Me.chkVorauszahlung.Checked = False + Me.chkVorauszahlung.Enabled = False + Else + Me.chkVorauszahlung.Enabled = True + End If + End Sub + + Private Sub btnBuchen_Click(sender As Object, e As EventArgs) Handles btnBuchen.Click + If chkVorauszahlung.Checked = False And Me.txtRGNummer.Text = "" Then + MsgBox("Zahlung kann nicht verbucht werden. Entweder als Vorauszahlung oder mit gültiger Rechnungsnummer.", MsgBoxStyle.Exclamation) + Exit Sub + End If + Dim newkey As Integer = dbz.Get_DBKey("Zahlung") + dbz.Get_Tabledata("Zahlung", "where nrzahlung=0") + Dim r As DataRow = dbz.dsDaten.Tables(0).NewRow + r("nrzahlung") = newkey + If Me.chkVorauszahlung.Checked = True Then r("nrfaktura") = 0 Else r("nrfaktura") = txtRGNummer.Text + r("vorauszahlung") = chkVorauszahlung.Checked + r("mandant") = 1 + r("nrdebitor") = Me.Patientnr + r("betrag") = Me.diBetrag.Value + r("nrkonto") = cbboxKonto.SelectedValue + r("valuta") = Me.dtdatum.Value + r("nrbehandlung") = 0 + r("status") = 0 + If chkVorauszahlung.Checked Then r("status") = 1 + r("statusdatum") = Now + r("erstellt_am") = Now + r("mutiert_am") = Now + r("mutierer") = Globals.ActUser + r("aktiv") = True + dbz.dsDaten.Tables(0).Rows.Add(r) + dbz.Update_Data() + Me.Refresh_Zahlungen() + End Sub + + Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked + + End Sub +End Class diff --git a/DPM2016/Firmen/frmFirma.Designer.vb b/DPM2016/Firmen/frmFirma.Designer.vb new file mode 100644 index 0000000..386115b --- /dev/null +++ b/DPM2016/Firmen/frmFirma.Designer.vb @@ -0,0 +1,847 @@ + _ +Partial Class frmFirma + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFirma)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnquit = New System.Windows.Forms.ToolStripButton() + Me.tsbtnSave = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnew = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripLabel1 = New System.Windows.Forms.ToolStripLabel() + Me.tstxtsuche = New System.Windows.Forms.ToolStripTextBox() + Me.tsbtnfirst = New System.Windows.Forms.ToolStripButton() + Me.tsbtprev = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnext = New System.Windows.Forms.ToolStripButton() + Me.tsbtnlast = New System.Windows.Forms.ToolStripButton() + Me.txtName1 = New System.Windows.Forms.TextBox() + Me.txtnrfirma = New System.Windows.Forms.TextBox() + Me.lblNr = New System.Windows.Forms.Label() + Me.lblAnrede = New System.Windows.Forms.Label() + Me.lblName2 = New System.Windows.Forms.Label() + Me.txtName2 = New System.Windows.Forms.TextBox() + Me.lblStrasse = New System.Windows.Forms.Label() + Me.txtStrasse = New System.Windows.Forms.TextBox() + Me.lblPostfach = New System.Windows.Forms.Label() + Me.txtPostfach = New System.Windows.Forms.TextBox() + Me.lblPlz = New System.Windows.Forms.Label() + Me.txtPlz = New System.Windows.Forms.TextBox() + Me.txtOrt = New System.Windows.Forms.TextBox() + Me.lblTelefon = New System.Windows.Forms.Label() + Me.txtTel = New System.Windows.Forms.TextBox() + Me.lblTelefax = New System.Windows.Forms.Label() + Me.txtFax = New System.Windows.Forms.TextBox() + Me.lblMobile = New System.Windows.Forms.Label() + Me.txtnatel = New System.Windows.Forms.TextBox() + Me.lblEmail = New System.Windows.Forms.Label() + Me.txtE_Mail = New System.Windows.Forms.TextBox() + Me.lblInterner = New System.Windows.Forms.Label() + Me.txtweb = New System.Windows.Forms.TextBox() + Me.cbboxSprache = New DPM2016.MyCombobox() + Me.cbboxStatus = New DPM2016.MyCombobox() + Me.Label15 = New System.Windows.Forms.Label() + Me.Label14 = New System.Windows.Forms.Label() + Me.txtBemerkung = New System.Windows.Forms.TextBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.lblSprache = New System.Windows.Forms.Label() + Me.lblStatus = New System.Windows.Forms.Label() + Me.Label13 = New System.Windows.Forms.Label() + Me.chklbAdresstyp = New System.Windows.Forms.CheckedListBox() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.c1daten = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ToolStrip2 = New System.Windows.Forms.ToolStrip() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton6 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton7 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton8 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton9 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripLabel2 = New System.Windows.Forms.ToolStripLabel() + Me.ToolStripTextBox1 = New System.Windows.Forms.ToolStripTextBox() + Me.ToolStripButton10 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton11 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton12 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton13 = New System.Windows.Forms.ToolStripButton() + Me.dtgueltigab = New System.Windows.Forms.DateTimePicker() + Me.dtgueltigbis = New System.Windows.Forms.DateTimePicker() + Me.btndeldatetimeab = New System.Windows.Forms.Button() + Me.btndeldatetimebis = New System.Windows.Forms.Button() + Me.MenuStrip1.SuspendLayout() + Me.ToolStrip1.SuspendLayout() + Me.GroupBox1.SuspendLayout() + CType(Me.c1daten, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ToolStrip2.SuspendLayout() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(940, 24) + Me.MenuStrip1.TabIndex = 20 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnquit, Me.tsbtnSave, Me.tsbtnnew, Me.ToolStripButton4, Me.ToolStripButton2, Me.ToolStripButton3, Me.ToolStripLabel1, Me.tstxtsuche, Me.tsbtnfirst, Me.tsbtprev, Me.tsbtnnext, Me.tsbtnlast}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(940, 25) + Me.ToolStrip1.TabIndex = 21 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnquit + ' + Me.tsbtnquit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnquit.Image = CType(resources.GetObject("tsbtnquit.Image"), System.Drawing.Image) + Me.tsbtnquit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnquit.Name = "tsbtnquit" + Me.tsbtnquit.Size = New System.Drawing.Size(23, 22) + Me.tsbtnquit.Text = "Schliessen" + ' + 'tsbtnSave + ' + Me.tsbtnSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnSave.Image = CType(resources.GetObject("tsbtnSave.Image"), System.Drawing.Image) + Me.tsbtnSave.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnSave.Name = "tsbtnSave" + Me.tsbtnSave.Size = New System.Drawing.Size(23, 22) + Me.tsbtnSave.Text = "Speichern" + ' + 'tsbtnnew + ' + Me.tsbtnnew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnew.Image = CType(resources.GetObject("tsbtnnew.Image"), System.Drawing.Image) + Me.tsbtnnew.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnew.Name = "tsbtnnew" + Me.tsbtnnew.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnew.Text = "Neuer Datensatz" + ' + 'ToolStripButton4 + ' + Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image) + Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton4.Name = "ToolStripButton4" + Me.ToolStripButton4.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton4.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton4.Visible = False + ' + 'ToolStripButton2 + ' + Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image) + Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton2.Name = "ToolStripButton2" + Me.ToolStripButton2.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton2.Text = "Dokument löschen" + Me.ToolStripButton2.Visible = False + ' + 'ToolStripButton3 + ' + Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image) + Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton3.Name = "ToolStripButton3" + Me.ToolStripButton3.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton3.Text = "Dokument anzeigen" + Me.ToolStripButton3.Visible = False + ' + 'ToolStripLabel1 + ' + Me.ToolStripLabel1.Name = "ToolStripLabel1" + Me.ToolStripLabel1.Size = New System.Drawing.Size(39, 22) + Me.ToolStripLabel1.Text = "Suche" + ' + 'tstxtsuche + ' + Me.tstxtsuche.Name = "tstxtsuche" + Me.tstxtsuche.Size = New System.Drawing.Size(100, 25) + ' + 'tsbtnfirst + ' + Me.tsbtnfirst.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnfirst.Image = CType(resources.GetObject("tsbtnfirst.Image"), System.Drawing.Image) + Me.tsbtnfirst.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnfirst.Name = "tsbtnfirst" + Me.tsbtnfirst.Size = New System.Drawing.Size(23, 22) + Me.tsbtnfirst.Text = "Erster Datensatz" + ' + 'tsbtprev + ' + Me.tsbtprev.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtprev.Image = CType(resources.GetObject("tsbtprev.Image"), System.Drawing.Image) + Me.tsbtprev.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtprev.Name = "tsbtprev" + Me.tsbtprev.Size = New System.Drawing.Size(23, 22) + Me.tsbtprev.Text = "Vorheriger Datensatz" + ' + 'tsbtnnext + ' + Me.tsbtnnext.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnext.Image = CType(resources.GetObject("tsbtnnext.Image"), System.Drawing.Image) + Me.tsbtnnext.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnext.Name = "tsbtnnext" + Me.tsbtnnext.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnext.Text = "nächster Datensatz" + ' + 'tsbtnlast + ' + Me.tsbtnlast.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnlast.Image = CType(resources.GetObject("tsbtnlast.Image"), System.Drawing.Image) + Me.tsbtnlast.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnlast.Name = "tsbtnlast" + Me.tsbtnlast.Size = New System.Drawing.Size(23, 22) + Me.tsbtnlast.Text = "Letzter Datensatz" + ' + 'txtName1 + ' + Me.txtName1.Location = New System.Drawing.Point(71, 88) + Me.txtName1.Name = "txtName1" + Me.txtName1.Size = New System.Drawing.Size(162, 20) + Me.txtName1.TabIndex = 103 + ' + 'txtnrfirma + ' + Me.txtnrfirma.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtnrfirma.Location = New System.Drawing.Point(71, 62) + Me.txtnrfirma.Name = "txtnrfirma" + Me.txtnrfirma.ReadOnly = True + Me.txtnrfirma.RightToLeft = System.Windows.Forms.RightToLeft.Yes + Me.txtnrfirma.Size = New System.Drawing.Size(48, 20) + Me.txtnrfirma.TabIndex = 110 + ' + 'lblNr + ' + Me.lblNr.AutoSize = True + Me.lblNr.BackColor = System.Drawing.Color.Transparent + Me.lblNr.Location = New System.Drawing.Point(12, 62) + Me.lblNr.Name = "lblNr" + Me.lblNr.Size = New System.Drawing.Size(21, 13) + Me.lblNr.TabIndex = 111 + Me.lblNr.Text = "Nr." + ' + 'lblAnrede + ' + Me.lblAnrede.AutoSize = True + Me.lblAnrede.BackColor = System.Drawing.Color.Transparent + Me.lblAnrede.Location = New System.Drawing.Point(12, 91) + Me.lblAnrede.Name = "lblAnrede" + Me.lblAnrede.Size = New System.Drawing.Size(51, 13) + Me.lblAnrede.TabIndex = 112 + Me.lblAnrede.Text = "Name Z1" + ' + 'lblName2 + ' + Me.lblName2.AutoSize = True + Me.lblName2.BackColor = System.Drawing.Color.Transparent + Me.lblName2.Location = New System.Drawing.Point(12, 117) + Me.lblName2.Name = "lblName2" + Me.lblName2.Size = New System.Drawing.Size(51, 13) + Me.lblName2.TabIndex = 114 + Me.lblName2.Text = "Name Z2" + ' + 'txtName2 + ' + Me.txtName2.Location = New System.Drawing.Point(71, 114) + Me.txtName2.Name = "txtName2" + Me.txtName2.Size = New System.Drawing.Size(162, 20) + Me.txtName2.TabIndex = 113 + ' + 'lblStrasse + ' + Me.lblStrasse.AutoSize = True + Me.lblStrasse.BackColor = System.Drawing.Color.Transparent + Me.lblStrasse.Location = New System.Drawing.Point(12, 143) + Me.lblStrasse.Name = "lblStrasse" + Me.lblStrasse.Size = New System.Drawing.Size(42, 13) + Me.lblStrasse.TabIndex = 116 + Me.lblStrasse.Text = "Strasse" + ' + 'txtStrasse + ' + Me.txtStrasse.Location = New System.Drawing.Point(71, 140) + Me.txtStrasse.Name = "txtStrasse" + Me.txtStrasse.Size = New System.Drawing.Size(162, 20) + Me.txtStrasse.TabIndex = 115 + ' + 'lblPostfach + ' + Me.lblPostfach.AutoSize = True + Me.lblPostfach.BackColor = System.Drawing.Color.Transparent + Me.lblPostfach.Location = New System.Drawing.Point(12, 169) + Me.lblPostfach.Name = "lblPostfach" + Me.lblPostfach.Size = New System.Drawing.Size(49, 13) + Me.lblPostfach.TabIndex = 118 + Me.lblPostfach.Text = "Postfach" + ' + 'txtPostfach + ' + Me.txtPostfach.Location = New System.Drawing.Point(71, 166) + Me.txtPostfach.Name = "txtPostfach" + Me.txtPostfach.Size = New System.Drawing.Size(162, 20) + Me.txtPostfach.TabIndex = 117 + ' + 'lblPlz + ' + Me.lblPlz.AutoSize = True + Me.lblPlz.BackColor = System.Drawing.Color.Transparent + Me.lblPlz.Location = New System.Drawing.Point(12, 195) + Me.lblPlz.Name = "lblPlz" + Me.lblPlz.Size = New System.Drawing.Size(46, 13) + Me.lblPlz.TabIndex = 120 + Me.lblPlz.Text = "PLZ/Ort" + ' + 'txtPlz + ' + Me.txtPlz.Location = New System.Drawing.Point(71, 192) + Me.txtPlz.Name = "txtPlz" + Me.txtPlz.Size = New System.Drawing.Size(48, 20) + Me.txtPlz.TabIndex = 119 + ' + 'txtOrt + ' + Me.txtOrt.Location = New System.Drawing.Point(125, 192) + Me.txtOrt.Name = "txtOrt" + Me.txtOrt.Size = New System.Drawing.Size(108, 20) + Me.txtOrt.TabIndex = 121 + ' + 'lblTelefon + ' + Me.lblTelefon.AutoSize = True + Me.lblTelefon.BackColor = System.Drawing.Color.Transparent + Me.lblTelefon.Location = New System.Drawing.Point(12, 221) + Me.lblTelefon.Name = "lblTelefon" + Me.lblTelefon.Size = New System.Drawing.Size(43, 13) + Me.lblTelefon.TabIndex = 123 + Me.lblTelefon.Text = "Telefon" + ' + 'txtTel + ' + Me.txtTel.Location = New System.Drawing.Point(71, 218) + Me.txtTel.Name = "txtTel" + Me.txtTel.Size = New System.Drawing.Size(162, 20) + Me.txtTel.TabIndex = 122 + ' + 'lblTelefax + ' + Me.lblTelefax.AutoSize = True + Me.lblTelefax.BackColor = System.Drawing.Color.Transparent + Me.lblTelefax.Location = New System.Drawing.Point(12, 247) + Me.lblTelefax.Name = "lblTelefax" + Me.lblTelefax.Size = New System.Drawing.Size(42, 13) + Me.lblTelefax.TabIndex = 125 + Me.lblTelefax.Text = "Telefax" + ' + 'txtFax + ' + Me.txtFax.Location = New System.Drawing.Point(71, 244) + Me.txtFax.Name = "txtFax" + Me.txtFax.Size = New System.Drawing.Size(162, 20) + Me.txtFax.TabIndex = 124 + ' + 'lblMobile + ' + Me.lblMobile.AutoSize = True + Me.lblMobile.BackColor = System.Drawing.Color.Transparent + Me.lblMobile.Location = New System.Drawing.Point(12, 273) + Me.lblMobile.Name = "lblMobile" + Me.lblMobile.Size = New System.Drawing.Size(38, 13) + Me.lblMobile.TabIndex = 127 + Me.lblMobile.Text = "Mobile" + ' + 'txtnatel + ' + Me.txtnatel.Location = New System.Drawing.Point(71, 270) + Me.txtnatel.Name = "txtnatel" + Me.txtnatel.Size = New System.Drawing.Size(162, 20) + Me.txtnatel.TabIndex = 126 + ' + 'lblEmail + ' + Me.lblEmail.AutoSize = True + Me.lblEmail.BackColor = System.Drawing.Color.Transparent + Me.lblEmail.Location = New System.Drawing.Point(12, 299) + Me.lblEmail.Name = "lblEmail" + Me.lblEmail.Size = New System.Drawing.Size(36, 13) + Me.lblEmail.TabIndex = 129 + Me.lblEmail.Text = "E-Mail" + ' + 'txtE_Mail + ' + Me.txtE_Mail.Location = New System.Drawing.Point(71, 296) + Me.txtE_Mail.Name = "txtE_Mail" + Me.txtE_Mail.Size = New System.Drawing.Size(162, 20) + Me.txtE_Mail.TabIndex = 128 + ' + 'lblInterner + ' + Me.lblInterner.AutoSize = True + Me.lblInterner.BackColor = System.Drawing.Color.Transparent + Me.lblInterner.Location = New System.Drawing.Point(12, 325) + Me.lblInterner.Name = "lblInterner" + Me.lblInterner.Size = New System.Drawing.Size(43, 13) + Me.lblInterner.TabIndex = 131 + Me.lblInterner.Text = "Internet" + ' + 'txtweb + ' + Me.txtweb.Location = New System.Drawing.Point(71, 322) + Me.txtweb.Name = "txtweb" + Me.txtweb.Size = New System.Drawing.Size(162, 20) + Me.txtweb.TabIndex = 130 + ' + 'cbboxSprache + ' + Me.cbboxSprache.Dataselection = Nothing + Me.cbboxSprache.Displaymember = Nothing + Me.cbboxSprache.Location = New System.Drawing.Point(320, 114) + Me.cbboxSprache.Name = "cbboxSprache" + Me.cbboxSprache.Size = New System.Drawing.Size(162, 21) + Me.cbboxSprache.TabIndex = 203 + Me.cbboxSprache.Table = Nothing + Me.cbboxSprache.TableAlias = "" + Me.cbboxSprache.Valuemember = Nothing + ' + 'cbboxStatus + ' + Me.cbboxStatus.Dataselection = Nothing + Me.cbboxStatus.Displaymember = Nothing + Me.cbboxStatus.Location = New System.Drawing.Point(320, 87) + Me.cbboxStatus.Name = "cbboxStatus" + Me.cbboxStatus.Size = New System.Drawing.Size(162, 21) + Me.cbboxStatus.TabIndex = 202 + Me.cbboxStatus.Table = Nothing + Me.cbboxStatus.TableAlias = "" + Me.cbboxStatus.Valuemember = Nothing + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.BackColor = System.Drawing.Color.Transparent + Me.Label15.Location = New System.Drawing.Point(250, 172) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(50, 13) + Me.Label15.TabIndex = 211 + Me.Label15.Text = "Gültig bis" + ' + 'Label14 + ' + Me.Label14.AutoSize = True + Me.Label14.BackColor = System.Drawing.Color.Transparent + Me.Label14.Location = New System.Drawing.Point(250, 148) + Me.Label14.Name = "Label14" + Me.Label14.Size = New System.Drawing.Size(49, 13) + Me.Label14.TabIndex = 210 + Me.Label14.Text = "Gültig ab" + ' + 'txtBemerkung + ' + Me.txtBemerkung.Location = New System.Drawing.Point(501, 107) + Me.txtBemerkung.Multiline = True + Me.txtBemerkung.Name = "txtBemerkung" + Me.txtBemerkung.Size = New System.Drawing.Size(427, 197) + Me.txtBemerkung.TabIndex = 206 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.BackColor = System.Drawing.Color.Transparent + Me.Label2.Location = New System.Drawing.Point(498, 87) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(61, 13) + Me.Label2.TabIndex = 209 + Me.Label2.Text = "Bemerkung" + ' + 'lblSprache + ' + Me.lblSprache.AutoSize = True + Me.lblSprache.BackColor = System.Drawing.Color.Transparent + Me.lblSprache.Location = New System.Drawing.Point(250, 118) + Me.lblSprache.Name = "lblSprache" + Me.lblSprache.Size = New System.Drawing.Size(47, 13) + Me.lblSprache.TabIndex = 208 + Me.lblSprache.Text = "Sprache" + ' + 'lblStatus + ' + Me.lblStatus.AutoSize = True + Me.lblStatus.BackColor = System.Drawing.Color.Transparent + Me.lblStatus.Location = New System.Drawing.Point(250, 91) + Me.lblStatus.Name = "lblStatus" + Me.lblStatus.Size = New System.Drawing.Size(37, 13) + Me.lblStatus.TabIndex = 207 + Me.lblStatus.Text = "Status" + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.BackColor = System.Drawing.Color.Transparent + Me.Label13.Location = New System.Drawing.Point(250, 199) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(53, 13) + Me.Label13.TabIndex = 213 + Me.Label13.Text = "Adresstyp" + ' + 'chklbAdresstyp + ' + Me.chklbAdresstyp.FormattingEnabled = True + Me.chklbAdresstyp.Items.AddRange(New Object() {"Arbeitgeber", "Fürsorge", "Garant", "IV", "Krankenkasse", "Versicherung"}) + Me.chklbAdresstyp.Location = New System.Drawing.Point(317, 195) + Me.chklbAdresstyp.Name = "chklbAdresstyp" + Me.chklbAdresstyp.Size = New System.Drawing.Size(165, 109) + Me.chklbAdresstyp.TabIndex = 212 + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.c1daten) + Me.GroupBox1.Controls.Add(Me.ToolStrip2) + Me.GroupBox1.Location = New System.Drawing.Point(12, 348) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(916, 154) + Me.GroupBox1.TabIndex = 214 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Ansprechpartner" + ' + 'c1daten + ' + Me.c1daten.AlternatingRows = True + Me.c1daten.CellTips = C1.Win.C1TrueDBGrid.CellTipEnum.Floating + Me.c1daten.Dock = System.Windows.Forms.DockStyle.Fill + Me.c1daten.FetchRowStyles = True + Me.c1daten.FilterBar = True + Me.c1daten.GroupByCaption = "Drag a column header here to group by that column" + Me.c1daten.Images.Add(CType(resources.GetObject("c1daten.Images"), System.Drawing.Image)) + Me.c1daten.Location = New System.Drawing.Point(3, 41) + Me.c1daten.Name = "c1daten" + Me.c1daten.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.c1daten.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.c1daten.PreviewInfo.ZoomFactor = 75.0R + Me.c1daten.PrintInfo.PageSettings = CType(resources.GetObject("c1daten.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.c1daten.Size = New System.Drawing.Size(910, 110) + Me.c1daten.TabAction = C1.Win.C1TrueDBGrid.TabActionEnum.ColumnNavigation + Me.c1daten.TabIndex = 1 + Me.c1daten.Text = "C1TrueDBGrid1" + Me.c1daten.PropBag = resources.GetString("c1daten.PropBag") + ' + 'ToolStrip2 + ' + Me.ToolStrip2.AllowDrop = True + Me.ToolStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripButton1, Me.ToolStripButton5, Me.ToolStripButton6, Me.ToolStripButton7, Me.ToolStripButton8, Me.ToolStripButton9, Me.ToolStripLabel2, Me.ToolStripTextBox1, Me.ToolStripButton10, Me.ToolStripButton11, Me.ToolStripButton12, Me.ToolStripButton13}) + Me.ToolStrip2.Location = New System.Drawing.Point(3, 16) + Me.ToolStrip2.Name = "ToolStrip2" + Me.ToolStrip2.Size = New System.Drawing.Size(910, 25) + Me.ToolStrip2.TabIndex = 22 + Me.ToolStrip2.Text = "ToolStrip2" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Schliessen" + Me.ToolStripButton1.Visible = False + ' + 'ToolStripButton5 + ' + Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image) + Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton5.Name = "ToolStripButton5" + Me.ToolStripButton5.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton5.Text = "Speichern" + Me.ToolStripButton5.Visible = False + ' + 'ToolStripButton6 + ' + Me.ToolStripButton6.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton6.Image = CType(resources.GetObject("ToolStripButton6.Image"), System.Drawing.Image) + Me.ToolStripButton6.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton6.Name = "ToolStripButton6" + Me.ToolStripButton6.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton6.Text = "Neuer Datensatz" + ' + 'ToolStripButton7 + ' + Me.ToolStripButton7.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton7.Image = CType(resources.GetObject("ToolStripButton7.Image"), System.Drawing.Image) + Me.ToolStripButton7.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton7.Name = "ToolStripButton7" + Me.ToolStripButton7.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton7.Text = "Dokumentinformationen bearbeiten" + ' + 'ToolStripButton8 + ' + Me.ToolStripButton8.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton8.Image = CType(resources.GetObject("ToolStripButton8.Image"), System.Drawing.Image) + Me.ToolStripButton8.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton8.Name = "ToolStripButton8" + Me.ToolStripButton8.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton8.Text = "Dokument löschen" + ' + 'ToolStripButton9 + ' + Me.ToolStripButton9.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton9.Image = CType(resources.GetObject("ToolStripButton9.Image"), System.Drawing.Image) + Me.ToolStripButton9.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton9.Name = "ToolStripButton9" + Me.ToolStripButton9.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton9.Text = "Dokument anzeigen" + Me.ToolStripButton9.Visible = False + ' + 'ToolStripLabel2 + ' + Me.ToolStripLabel2.Name = "ToolStripLabel2" + Me.ToolStripLabel2.Size = New System.Drawing.Size(39, 22) + Me.ToolStripLabel2.Text = "Suche" + Me.ToolStripLabel2.Visible = False + ' + 'ToolStripTextBox1 + ' + Me.ToolStripTextBox1.Name = "ToolStripTextBox1" + Me.ToolStripTextBox1.Size = New System.Drawing.Size(100, 25) + Me.ToolStripTextBox1.Visible = False + ' + 'ToolStripButton10 + ' + Me.ToolStripButton10.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton10.Image = CType(resources.GetObject("ToolStripButton10.Image"), System.Drawing.Image) + Me.ToolStripButton10.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton10.Name = "ToolStripButton10" + Me.ToolStripButton10.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton10.Text = "Erster Datensatz" + Me.ToolStripButton10.Visible = False + ' + 'ToolStripButton11 + ' + Me.ToolStripButton11.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton11.Image = CType(resources.GetObject("ToolStripButton11.Image"), System.Drawing.Image) + Me.ToolStripButton11.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton11.Name = "ToolStripButton11" + Me.ToolStripButton11.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton11.Text = "Vorheriger Datensatz" + Me.ToolStripButton11.Visible = False + ' + 'ToolStripButton12 + ' + Me.ToolStripButton12.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton12.Image = CType(resources.GetObject("ToolStripButton12.Image"), System.Drawing.Image) + Me.ToolStripButton12.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton12.Name = "ToolStripButton12" + Me.ToolStripButton12.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton12.Text = "nächster Datensatz" + Me.ToolStripButton12.Visible = False + ' + 'ToolStripButton13 + ' + Me.ToolStripButton13.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton13.Image = CType(resources.GetObject("ToolStripButton13.Image"), System.Drawing.Image) + Me.ToolStripButton13.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton13.Name = "ToolStripButton13" + Me.ToolStripButton13.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton13.Text = "Letzter Datensatz" + Me.ToolStripButton13.Visible = False + ' + 'dtgueltigab + ' + Me.dtgueltigab.Location = New System.Drawing.Point(320, 140) + Me.dtgueltigab.Name = "dtgueltigab" + Me.dtgueltigab.Size = New System.Drawing.Size(141, 20) + Me.dtgueltigab.TabIndex = 215 + ' + 'dtgueltigbis + ' + Me.dtgueltigbis.Location = New System.Drawing.Point(320, 169) + Me.dtgueltigbis.Name = "dtgueltigbis" + Me.dtgueltigbis.Size = New System.Drawing.Size(141, 20) + Me.dtgueltigbis.TabIndex = 216 + ' + 'btndeldatetimeab + ' + Me.btndeldatetimeab.Location = New System.Drawing.Point(467, 140) + Me.btndeldatetimeab.Name = "btndeldatetimeab" + Me.btndeldatetimeab.Size = New System.Drawing.Size(15, 23) + Me.btndeldatetimeab.TabIndex = 217 + Me.btndeldatetimeab.UseVisualStyleBackColor = True + ' + 'btndeldatetimebis + ' + Me.btndeldatetimebis.Location = New System.Drawing.Point(467, 169) + Me.btndeldatetimebis.Name = "btndeldatetimebis" + Me.btndeldatetimebis.Size = New System.Drawing.Size(15, 23) + Me.btndeldatetimebis.TabIndex = 218 + Me.btndeldatetimebis.UseVisualStyleBackColor = True + ' + 'frmFirma + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(940, 514) + Me.Controls.Add(Me.btndeldatetimebis) + Me.Controls.Add(Me.btndeldatetimeab) + Me.Controls.Add(Me.dtgueltigbis) + Me.Controls.Add(Me.dtgueltigab) + Me.Controls.Add(Me.GroupBox1) + Me.Controls.Add(Me.Label13) + Me.Controls.Add(Me.chklbAdresstyp) + Me.Controls.Add(Me.cbboxSprache) + Me.Controls.Add(Me.cbboxStatus) + Me.Controls.Add(Me.Label15) + Me.Controls.Add(Me.Label14) + Me.Controls.Add(Me.txtBemerkung) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.lblSprache) + Me.Controls.Add(Me.lblStatus) + Me.Controls.Add(Me.lblInterner) + Me.Controls.Add(Me.txtweb) + Me.Controls.Add(Me.lblEmail) + Me.Controls.Add(Me.txtE_Mail) + Me.Controls.Add(Me.lblMobile) + Me.Controls.Add(Me.txtnatel) + Me.Controls.Add(Me.lblTelefax) + Me.Controls.Add(Me.txtFax) + Me.Controls.Add(Me.lblTelefon) + Me.Controls.Add(Me.txtTel) + Me.Controls.Add(Me.txtOrt) + Me.Controls.Add(Me.lblPlz) + Me.Controls.Add(Me.txtPlz) + Me.Controls.Add(Me.lblPostfach) + Me.Controls.Add(Me.txtPostfach) + Me.Controls.Add(Me.lblStrasse) + Me.Controls.Add(Me.txtStrasse) + Me.Controls.Add(Me.lblName2) + Me.Controls.Add(Me.txtName2) + Me.Controls.Add(Me.lblNr) + Me.Controls.Add(Me.lblAnrede) + Me.Controls.Add(Me.txtName1) + Me.Controls.Add(Me.txtnrfirma) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Name = "frmFirma" + Me.Text = "Firmen" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox1.PerformLayout() + CType(Me.c1daten, System.ComponentModel.ISupportInitialize).EndInit() + Me.ToolStrip2.ResumeLayout(False) + Me.ToolStrip2.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents MenuStrip1 As MenuStrip + Friend WithEvents DateiToolStripMenuItem As ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents ToolStrip1 As ToolStrip + Friend WithEvents tsbtnquit As ToolStripButton + Friend WithEvents tsbtnSave As ToolStripButton + Friend WithEvents tsbtnnew As ToolStripButton + Friend WithEvents ToolStripButton4 As ToolStripButton + Friend WithEvents ToolStripButton2 As ToolStripButton + Friend WithEvents ToolStripButton3 As ToolStripButton + Friend WithEvents ToolStripLabel1 As ToolStripLabel + Friend WithEvents tstxtsuche As ToolStripTextBox + Friend WithEvents tsbtnfirst As ToolStripButton + Friend WithEvents tsbtprev As ToolStripButton + Friend WithEvents tsbtnnext As ToolStripButton + Friend WithEvents tsbtnlast As ToolStripButton + Friend WithEvents txtName1 As TextBox + Friend WithEvents txtnrfirma As TextBox + Friend WithEvents lblNr As Label + Friend WithEvents lblAnrede As Label + Friend WithEvents lblName2 As Label + Friend WithEvents txtName2 As TextBox + Friend WithEvents lblStrasse As Label + Friend WithEvents txtStrasse As TextBox + Friend WithEvents lblPostfach As Label + Friend WithEvents txtPostfach As TextBox + Friend WithEvents lblPlz As Label + Friend WithEvents txtPlz As TextBox + Friend WithEvents txtOrt As TextBox + Friend WithEvents lblTelefon As Label + Friend WithEvents txtTel As TextBox + Friend WithEvents lblTelefax As Label + Friend WithEvents txtFax As TextBox + Friend WithEvents lblMobile As Label + Friend WithEvents txtnatel As TextBox + Friend WithEvents lblEmail As Label + Friend WithEvents txtE_Mail As TextBox + Friend WithEvents lblInterner As Label + Friend WithEvents txtweb As TextBox + Friend WithEvents cbboxSprache As MyCombobox + Friend WithEvents cbboxStatus As MyCombobox + Friend WithEvents Label15 As Label + Friend WithEvents Label14 As Label + Friend WithEvents txtBemerkung As TextBox + Friend WithEvents Label2 As Label + Friend WithEvents lblSprache As Label + Friend WithEvents lblStatus As Label + Friend WithEvents Label13 As Label + Friend WithEvents chklbAdresstyp As CheckedListBox + Friend WithEvents GroupBox1 As GroupBox + Friend WithEvents dtgueltigab As DateTimePicker + Friend WithEvents dtgueltigbis As DateTimePicker + Friend WithEvents btndeldatetimeab As Button + Friend WithEvents btndeldatetimebis As Button + Friend WithEvents c1daten As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ToolStrip2 As ToolStrip + Friend WithEvents ToolStripButton1 As ToolStripButton + Friend WithEvents ToolStripButton5 As ToolStripButton + Friend WithEvents ToolStripButton6 As ToolStripButton + Friend WithEvents ToolStripButton7 As ToolStripButton + Friend WithEvents ToolStripButton8 As ToolStripButton + Friend WithEvents ToolStripButton9 As ToolStripButton + Friend WithEvents ToolStripLabel2 As ToolStripLabel + Friend WithEvents ToolStripTextBox1 As ToolStripTextBox + Friend WithEvents ToolStripButton10 As ToolStripButton + Friend WithEvents ToolStripButton11 As ToolStripButton + Friend WithEvents ToolStripButton12 As ToolStripButton + Friend WithEvents ToolStripButton13 As ToolStripButton +End Class diff --git a/DPM2016/Firmen/frmFirma.resx b/DPM2016/Firmen/frmFirma.resx new file mode 100644 index 0000000..1bc78d4 --- /dev/null +++ b/DPM2016/Firmen/frmFirma.resx @@ -0,0 +1,602 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 124, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + 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 + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + 9ENI1qz5H5t6trPpJ4eoAAAAAElFTkSuQmCC + + + + + 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 + + + + 231, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FetchRowStyles="True" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 908, 108</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 908, 108</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + 231, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAINSURBVDhPY6AVYAyc67K/+XD1/SYg9p3quAQqTiQIZWAO + Wu75Zu6Nuf9nX5/9322S/TmoDJEAaIDnctc3k69M/D/hSt9/p0nm56EyRAKwATZveq+0/O++0gg0wAiP + AfUMTOYLtWx81tnYB0CxZZ+ak88myw9dV8v/d1wp+e88T++2/XxtB591FvYeQOyyzsTeYJGyFVi/cAGn + Se6J5P99V5v+T7ze8H/Szbr/U27V/O++kfe/43rm/9Zr6f87r+f+775e9L/tSsH/hot5/yvPZf8P2Ov6 + ny+OXZlBLJfTogoo0H+9Fqi56v+U2xX/p94p/d9+M+5/283o/y03I/533Ur+33Mz63/79fT/DZdT/1ee + T/4fdtD5P28ImzqDUAaLRcQOwf9ph4T/554U+l94Ruh/wRnB/zXXzP633/H533rH83/5ZZ3/+af5/+cB + cdZx/v9JB/j++27lAhrAoM7A6cQgLRnPsFk2mWGbYhrDNuV0IA3EaftFf3Y+sP3f/sDqf9gm8Q8gMRgG + qRWPZ9jAZ8EgBA4HIGBEwfYMLOGHmN7UPeb4X/eY67/7ciZQLKCqgWAcABiNiecY3nS8YvgPwj5rGEhP + B7kXBN4s+CT/f/5H+f9hG3lJNyBpr+6bOQ89/oNwwCJ1Eg1gYGCSymXYYdjGcAOExeIZ5kHFSQIsDCoM + 7GDMwMAMEUIHDAwArmHzT5KTHe0AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIXSURBVDhPlY9dSJNhFMffCylqduHIEk2pbaWwqMyLpCsL + +sAwJRlBBNLozoYSXhQFr6N1ZRdBH2AXo959tll799GcbrWtmN2EoIXkWiOc1t7emdvcRRu5f8/guWyb + /eDPeZ5z/uec52E2g18mc75ra7tJr//HdE/Pw/sMA31dHQJy+ce3CkU9LVWnuPC4cz4ehfv2XdwjQ8Yl + ErxobMSsTNZNLZX5PXdDTE92IBl9gtiigPG9MjyoqYFLKr1FLeXZiOm4X/6zSDpbsWxisOI/hegPEa80 + Q9+opTzFuO5MOqRC0q0kA+RYnpBC9Lbju20L4nPPW6nt30S9mq1C8GpeIJtTUyeQsO/A6lQXGaTAH79E + Q23l2ZgfDggeJVanT5MXHCSbOyD6jiPr3RWhlvIUo9fVKW8nfnqOYC2ogkC+sPamDyx7oPjJVl9LbeUp + LDxKCJ525N5fgzh5DJnQJaTI9mJo/wVqqUz+81OkF3mkZ+8g87qXbD+PQujoBC1XZmzssgQCj+yXl1hf + CiKXCCAX6V6n5eo0N+9WXuzrQuarG3khAhRituzKh520XJ2mlpZz27bXYk9Dgyu1NNNE05sjHA7vY1l2 + VKvV6jiTSaXXPxswm82DDodjpCSe5weJ1ERXXC5Xv9PpPOnz+RS0nWHsdvshi8XSS5oGDAbDkNFoHCFx + lES2JHou5YaJ1BzH9Vut1sMMwzB/AbGNI/RUTiAEAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJASURBVDhPfZNLSxtRFMdn5Suah0oChhiJmlGj8RGfiKIi + gouAEPULuMlSxe+Rrbt8hKEWGfJobNq5k0ZaJ7Vgq90ILW5auiiFLv8955oJiU37hwPDPfd3/ufMvVex + VTk4SF0mEprmcrmrS39JCwbdpZ0dzdjeTlWXHvUhmUw/nJ7i7e4uspGIxRurqZqqsPXp5ATG4iJyo6Np + mWBnCScSMNfXIVZXoatqQ5EafHwMMTcHY2ZGRkZVUwq3zc42LJaXYSwtQQ+HZZEafHQEEYtBTE3VQh8a + 0hSemduuh435eRizs9BDIasUj1u3h4cwydGcnIQZjaJEwblal/zBbdfDggB2+ZhMojQ9LaE3FOWJiUbY + lixCbdfD7ChGRmAMDEAEgzApss1gW7IIbTDIqRgIoOB04iXFK7cboqcHus/3b5jFSbG1ZVnxOF50dkr4 + tccDs7cXZa8XWb///+5Fgiv7+8gTeFEHX/p8eNfXh/f9/cgHAs3nL25sWJW9PeTIuUBRdLlk22WCr/x+ + XNP8N6EQboeHUXx6AgxbBGccDuQ6OnDR1SXdeeYctc3ON4OD+KyquI9E8IX+kajeE8XY3NSu6CLp7e3I + tLUhT0V4dt3rlRs4uO27cBj34+N4oCP9RrfxOx13SVU1pbCwkDpvbYXe0oIsFeGfd97d3TCn7JLa/krH + yuBPunC/VlZQiUYfH9WZw5G2Czx7AtviNZMu2w96SL/X1nAXiz0+JltnTmfqucejNYNtca48NqZd286K + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + 9ENI1qz5H5t6trPpJ4eoAAAAAElFTkSuQmCC + + + + + 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 + + + \ No newline at end of file diff --git a/DPM2016/Firmen/frmFirma.vb b/DPM2016/Firmen/frmFirma.vb new file mode 100644 index 0000000..8a82a12 --- /dev/null +++ b/DPM2016/Firmen/frmFirma.vb @@ -0,0 +1,499 @@ +Imports DPM2016.MyCombobox +Public Class frmFirma + Dim m_haschanges As Boolean + Property HasChanges As Boolean + Get + Return m_haschanges + End Get + Set(value As Boolean) + m_haschanges = value + End Set + End Property + + Dim m_firmanr As Integer = 0 + Property Firmanr As Integer + Get + Return m_firmanr + End Get + Set(value As Integer) + m_firmanr = value + Get_Data() + AddChanges(Me) + Me.HasChanges = False + End Set + End Property + +#Region "Deklarationen" + Dim DB As New clsDB + + Dim FormReadonly As Boolean = False + Dim log As New clsLog + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + Dim spalten As New Tabellenspalte + Dim Firmaap As New DataTable + +#End Region + +#Region "Closing / Check_Changes" + + ''' + ''' Prüfung, ob Datenänderungen vorgenommen wurden. + ''' + ''' + Private Function Check_Changes() As Boolean + If Me.FormReadonly Then + Return True + Exit Function + End If + Dim msgres As MsgBoxResult + If Me.HasChanges Then + msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) + Select Case msgres + Case MsgBoxResult.Yes + Save_Data() + Return True + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Me.HasChanges = False + Return True + End Select + Else + Return True + End If + End Function + +#End Region + +#Region "Eventhandler ChangeEreignisse" + ''' + ''' Allg Eventhandler für Chanage-Ereignise festlegen + ''' + ''' + ''' + Private Sub AddChanges(ByVal Container As Control) + Dim l As New List(Of Control) + Me.GetControl(Me, "*", l) + Dim evh As EventHandler = AddressOf ChangesMade + For Each c As Control In l + If TypeOf c Is TextBox Then + Dim ctl As TextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is MaskedTextBox Then + Dim ctl As MaskedTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is ComboBox Then + Dim ctl As ComboBox = c + AddHandler ctl.SelectedValueChanged, evh + End If + If TypeOf c Is RichTextBox Then + Dim ctl As RichTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is CheckBox Then + If c.Name <> "cboxNurAktive" Then + Dim ctl As CheckBox = c + AddHandler ctl.CheckedChanged, evh + End If + End If + If TypeOf c Is DateTimePicker Then + Dim ctl As DateTimePicker = c + AddHandler ctl.ValueChanged, evh + End If + If TypeOf c Is CheckedListBox Then + Dim ctl As CheckedListBox = c + AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange + End If + Next + End Sub + ''' + ''' Envent-Handler für Change-Ereignisse + ''' + ''' + ''' + ''' + Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) + Me.HasChanges = True + Dim objtype As System.Type = sender.GetType + If objtype.Name = "MaskedTextBox" Then + Dim o As MaskedTextBox = sender + If o.Text = "01.01.1900" Then o.Text = " . . " + End If + End Sub + + Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) + Me.HasChanges = True + End Sub + + + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + +#Region "Daten_Laden" + + Public Sub Fill_Stammdaten() + log.Writelog("PartnerDetails: Fill_Stammdaten", clsLog.Logtype.Information) + + Me.cbboxSprache.Table = "Sprache" + Me.cbboxSprache.Displaymember = "Sprachbezeichnung" + Me.cbboxSprache.Valuemember = "Sprachcode" + + Me.cbboxStatus.Table = "Status" + Me.cbboxStatus.Displaymember = "Status" + Me.cbboxStatus.Valuemember = "nrstatus" + + + log.Writelog("PartnerDetails: Fill_Stammdaten Ende", clsLog.Logtype.Information) + + End Sub + Private Sub frmFirma_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Dim db As New clsDB + If Firmanr = 0 Then + db.Get_Tabledata("Firma", "", "", "", False) + Me.Firmanr = db.dsDaten.Tables(0).Rows(0).Item(0) + End If + Get_Data() + End Sub + + Sub Get_Data() + Dim ctlname As String + Dim colname As String + Try + db.Get_Tabledata("firma", " where nrfirma=" + Me.Firmanr.ToString) + Dim r As DataRow = db.dsDaten.Tables(0).Rows(0) + For Each c As DataColumn In db.dsDaten.Tables(0).Columns + colname = c.ColumnName + For Each Ctl As Control In Me.Controls + 'Dim objtype As System.Type = Ctl.GetType + 'If objtype.Name = "Label" Then + ' Exit For + 'End If + ctlname = Ctl.Name + log.Writelog("Firmadetails: Get_Data: " + Ctl.Name, clsLog.Logtype.Information) + If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then + log.Writelog("--Firmadetails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Ctl.Text = r(c.ColumnName).ToString + Exit For + End If + If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + log.Writelog("--Firmadetails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Dim ct As MyCombobox + Dim o As Object = Ctl + Try + o.SelectedValue = r(c.ColumnName) + Catch + o.SelectedValue = -1 + End Try + + Exit For + End If + If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then + log.Writelog("--Firmadetails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Dim dt As DateTimePicker + dt = Ctl + Try + dt.Value = r(c.ColumnName) + dt.Format = DateTimePickerFormat.Short + Catch + + dt.CustomFormat = " " 'An empty SPACE + dt.Format = DateTimePickerFormat.Custom + + End Try + + Exit For + End If + Next + + Select Case UCase(c.ColumnName) + Case "AG" + Set_Adresstype("Arbeitgeber", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "VS" + Set_Adresstype("Versicherung", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "KK" + Set_Adresstype("Krankenkasse", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "IV" + Set_Adresstype("IV", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "FS" + Set_Adresstype("Fürsorge", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "Garant" + Set_Adresstype("Garant", r(c.ColumnName).ToString) + log.Writelog("--Firmendetails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + End Select + Next + + Refresh_AP() + Catch ex As Exception + log.Writelog("Privatdetails: Get_Data: " + ctlname + " / " + colname + " " + ex.Message, clsLog.Logtype.ApplError) + End Try + End Sub + + Sub Refresh_AP() + DB.Get_Tabledata("Firmaap", "where aktiv=1 and nrfirma=" + Firmanr.ToString) + Me.Firmaap.Rows.Clear() + Me.Firmaap = DB.dsDaten.Tables(0).Copy + Me.c1daten.DataSource = Firmaap + spalten.Spaltentitel_aktualisieren(Me.c1daten, DB.dsDaten.Tables(0).TableName, DB.dsDaten.Tables(0)) + End Sub + Private Sub Set_Adresstype(ByVal feldname, value) + Dim i As Integer + For i = 0 To Me.chklbAdresstyp.Items.Count - 1 + If UCase(chklbAdresstyp.Items(i).ToString) = UCase(feldname) Then + Try + If value <> False Then chklbAdresstyp.SetItemCheckState(i, CheckState.Checked) Else chklbAdresstyp.SetItemCheckState(i, CheckState.Unchecked) + + Catch ex As Exception + chklbAdresstyp.SetItemCheckState(i, CheckState.Unchecked) + + End Try + End If + Next + End Sub +#End Region + +#Region "Daten speichern" + + + Private Sub dtgueltigab_ValueChanged(sender As Object, e As EventArgs) Handles dtgueltigab.ValueChanged, dtgueltigbis.ValueChanged + Dim dt As DateTimePicker + dt = sender + dt.CustomFormat = "" + dt.Format = DateTimePickerFormat.Short + End Sub + + Private Sub btndeldatetimeab_Click(sender As Object, e As EventArgs) Handles btndeldatetimeab.Click + dtgueltigab.CustomFormat = " " 'An empty SPACE + dtgueltigab.Format = DateTimePickerFormat.Custom + + End Sub + + Private Sub btndeldatetimebis_Click(sender As Object, e As EventArgs) Handles btndeldatetimebis.Click + dtgueltigbis.CustomFormat = " " 'An empty SPACE + dtgueltigbis.Format = DateTimePickerFormat.Custom + End Sub +#End Region + + +#Region "Daten speichern" + + Public Sub Save_Data() + DB.Get_Tabledata("firma", " where nrfirma=" + Me.Firmanr.ToString) + Dim r As DataRow = DB.dsDaten.Tables(0).Rows(0) + + For Each c As DataColumn In DB.dsDaten.Tables(0).Columns + For Each Ctl As Control In Me.Controls + If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then + If UCase(Ctl.Name) <> "TXTMUTIERT_AM" And UCase(Ctl.Name) <> "TXTERSTLLT_AM" Then + r(c.ColumnName) = Ctl.Text + Exit For + End If + End If + If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + Dim ct As MyCombobox + Dim o As Object = Ctl + Try + r(c.ColumnName) = o.selectedvalue + Catch ex As Exception + r(c.ColumnName) = 0 + End Try + Exit For + End If + If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = Ctl + If dt.CustomFormat = " " Then + r(c.ColumnName) = System.DBNull.Value + Else + r(c.ColumnName) = dt.Value + End If + Exit For + End If + Next + Select Case UCase(c.ColumnName) + Case "AG" + r(c.ColumnName) = Get_Adresstype("Arbeitgeber", r(c.ColumnName)) + Case "VS" + r(c.ColumnName) = Get_Adresstype("Versicherung", r(c.ColumnName)) + Case "KK" + r(c.ColumnName) = Get_Adresstype("Krankenkasse", r(c.ColumnName)) + Case "IV" + r(c.ColumnName) = Get_Adresstype("IV", r(c.ColumnName)) + Case "FS" + r(c.ColumnName) = Get_Adresstype("Fürsorge", r(c.ColumnName)) + Case "GARANT" + r(c.ColumnName) = Get_Adresstype("GARANT", r(c.ColumnName)) + End Select + Next + r("Mutiert_am") = Now + r("mutierer") = Globals.ActUser + DB.Update_Data() + Me.HasChanges = False + + End Sub + + Private Function Get_Adresstype(ByVal feldname, value) As Integer + Try + Dim i As Integer + For i = 0 To Me.chklbAdresstyp.Items.Count - 1 + If UCase(chklbAdresstyp.Items(i).ToString) = UCase(feldname) Then + Return chklbAdresstyp.GetItemChecked(i) + End If + Next + Catch + Return -1 + End Try + + End Function + + Private Sub tsbtnSave_Click(sender As Object, e As EventArgs) Handles tsbtnSave.Click + Save_Data() + End Sub + + + +#End Region + +#Region "Scroll" + Private Sub tsbtnfirst_Click(sender As Object, e As EventArgs) Handles tsbtnfirst.Click + If Me.Check_Changes = False Then Exit Sub + Dim db As New clsDB + db.Get_Tabledata("Firma", "", db.Get_SQL(24)) + Me.Firmanr = db.dsDaten.Tables(0).Rows(0).Item(0) + db.Dispose() + End Sub + + Private Sub tsbtnlast_Click(sender As Object, e As EventArgs) Handles tsbtnlast.Click + If Me.Check_Changes = False Then Exit Sub + Dim db As New clsDB + db.Get_Tabledata("Firma", "", db.Get_SQL(25)) + Me.Firmanr = db.dsDaten.Tables(0).Rows(0).Item(0) + db.Dispose() + End Sub + + Private Sub tsbtnnext_Click(sender As Object, e As EventArgs) Handles tsbtnnext.Click + If Me.Check_Changes = False Then Exit Sub + Dim db As New clsDB + Try + db.Get_Tabledata("Firma", "", db.Get_SQL(26), Me.Firmanr.ToString) + Me.Firmanr = db.dsDaten.Tables(0).Rows(0).Item(0) + Catch + Me.Firmanr = Me.Firmanr + End Try + db.Dispose() + End Sub + + Private Sub tsbtprev_Click(sender As Object, e As EventArgs) Handles tsbtprev.Click + If Me.Check_Changes = False Then Exit Sub + Dim db As New clsDB + Try + db.Get_Tabledata("firma", "", db.Get_SQL(27), Me.Firmanr.ToString) + Me.Firmanr = db.dsDaten.Tables(0).Rows(0).Item(0) + Catch + Me.Firmanr = Me.Firmanr + End Try + db.Dispose() + End Sub + + + + Private Sub ToolStripButton7_Click(sender As Object, e As EventArgs) Handles ToolStripButton7.Click + Try + Dim f As New frmFirmaAP + f.nrfirmaap = Me.c1daten.Columns("nrfirmaap").Value + f.firmanr = Me.c1daten.Columns("nrfirma").Value + f.ShowDialog() + Refresh_AP() + Catch ex As Exception + + End Try + End Sub + + Private Sub ToolStripButton8_Click(sender As Object, e As EventArgs) Handles ToolStripButton8.Click + If MsgBox("Ansprechpartner wirklich löschen?", vbYesNo + vbQuestion) = vbYes Then + Dim f As New frmFirmaAP + f.nrfirmaap = Me.c1daten.Columns("nrfirmaap").Value + f.firmanr = Me.c1daten.Columns("nrfirma").Value + f.Visible = False + f.Show() + f.Delete_ap() + f.Close() + Refresh_AP() + End If + End Sub + + Private Sub ToolStripButton6_Click(sender As Object, e As EventArgs) Handles ToolStripButton6.Click + Dim f As New frmFirmaAP + f.nrfirmaap = 0 + f.firmanr = Me.Firmanr + f.ShowDialog() + Refresh_AP() + End Sub + + Private Sub tsbtnquit_Click(sender As Object, e As EventArgs) Handles tsbtnquit.Click + Me.Close() + End Sub + + Private Sub tsbtnnew_Click(sender As Object, e As EventArgs) Handles tsbtnnew.Click + + End Sub + + +#End Region + +End Class \ No newline at end of file diff --git a/DPM2016/Firmen/frmFirmaAP.Designer.vb b/DPM2016/Firmen/frmFirmaAP.Designer.vb new file mode 100644 index 0000000..1036143 --- /dev/null +++ b/DPM2016/Firmen/frmFirmaAP.Designer.vb @@ -0,0 +1,313 @@ + _ +Partial Class frmFirmaAP + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmFirmaAP)) + Me.ToolStrip2 = New System.Windows.Forms.ToolStrip() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton7 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton8 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton9 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripLabel2 = New System.Windows.Forms.ToolStripLabel() + Me.ToolStripTextBox1 = New System.Windows.Forms.ToolStripTextBox() + Me.ToolStripButton10 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton11 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton12 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton13 = New System.Windows.Forms.ToolStripButton() + Me.lblAnrede = New System.Windows.Forms.Label() + Me.cbboxAnrede = New System.Windows.Forms.ComboBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.txtName = New System.Windows.Forms.TextBox() + Me.txtBriefanrede = New System.Windows.Forms.TextBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.txtTelefon = New System.Windows.Forms.TextBox() + Me.Label4 = New System.Windows.Forms.Label() + Me.txtTelefax = New System.Windows.Forms.TextBox() + Me.Label5 = New System.Windows.Forms.Label() + Me.txtBemerkung = New System.Windows.Forms.TextBox() + Me.ToolStrip2.SuspendLayout() + Me.SuspendLayout() + ' + 'ToolStrip2 + ' + Me.ToolStrip2.AllowDrop = True + Me.ToolStrip2.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripButton1, Me.ToolStripButton5, Me.ToolStripButton7, Me.ToolStripButton8, Me.ToolStripButton9, Me.ToolStripLabel2, Me.ToolStripTextBox1, Me.ToolStripButton10, Me.ToolStripButton11, Me.ToolStripButton12, Me.ToolStripButton13}) + Me.ToolStrip2.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip2.Name = "ToolStrip2" + Me.ToolStrip2.Size = New System.Drawing.Size(266, 25) + Me.ToolStrip2.TabIndex = 23 + Me.ToolStrip2.Text = "ToolStrip2" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Schliessen" + ' + 'ToolStripButton5 + ' + Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image) + Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton5.Name = "ToolStripButton5" + Me.ToolStripButton5.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton5.Text = "Speichern" + ' + 'ToolStripButton7 + ' + Me.ToolStripButton7.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton7.Image = CType(resources.GetObject("ToolStripButton7.Image"), System.Drawing.Image) + Me.ToolStripButton7.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton7.Name = "ToolStripButton7" + Me.ToolStripButton7.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton7.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton7.Visible = False + ' + 'ToolStripButton8 + ' + Me.ToolStripButton8.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton8.Image = CType(resources.GetObject("ToolStripButton8.Image"), System.Drawing.Image) + Me.ToolStripButton8.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton8.Name = "ToolStripButton8" + Me.ToolStripButton8.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton8.Text = "Dokument löschen" + Me.ToolStripButton8.Visible = False + ' + 'ToolStripButton9 + ' + Me.ToolStripButton9.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton9.Image = CType(resources.GetObject("ToolStripButton9.Image"), System.Drawing.Image) + Me.ToolStripButton9.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton9.Name = "ToolStripButton9" + Me.ToolStripButton9.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton9.Text = "Dokument anzeigen" + Me.ToolStripButton9.Visible = False + ' + 'ToolStripLabel2 + ' + Me.ToolStripLabel2.Name = "ToolStripLabel2" + Me.ToolStripLabel2.Size = New System.Drawing.Size(39, 22) + Me.ToolStripLabel2.Text = "Suche" + Me.ToolStripLabel2.Visible = False + ' + 'ToolStripTextBox1 + ' + Me.ToolStripTextBox1.Name = "ToolStripTextBox1" + Me.ToolStripTextBox1.Size = New System.Drawing.Size(100, 23) + Me.ToolStripTextBox1.Visible = False + ' + 'ToolStripButton10 + ' + Me.ToolStripButton10.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton10.Image = CType(resources.GetObject("ToolStripButton10.Image"), System.Drawing.Image) + Me.ToolStripButton10.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton10.Name = "ToolStripButton10" + Me.ToolStripButton10.Size = New System.Drawing.Size(23, 20) + Me.ToolStripButton10.Text = "Erster Datensatz" + Me.ToolStripButton10.Visible = False + ' + 'ToolStripButton11 + ' + Me.ToolStripButton11.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton11.Image = CType(resources.GetObject("ToolStripButton11.Image"), System.Drawing.Image) + Me.ToolStripButton11.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton11.Name = "ToolStripButton11" + Me.ToolStripButton11.Size = New System.Drawing.Size(23, 20) + Me.ToolStripButton11.Text = "Vorheriger Datensatz" + Me.ToolStripButton11.Visible = False + ' + 'ToolStripButton12 + ' + Me.ToolStripButton12.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton12.Image = CType(resources.GetObject("ToolStripButton12.Image"), System.Drawing.Image) + Me.ToolStripButton12.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton12.Name = "ToolStripButton12" + Me.ToolStripButton12.Size = New System.Drawing.Size(23, 20) + Me.ToolStripButton12.Text = "nächster Datensatz" + Me.ToolStripButton12.Visible = False + ' + 'ToolStripButton13 + ' + Me.ToolStripButton13.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton13.Image = CType(resources.GetObject("ToolStripButton13.Image"), System.Drawing.Image) + Me.ToolStripButton13.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton13.Name = "ToolStripButton13" + Me.ToolStripButton13.Size = New System.Drawing.Size(23, 20) + Me.ToolStripButton13.Text = "Letzter Datensatz" + Me.ToolStripButton13.Visible = False + ' + 'lblAnrede + ' + Me.lblAnrede.AutoSize = True + Me.lblAnrede.Location = New System.Drawing.Point(9, 45) + Me.lblAnrede.Name = "lblAnrede" + Me.lblAnrede.Size = New System.Drawing.Size(41, 13) + Me.lblAnrede.TabIndex = 24 + Me.lblAnrede.Text = "Anrede" + ' + 'cbboxAnrede + ' + Me.cbboxAnrede.FormattingEnabled = True + Me.cbboxAnrede.Location = New System.Drawing.Point(77, 42) + Me.cbboxAnrede.Name = "cbboxAnrede" + Me.cbboxAnrede.Size = New System.Drawing.Size(173, 21) + Me.cbboxAnrede.TabIndex = 25 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(9, 75) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(35, 13) + Me.Label1.TabIndex = 26 + Me.Label1.Text = "Name" + ' + 'txtName + ' + Me.txtName.Location = New System.Drawing.Point(77, 72) + Me.txtName.Name = "txtName" + Me.txtName.Size = New System.Drawing.Size(173, 20) + Me.txtName.TabIndex = 27 + ' + 'txtBriefanrede + ' + Me.txtBriefanrede.Location = New System.Drawing.Point(77, 98) + Me.txtBriefanrede.Name = "txtBriefanrede" + Me.txtBriefanrede.Size = New System.Drawing.Size(173, 20) + Me.txtBriefanrede.TabIndex = 28 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(10, 101) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(61, 13) + Me.Label2.TabIndex = 29 + Me.Label2.Text = "Briefanrede" + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(10, 127) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(43, 13) + Me.Label3.TabIndex = 31 + Me.Label3.Text = "Telefon" + ' + 'txtTelefon + ' + Me.txtTelefon.Location = New System.Drawing.Point(77, 124) + Me.txtTelefon.Name = "txtTelefon" + Me.txtTelefon.Size = New System.Drawing.Size(173, 20) + Me.txtTelefon.TabIndex = 30 + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(10, 153) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(42, 13) + Me.Label4.TabIndex = 33 + Me.Label4.Text = "Telefax" + ' + 'txtTelefax + ' + Me.txtTelefax.Location = New System.Drawing.Point(77, 150) + Me.txtTelefax.Name = "txtTelefax" + Me.txtTelefax.Size = New System.Drawing.Size(173, 20) + Me.txtTelefax.TabIndex = 32 + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(10, 179) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(61, 13) + Me.Label5.TabIndex = 34 + Me.Label5.Text = "Bemerkung" + ' + 'txtBemerkung + ' + Me.txtBemerkung.Location = New System.Drawing.Point(12, 195) + Me.txtBemerkung.Multiline = True + Me.txtBemerkung.Name = "txtBemerkung" + Me.txtBemerkung.Size = New System.Drawing.Size(238, 126) + Me.txtBemerkung.TabIndex = 35 + ' + 'frmFirmaAP + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(266, 339) + Me.Controls.Add(Me.txtBemerkung) + Me.Controls.Add(Me.Label5) + Me.Controls.Add(Me.Label4) + Me.Controls.Add(Me.txtTelefax) + Me.Controls.Add(Me.Label3) + Me.Controls.Add(Me.txtTelefon) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.txtBriefanrede) + Me.Controls.Add(Me.txtName) + Me.Controls.Add(Me.Label1) + Me.Controls.Add(Me.cbboxAnrede) + Me.Controls.Add(Me.lblAnrede) + Me.Controls.Add(Me.ToolStrip2) + Me.Name = "frmFirmaAP" + Me.Text = "Ansprechpartner" + Me.ToolStrip2.ResumeLayout(False) + Me.ToolStrip2.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents ToolStrip2 As ToolStrip + Friend WithEvents ToolStripButton1 As ToolStripButton + Friend WithEvents ToolStripButton5 As ToolStripButton + Friend WithEvents ToolStripButton7 As ToolStripButton + Friend WithEvents ToolStripButton8 As ToolStripButton + Friend WithEvents ToolStripButton9 As ToolStripButton + Friend WithEvents ToolStripLabel2 As ToolStripLabel + Friend WithEvents ToolStripTextBox1 As ToolStripTextBox + Friend WithEvents ToolStripButton10 As ToolStripButton + Friend WithEvents ToolStripButton11 As ToolStripButton + Friend WithEvents ToolStripButton12 As ToolStripButton + Friend WithEvents ToolStripButton13 As ToolStripButton + Friend WithEvents lblAnrede As Label + Friend WithEvents cbboxAnrede As ComboBox + Friend WithEvents Label1 As Label + Friend WithEvents txtName As TextBox + Friend WithEvents txtBriefanrede As TextBox + Friend WithEvents Label2 As Label + Friend WithEvents Label3 As Label + Friend WithEvents txtTelefon As TextBox + Friend WithEvents Label4 As Label + Friend WithEvents txtTelefax As TextBox + Friend WithEvents Label5 As Label + Friend WithEvents txtBemerkung As TextBox +End Class diff --git a/DPM2016/Firmen/frmFirmaAP.resx b/DPM2016/Firmen/frmFirmaAP.resx new file mode 100644 index 0000000..8bcd2ee --- /dev/null +++ b/DPM2016/Firmen/frmFirmaAP.resx @@ -0,0 +1,324 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIXSURBVDhPlY9dSJNhFMffCylqduHIEk2pbaWwqMyLpCsL + +sAwJRlBBNLozoYSXhQFr6N1ZRdBH2AXo959tll799GcbrWtmN2EoIXkWiOc1t7emdvcRRu5f8/guWyb + /eDPeZ5z/uec52E2g18mc75ra7tJr//HdE/Pw/sMA31dHQJy+ce3CkU9LVWnuPC4cz4ehfv2XdwjQ8Yl + ErxobMSsTNZNLZX5PXdDTE92IBl9gtiigPG9MjyoqYFLKr1FLeXZiOm4X/6zSDpbsWxisOI/hegPEa80 + Q9+opTzFuO5MOqRC0q0kA+RYnpBC9Lbju20L4nPPW6nt30S9mq1C8GpeIJtTUyeQsO/A6lQXGaTAH79E + Q23l2ZgfDggeJVanT5MXHCSbOyD6jiPr3RWhlvIUo9fVKW8nfnqOYC2ogkC+sPamDyx7oPjJVl9LbeUp + LDxKCJ525N5fgzh5DJnQJaTI9mJo/wVqqUz+81OkF3mkZ+8g87qXbD+PQujoBC1XZmzssgQCj+yXl1hf + CiKXCCAX6V6n5eo0N+9WXuzrQuarG3khAhRituzKh520XJ2mlpZz27bXYk9Dgyu1NNNE05sjHA7vY1l2 + VKvV6jiTSaXXPxswm82DDodjpCSe5weJ1ERXXC5Xv9PpPOnz+RS0nWHsdvshi8XSS5oGDAbDkNFoHCFx + lES2JHou5YaJ1BzH9Vut1sMMwzB/AbGNI/RUTiAEAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJASURBVDhPfZNLSxtRFMdn5Suah0oChhiJmlGj8RGfiKIi + gouAEPULuMlSxe+Rrbt8hKEWGfJobNq5k0ZaJ7Vgq90ILW5auiiFLv8955oJiU37hwPDPfd3/ufMvVex + VTk4SF0mEprmcrmrS39JCwbdpZ0dzdjeTlWXHvUhmUw/nJ7i7e4uspGIxRurqZqqsPXp5ATG4iJyo6Np + mWBnCScSMNfXIVZXoatqQ5EafHwMMTcHY2ZGRkZVUwq3zc42LJaXYSwtQQ+HZZEafHQEEYtBTE3VQh8a + 0hSemduuh435eRizs9BDIasUj1u3h4cwydGcnIQZjaJEwblal/zBbdfDggB2+ZhMojQ9LaE3FOWJiUbY + lixCbdfD7ChGRmAMDEAEgzApss1gW7IIbTDIqRgIoOB04iXFK7cboqcHus/3b5jFSbG1ZVnxOF50dkr4 + tccDs7cXZa8XWb///+5Fgiv7+8gTeFEHX/p8eNfXh/f9/cgHAs3nL25sWJW9PeTIuUBRdLlk22WCr/x+ + XNP8N6EQboeHUXx6AgxbBGccDuQ6OnDR1SXdeeYctc3ON4OD+KyquI9E8IX+kajeE8XY3NSu6CLp7e3I + tLUhT0V4dt3rlRs4uO27cBj34+N4oCP9RrfxOx13SVU1pbCwkDpvbYXe0oIsFeGfd97d3TCn7JLa/krH + yuBPunC/VlZQiUYfH9WZw5G2Czx7AtviNZMu2w96SL/X1nAXiz0+JltnTmfqucejNYNtca48NqZd286K + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + 9ENI1qz5H5t6trPpJ4eoAAAAAElFTkSuQmCC + + + + + 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 + + + \ No newline at end of file diff --git a/DPM2016/Firmen/frmFirmaAP.vb b/DPM2016/Firmen/frmFirmaAP.vb new file mode 100644 index 0000000..4dedb8a --- /dev/null +++ b/DPM2016/Firmen/frmFirmaAP.vb @@ -0,0 +1,100 @@ +Public Class frmFirmaAP + Dim m_firmanr As Integer + Property firmanr As Integer + Get + Return m_firmanr + + End Get + Set(value As Integer) + m_firmanr = value + End Set + End Property + + Dim m_nrfirmaap As Integer + Property nrfirmaap As Integer + Get + Return m_nrfirmaap + End Get + Set(value As Integer) + m_nrfirmaap = value + End Set + End Property + Dim db As New clsDB + Dim anreden As New DataTable + Dim daten As New DataTable + Private Sub frmFirmaAP_Load(sender As Object, e As EventArgs) Handles MyBase.Load + db.Get_Tabledata("Anrede", "", "") + anreden = db.dsDaten.Tables(0).Copy + Me.cbboxAnrede.DataSource = anreden + Me.cbboxAnrede.DisplayMember = "Anrede_D" + Me.cbboxAnrede.ValueMember = "nranrede" + + If Me.nrfirmaap <> 0 Then + db.Get_Tabledata("Firmaap", "where nrfirmaap=" + Me.nrfirmaap.ToString, "", "", False) + daten = db.dsDaten.Tables(0).Copy + Me.txtName.Text = daten.Rows(0).Item(3) + Me.txtBriefanrede.Text = daten.Rows(0).Item(4) + Me.txtTelefon.Text = daten.Rows(0).Item(5) + Me.txtTelefax.Text = daten.Rows(0).Item(6) + Me.txtBemerkung.Text = daten.Rows(0).Item(7) + End If + End Sub + + Private Sub ToolStripButton5_Click(sender As Object, e As EventArgs) Handles ToolStripButton5.Click + If Me.nrfirmaap <> 0 Then + Save_Data() + Me.Close() + Else + db.Insert_New_Entry("firmaap", "nrfirmaap", True, "Select top 1 * from firmaap order by nrfirmaap desc") + Me.nrfirmaap = db.dsDaten.Tables(0).Rows(0).Item(0) + db.Get_Tabledata("Firmaap", "where nrfirmaap=" + Me.nrfirmaap.ToString, "", "", False) + daten = db.dsDaten.Tables(0).Copy + Update_Table("nrfirma", Me.firmanr) + Save_Data() + Me.Close() + End If + End Sub + + Sub Save_Data() + Update_Table("Name", Me.txtName.Text) + + Update_Table("Briefanrede", Me.txtBriefanrede.Text) + Update_Table("Telefon", Me.txtTelefon.Text) + Update_Table("Telefax", Me.txtTelefax.Text) + Update_Table("Bemerkung", Me.txtBemerkung.Text) + Update_Table("Nranrede", Me.cbboxAnrede.SelectedValue) + Update_Table("Mutiert_am", Now) + Update_Table("Mutierer", Globals.ActUser) + db.updatedata("select * from firmaap where nrfirmaap = " & Me.nrfirmaap.ToString, daten, False, True) + End Sub + + Sub Update_Table(ByVal Tag As String, ByVal Val As Object) + Try + Try + If Val = " . ." Then + Val = "1900-01-01" + End If + ' Val = Val.ToString.Replace(".", "") + 'Val = Trim(Val) + daten.Rows(0).Item(Tag) = Val + Catch + End Try + + daten.Rows(0).Item(Tag) = Val + + Catch + End Try + + End Sub + + Sub Delete_ap() + Update_Table("aktiv", False) + Update_Table("Mutiert_am", Now) + Update_Table("Mutierer", Globals.ActUser) + db.updatedata("select * from firmaap where nrfirmaap = " & Me.nrfirmaap.ToString, daten, False, True) + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click + Me.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/KG/Krankengeschichte.Designer.vb b/DPM2016/KG/Krankengeschichte.Designer.vb new file mode 100644 index 0000000..d770e31 --- /dev/null +++ b/DPM2016/KG/Krankengeschichte.Designer.vb @@ -0,0 +1,86 @@ + _ +Partial Class Krankengeschichte + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Krankengeschichte)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.pnlKG = New System.Windows.Forms.Panel() + Me.C1KG = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.pnlKG.SuspendLayout() + CType(Me.C1KG, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(960, 25) + Me.ToolStrip1.TabIndex = 0 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'pnlKG + ' + Me.pnlKG.Controls.Add(Me.C1KG) + Me.pnlKG.Dock = System.Windows.Forms.DockStyle.Fill + Me.pnlKG.Location = New System.Drawing.Point(0, 25) + Me.pnlKG.Name = "pnlKG" + Me.pnlKG.Size = New System.Drawing.Size(960, 574) + Me.pnlKG.TabIndex = 1 + ' + 'C1KG + ' + Me.C1KG.AlternatingRows = True + Me.C1KG.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1KG.FilterBar = True + Me.C1KG.GroupByCaption = "Drag a column header here to group by that column" + Me.C1KG.Images.Add(CType(resources.GetObject("C1KG.Images"), System.Drawing.Image)) + Me.C1KG.Location = New System.Drawing.Point(0, 0) + Me.C1KG.Name = "C1KG" + Me.C1KG.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1KG.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1KG.PreviewInfo.ZoomFactor = 75.0R + Me.C1KG.PrintInfo.PageSettings = CType(resources.GetObject("C1Leistungen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1KG.Size = New System.Drawing.Size(960, 574) + Me.C1KG.TabIndex = 3 + Me.C1KG.Text = "C1TrueDBGrid1" + Me.C1KG.PropBag = resources.GetString("C1KG.PropBag") + ' + 'Krankengeschichte + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.pnlKG) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "Krankengeschichte" + Me.Size = New System.Drawing.Size(960, 599) + Me.pnlKG.ResumeLayout(False) + CType(Me.C1KG, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents pnlKG As System.Windows.Forms.Panel + Friend WithEvents C1KG As C1.Win.C1TrueDBGrid.C1TrueDBGrid + +End Class diff --git a/DPM2016/KG/Krankengeschichte.resx b/DPM2016/KG/Krankengeschichte.resx new file mode 100644 index 0000000..64ff491 --- /dev/null +++ b/DPM2016/KG/Krankengeschichte.resx @@ -0,0 +1,163 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 958, 572</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 958, 572</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/KG/Krankengeschichte.vb b/DPM2016/KG/Krankengeschichte.vb new file mode 100644 index 0000000..0b956b4 --- /dev/null +++ b/DPM2016/KG/Krankengeschichte.vb @@ -0,0 +1,25 @@ +Public Class Krankengeschichte + Dim db As New clsDB + Dim m_patientnr As Integer + Dim spalten As New Tabellenspalte + Property Patientnr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + m_patientnr = value + Refresh_KG() + End Set + End Property + + + Sub Refresh_KG() + db.Get_Tabledata("KG", "where nrprivat=" + Me.Patientnr.ToString + " order by datum desc") + Me.C1KG.DataSource = Nothing + Me.C1KG.DataSource = db.dsDaten.Tables(0) + Me.C1KG.DataMember = db.dsDaten.Tables(0).TableName + spalten.Spaltentitel_aktualisieren(Me.C1KG, db.dsDaten.Tables(0).TableName, db.dsDaten.Tables(0)) + End Sub + + +End Class diff --git a/DPM2016/Klassen/Archiv/MyCombobox.Designer.vb b/DPM2016/Klassen/Archiv/MyCombobox.Designer.vb new file mode 100644 index 0000000..b3407ea --- /dev/null +++ b/DPM2016/Klassen/Archiv/MyCombobox.Designer.vb @@ -0,0 +1,49 @@ + _ +Partial Class MyCombobox + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + ComboBox1 = New System.Windows.Forms.ComboBox() + Me.SuspendLayout() + ' + 'ComboBox1 + ' + ComboBox1.Dock = System.Windows.Forms.DockStyle.Fill + ComboBox1.FormattingEnabled = True + ComboBox1.Location = New System.Drawing.Point(0, 0) + ComboBox1.Name = "ComboBox1" + ComboBox1.Size = New System.Drawing.Size(205, 21) + ComboBox1.TabIndex = 0 + ' + 'MyCombobox + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(ComboBox1) + Me.Name = "MyCombobox" + Me.Size = New System.Drawing.Size(205, 22) + Me.ResumeLayout(False) + + End Sub + Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox + +End Class diff --git a/DPM2016/Klassen/Archiv/MyCombobox.resx b/DPM2016/Klassen/Archiv/MyCombobox.resx new file mode 100644 index 0000000..7080a7d --- /dev/null +++ b/DPM2016/Klassen/Archiv/MyCombobox.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/Klassen/Archiv/MyCombobox.vb b/DPM2016/Klassen/Archiv/MyCombobox.vb new file mode 100644 index 0000000..7e35a7e --- /dev/null +++ b/DPM2016/Klassen/Archiv/MyCombobox.vb @@ -0,0 +1,118 @@ +Public Class MyCombobox + + Dim db As New clsDB + + + + Dim m_sql As String + Property Dataselection As String + Get + Return m_sql + End Get + Set(value As String) + m_sql = value + End Set + End Property + + Dim M_TableAlias As String = "" + Property TableAlias As String + Get + Return M_TableAlias + End Get + Set(value As String) + M_TableAlias = value + End Set + End Property + + Dim m_table As String + Property Table As String + Get + Return m_table + End Get + Set(value As String) + m_table = value + db.dsDaten.Tables.Clear() + Try + Dim TableFound As Boolean = False + For Each t As DataTable In IntTables.Inttables.Tables + If Me.TableAlias <> "" Then + If t.TableName = Me.TableAlias Then TableFound = True + Else + If t.TableName = value Then TableFound = True + End If + + Next + If Not TableFound Then + If Me.Dataselection <> "" Then + db.Get_Tabledata(value, " ", Me.Dataselection) + Else + db.Get_Tabledata(value, " where aktiv=1") + + End If + + If Me.TableAlias <> "" Then + db.dsDaten.Tables(0).TableName = Me.TableAlias + Else + db.dsDaten.Tables(0).TableName = value + End If + IntTables.Inttables.Tables.Add(db.dsDaten.Tables(0).Copy) + End If + If Me.TableAlias <> "" Then + Me.combobox1.DataSource = IntTables.Inttables.Tables(Me.TableAlias) + Else + Me.combobox1.DataSource = IntTables.Inttables.Tables(value) + End If + Catch ex As Exception + End Try + End Set + End Property + + Dim m_displaymember As String + Property Displaymember As String + Get + Return m_displaymember + End Get + Set(value As String) + m_displaymember = value + Me.combobox1.DisplayMember = m_displaymember + End Set + End Property + + Dim m_valuememeber As String + Property Valuemember As String + Get + Return m_valuememeber + End Get + Set(value As String) + m_valuememeber = value + Me.combobox1.ValueMember = m_valuememeber + End Set + End Property + + Dim m_selectedvalue As String + Property SelectedValue + Get + m_selectedvalue = Me.combobox1.SelectedValue + Return m_selectedvalue + End Get + Set(value) + m_selectedvalue = value + Me.combobox1.SelectedValue = value + End Set + End Property + + Dim m_text As String + Property Text As String + Get + m_text = Me.combobox1.Text + Return m_text + End Get + Set(value As String) + m_text = value + Me.combobox1.Text = value + End Set + End Property + + + +End Class diff --git a/DPM2016/Klassen/MyCombobox.vb b/DPM2016/Klassen/MyCombobox.vb new file mode 100644 index 0000000..4a3a74f --- /dev/null +++ b/DPM2016/Klassen/MyCombobox.vb @@ -0,0 +1,122 @@ +Public Class MyCombobox + Inherits ComboBox + + Dim db As New clsDB + + + + Dim m_sql As String + Property Dataselection As String + Get + Return m_sql + End Get + Set(value As String) + m_sql = value + End Set + End Property + + Dim M_TableAlias As String = "" + Property TableAlias As String + Get + Return M_TableAlias + End Get + Set(value As String) + M_TableAlias = value + End Set + End Property + + Dim m_table As String + Property Table As String + Get + Return m_table + End Get + Set(value As String) + m_table = value + db.dsDaten.Tables.Clear() + Try + Dim TableFound As Boolean = False + For Each t As DataTable In IntTables.Inttables.Tables + If Me.TableAlias <> "" Then + If t.TableName = Me.TableAlias Then TableFound = True + Else + If t.TableName = value Then TableFound = True + End If + + Next + If Not TableFound Then + If Me.Dataselection <> "" Then + db.Get_Tabledata(value, " ", Me.Dataselection) + Else + db.Get_Tabledata(value, " where aktiv=1") + + End If + + If Me.TableAlias <> "" Then + db.dsDaten.Tables(0).TableName = Me.TableAlias + Else + db.dsDaten.Tables(0).TableName = value + End If + IntTables.Inttables.Tables.Add(db.dsDaten.Tables(0).Copy) + End If + If Me.TableAlias <> "" Then + MyBase.DataSource = IntTables.Inttables.Tables(Me.TableAlias) + Else + MyBase.DataSource = IntTables.Inttables.Tables(value) + End If + Catch ex As Exception + End Try + End Set + End Property + + Dim m_displaymember As String + Property Displaymember As String + Get + Return m_displaymember + End Get + Set(value As String) + m_displaymember = value + MyBase.DisplayMember = m_displaymember + End Set + End Property + + Dim m_valuememeber As String + Property Valuemember As String + Get + Return m_valuememeber + End Get + Set(value As String) + m_valuememeber = value + MyBase.ValueMember = m_valuememeber + End Set + End Property + + Dim m_selectedvalue As String + Property SelectedValue + Get + m_selectedvalue = MyBase.SelectedValue + Return m_selectedvalue + End Get + Set(value) + Try + m_selectedvalue = value + Catch + m_selectedvalue = -1 + End Try + + MyBase.SelectedValue = value + End Set + End Property + + Dim m_text As String + Property Text As String + Get + m_text = MyBase.Text + Return m_text + End Get + Set(value As String) + m_text = value + MyBase.Text = value + End Set + End Property + +End Class diff --git a/DPM2016/Klassen/MyCombobox.vb.bak.bak b/DPM2016/Klassen/MyCombobox.vb.bak.bak new file mode 100644 index 0000000..f489b7e --- /dev/null +++ b/DPM2016/Klassen/MyCombobox.vb.bak.bak @@ -0,0 +1,117 @@ +Public Class MyNewCombobox + Inherits ComboBox + + Dim db As New clsDB + + + + Dim m_sql As String + Property Dataselection As String + Get + Return m_sql + End Get + Set(value As String) + m_sql = value + End Set + End Property + + Dim M_TableAlias As String = "" + Property TableAlias As String + Get + Return M_TableAlias + End Get + Set(value As String) + M_TableAlias = value + End Set + End Property + + Dim m_table As String + Property Table As String + Get + Return m_table + End Get + Set(value As String) + m_table = value + db.dsDaten.Tables.Clear() + Try + Dim TableFound As Boolean = False + For Each t As DataTable In IntTables.Inttables.Tables + If Me.TableAlias <> "" Then + If t.TableName = Me.TableAlias Then TableFound = True + Else + If t.TableName = value Then TableFound = True + End If + + Next + If Not TableFound Then + If Me.Dataselection <> "" Then + db.Get_Tabledata(value, " ", Me.Dataselection) + Else + db.Get_Tabledata(value, " where aktiv=1") + + End If + + If Me.TableAlias <> "" Then + db.dsDaten.Tables(0).TableName = Me.TableAlias + Else + db.dsDaten.Tables(0).TableName = value + End If + IntTables.Inttables.Tables.Add(db.dsDaten.Tables(0).Copy) + End If + If Me.TableAlias <> "" Then + MyBase.DataSource = IntTables.Inttables.Tables(Me.TableAlias) + Else + MyBase.DataSource = IntTables.Inttables.Tables(value) + End If + Catch ex As Exception + End Try + End Set + End Property + + Dim m_displaymember As String + Property Displaymember As String + Get + Return m_displaymember + End Get + Set(value As String) + m_displaymember = value + MyBase.DisplayMember = m_displaymember + End Set + End Property + + Dim m_valuememeber As String + Property Valuemember As String + Get + Return m_valuememeber + End Get + Set(value As String) + m_valuememeber = value + MyBase.ValueMember = m_valuememeber + End Set + End Property + + Dim m_selectedvalue As String + Property SelectedValue + Get + m_selectedvalue = MyBase.SelectedValue + Return m_selectedvalue + End Get + Set(value) + m_selectedvalue = value + MyBase.SelectedValue = value + End Set + End Property + + Dim m_text As String + Property Text As String + Get + m_text = MyBase.Text + Return m_text + End Get + Set(value As String) + m_text = value + MyBase.Text = value + End Set + End Property + +End Class diff --git a/DPM2016/Klassen/clsNullableDatetimePicker.vb b/DPM2016/Klassen/clsNullableDatetimePicker.vb new file mode 100644 index 0000000..91e8a9c --- /dev/null +++ b/DPM2016/Klassen/clsNullableDatetimePicker.vb @@ -0,0 +1,19 @@ +Imports System.ComponentModel + + +Public Class NullableDateTimePicker : Inherits DateTimePicker + + + Public Shadows Property Value As Date? + Get + If Not Checked Then Return Nothing + Return MyBase.Value + End Get + Set(ByVal value As Date?) + If value.Equals(Me.Value) Then Return + Checked = value.HasValue + If value.HasValue Then MyBase.Value = value.Value + End Set + End Property + +End Class diff --git a/DPM2016/Klassen/clsSpalten.vb b/DPM2016/Klassen/clsSpalten.vb new file mode 100644 index 0000000..f9160a5 --- /dev/null +++ b/DPM2016/Klassen/clsSpalten.vb @@ -0,0 +1,345 @@ +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClien +Imports C1.Win.C1TrueDBGrid + + +Public Class Tabellenspalte + Private m_table As String + Private m_field As String + Private m_spaltenname As String + Private m_locked As Boolean + Private m_Width As Integer + Private m_Order As Integer + Private m_alsHacken As Boolean + Private m_tiptext As String + Private m_numberformat As String + + Property ColWith() As Integer + Get + Return m_Width + End Get + Set(ByVal Value As Integer) + m_Width = Value + End Set + End Property + Property Order() As Integer + Get + Return m_Order + End Get + Set(ByVal Value As Integer) + m_Order = Value + End Set + End Property + Property Tabelle() As String + Get + Return m_table + End Get + Set(ByVal Value As String) + m_table = Value + End Set + End Property + Property Feld() As String + Get + Return m_field + End Get + Set(ByVal Value As String) + m_field = Value + End Set + End Property + Property spaltenname() As String + Get + Return m_spaltenname + End Get + Set(ByVal Value As String) + m_spaltenname = Value + End Set + End Property + Property locked() As Boolean + Get + Return m_locked + End Get + Set(ByVal Value As Boolean) + m_locked = Value + End Set + End Property + Property AlsHacken() As Boolean + Get + Return m_alsHacken + End Get + Set(ByVal Value As Boolean) + m_alsHacken = Value + End Set + End Property + Property TipText() As String + Get + Return m_tiptext + End Get + Set(ByVal Value As String) + m_tiptext = Value + End Set + End Property + Property Numberformat() As String + Get + Return m_numberformat + End Get + Set(ByVal value As String) + m_numberformat = value + End Set + End Property + Public Sub New() + + End Sub + Public Sub New(ByRef daten As Object, ByRef tablename As String, ByRef ds As DataSet) + Spaltentitel_aktualisieren(daten, tablename, ds) + End Sub + Public Function getspalte() + Try + Dim myspalten As New MySpaltenTitel() + myspalten.getspalte(Me.Tabelle, Me.Feld, Me.spaltenname, Me.locked, Me.ColWith, Me.Order, Me.AlsHacken, Me.TipText, Me.Numberformat) + Catch ex As Exception + End Try + End Function + + Public Function Spaltentitel_aktualisieren(ByRef daten As Object, ByRef tablename As String, ByRef ds As DataSet) + Dim anzcols As Integer + Dim i As Integer + Dim s As String + anzcols = daten.Splits(0).DisplayColumns.Count + Me.Tabelle = tablename + For i = 0 To daten.Columns.Count - 1 + s = daten.Columns(i).DataField + Me.Feld = s + Me.getspalte() + daten.Columns(i).Caption = Me.spaltenname + + If Me.ColWith = 0 Then + daten.Splits(0).DisplayColumns(i).Width = 0 + daten.Splits(0).DisplayColumns(i).Visible = False + Else + daten.Splits(0).DisplayColumns(i).Width = Me.ColWith + End If + + If Me.locked Then + daten.Splits(0).DisplayColumns(i).Locked = True + End If + + If Me.AlsHacken Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + End If + + 'Präsentation von aktiv + If LCase(daten.Columns(i).DataField) = "aktiv" Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + daten.Columns(i).ValueItems.DefaultItem = True + daten.Columns(i).DefaultValue = True + daten.Columns(i).FilterText = True + + + End If + Select Case LCase(daten.Columns(i).DataField) + Case "erstellt_am", "erstelltam" + daten.Columns(i).DefaultValue = Now + End Select + If daten.Columns(i).DataType.Name = "DateTime" Then + daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss" + End If + If Me.Numberformat <> "" Then + daten.columns(i).numberformat = Me.Numberformat + End If + Next + ColumnOrder(tablename, daten) + daten.HeadingStyle.WrapText = False + End Function + + Public Function Spaltentitel_aktualisieren(ByRef daten As Object, ByRef tablename As String, ByRef dt As DataTable, Optional ByVal Aktiv_Spalte_True_Setzen As Boolean = True) + Dim anzcols As Integer + Dim i As Integer + Dim t As New DataTable() + Dim s As String + anzcols = daten.Splits(0).DisplayColumns.Count + t = dt + Me.Tabelle = tablename + For i = 0 To daten.Columns.Count - 1 + s = daten.Columns(i).DataField + 'If s = "ApplikationNr" Then + ' MsgBox("Hallo") + + 'End If + Me.Feld = s + Me.getspalte() + If Me.spaltenname = "" Then Exit Function + daten.Columns(i).Caption = Me.spaltenname + + If Me.ColWith = 0 Then + daten.Splits(0).DisplayColumns(i).Width = 0 + daten.Splits(0).DisplayColumns(i).Visible = False + Else + daten.Splits(0).DisplayColumns(i).Width = Me.ColWith + End If + + If Me.locked Then + daten.Splits(0).DisplayColumns(i).Locked = True + End If + + If Me.AlsHacken Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + End If + + 'Präsentation von aktiv + If LCase(daten.Columns(i).DataField) = "aktiv" And Aktiv_Spalte_True_Setzen = True Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + daten.Columns(i).ValueItems.DefaultItem = True + daten.Columns(i).DefaultValue = True + daten.Columns(i).FilterText = True + End If + Select Case LCase(daten.Columns(i).DataField) + Case "erstellt_am", "erstelltam" + daten.Columns(i).DefaultValue = Now + End Select + If daten.Columns(i).DataType.Name = "DateTime" Then + daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss" + End If + If Me.Numberformat <> "" Then + daten.columns(i).numberformat = Me.Numberformat + End If + Next + ColumnOrder(tablename, daten) + daten.HeadingStyle.WrapText = False + End Function + + Public Function Spaltentitel_aktualisieren_Optionaler_Aktiv_Filer(ByRef daten As Object, ByRef tablename As String, ByRef dt As DataTable, Optional ByVal Aktiv_Filter As String = "") + Dim anzcols As Integer + Dim i As Integer + Dim t As New DataTable() + Dim s As String + anzcols = daten.Splits(0).DisplayColumns.Count + t = dt + Me.Tabelle = tablename + For i = 0 To daten.Columns.Count - 1 + s = daten.Columns(i).DataField + + Me.Feld = s + Me.getspalte() + If Me.spaltenname = "" Then + daten.Splits(0).DisplayColumns(i).Width = 0 + Else + daten.Columns(i).Caption = Me.spaltenname + + If Me.ColWith = 0 Then + daten.Splits(0).DisplayColumns(i).Width = 0 + daten.Splits(0).DisplayColumns(i).Visible = False + Else + daten.Splits(0).DisplayColumns(i).Width = Me.ColWith + End If + + If Me.locked Then + daten.Splits(0).DisplayColumns(i).Locked = True + End If + + If Me.AlsHacken Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + End If + + 'Präsentation von aktiv + If LCase(daten.Columns(i).DataField) = "aktiv" And Aktiv_Filter <> "" Then + daten.Columns(i).ValueItems.Presentation = C1.Win.C1TrueDBGrid.PresentationEnum.CheckBox + daten.Columns(i).ValueItems.DefaultItem = True + daten.Columns(i).DefaultValue = True + daten.Columns(i).FilterText = Aktiv_Filter + End If + Select Case LCase(daten.Columns(i).DataField) + Case "erstellt_am", "erstelltam" + daten.Columns(i).DefaultValue = Now + End Select + If daten.Columns(i).DataType.Name = "DateTime" Then + daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss" + End If + If Me.Numberformat <> "" Then + daten.columns(i).numberformat = Me.Numberformat + End If + End If + Next + ColumnOrder(tablename, daten) + daten.HeadingStyle.WrapText = False + End Function + + + Public Function ColumnOrder(ByVal Tablename As String, ByRef Data As C1TrueDBGrid) + Dim spaltendata As DataTable = Globals.Spaltendaten + Dim dv() As DataRow + Dim dr As DataRow + Dim dc As New Collection + dv = spaltendata.Select("Tabelle='" & Tablename & "'", "Reihenfolge desc, spaltenr") + For Each c As C1DisplayColumn In Data.Splits(0).DisplayColumns + dc.Add(c) + Next + While Data.Splits(0).DisplayColumns.Count > 0 + Data.Splits(0).DisplayColumns.RemoveAt(0) + End While + + For Each dr In dv + For Each e As C1DisplayColumn In dc + If e.Name = dr.Item(3) Then + Data.Splits(0).DisplayColumns.Insert(0, e) + End If + Next + Next + + End Function +End Class + +Public Class MySpaltenTitel + Private spaltendata As DataTable = Globals.Spaltendaten + Sub New() + load_data() + End Sub + + Sub dispose() + spaltendata.Dispose() + Me.dispose() + End Sub + + Public Function getspalte(ByVal tabelle As String, ByVal feld As String, ByRef spaltenname As String, ByRef locked As Boolean, _ + ByRef colwidth As Integer, ByRef order As Integer, ByRef alshacken As Boolean, ByRef tiptext As String, ByRef numberformat As String) + If spaltendata.Rows.Count = 0 Then load_data() + + Dim dv() As DataRow + Dim dr As DataRow + dv = spaltendata.Select("Tabelle='" & tabelle & "' and tabellenspalte='" & feld & "'", "Reihenfolge, Spaltenr") + + If dv.Length = 0 Then + spaltenname = "" + locked = True + colwidth = 0 + order = 0 + alshacken = False + tiptext = "" + numberformat = "" + End If + For Each dr In dv + spaltenname = dr.Item(3) + locked = dr.Item(12) + colwidth = dr.Item(4) + order = dr.Item(5) + alshacken = dr.Item(13) + tiptext = dr.Item(6) + numberformat = dr.Item(7).ToString + Next + + + End Function + + Public Sub load_data() + + If Me.spaltendata.Rows.Count > 0 Then Exit Sub + Dim db As New clsDB + spaltendata.Rows.Clear() + db.Get_Spaltendata() + spaltendata = db.dsDaten.Tables(0) + Globals.Spaltendaten = spaltendata + End Sub +End Class + + diff --git a/DPM2016/Klassen/clsStammdaten_Bez.Designer.vb b/DPM2016/Klassen/clsStammdaten_Bez.Designer.vb new file mode 100644 index 0000000..5618aad --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_Bez.Designer.vb @@ -0,0 +1,414 @@ + _ +Partial Class clsStammdaten_Bez + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(clsStammdaten_Bez)) + Dim Style1 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style2 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style3 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style4 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style5 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style6 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style7 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style8 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style9 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style10 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style11 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style12 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style13 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style14 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style15 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Dim Style16 As C1.Win.C1TrueDBGrid.Style = New C1.Win.C1TrueDBGrid.Style() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton() + Me.SplitContainer1 = New System.Windows.Forms.SplitContainer() + Me.SplitContainer2 = New System.Windows.Forms.SplitContainer() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.c1Datenleft = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.c1DatenRight = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.Panel1 = New System.Windows.Forms.Panel() + Me.BtnFocusRight = New System.Windows.Forms.Button() + Me.BtnFocusLeft = New System.Windows.Forms.Button() + Me.BtnVerbinden = New System.Windows.Forms.Button() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.C1DropDownRight = New C1.Win.C1TrueDBGrid.C1TrueDBDropdown() + Me.C1DropDownLeft = New C1.Win.C1TrueDBGrid.C1TrueDBDropdown() + Me.c1DatenBottom = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ToolStrip1.SuspendLayout() + Me.SplitContainer1.Panel1.SuspendLayout() + Me.SplitContainer1.Panel2.SuspendLayout() + Me.SplitContainer1.SuspendLayout() + Me.SplitContainer2.Panel1.SuspendLayout() + Me.SplitContainer2.Panel2.SuspendLayout() + Me.SplitContainer2.SuspendLayout() + Me.GroupBox1.SuspendLayout() + CType(Me.c1Datenleft, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox2.SuspendLayout() + CType(Me.c1DatenRight, System.ComponentModel.ISupportInitialize).BeginInit() + Me.Panel1.SuspendLayout() + Me.GroupBox3.SuspendLayout() + CType(Me.C1DropDownRight, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.C1DropDownLeft, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.c1DatenBottom, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripButton5, Me.ToolStripButton1, Me.ToolStripButton4, Me.ToolStripButton2, Me.ToolStripButton3}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(1054, 25) + Me.ToolStrip1.TabIndex = 14 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'ToolStripButton5 + ' + Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image) + Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton5.Name = "ToolStripButton5" + Me.ToolStripButton5.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton5.Text = "ToolStripButton5" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Neues Dokument" + Me.ToolStripButton1.Visible = False + ' + 'ToolStripButton4 + ' + Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image) + Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton4.Name = "ToolStripButton4" + Me.ToolStripButton4.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton4.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton4.Visible = False + ' + 'ToolStripButton2 + ' + Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image) + Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton2.Name = "ToolStripButton2" + Me.ToolStripButton2.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton2.Text = "Dokument löschen" + Me.ToolStripButton2.Visible = False + ' + 'ToolStripButton3 + ' + Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image) + Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton3.Name = "ToolStripButton3" + Me.ToolStripButton3.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton3.Text = "Dokument anzeigen" + Me.ToolStripButton3.Visible = False + ' + 'SplitContainer1 + ' + Me.SplitContainer1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SplitContainer1.Location = New System.Drawing.Point(0, 25) + Me.SplitContainer1.Name = "SplitContainer1" + Me.SplitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal + ' + 'SplitContainer1.Panel1 + ' + Me.SplitContainer1.Panel1.Controls.Add(Me.SplitContainer2) + Me.SplitContainer1.Panel1.Controls.Add(Me.Panel1) + ' + 'SplitContainer1.Panel2 + ' + Me.SplitContainer1.Panel2.Controls.Add(Me.GroupBox3) + Me.SplitContainer1.Size = New System.Drawing.Size(1054, 478) + Me.SplitContainer1.SplitterDistance = 266 + Me.SplitContainer1.TabIndex = 15 + ' + 'SplitContainer2 + ' + Me.SplitContainer2.Dock = System.Windows.Forms.DockStyle.Fill + Me.SplitContainer2.Location = New System.Drawing.Point(0, 0) + Me.SplitContainer2.Name = "SplitContainer2" + ' + 'SplitContainer2.Panel1 + ' + Me.SplitContainer2.Panel1.Controls.Add(Me.GroupBox1) + ' + 'SplitContainer2.Panel2 + ' + Me.SplitContainer2.Panel2.Controls.Add(Me.GroupBox2) + Me.SplitContainer2.Size = New System.Drawing.Size(1054, 233) + Me.SplitContainer2.SplitterDistance = 508 + Me.SplitContainer2.TabIndex = 1 + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.c1Datenleft) + Me.GroupBox1.Dock = System.Windows.Forms.DockStyle.Fill + Me.GroupBox1.Location = New System.Drawing.Point(0, 0) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(508, 233) + Me.GroupBox1.TabIndex = 0 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "GroupBox1" + ' + 'c1Datenleft + ' + Me.c1Datenleft.AlternatingRows = True + Me.c1Datenleft.Dock = System.Windows.Forms.DockStyle.Fill + Me.c1Datenleft.FilterBar = True + Me.c1Datenleft.GroupByCaption = "Drag a column header here to group by that column" + Me.c1Datenleft.Images.Add(CType(resources.GetObject("c1Datenleft.Images"), System.Drawing.Image)) + Me.c1Datenleft.Location = New System.Drawing.Point(3, 16) + Me.c1Datenleft.Name = "c1Datenleft" + Me.c1Datenleft.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.c1Datenleft.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.c1Datenleft.PreviewInfo.ZoomFactor = 75.0R + Me.c1Datenleft.PrintInfo.PageSettings = CType(resources.GetObject("c1Datenleft.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.c1Datenleft.Size = New System.Drawing.Size(502, 214) + Me.c1Datenleft.TabIndex = 1 + Me.c1Datenleft.Text = "C1TrueDBGrid1" + Me.c1Datenleft.PropBag = resources.GetString("c1Datenleft.PropBag") + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.c1DatenRight) + Me.GroupBox2.Dock = System.Windows.Forms.DockStyle.Fill + Me.GroupBox2.Location = New System.Drawing.Point(0, 0) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(542, 233) + Me.GroupBox2.TabIndex = 1 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "GroupBox2" + ' + 'c1DatenRight + ' + Me.c1DatenRight.AlternatingRows = True + Me.c1DatenRight.Dock = System.Windows.Forms.DockStyle.Fill + Me.c1DatenRight.FilterBar = True + Me.c1DatenRight.GroupByCaption = "Drag a column header here to group by that column" + Me.c1DatenRight.Images.Add(CType(resources.GetObject("c1DatenRight.Images"), System.Drawing.Image)) + Me.c1DatenRight.Location = New System.Drawing.Point(3, 16) + Me.c1DatenRight.Name = "c1DatenRight" + Me.c1DatenRight.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.c1DatenRight.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.c1DatenRight.PreviewInfo.ZoomFactor = 75.0R + Me.c1DatenRight.PrintInfo.PageSettings = CType(resources.GetObject("c1DatenRight.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.c1DatenRight.Size = New System.Drawing.Size(536, 214) + Me.c1DatenRight.TabIndex = 1 + Me.c1DatenRight.Text = "C1TrueDBGrid1" + Me.c1DatenRight.PropBag = resources.GetString("c1DatenRight.PropBag") + ' + 'Panel1 + ' + Me.Panel1.Controls.Add(Me.BtnFocusRight) + Me.Panel1.Controls.Add(Me.BtnFocusLeft) + Me.Panel1.Controls.Add(Me.BtnVerbinden) + Me.Panel1.Dock = System.Windows.Forms.DockStyle.Bottom + Me.Panel1.Location = New System.Drawing.Point(0, 233) + Me.Panel1.Name = "Panel1" + Me.Panel1.Size = New System.Drawing.Size(1054, 33) + Me.Panel1.TabIndex = 0 + ' + 'BtnFocusRight + ' + Me.BtnFocusRight.ImageIndex = 2 + Me.BtnFocusRight.Location = New System.Drawing.Point(1021, 5) + Me.BtnFocusRight.Name = "BtnFocusRight" + Me.BtnFocusRight.Size = New System.Drawing.Size(30, 23) + Me.BtnFocusRight.TabIndex = 5 + Me.BtnFocusRight.UseVisualStyleBackColor = True + ' + 'BtnFocusLeft + ' + Me.BtnFocusLeft.ImageIndex = 1 + Me.BtnFocusLeft.Location = New System.Drawing.Point(3, 6) + Me.BtnFocusLeft.Name = "BtnFocusLeft" + Me.BtnFocusLeft.Size = New System.Drawing.Size(30, 23) + Me.BtnFocusLeft.TabIndex = 4 + Me.BtnFocusLeft.UseVisualStyleBackColor = True + ' + 'BtnVerbinden + ' + Me.BtnVerbinden.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.BtnVerbinden.ImageIndex = 0 + Me.BtnVerbinden.Location = New System.Drawing.Point(479, 5) + Me.BtnVerbinden.Name = "BtnVerbinden" + Me.BtnVerbinden.Size = New System.Drawing.Size(84, 23) + Me.BtnVerbinden.TabIndex = 3 + Me.BtnVerbinden.Text = "Verbinden" + Me.BtnVerbinden.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.BtnVerbinden.UseVisualStyleBackColor = True + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.C1DropDownRight) + Me.GroupBox3.Controls.Add(Me.C1DropDownLeft) + Me.GroupBox3.Controls.Add(Me.c1DatenBottom) + Me.GroupBox3.Dock = System.Windows.Forms.DockStyle.Fill + Me.GroupBox3.Location = New System.Drawing.Point(0, 0) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(1054, 208) + Me.GroupBox3.TabIndex = 1 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "GroupBox3" + ' + 'C1DropDownRight + ' + Me.C1DropDownRight.AllowColMove = True + Me.C1DropDownRight.AllowColSelect = True + Me.C1DropDownRight.AllowRowSizing = C1.Win.C1TrueDBGrid.RowSizingEnum.AllRows + Me.C1DropDownRight.AlternatingRows = False + Me.C1DropDownRight.CaptionStyle = Style1 + Me.C1DropDownRight.ColumnCaptionHeight = 17 + Me.C1DropDownRight.ColumnFooterHeight = 17 + Me.C1DropDownRight.EvenRowStyle = Style2 + Me.C1DropDownRight.FetchRowStyles = False + Me.C1DropDownRight.FooterStyle = Style3 + Me.C1DropDownRight.HeadingStyle = Style4 + Me.C1DropDownRight.HighLightRowStyle = Style5 + Me.C1DropDownRight.Images.Add(CType(resources.GetObject("C1DropDownRight.Images"), System.Drawing.Image)) + Me.C1DropDownRight.Location = New System.Drawing.Point(477, 29) + Me.C1DropDownRight.Name = "C1DropDownRight" + Me.C1DropDownRight.OddRowStyle = Style6 + Me.C1DropDownRight.RecordSelectorStyle = Style7 + Me.C1DropDownRight.RowDivider.Color = System.Drawing.Color.DarkGray + Me.C1DropDownRight.RowDivider.Style = C1.Win.C1TrueDBGrid.LineStyleEnum.[Single] + Me.C1DropDownRight.RowSubDividerColor = System.Drawing.Color.DarkGray + Me.C1DropDownRight.ScrollTips = False + Me.C1DropDownRight.Size = New System.Drawing.Size(100, 150) + Me.C1DropDownRight.Style = Style8 + Me.C1DropDownRight.TabIndex = 3 + Me.C1DropDownRight.Visible = False + Me.C1DropDownRight.PropBag = resources.GetString("C1DropDownRight.PropBag") + ' + 'C1DropDownLeft + ' + Me.C1DropDownLeft.AllowColMove = True + Me.C1DropDownLeft.AllowColSelect = True + Me.C1DropDownLeft.AllowRowSizing = C1.Win.C1TrueDBGrid.RowSizingEnum.AllRows + Me.C1DropDownLeft.AlternatingRows = False + Me.C1DropDownLeft.CaptionStyle = Style9 + Me.C1DropDownLeft.ColumnCaptionHeight = 17 + Me.C1DropDownLeft.ColumnFooterHeight = 17 + Me.C1DropDownLeft.EvenRowStyle = Style10 + Me.C1DropDownLeft.FetchRowStyles = False + Me.C1DropDownLeft.FooterStyle = Style11 + Me.C1DropDownLeft.HeadingStyle = Style12 + Me.C1DropDownLeft.HighLightRowStyle = Style13 + Me.C1DropDownLeft.Images.Add(CType(resources.GetObject("C1DropDownLeft.Images"), System.Drawing.Image)) + Me.C1DropDownLeft.Location = New System.Drawing.Point(68, 3) + Me.C1DropDownLeft.Name = "C1DropDownLeft" + Me.C1DropDownLeft.OddRowStyle = Style14 + Me.C1DropDownLeft.RecordSelectorStyle = Style15 + Me.C1DropDownLeft.RowDivider.Color = System.Drawing.Color.DarkGray + Me.C1DropDownLeft.RowDivider.Style = C1.Win.C1TrueDBGrid.LineStyleEnum.[Single] + Me.C1DropDownLeft.RowSubDividerColor = System.Drawing.Color.DarkGray + Me.C1DropDownLeft.ScrollTips = False + Me.C1DropDownLeft.Size = New System.Drawing.Size(100, 150) + Me.C1DropDownLeft.Style = Style16 + Me.C1DropDownLeft.TabIndex = 2 + Me.C1DropDownLeft.Text = "C1DropDownLeft" + Me.C1DropDownLeft.Visible = False + Me.C1DropDownLeft.PropBag = resources.GetString("C1DropDownLeft.PropBag") + ' + 'c1DatenBottom + ' + Me.c1DatenBottom.AlternatingRows = True + Me.c1DatenBottom.Dock = System.Windows.Forms.DockStyle.Fill + Me.c1DatenBottom.FilterBar = True + Me.c1DatenBottom.GroupByCaption = "Drag a column header here to group by that column" + Me.c1DatenBottom.Images.Add(CType(resources.GetObject("c1DatenBottom.Images"), System.Drawing.Image)) + Me.c1DatenBottom.Location = New System.Drawing.Point(3, 16) + Me.c1DatenBottom.Name = "c1DatenBottom" + Me.c1DatenBottom.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.c1DatenBottom.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.c1DatenBottom.PreviewInfo.ZoomFactor = 75.0R + Me.c1DatenBottom.PrintInfo.PageSettings = CType(resources.GetObject("c1DatenBottom.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.c1DatenBottom.Size = New System.Drawing.Size(1048, 189) + Me.c1DatenBottom.TabIndex = 1 + Me.c1DatenBottom.Text = "C1TrueDBGrid1" + Me.c1DatenBottom.PropBag = resources.GetString("c1DatenBottom.PropBag") + ' + 'clsStammdaten_Bez + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.SplitContainer1) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "clsStammdaten_Bez" + Me.Size = New System.Drawing.Size(1054, 503) + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.SplitContainer1.Panel1.ResumeLayout(False) + Me.SplitContainer1.Panel2.ResumeLayout(False) + Me.SplitContainer1.ResumeLayout(False) + Me.SplitContainer2.Panel1.ResumeLayout(False) + Me.SplitContainer2.Panel2.ResumeLayout(False) + Me.SplitContainer2.ResumeLayout(False) + Me.GroupBox1.ResumeLayout(False) + CType(Me.c1Datenleft, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox2.ResumeLayout(False) + CType(Me.c1DatenRight, System.ComponentModel.ISupportInitialize).EndInit() + Me.Panel1.ResumeLayout(False) + Me.GroupBox3.ResumeLayout(False) + CType(Me.C1DropDownRight, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.C1DropDownLeft, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.c1DatenBottom, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents ToolStripButton5 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton4 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton2 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton3 As System.Windows.Forms.ToolStripButton + Friend WithEvents SplitContainer1 As System.Windows.Forms.SplitContainer + Friend WithEvents SplitContainer2 As System.Windows.Forms.SplitContainer + Friend WithEvents Panel1 As System.Windows.Forms.Panel + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents BtnFocusRight As System.Windows.Forms.Button + Friend WithEvents BtnFocusLeft As System.Windows.Forms.Button + Friend WithEvents BtnVerbinden As System.Windows.Forms.Button + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents c1Datenleft As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents c1DatenRight As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents c1DatenBottom As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents C1DropDownLeft As C1.Win.C1TrueDBGrid.C1TrueDBDropdown + Friend WithEvents C1DropDownRight As C1.Win.C1TrueDBGrid.C1TrueDBDropdown + +End Class diff --git a/DPM2016/Klassen/clsStammdaten_Bez.resx b/DPM2016/Klassen/clsStammdaten_Bez.resx new file mode 100644 index 0000000..270f651 --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_Bez.resx @@ -0,0 +1,341 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK1SURBVDhPnZLdS1NhHMcfCPoDuummi+i6KwcmvSBuc5vH + szM3l5vnnG0nXTkzKnqDrOzdt7Qs1EKHqVQYlVoZZdmLopGhlIVUKyoiukiiiKSLgk/HFxa7rB984Pk9 + 8Hx4vr/nEf9TX14NBX98GP/VsTOT+a256qrI7e0+mEvv4RmkJD2HJC7us3M/vpWpyX4+T1zn++tBzu+2 + pgp6KmTSMuysWGUjY81f0ldZWW5ZzXSin0Tvfsaa/HxNPKBrryNV0F0uk2l1YrNL2B2uJNZsJ+mrbbzs + iDDWojPaHGTq+S0uH8hJFTgaBFLVAnLsPiSXgpTjRpJkXC6ZNVaJyXaD0TMhHjYG+TTWMxt1/qgQtmpB + 4lMnTlOSm6XhdgZQJD+K7EV2e8hyuHkWDzPSpDPYUMi74QvcqFTmBLYqwcT7VtoHBZmVAnu9wHlKIJcv + xqsE8eT5yc71Md6iMXhSZ/rmUl4MtHGrxotw1Qoeva0kPiJoHTbXb4p5/DbCk4/hWclaT5j8/CCSJ8Dj + ZpV7JzR+9i/j+Y0mBur9c4K7iR3ExwXxMUHbM0H7pODptwiOk4JgfjEFgRDufI2RxgADx4O07nDypKea + Bw2B2QgWuxmh78V6OhOCrJkIxwSOE4K8fUvQ1SiqbuALGgw1+Lldt5YrBxUeXahguFFNDtGSXSPofePD + eVxgBLZhaGUY4RIMI0rEKCIQinKv3svNWh99VV6Gzm5n9HQo5RktTvPKSu1CosZmosWlFEdLZiky0dbF + uFProa8yj6tHPPQ3xRhvjaQIREfZSjaUllEa20Lpxk1JYiZFJZu5XSNz7ahC92E31+pCTLQVIXRdR9dC + aFoYVZ3BXKua2atJVLMvKNTZFQtwrkIxf6DMpUN5THaunxviv1Kup+/u2OP6/epcLDXCP9QikzQhhOUP + pATCqsio1ToAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAINSURBVDhPY6AVYAyc67K/+XD1/SYg9p3quAQqTiQIZWAO + Wu75Zu6Nuf9nX5/9322S/TmoDJEAaIDnctc3k69M/D/hSt9/p0nm56EyRAKwATZveq+0/O++0gg0wAiP + AfUMTOYLtWx81tnYB0CxZZ+ak88myw9dV8v/d1wp+e88T++2/XxtB591FvYeQOyyzsTeYJGyFVi/cAGn + Se6J5P99V5v+T7ze8H/Szbr/U27V/O++kfe/43rm/9Zr6f87r+f+775e9L/tSsH/hot5/yvPZf8P2Ov6 + ny+OXZlBLJfTogoo0H+9Fqi56v+U2xX/p94p/d9+M+5/283o/y03I/533Ur+33Mz63/79fT/DZdT/1ee + T/4fdtD5P28ImzqDUAaLRcQOwf9ph4T/554U+l94Ruh/wRnB/zXXzP633/H533rH83/5ZZ3/+af5/+cB + cdZx/v9JB/j++27lAhrAoM7A6cQgLRnPsFk2mWGbYhrDNuV0IA3EaftFf3Y+sP3f/sDqf9gm8Q8gMRgG + qRWPZ9jAZ8EgBA4HIGBEwfYMLOGHmN7UPeb4X/eY67/7ciZQLKCqgWAcABiNiecY3nS8YvgPwj5rGEhP + B7kXBN4s+CT/f/5H+f9hG3lJNyBpr+6bOQ89/oNwwCJ1Eg1gYGCSymXYYdjGcAOExeIZ5kHFSQIsDCoM + 7GDMwMAMEUIHDAwArmHzT5KTHe0AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIXSURBVDhPlY9fSJNhFMa/CylqduHIEk2pbaWwqMyLpCsL + +oNhSjKCCKTRnQ0lvCgK5mhd2UVQBnYx6tvfNmvbtzWnW20rZjclaCG51ginuc/N3OYu2sjv6R28l22z + Hzyc9z3nOee8L7MVfBKJ831Ly216/T+muroeP2QY6Gpq4JdKP7+TyWppqTLC/JP2uVgErrv38YAMGROJ + 8LK+HjMSSSe1lOf37K1keqINichTRBd4jO2X4FFVFTix+A61lGYzqmV/+c4j4WzGkpHBsu8MIitJvFYN + /KCW0ggx7bl0UIGES04GSLE0LkbS04qf1m2Izb5oprZ/E/GotvOB63mebE5NnkLctgtrkx1kkAx/fCIV + tZVmc27Qz7vlWJs6S15wmGxuQ9J7ElnPnjC1lEaI3FSmPO1YdR/DekABnnxh/W0PPo0eEr5Ya6uprTSF + +dE4725F7sMNJCdOIBO8ghTZLgQPXqKW8uS/PkN6wYH0zD1k3nST7RdRCB4fp+XyjIxcFYF3IPvtFTYW + A8jF/ciFOzdouTKNjXvll3s6kPnuQp4PA4WoNbv8cTctV6ahqenCjp3V2FdXx6UWpxtoemuEQqEDarV6 + WKPRaFmjUaHTPe8zmUz9drt9qCiHw9FPpCS6xnFcr9PpPO31emW0nWFsNtsRs9ncTZr69Hr9gMFgGCJx + mER1UfRczA0SKVmW7bVYLEcZhmH+Am4yJFh72phxAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJASURBVDhPfZNLSxtRFMdn5Suah0oChhiJmlGj8RGfiKIi + gouAEPULuMlSxe+Rrbt8hKEWGfJobNq5k0ZaJ7Vgq90ILW5auiiFLv8955oJiU37hwPDPfd3/ufMvVex + VTk4SF0mEprmcrmrS39JCwbdpZ0dzdjeTlWXHvUhmUw/nJ7i7e4uspGIxRurqZqqsPXp5ATG4iJyo6Np + mWBnCScSMNfXIVZXoatqQ5EafHwMMTcHY2ZGRkZVUwq3zc42LJaXYSwtQQ+HZZEafHQEEYtBTE3VQh8a + 0hSemduuh435eRizs9BDIasUj1u3h4cwydGcnIQZjaJEwblal/zBbdfDggB2+ZhMojQ9LaE3FOWJiUbY + lixCbdfD7ChGRmAMDEAEgzApss1gW7IIbTDIqRgIoOB04iXFK7cboqcHus/3b5jFSbG1ZVnxOF50dkr4 + tccDs7cXZa8XWb///+5Fgiv7+8gTeFEHX/p8eNfXh/f9/cgHAs3nL25sWJW9PeTIuUBRdLlk22WCr/x+ + XNP8N6EQboeHUXx6AgxbBGccDuQ6OnDR1SXdeeYctc3ON4OD+KyquI9E8IX+kajeE8XY3NSu6CLp7e3I + tLUhT0V4dt3rlRs4uO27cBj34+N4oCP9RrfxOx13SVU1pbCwkDpvbYXe0oIsFeGfd97d3TCn7JLa/krH + yuBPunC/VlZQiUYfH9WZw5G2Czx7AtviNZMu2w96SL/X1nAXiz0+JltnTmfqucejNYNtca48NqZd286K + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 500, 212</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 500, 212</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 534, 212</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 534, 212</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}Style2{}EvenRow{BackColor:Aqua;}Normal{}RecordSelector{AlignImage:Center;}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}OddRow{}Style14{}Footer{}Heading{Wrap:True;Border:Flat,ControlDark,0, 1, 0, 1;AlignVert:Center;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style3{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style1{}Caption{AlignHorz:Center;}Style6{}FilterBar{}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.DropdownView Name="" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" RecordSelectors="False" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 98, 148</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.DropdownView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 98, 148</ClientArea></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:Aqua;}Normal{}RecordSelector{AlignImage:Center;}OddRow{}Style14{}Footer{}FilterBar{}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style3{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.DropdownView Name="" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" RecordSelectors="False" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 98, 148</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.DropdownView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 98, 148</ClientArea></Blob> + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 1046, 187</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 1046, 187</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/Klassen/clsStammdaten_Bez.vb b/DPM2016/Klassen/clsStammdaten_Bez.vb new file mode 100644 index 0000000..a4ad8e9 --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_Bez.vb @@ -0,0 +1,208 @@ +Public Class clsStammdaten_Bez + + + Dim m_connectionstring As String + Property Connectionstring As String + Get + Return m_connectionstring + End Get + Set(value As String) + m_connectionstring = value + End Set + End Property + + Dim m_tablename_left As String + Property Tablename_left As String + Get + Return m_tablename_left + End Get + Set(value As String) + m_tablename_left = value + get_data_left() + End Set + End Property + + Dim m_tablename_right As String + Property Tablename_right As String + Get + Return m_tablename_right + End Get + Set(value As String) + m_tablename_left = value + get_data_right() + End Set + End Property + + Dim m_tablename_bottom As String + Property Tablename_bottom As String + Get + Return m_tablename_bottom + End Get + Set(value As String) + m_tablename_bottom = value + get_data_bottom() + End Set + End Property + + Dim m_keyfield_left As String + Property KeyField_left As String + Get + Return m_keyfield_left + End Get + Set(value As String) + m_keyfield_left = value + End Set + End Property + + Dim m_keyfieldbez_left As String + Property Keyfieldbez_left As String + Get + Return m_keyfieldbez_left + End Get + Set(value As String) + m_keyfieldbez_left = value + End Set + End Property + + Dim m_keyfield_right As String + Property KeyField_right As String + Get + Return m_keyfield_right + End Get + Set(value As String) + m_keyfield_right = value + End Set + End Property + + Dim m_keyfieldbez_right As String + Property Keyfieldbez_right As String + Get + Return m_keyfieldbez_right + End Get + Set(value As String) + m_keyfieldbez_right = value + End Set + End Property + + Dim db_left As New clsDB + Dim db_right As New clsDB + Dim db_bottom As New clsDB + Dim Focus_Left As Boolean = True + + Private Sub get_data_left() + Try + db_left.dsDaten.Tables.Clear() + db_left.Get_Tabledata(Me.Tablename_left) + Me.c1Datenleft.DataSource = db_left.dsDaten.Tables(0) + Catch + End Try + End Sub + Private Sub get_data_right() + Try + db_right.dsDaten.Tables.Clear() + db_right.Get_Tabledata(Me.Tablename_left) + Me.c1DatenRight.DataSource = db_right.dsDaten.Tables(0) + Catch + End Try + End Sub + + Private Sub get_data_bottom(Optional wherestatement As String = "") + Try + db_bottom.dsDaten.Tables.Clear() + db_bottom.Get_Tabledata(Me.Tablename_bottom, wherestatement) + Me.c1DatenBottom.DataSource = db_bottom.dsDaten.Tables(0) + + + Me.C1DropDownLeft.DataSource = db_left.dsDaten.Tables(0) + Me.C1DropDownLeft.DisplayMember = Me.Keyfieldbez_left + Me.C1DropDownLeft.ValueMember = Me.KeyField_left + + Me.c1DatenBottom.Columns(Me.KeyField_left).DropDown = Me.C1DropDownLeft + Me.C1DropDownLeft.ValueTranslate = True + Me.C1DropDownLeft.DisplayColumns(0).Width = 0 + Me.c1DatenBottom.Columns(Me.KeyField_left).ValueItems.Translate = True + + Me.C1DropDownRight.DataSource = db_right.dsDaten.Tables(0) + Me.C1DropDownRight.DisplayMember = Me.Keyfieldbez_right + Me.C1DropDownRight.ValueMember = Me.KeyField_right + + Me.c1DatenBottom.Columns(Me.KeyField_right).DropDown = Me.C1DropDownRight + Me.C1DropDownRight.ValueTranslate = True + Me.C1DropDownRight.DisplayColumns(0).Width = 0 + Me.c1DatenBottom.Columns(Me.KeyField_right).ValueItems.Translate = True + Catch ex As Exception + + End Try + End Sub + + Private Sub clsStammdaten_Bez_Load(sender As Object, e As EventArgs) Handles Me.Load + Me.BtnFocusRight.Left = Me.Panel1.Width - 10 - Me.BtnFocusRight.Width + Me.BtnVerbinden.Left = Me.SplitContainer2.SplitterDistance - (Me.BtnVerbinden.Width / 2) + End Sub + + Private Sub clsStammdaten_Bez_Resize(sender As Object, e As EventArgs) Handles Me.Resize + Me.BtnFocusRight.Left = Me.Panel1.Width - 10 - Me.BtnFocusRight.Width + Me.BtnVerbinden.Left = Me.SplitContainer2.SplitterDistance - (Me.BtnVerbinden.Width / 2) + End Sub + + Private Sub ToolStrip1_ItemClicked(sender As Object, e As ToolStripItemClickedEventArgs) Handles ToolStrip1.ItemClicked + + End Sub + + Private Sub BtnFocusLeft_Click(sender As Object, e As EventArgs) Handles BtnFocusLeft.Click + Me.Focus_Left = True + refresh_bottom() + End Sub + + Private Sub BtnFocusRight_Click(sender As Object, e As EventArgs) Handles BtnFocusRight.Click + Me.Focus_Left = False + Refresh_Bottom() + End Sub + + Sub Refresh_Bottom() + Dim s As String + If Me.Focus_Left Then + s = " where " + Me.KeyField_left + "=" + Me.c1Datenleft.Columns(KeyField_left).Value.ToString + Else + s = " where " + Me.KeyField_right + "=" + Me.c1DatenRight.Columns(KeyField_right).Value.ToString + + End If + Me.get_data_bottom(s) + + End Sub + + Private Sub c1Datenleft_RowColChange(sender As Object, e As C1.Win.C1TrueDBGrid.RowColChangeEventArgs) Handles c1Datenleft.RowColChange, c1DatenRight.RowColChange + If db_bottom.dsDaten.HasChanges Then + If MsgBox("Daten wurden verändert. Wollen Sie diese speichern?", MsgBoxStyle.YesNo + vbQuestion) = MsgBoxResult.Yes Then + db_bottom.Update_Data() + End If + End If + Refresh_Bottom() + End Sub + + Private Sub C1DatenBottom_AfterColUpdate(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.ColEventArgs) Handles c1DatenBottom.AfterColUpdate + Dim i As Integer + For i = 0 To Me.C1DatenBottom.Columns.Count - 1 + If LCase(Me.C1DatenBottom.Columns(i).DataField) = "mutiert_am" Then Me.C1DatenBottom.Columns(i).Value = Now + If LCase(Me.c1DatenBottom.Columns(i).DataField) = "mutierer" Then Me.c1DatenBottom.Columns(i).Value = Globals.ActUser + Next + End Sub + + Private Sub BtnVerbinden_Click(sender As Object, e As EventArgs) Handles BtnVerbinden.Click + Dim r As DataRow + r = db_bottom.dsDaten.Tables(0).NewRow + r(KeyField_left) = Me.c1Datenleft.Columns(KeyField_left).Value + r(KeyField_right) = Me.c1DatenRight.Columns(KeyField_right).Value + r("erstellt_am") = Now + r("mutiert_am") = Now + r("mutierer") = Globals.actuser + r("aktiv") = True + db_bottom.dsDaten.Tables(0).Rows.Add(r) + db_bottom.Update_Data() + Refresh_Bottom() + End Sub + + Private Sub ToolStripButton5_Click(sender As Object, e As EventArgs) Handles ToolStripButton5.Click + db_bottom.Update_Data() + End Sub +End Class diff --git a/DPM2016/Klassen/clsStammdaten_flat.Designer.vb b/DPM2016/Klassen/clsStammdaten_flat.Designer.vb new file mode 100644 index 0000000..8bb96a9 --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_flat.Designer.vb @@ -0,0 +1,150 @@ + _ +Partial Class clsStammdaten_flat + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(clsStammdaten_flat)) + Me.c1daten = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton6 = New System.Windows.Forms.ToolStripButton() + CType(Me.c1daten, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ToolStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'c1daten + ' + Me.c1daten.AlternatingRows = True + Me.c1daten.CellTips = C1.Win.C1TrueDBGrid.CellTipEnum.Floating + Me.c1daten.Dock = System.Windows.Forms.DockStyle.Fill + Me.c1daten.FetchRowStyles = True + Me.c1daten.FilterBar = True + Me.c1daten.GroupByCaption = "Drag a column header here to group by that column" + Me.c1daten.Images.Add(CType(resources.GetObject("c1daten.Images"), System.Drawing.Image)) + Me.c1daten.Location = New System.Drawing.Point(0, 25) + Me.c1daten.Name = "c1daten" + Me.c1daten.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.c1daten.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.c1daten.PreviewInfo.ZoomFactor = 75.0R + Me.c1daten.PrintInfo.PageSettings = CType(resources.GetObject("c1daten.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.c1daten.Size = New System.Drawing.Size(758, 376) + Me.c1daten.TabAction = C1.Win.C1TrueDBGrid.TabActionEnum.ColumnNavigation + Me.c1daten.TabIndex = 0 + Me.c1daten.Text = "C1TrueDBGrid1" + Me.c1daten.PropBag = resources.GetString("c1daten.PropBag") + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripButton5, Me.ToolStripButton1, Me.ToolStripButton4, Me.ToolStripButton2, Me.ToolStripButton3, Me.ToolStripButton6}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(758, 25) + Me.ToolStrip1.TabIndex = 13 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'ToolStripButton5 + ' + Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image) + Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton5.Name = "ToolStripButton5" + Me.ToolStripButton5.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton5.Text = "ToolStripButton5" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Neues Dokument" + Me.ToolStripButton1.Visible = False + ' + 'ToolStripButton4 + ' + Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image) + Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton4.Name = "ToolStripButton4" + Me.ToolStripButton4.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton4.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton4.Visible = False + ' + 'ToolStripButton2 + ' + Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image) + Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton2.Name = "ToolStripButton2" + Me.ToolStripButton2.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton2.Text = "Dokument löschen" + Me.ToolStripButton2.Visible = False + ' + 'ToolStripButton3 + ' + Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image) + Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton3.Name = "ToolStripButton3" + Me.ToolStripButton3.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton3.Text = "Dokument anzeigen" + Me.ToolStripButton3.Visible = False + ' + 'ToolStripButton6 + ' + Me.ToolStripButton6.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton6.Image = CType(resources.GetObject("ToolStripButton6.Image"), System.Drawing.Image) + Me.ToolStripButton6.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton6.Name = "ToolStripButton6" + Me.ToolStripButton6.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton6.Text = "ToolStripButton6" + ' + 'clsStammdaten_flat + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.c1daten) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "clsStammdaten_flat" + Me.Size = New System.Drawing.Size(758, 401) + CType(Me.c1daten, System.ComponentModel.ISupportInitialize).EndInit() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents c1daten As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents ToolStripButton5 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton4 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton2 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton3 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton6 As ToolStripButton +End Class diff --git a/DPM2016/Klassen/clsStammdaten_flat.resx b/DPM2016/Klassen/clsStammdaten_flat.resx new file mode 100644 index 0000000..bf40b26 --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_flat.resx @@ -0,0 +1,433 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}FilterBar{BackColor:Info;}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FetchRowStyles="True" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 756, 374</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 756, 374</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + 17, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK1SURBVDhPnZLfS1NhGMdfCPoDuummi+i6KwcWZYjb3Obx + 7MzN5dY5Z9tJV86MirIgK8t++KssC63IYSoVRaVWRmn2Q9FIUcpCyiXVRXiRRCFIFwWfjhqLXdYDH3if + F94P7/d5X/E/9XVyIDj7aexn295M/mwt1vWK3K6Oyly6js0jJek8KnHjkJ2n8V3MTPTwZfwes+/7ubrf + mirorJBJW2tnzXobazf8JX29ldWWDOYSPSS6DjPa5Odb4hnXDzpSBR3lMplWJza7hN3hSmLNdpKeYeNd + W4TRSzrD54PMvHnIrSM5qQJHg0CqXkKO3YfkUpBy3EiSjMsls8EqMdFqMHwxxPPGINOjnQtR/xwVwlYj + SEy34zQluVkabmcARfKjyF5kt4csh5vX8TBDTTr9DZv4OHiN+1XKosBWLRj/1ExrvyCzSmCvFzjPCeTy + 5XiVIJ48P9m5PsYuafSf1Zl7sJK3fS08rPUiXHWCFx+qiA8JmgfN9VQRIx8ivPwcXpBs9ITJzw8ieQKM + nFd5ckbjR88q3txvoq/evyh4nCgjPiaIjwpaXgtaJwSvvkdwnBUE84soCIRw52sMNQboOx2kuczJy84a + njUEFiJY7GaE7rdbaE8IsuYjnBQ4zgjyDq1AV6OouoEvaDDQ4Kf31EZuVyq8uFbBYKOaHKIlu1bQNeXD + eVpgBHZjaKUY4WIMI0rEKCQQivKk3suDOh/d1V4GLu9h+EIo5RktTvPKSt1SosYOokUlFEWLFyg00TbH + eFTnobsqjzvHPfQ0xRhrjqQIRFvpOraWlFIS20nJtu1JYiaFxTvorZW5e0Kh45ibu6dCjLcUInRdR9dC + aFoYVZ3HXKua2atJVLMv2KSzLxbgSoVi/kCZm0fzmGjfsjjEf6VcT99/+YDj1+SVWGqEf6hlJmlCCMtv + k4rCoiUUiGcAAAAASUVORK5CYII= + + + + + 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 + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + + + \ No newline at end of file diff --git a/DPM2016/Klassen/clsStammdaten_flat.vb b/DPM2016/Klassen/clsStammdaten_flat.vb new file mode 100644 index 0000000..872323a --- /dev/null +++ b/DPM2016/Klassen/clsStammdaten_flat.vb @@ -0,0 +1,84 @@ +Imports System.Data.SqlClient +Imports System.Data.SqlTypes + +Public Class clsStammdaten_flat + + Dim m_connectionstring As String + Property Connectionstring As String + Get + Return m_connectionstring + End Get + Set(value As String) + m_connectionstring = value + End Set + End Property + Dim m_tablename As String + Property Tablename As String + Get + Return m_tablename + End Get + Set(value As String) + m_tablename = value + Try + 'get_data() + + Catch + End Try + End Set + End Property + + Dim db As New clsDB + Dim c1d As New C1.Win.C1TrueDBGrid.C1TrueDBGrid + + + + Sub New() + + ' Dieser Aufruf ist für den Designer erforderlich. + InitializeComponent() + Me.Connectionstring = My.Settings.ConnectionString + Me.c1d = Me.c1daten + End Sub + + Public Sub get_data() + Try + Me.C1Daten.datasource = Nothing + Me.C1Daten.DataMember = Nothing + + Me.c1daten.DataSource = Nothing + Me.c1daten.DataMember = Nothing + Me.c1daten.Splits(0).DisplayColumns.Clear() + db.dsDaten.Tables.Clear() + + db.Get_Tabledata(Me.Tablename) + + Me.C1Daten.DataSource = db.dsDaten + Me.c1daten.DataMember = Tablename + + Dim spalten As New Tabellenspalte + spalten.Spaltentitel_aktualisieren(Me.C1Daten, Me.Tablename, db.dsDaten.Tables(0)) + Catch ex As Exception + End Try + End Sub + + Private Sub ToolStripButton5_Click(sender As Object, e As EventArgs) Handles ToolStripButton5.Click + If Tablename = "Spalten" Then Globals.Spaltendaten.Rows.Clear() + db.Update_Data() + End Sub + + + Private Sub clsStammdaten_flat_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + End Sub + + Private Sub ToolStripButton6_Click(sender As Object, e As EventArgs) Handles ToolStripButton6.Click + db.Update_Data() + If Tablename = "Spalten" Then Globals.Spaltendaten.Rows.Clear() + Try + IntTables.Inttables.Tables.Remove(Tablename) + Catch ex As Exception + + End Try + MsgBox("Daten wurden gespeichert") + End Sub +End Class diff --git a/DPM2016/My Project/Application.Designer.vb b/DPM2016/My Project/Application.Designer.vb new file mode 100644 index 0000000..d0272fc --- /dev/null +++ b/DPM2016/My Project/Application.Designer.vb @@ -0,0 +1,38 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + 'HINWEIS: Diese Datei wird automatisch generiert und darf nicht direkt bearbeitet werden. Wenn Sie Änderungen vornehmen möchten, + ' oder bei in dieser Datei auftretenden Buildfehlern wechseln Sie zum Projekt-Designer. + ' (Wechseln Sie dazu zu den Projekteigenschaften, oder doppelklicken Sie auf den Knoten "Mein Projekt" im + ' Projektmappen-Explorer). Nehmen Sie auf der Registerkarte "Anwendung" entsprechende Änderungen vor. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.DPM2016.frmMain + End Sub + End Class +End Namespace diff --git a/DPM2016/My Project/Application.myapp b/DPM2016/My Project/Application.myapp new file mode 100644 index 0000000..5907301 --- /dev/null +++ b/DPM2016/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + true + frmMain + false + 0 + true + 0 + true + \ No newline at end of file diff --git a/DPM2016/My Project/AssemblyInfo.vb b/DPM2016/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..4b4f276 --- /dev/null +++ b/DPM2016/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' Allgemeine Informationen über eine Assembly werden über die folgenden +' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +' die mit einer Assembly verknüpft sind. + +' Die Werte der Assemblyattribute überprüfen + + + + + + + + + + +'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird + + +' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +' +' Hauptversion +' Nebenversion +' Buildnummer +' Revision +' +' Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern +' übernehmen, indem Sie "*" eingeben: +' + + + diff --git a/DPM2016/My Project/Resources.Designer.vb b/DPM2016/My Project/Resources.Designer.vb new file mode 100644 index 0000000..4e7586b --- /dev/null +++ b/DPM2016/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + ''' + ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("DPM2016.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/DPM2016/My Project/Resources.resx b/DPM2016/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/DPM2016/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/My Project/Settings.Designer.vb b/DPM2016/My Project/Settings.Designer.vb new file mode 100644 index 0000000..5ae709f --- /dev/null +++ b/DPM2016/My Project/Settings.Designer.vb @@ -0,0 +1,122 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "Automatische My.Settings-Speicherfunktion" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + + _ + Public Property ConnectionString() As String + Get + Return CType(Me("ConnectionString"),String) + End Get + Set + Me("ConnectionString") = value + End Set + End Property + + _ + Public Property LogLevel() As String + Get + Return CType(Me("LogLevel"),String) + End Get + Set + Me("LogLevel") = value + End Set + End Property + + _ + Public Property TempPath() As String + Get + Return CType(Me("TempPath"),String) + End Get + Set + Me("TempPath") = value + End Set + End Property + + _ + Public Property DocArchivPath() As String + Get + Return CType(Me("DocArchivPath"),String) + End Get + Set + Me("DocArchivPath") = value + End Set + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.DPM2016.My.MySettings + Get + Return Global.DPM2016.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/DPM2016/My Project/Settings.settings b/DPM2016/My Project/Settings.settings new file mode 100644 index 0000000..415443e --- /dev/null +++ b/DPM2016/My Project/Settings.settings @@ -0,0 +1,18 @@ + + + + + + data source=shu00;initial catalog=dpmneu;integrated security=SSPI;persist security info=false;workstation id=;packet size=4096;user id=sa;password=*shu29 + + + 2 + + + h:\dpm + + + h:\dpm\docarchiv + + + \ No newline at end of file diff --git a/DPM2016/My Project/licenses.licx b/DPM2016/My Project/licenses.licx new file mode 100644 index 0000000..02a7aaa --- /dev/null +++ b/DPM2016/My Project/licenses.licx @@ -0,0 +1 @@ +C1.Win.C1TrueDBGrid.C1TrueDBGrid, C1.Win.C1TrueDBGrid.2, Version=2.0.20153.110, Culture=neutral, PublicKeyToken=75ae3fb0e2b1e0da diff --git a/DPM2016/My Project/licenses.licx.bak b/DPM2016/My Project/licenses.licx.bak new file mode 100644 index 0000000..02a7aaa --- /dev/null +++ b/DPM2016/My Project/licenses.licx.bak @@ -0,0 +1 @@ +C1.Win.C1TrueDBGrid.C1TrueDBGrid, C1.Win.C1TrueDBGrid.2, Version=2.0.20153.110, Culture=neutral, PublicKeyToken=75ae3fb0e2b1e0da diff --git a/DPM2016/Patient/Patient.Designer.vb b/DPM2016/Patient/Patient.Designer.vb new file mode 100644 index 0000000..c39b3f1 --- /dev/null +++ b/DPM2016/Patient/Patient.Designer.vb @@ -0,0 +1,431 @@ + +Partial Class Patient + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Patient)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnquit = New System.Windows.Forms.ToolStripButton() + Me.tsbtnSave = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnew = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton() + Me.ToolStripLabel1 = New System.Windows.Forms.ToolStripLabel() + Me.tstxtsuche = New System.Windows.Forms.ToolStripTextBox() + Me.tsbtnfirst = New System.Windows.Forms.ToolStripButton() + Me.tsbtprev = New System.Windows.Forms.ToolStripButton() + Me.tsbtnnext = New System.Windows.Forms.ToolStripButton() + Me.tsbtnlast = New System.Windows.Forms.ToolStripButton() + Me.SuperTabControl1 = New DevComponents.DotNetBar.SuperTabControl() + Me.SuperTabControlPanel1 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.PatientDetails1 = New DPM2016.PatientDetails() + Me.Stammdaten = New DevComponents.DotNetBar.SuperTabItem() + Me.SuperTabControlPanel5 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.Finanzen1 = New DPM2016.Finanzen() + Me.Finanzen = New DevComponents.DotNetBar.SuperTabItem() + Me.SuperTabControlPanel3 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.Behandlung1 = New DPM2016.Behandlung() + Me.Behandlungen = New DevComponents.DotNetBar.SuperTabItem() + Me.SuperTabControlPanel2 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.PatientAbrechnung1 = New DPM2016.PatientAbrechnung() + Me.Abrechnung = New DevComponents.DotNetBar.SuperTabItem() + Me.SuperTabControlPanel4 = New DevComponents.DotNetBar.SuperTabControlPanel() + Me.Krankengeschichte1 = New DPM2016.Krankengeschichte() + Me.Krankengeschichte = New DevComponents.DotNetBar.SuperTabItem() + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1.SuspendLayout() + CType(Me.SuperTabControl1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuperTabControl1.SuspendLayout() + Me.SuperTabControlPanel1.SuspendLayout() + Me.SuperTabControlPanel5.SuspendLayout() + Me.SuperTabControlPanel3.SuspendLayout() + Me.SuperTabControlPanel2.SuspendLayout() + Me.SuperTabControlPanel4.SuspendLayout() + Me.MenuStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnquit, Me.tsbtnSave, Me.tsbtnnew, Me.ToolStripButton4, Me.ToolStripButton2, Me.ToolStripButton3, Me.ToolStripLabel1, Me.tstxtsuche, Me.tsbtnfirst, Me.tsbtprev, Me.tsbtnnext, Me.tsbtnlast}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(1006, 25) + Me.ToolStrip1.TabIndex = 15 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnquit + ' + Me.tsbtnquit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnquit.Image = CType(resources.GetObject("tsbtnquit.Image"), System.Drawing.Image) + Me.tsbtnquit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnquit.Name = "tsbtnquit" + Me.tsbtnquit.Size = New System.Drawing.Size(23, 22) + Me.tsbtnquit.Text = "Schliessen" + ' + 'tsbtnSave + ' + Me.tsbtnSave.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnSave.Image = CType(resources.GetObject("tsbtnSave.Image"), System.Drawing.Image) + Me.tsbtnSave.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnSave.Name = "tsbtnSave" + Me.tsbtnSave.Size = New System.Drawing.Size(23, 22) + Me.tsbtnSave.Text = "Speichern" + ' + 'tsbtnnew + ' + Me.tsbtnnew.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnew.Image = CType(resources.GetObject("tsbtnnew.Image"), System.Drawing.Image) + Me.tsbtnnew.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnew.Name = "tsbtnnew" + Me.tsbtnnew.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnew.Text = "Neuer Datensatz" + ' + 'ToolStripButton4 + ' + Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image) + Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton4.Name = "ToolStripButton4" + Me.ToolStripButton4.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton4.Text = "Dokumentinformationen bearbeiten" + Me.ToolStripButton4.Visible = False + ' + 'ToolStripButton2 + ' + Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image) + Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton2.Name = "ToolStripButton2" + Me.ToolStripButton2.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton2.Text = "Dokument löschen" + Me.ToolStripButton2.Visible = False + ' + 'ToolStripButton3 + ' + Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image) + Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton3.Name = "ToolStripButton3" + Me.ToolStripButton3.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton3.Text = "Dokument anzeigen" + Me.ToolStripButton3.Visible = False + ' + 'ToolStripLabel1 + ' + Me.ToolStripLabel1.Name = "ToolStripLabel1" + Me.ToolStripLabel1.Size = New System.Drawing.Size(39, 22) + Me.ToolStripLabel1.Text = "Suche" + ' + 'tstxtsuche + ' + Me.tstxtsuche.Name = "tstxtsuche" + Me.tstxtsuche.Size = New System.Drawing.Size(100, 25) + ' + 'tsbtnfirst + ' + Me.tsbtnfirst.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnfirst.Image = CType(resources.GetObject("tsbtnfirst.Image"), System.Drawing.Image) + Me.tsbtnfirst.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnfirst.Name = "tsbtnfirst" + Me.tsbtnfirst.Size = New System.Drawing.Size(23, 22) + Me.tsbtnfirst.Text = "Erster Datensatz" + ' + 'tsbtprev + ' + Me.tsbtprev.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtprev.Image = CType(resources.GetObject("tsbtprev.Image"), System.Drawing.Image) + Me.tsbtprev.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtprev.Name = "tsbtprev" + Me.tsbtprev.Size = New System.Drawing.Size(23, 22) + Me.tsbtprev.Text = "Vorheriger Datensatz" + ' + 'tsbtnnext + ' + Me.tsbtnnext.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnnext.Image = CType(resources.GetObject("tsbtnnext.Image"), System.Drawing.Image) + Me.tsbtnnext.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnnext.Name = "tsbtnnext" + Me.tsbtnnext.Size = New System.Drawing.Size(23, 22) + Me.tsbtnnext.Text = "nächster Datensatz" + ' + 'tsbtnlast + ' + Me.tsbtnlast.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnlast.Image = CType(resources.GetObject("tsbtnlast.Image"), System.Drawing.Image) + Me.tsbtnlast.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnlast.Name = "tsbtnlast" + Me.tsbtnlast.Size = New System.Drawing.Size(23, 22) + Me.tsbtnlast.Text = "Letzter Datensatz" + ' + 'SuperTabControl1 + ' + ' + ' + ' + ' + ' + ' + Me.SuperTabControl1.ControlBox.CloseBox.Name = "" + ' + ' + ' + Me.SuperTabControl1.ControlBox.MenuBox.Name = "" + Me.SuperTabControl1.ControlBox.Name = "" + Me.SuperTabControl1.ControlBox.SubItems.AddRange(New DevComponents.DotNetBar.BaseItem() {Me.SuperTabControl1.ControlBox.MenuBox, Me.SuperTabControl1.ControlBox.CloseBox}) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel1) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel5) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel3) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel2) + Me.SuperTabControl1.Controls.Add(Me.SuperTabControlPanel4) + Me.SuperTabControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControl1.Location = New System.Drawing.Point(0, 49) + Me.SuperTabControl1.Name = "SuperTabControl1" + Me.SuperTabControl1.ReorderTabsEnabled = True + Me.SuperTabControl1.SelectedTabFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold) + Me.SuperTabControl1.SelectedTabIndex = 0 + Me.SuperTabControl1.Size = New System.Drawing.Size(1006, 728) + Me.SuperTabControl1.TabFont = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.SuperTabControl1.TabIndex = 18 + Me.SuperTabControl1.Tabs.AddRange(New DevComponents.DotNetBar.BaseItem() {Me.Stammdaten, Me.Abrechnung, Me.Behandlungen, Me.Krankengeschichte, Me.Finanzen}) + Me.SuperTabControl1.Text = "SuperTabControl1" + ' + 'SuperTabControlPanel1 + ' + Me.SuperTabControlPanel1.Controls.Add(Me.PatientDetails1) + Me.SuperTabControlPanel1.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel1.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel1.Name = "SuperTabControlPanel1" + Me.SuperTabControlPanel1.Size = New System.Drawing.Size(1006, 703) + Me.SuperTabControlPanel1.TabIndex = 1 + Me.SuperTabControlPanel1.TabItem = Me.Stammdaten + ' + 'PatientDetails1 + ' + Me.PatientDetails1.Dock = System.Windows.Forms.DockStyle.Fill + Me.PatientDetails1.HasChanges = False + Me.PatientDetails1.Location = New System.Drawing.Point(0, 0) + Me.PatientDetails1.Name = "PatientDetails1" + Me.PatientDetails1.Patientname = " " + Me.PatientDetails1.PatientNr = 0 + Me.PatientDetails1.Size = New System.Drawing.Size(1006, 703) + Me.PatientDetails1.TabIndex = 17 + ' + 'Stammdaten + ' + Me.Stammdaten.AttachedControl = Me.SuperTabControlPanel1 + Me.Stammdaten.GlobalItem = False + Me.Stammdaten.Name = "Stammdaten" + Me.Stammdaten.Text = "Stammdaten" + ' + 'SuperTabControlPanel5 + ' + Me.SuperTabControlPanel5.Controls.Add(Me.Finanzen1) + Me.SuperTabControlPanel5.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel5.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel5.Name = "SuperTabControlPanel5" + Me.SuperTabControlPanel5.Size = New System.Drawing.Size(1006, 703) + Me.SuperTabControlPanel5.TabIndex = 0 + Me.SuperTabControlPanel5.TabItem = Me.Finanzen + ' + 'Finanzen1 + ' + Me.Finanzen1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Finanzen1.Location = New System.Drawing.Point(0, 0) + Me.Finanzen1.Name = "Finanzen1" + Me.Finanzen1.Patientnr = 0 + Me.Finanzen1.Size = New System.Drawing.Size(1006, 703) + Me.Finanzen1.TabIndex = 0 + ' + 'Finanzen + ' + Me.Finanzen.AttachedControl = Me.SuperTabControlPanel5 + Me.Finanzen.GlobalItem = False + Me.Finanzen.Name = "Finanzen" + Me.Finanzen.Text = "Finanzen" + ' + 'SuperTabControlPanel3 + ' + Me.SuperTabControlPanel3.Controls.Add(Me.Behandlung1) + Me.SuperTabControlPanel3.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel3.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel3.Name = "SuperTabControlPanel3" + Me.SuperTabControlPanel3.Size = New System.Drawing.Size(1006, 568) + Me.SuperTabControlPanel3.TabIndex = 0 + Me.SuperTabControlPanel3.TabItem = Me.Behandlungen + ' + 'Behandlung1 + ' + Me.Behandlung1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Behandlung1.HasChanges = False + Me.Behandlung1.Location = New System.Drawing.Point(0, 0) + Me.Behandlung1.Name = "Behandlung1" + Me.Behandlung1.PatientNr = 0 + Me.Behandlung1.Size = New System.Drawing.Size(1006, 568) + Me.Behandlung1.TabIndex = 0 + ' + 'Behandlungen + ' + Me.Behandlungen.AttachedControl = Me.SuperTabControlPanel3 + Me.Behandlungen.GlobalItem = False + Me.Behandlungen.Name = "Behandlungen" + Me.Behandlungen.Text = "Behandlungen" + ' + 'SuperTabControlPanel2 + ' + Me.SuperTabControlPanel2.Controls.Add(Me.PatientAbrechnung1) + Me.SuperTabControlPanel2.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel2.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel2.Name = "SuperTabControlPanel2" + Me.SuperTabControlPanel2.Size = New System.Drawing.Size(1006, 568) + Me.SuperTabControlPanel2.TabIndex = 0 + Me.SuperTabControlPanel2.TabItem = Me.Abrechnung + ' + 'PatientAbrechnung1 + ' + Me.PatientAbrechnung1.Dock = System.Windows.Forms.DockStyle.Fill + Me.PatientAbrechnung1.HasChanges = False + Me.PatientAbrechnung1.Location = New System.Drawing.Point(0, 0) + Me.PatientAbrechnung1.Name = "PatientAbrechnung1" + Me.PatientAbrechnung1.PatientNr = 0 + Me.PatientAbrechnung1.Size = New System.Drawing.Size(1006, 568) + Me.PatientAbrechnung1.TabIndex = 0 + ' + 'Abrechnung + ' + Me.Abrechnung.AttachedControl = Me.SuperTabControlPanel2 + Me.Abrechnung.GlobalItem = False + Me.Abrechnung.Name = "Abrechnung" + Me.Abrechnung.Text = "Abrechnung" + ' + 'SuperTabControlPanel4 + ' + Me.SuperTabControlPanel4.Controls.Add(Me.Krankengeschichte1) + Me.SuperTabControlPanel4.Dock = System.Windows.Forms.DockStyle.Fill + Me.SuperTabControlPanel4.Location = New System.Drawing.Point(0, 25) + Me.SuperTabControlPanel4.Name = "SuperTabControlPanel4" + Me.SuperTabControlPanel4.Size = New System.Drawing.Size(1006, 568) + Me.SuperTabControlPanel4.TabIndex = 0 + Me.SuperTabControlPanel4.TabItem = Me.Krankengeschichte + ' + 'Krankengeschichte1 + ' + Me.Krankengeschichte1.Dock = System.Windows.Forms.DockStyle.Fill + Me.Krankengeschichte1.Location = New System.Drawing.Point(0, 0) + Me.Krankengeschichte1.Name = "Krankengeschichte1" + Me.Krankengeschichte1.Patientnr = 0 + Me.Krankengeschichte1.Size = New System.Drawing.Size(1006, 568) + Me.Krankengeschichte1.TabIndex = 0 + ' + 'Krankengeschichte + ' + Me.Krankengeschichte.AttachedControl = Me.SuperTabControlPanel4 + Me.Krankengeschichte.GlobalItem = False + Me.Krankengeschichte.Name = "Krankengeschichte" + Me.Krankengeschichte.Text = "Krankengeschichte" + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(1006, 24) + Me.MenuStrip1.TabIndex = 19 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'Patient + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(1006, 777) + Me.Controls.Add(Me.SuperTabControl1) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.MainMenuStrip = Me.MenuStrip1 + Me.Name = "Patient" + Me.ShowInTaskbar = False + Me.Text = "Patient" + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + CType(Me.SuperTabControl1, System.ComponentModel.ISupportInitialize).EndInit() + Me.SuperTabControl1.ResumeLayout(False) + Me.SuperTabControlPanel1.ResumeLayout(False) + Me.SuperTabControlPanel5.ResumeLayout(False) + Me.SuperTabControlPanel3.ResumeLayout(False) + Me.SuperTabControlPanel2.ResumeLayout(False) + Me.SuperTabControlPanel4.ResumeLayout(False) + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents tsbtnquit As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtnnew As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton4 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton2 As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStripButton3 As System.Windows.Forms.ToolStripButton + Friend WithEvents PatientDetails1 As DPM2016.PatientDetails + Friend WithEvents SuperTabControl1 As DevComponents.DotNetBar.SuperTabControl + Friend WithEvents SuperTabControlPanel1 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Stammdaten As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents SuperTabControlPanel2 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Abrechnung As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents tsbtnSave As System.Windows.Forms.ToolStripButton + Friend WithEvents PatientAbrechnung1 As DPM2016.PatientAbrechnung + Friend WithEvents ToolStripLabel1 As System.Windows.Forms.ToolStripLabel + Friend WithEvents tstxtsuche As System.Windows.Forms.ToolStripTextBox + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents tsbtnfirst As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtprev As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtnnext As System.Windows.Forms.ToolStripButton + Friend WithEvents tsbtnlast As System.Windows.Forms.ToolStripButton + Friend WithEvents SuperTabControlPanel3 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Behandlungen As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents Behandlung1 As DPM2016.Behandlung + Friend WithEvents SuperTabControlPanel4 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Krankengeschichte1 As DPM2016.Krankengeschichte + Friend WithEvents Krankengeschichte As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents SuperTabControlPanel5 As DevComponents.DotNetBar.SuperTabControlPanel + Friend WithEvents Finanzen As DevComponents.DotNetBar.SuperTabItem + Friend WithEvents Finanzen1 As DPM2016.Finanzen +End Class diff --git a/DPM2016/Patient/Patient.resx b/DPM2016/Patient/Patient.resx new file mode 100644 index 0000000..70b9a1a --- /dev/null +++ b/DPM2016/Patient/Patient.resx @@ -0,0 +1,342 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAABSSURBVDhP3YxbCgAgCAQ9ukfzZkXBlkIv7Sf6GNB1HRKR + dEMVEFEII2Du4Yr2eCMAdUfoEejubwIcVujeUHDKVFDmHSFB6ekuskcEOHgxghiSMjk0Kh+omBHQAAAA + AElFTkSuQmCC + + + + + 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 + ovwBHtVvxMSvxBEAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAJDSURBVDhPjZLfa1JhHMa96bYuo7uiywi66CYIgq6iYPUX + dNlVREEXUbQXN21zmDjRlpYw21yuFWNo/miTVgpLM5Y76rH5+9d0LsOjDk0vns57PLJMox544PC+3+fz + vs/LkfR0Q68/9ICMX5TKJq7KhpiuE5nsrDjeL0LIYaPRGCyVSqjX6391IpGESjVtEmMHIlLZzWaziU6n + 809Ho98wNjZxWox2pdZoSavVwoF/ot1uC6bfv+/lCztQKB5fEKNdUUBjfx/U9UYDLH+KzeuHcyMgnNjb + o85kc4MAlVpLOK4m9AxHWFxfcOOMzolrpnUoXH6wbBS1Wh10JplKDwGoNKRS+YFqlYPR5cGJJy6MzHlg + Deeh80bxZn1DANCZWCwO+Z8ApUpNSrtlfK9UoLN/wPEZF84Z3JCuhnBr5QvMa15UOQ50htaTyxX9gCml + mtDH2S3vYZMJ4/xTG45O23FS48DIczvCfAUapjNMKDIImJxSkVQ6B+psNo9AkIHa4YXG4QG7HRd6B7cY + FHaK2PzKDAMoSTyRQs+5fIGHZZDOZIWQZXEJyytWOF2rYPgb6vT6fsCjSSVhozG+36DTmRysNjtMLxZ4 + wJoACUUiMjHalXRcPsqEWL7fcMfjSR5gxpzZAtc7N97anSgWi1fEuERy5+69S+73H/me4aHeYiLCv6Cb + MWDevIil18vI5vOjYryr+w+lt7X6Z9sGw2xxmGdN88VPPn/tpeUVfL7PNf4Gp8To/ysQCBzhOO5yuVw+ + 1l2RSH4BvQRqc//87N0AAAAASUVORK5CYII= + + + + + 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 + 6YeQrFnzP84KtrvywWJtAAAAAElFTkSuQmCC + + + + + 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 + + + + 234, 17 + + \ No newline at end of file diff --git a/DPM2016/Patient/Patient.vb b/DPM2016/Patient/Patient.vb new file mode 100644 index 0000000..5a0f733 --- /dev/null +++ b/DPM2016/Patient/Patient.vb @@ -0,0 +1,171 @@ +Public Class Patient + + Dim m_nrpatient As Integer + Property PatientNr As Integer + Get + Return m_nrpatient + End Get + Set(value As Integer) + Globals.OnLoad = True + m_nrpatient = value + Me.PatientDetails1.PatientNr = value + Me.PatientAbrechnung1.PatientNr = value + Me.Behandlung1.PatientNr = value + Me.Finanzen1.Patientnr = value + Globals.OnLoad = False + End Set + End Property + + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + + Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) + Me.Close() + End Sub + + Private Sub Patient_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing + If detail_has_changes() = False Then + e.Cancel = True + + End If + End Sub + + Function detail_has_changes() + Dim res As Boolean = False + If Me.PatientDetails1.HasChanges Then res = True + If PatientAbrechnung1.HasChanges Then res = True + If res = True Then + Dim qres As MsgBoxResult + qres = MsgBox("Daten wurden verändert. Änderungen speichern?", vbYesNoCancel + vbQuestion) + Select Case qres + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Return True + Case MsgBoxResult.Yes + save_data() + Return True + End Select + Else + Return True + End If + + End Function + + Private Sub Patient_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.tsbtnfirst_Click(sender, e) + + End Sub + + Private Sub ToolStripButton6_Click(sender As Object, e As EventArgs) Handles tsbtnSave.Click + save_data() + + End Sub + + Private Sub tsbtnquit_Click(sender As Object, e As EventArgs) Handles tsbtnquit.Click + Me.Close() + End Sub + + Private Sub tstxtsuche_KeyDown(sender As Object, e As KeyEventArgs) Handles tstxtsuche.KeyDown + If e.KeyCode = Keys.Enter Then + Dim db As New clsDB + Dim nrprivat As Integer = db.Search("Patient", Me.tstxtsuche.Text) + If nrprivat <> -1 Then Me.PatientNr = nrprivat + db.Dispose() + End If + End Sub + + Private Sub evh_PatName_Changed(name As String, nr As Integer) Handles evh.PatName_Changed + If nr = Me.PatientNr Then Me.Text = name + End Sub + + Private Sub BeendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BeendenToolStripMenuItem.Click + Me.Close() + End Sub + + Private Sub save_data() + evh.Fire_PatSaved(Me.PatientNr) + End Sub + + Private Sub evh_PatSaved(Nr As Integer) Handles evh.PatSaved + Me.Text = PatientDetails1.Patientname + End Sub + + + Private Sub tsbtnfirst_Click(sender As Object, e As EventArgs) Handles tsbtnfirst.Click + If detail_has_changes() = False Then Return + Dim db As New clsDB + db.Get_Tabledata("Patient", "", db.Get_SQL(9)) + Me.PatientNr = db.dsDaten.Tables(0).Rows(0).Item(0) + db.Dispose() + End Sub + + Private Sub tsbtnlast_Click(sender As Object, e As EventArgs) Handles tsbtnlast.Click + If detail_has_changes() = False Then Return + Dim db As New clsDB + db.Get_Tabledata("Patient", "", db.Get_SQL(10)) + Me.PatientNr = db.dsDaten.Tables(0).Rows(0).Item(0) + db.Dispose() + End Sub + + Private Sub tsbtnnext_Click(sender As Object, e As EventArgs) Handles tsbtnnext.Click + If detail_has_changes() = False Then Return + Dim db As New clsDB + Try + db.Get_Tabledata("Patient", "", db.Get_SQL(11), Me.m_nrpatient.ToString) + Me.PatientNr = db.dsDaten.Tables(0).Rows(0).Item(0) + Catch + Me.PatientNr = Me.PatientNr + End Try + db.Dispose() + End Sub + + Private Sub tsbtprev_Click(sender As Object, e As EventArgs) Handles tsbtprev.Click + If detail_has_changes() = False Then Return + Dim db As New clsDB + Try + db.Get_Tabledata("Patient", "", db.Get_SQL(12), Me.m_nrpatient.ToString) + Me.PatientNr = db.dsDaten.Tables(0).Rows(0).Item(0) + Catch + Me.PatientNr = Me.PatientNr + End Try + db.Dispose() + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles tsbtnnew.Click + Dim db As New clsDB + Dim newkey As Integer = db.Get_DBKey("Privat") + + db.Get_Tabledata("Privat", " where nrprivat=0") + + Dim r As DataRow + r = db.dsDaten.Tables(0).NewRow + + For Each c As DataColumn In db.dsDaten.Tables(0).Columns + r.Item(c) = db.dsDaten.Tables(0).Rows(0).Item(c) + Next + + db.dsDaten.Tables(0).Rows(0).Item(0) = newkey + db.dsDaten.Tables(0).Rows(0).Item("Erstellt_am") = Now + db.dsDaten.Tables(0).Rows(0).Item("mutiert_am") = Now + db.dsDaten.Tables(0).Rows(0).Item("mutierer") = Globals.ActUser + db.dsDaten.Tables(0).Rows(0).Item("aktiv") = True + db.dsDaten.Tables(0).Rows(0).Item("Gueltigab") = Now + db.dsDaten.Tables(0).Rows.Add(r) + db.Update_Data() + Me.PatientNr = newkey + db.Dispose() + + End Sub + + + Private Sub SuperTabControl1_SelectedTabChanged(sender As Object, e As DevComponents.DotNetBar.SuperTabStripSelectedTabChangedEventArgs) Handles SuperTabControl1.SelectedTabChanged + If SuperTabControl1.SelectedTab.Name = "Krankengeschichte" Then + Me.Krankengeschichte1.Patientnr = Me.PatientNr + End If + If SuperTabControl1.SelectedTab.Name = "Finanzen" Then + Me.Finanzen1.Refresh_Data() + End If + End Sub + + +End Class \ No newline at end of file diff --git a/DPM2016/Patient/PatientAbrechnung.Designer.vb b/DPM2016/Patient/PatientAbrechnung.Designer.vb new file mode 100644 index 0000000..f47fccf --- /dev/null +++ b/DPM2016/Patient/PatientAbrechnung.Designer.vb @@ -0,0 +1,650 @@ + _ +Partial Class PatientAbrechnung + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.GroupBox4 = New System.Windows.Forms.GroupBox() + Me.cbboxnrzahnarzt = New DPM2016.MyCombobox() + Me.cbboxnrhausarzt = New DPM2016.MyCombobox() + Me.CBBOXNRFs = New DPM2016.MyCombobox() + Me.CBBOXNRIV = New DPM2016.MyCombobox() + Me.cbboxNRKK = New DPM2016.MyCombobox() + Me.cbboxNRVS = New DPM2016.MyCombobox() + Me.cbboxNrGarant = New DPM2016.MyCombobox() + Me.cbboxNrGesVertreter = New DPM2016.MyCombobox() + Me.Label30 = New System.Windows.Forms.Label() + Me.Label29 = New System.Windows.Forms.Label() + Me.Label27 = New System.Windows.Forms.Label() + Me.Label28 = New System.Windows.Forms.Label() + Me.txtFSNR = New System.Windows.Forms.TextBox() + Me.Label25 = New System.Windows.Forms.Label() + Me.Label26 = New System.Windows.Forms.Label() + Me.txtIVNR = New System.Windows.Forms.TextBox() + Me.Label24 = New System.Windows.Forms.Label() + Me.txtKKNR = New System.Windows.Forms.TextBox() + Me.Label23 = New System.Windows.Forms.Label() + Me.Label22 = New System.Windows.Forms.Label() + Me.txtVSNR = New System.Windows.Forms.TextBox() + Me.Label19 = New System.Windows.Forms.Label() + Me.Label20 = New System.Windows.Forms.Label() + Me.Label21 = New System.Windows.Forms.Label() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.Label12 = New System.Windows.Forms.Label() + Me.txtKorrespondenzadresse = New System.Windows.Forms.TextBox() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.cbboxnrbehandler = New DPM2016.MyCombobox() + Me.cbboxzazRecallTyp = New DPM2016.MyCombobox() + Me.txtzazRecallBemerkung = New System.Windows.Forms.TextBox() + Me.Label11 = New System.Windows.Forms.Label() + Me.Label10 = New System.Windows.Forms.Label() + Me.txtZAZRecallfixmonat = New System.Windows.Forms.TextBox() + Me.Label9 = New System.Windows.Forms.Label() + Me.chkZAZRECALLTELEFON = New System.Windows.Forms.CheckBox() + Me.txtzazrecall = New System.Windows.Forms.TextBox() + Me.Label8 = New System.Windows.Forms.Label() + Me.Label7 = New System.Windows.Forms.Label() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.cbboxESTyp = New DPM2016.MyCombobox() + Me.cbboxNrRGTyp = New DPM2016.MyCombobox() + Me.Label6 = New System.Windows.Forms.Label() + Me.Label5 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.txtRabatt = New System.Windows.Forms.TextBox() + Me.GroupBox4.SuspendLayout() + Me.GroupBox3.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.GroupBox1.SuspendLayout() + Me.SuspendLayout() + ' + 'GroupBox4 + ' + Me.GroupBox4.BackColor = System.Drawing.Color.Transparent + Me.GroupBox4.Controls.Add(Me.cbboxnrzahnarzt) + Me.GroupBox4.Controls.Add(Me.cbboxnrhausarzt) + Me.GroupBox4.Controls.Add(Me.CBBOXNRFs) + Me.GroupBox4.Controls.Add(Me.CBBOXNRIV) + Me.GroupBox4.Controls.Add(Me.cbboxNRKK) + Me.GroupBox4.Controls.Add(Me.cbboxNRVS) + Me.GroupBox4.Controls.Add(Me.cbboxNrGarant) + Me.GroupBox4.Controls.Add(Me.cbboxNrGesVertreter) + Me.GroupBox4.Controls.Add(Me.Label30) + Me.GroupBox4.Controls.Add(Me.Label29) + Me.GroupBox4.Controls.Add(Me.Label27) + Me.GroupBox4.Controls.Add(Me.Label28) + Me.GroupBox4.Controls.Add(Me.txtFSNR) + Me.GroupBox4.Controls.Add(Me.Label25) + Me.GroupBox4.Controls.Add(Me.Label26) + Me.GroupBox4.Controls.Add(Me.txtIVNR) + Me.GroupBox4.Controls.Add(Me.Label24) + Me.GroupBox4.Controls.Add(Me.txtKKNR) + Me.GroupBox4.Controls.Add(Me.Label23) + Me.GroupBox4.Controls.Add(Me.Label22) + Me.GroupBox4.Controls.Add(Me.txtVSNR) + Me.GroupBox4.Controls.Add(Me.Label19) + Me.GroupBox4.Controls.Add(Me.Label20) + Me.GroupBox4.Controls.Add(Me.Label21) + Me.GroupBox4.Location = New System.Drawing.Point(259, 3) + Me.GroupBox4.Name = "GroupBox4" + Me.GroupBox4.Size = New System.Drawing.Size(348, 424) + Me.GroupBox4.TabIndex = 11 + Me.GroupBox4.TabStop = False + Me.GroupBox4.Text = "Beziehungen" + ' + 'cbboxnrzahnarzt + ' + Me.cbboxnrzahnarzt.Dataselection = Nothing + Me.cbboxnrzahnarzt.Displaymember = Nothing + Me.cbboxnrzahnarzt.Location = New System.Drawing.Point(122, 305) + Me.cbboxnrzahnarzt.Name = "cbboxnrzahnarzt" + Me.cbboxnrzahnarzt.SelectedValue = Nothing + Me.cbboxnrzahnarzt.Size = New System.Drawing.Size(208, 22) + Me.cbboxnrzahnarzt.TabIndex = 45 + Me.cbboxnrzahnarzt.Table = Nothing + Me.cbboxnrzahnarzt.Valuemember = Nothing + ' + 'cbboxnrhausarzt + ' + Me.cbboxnrhausarzt.Dataselection = Nothing + Me.cbboxnrhausarzt.Displaymember = Nothing + Me.cbboxnrhausarzt.Location = New System.Drawing.Point(123, 277) + Me.cbboxnrhausarzt.Name = "cbboxnrhausarzt" + Me.cbboxnrhausarzt.SelectedValue = Nothing + Me.cbboxnrhausarzt.Size = New System.Drawing.Size(208, 22) + Me.cbboxnrhausarzt.TabIndex = 44 + Me.cbboxnrhausarzt.Table = Nothing + Me.cbboxnrhausarzt.Valuemember = Nothing + ' + 'CBBOXNRFs + ' + Me.CBBOXNRFs.Dataselection = Nothing + Me.CBBOXNRFs.Displaymember = Nothing + Me.CBBOXNRFs.Location = New System.Drawing.Point(123, 223) + Me.CBBOXNRFs.Name = "CBBOXNRFs" + Me.CBBOXNRFs.SelectedValue = Nothing + Me.CBBOXNRFs.Size = New System.Drawing.Size(208, 22) + Me.CBBOXNRFs.TabIndex = 43 + Me.CBBOXNRFs.Table = Nothing + Me.CBBOXNRFs.Valuemember = Nothing + ' + 'CBBOXNRIV + ' + Me.CBBOXNRIV.Dataselection = Nothing + Me.CBBOXNRIV.Displaymember = Nothing + Me.CBBOXNRIV.Location = New System.Drawing.Point(123, 176) + Me.CBBOXNRIV.Name = "CBBOXNRIV" + Me.CBBOXNRIV.SelectedValue = Nothing + Me.CBBOXNRIV.Size = New System.Drawing.Size(208, 22) + Me.CBBOXNRIV.TabIndex = 42 + Me.CBBOXNRIV.Table = Nothing + Me.CBBOXNRIV.Valuemember = Nothing + ' + 'cbboxNRKK + ' + Me.cbboxNRKK.Dataselection = Nothing + Me.cbboxNRKK.Displaymember = Nothing + Me.cbboxNRKK.Location = New System.Drawing.Point(123, 122) + Me.cbboxNRKK.Name = "cbboxNRKK" + Me.cbboxNRKK.SelectedValue = Nothing + Me.cbboxNRKK.Size = New System.Drawing.Size(208, 22) + Me.cbboxNRKK.TabIndex = 41 + Me.cbboxNRKK.Table = Nothing + Me.cbboxNRKK.Valuemember = Nothing + ' + 'cbboxNRVS + ' + Me.cbboxNRVS.Dataselection = Nothing + Me.cbboxNRVS.Displaymember = Nothing + Me.cbboxNRVS.Location = New System.Drawing.Point(123, 70) + Me.cbboxNRVS.Name = "cbboxNRVS" + Me.cbboxNRVS.SelectedValue = Nothing + Me.cbboxNRVS.Size = New System.Drawing.Size(208, 22) + Me.cbboxNRVS.TabIndex = 40 + Me.cbboxNRVS.Table = Nothing + Me.cbboxNRVS.Valuemember = Nothing + ' + 'cbboxNrGarant + ' + Me.cbboxNrGarant.Dataselection = Nothing + Me.cbboxNrGarant.Displaymember = Nothing + Me.cbboxNrGarant.Location = New System.Drawing.Point(123, 42) + Me.cbboxNrGarant.Name = "cbboxNrGarant" + Me.cbboxNrGarant.SelectedValue = Nothing + Me.cbboxNrGarant.Size = New System.Drawing.Size(208, 22) + Me.cbboxNrGarant.TabIndex = 39 + Me.cbboxNrGarant.Table = Nothing + Me.cbboxNrGarant.Valuemember = Nothing + ' + 'cbboxNrGesVertreter + ' + Me.cbboxNrGesVertreter.Dataselection = Nothing + Me.cbboxNrGesVertreter.Displaymember = Nothing + Me.cbboxNrGesVertreter.Location = New System.Drawing.Point(123, 14) + Me.cbboxNrGesVertreter.Name = "cbboxNrGesVertreter" + Me.cbboxNrGesVertreter.SelectedValue = Nothing + Me.cbboxNrGesVertreter.Size = New System.Drawing.Size(208, 22) + Me.cbboxNrGesVertreter.TabIndex = 38 + Me.cbboxNrGesVertreter.Table = Nothing + Me.cbboxNrGesVertreter.Valuemember = Nothing + ' + 'Label30 + ' + Me.Label30.AutoSize = True + Me.Label30.Location = New System.Drawing.Point(17, 307) + Me.Label30.Name = "Label30" + Me.Label30.Size = New System.Drawing.Size(99, 13) + Me.Label30.TabIndex = 37 + Me.Label30.Text = "Überweisender Arzt" + ' + 'Label29 + ' + Me.Label29.AutoSize = True + Me.Label29.Location = New System.Drawing.Point(17, 280) + Me.Label29.Name = "Label29" + Me.Label29.Size = New System.Drawing.Size(49, 13) + Me.Label29.TabIndex = 35 + Me.Label29.Text = "Hausarzt" + ' + 'Label27 + ' + Me.Label27.AutoSize = True + Me.Label27.Location = New System.Drawing.Point(17, 254) + Me.Label27.Name = "Label27" + Me.Label27.Size = New System.Drawing.Size(90, 13) + Me.Label27.TabIndex = 33 + Me.Label27.Text = "Fürsorge-Nummer" + ' + 'Label28 + ' + Me.Label28.AutoSize = True + Me.Label28.Location = New System.Drawing.Point(17, 229) + Me.Label28.Name = "Label28" + Me.Label28.Size = New System.Drawing.Size(48, 13) + Me.Label28.TabIndex = 32 + Me.Label28.Text = "Fürsorge" + ' + 'txtFSNR + ' + Me.txtFSNR.Location = New System.Drawing.Point(123, 251) + Me.txtFSNR.Name = "txtFSNR" + Me.txtFSNR.Size = New System.Drawing.Size(208, 20) + Me.txtFSNR.TabIndex = 31 + ' + 'Label25 + ' + Me.Label25.AutoSize = True + Me.Label25.Location = New System.Drawing.Point(17, 204) + Me.Label25.Name = "Label25" + Me.Label25.Size = New System.Drawing.Size(34, 13) + Me.Label25.TabIndex = 29 + Me.Label25.Text = "IV-Nr." + ' + 'Label26 + ' + Me.Label26.AutoSize = True + Me.Label26.Location = New System.Drawing.Point(17, 179) + Me.Label26.Name = "Label26" + Me.Label26.Size = New System.Drawing.Size(17, 13) + Me.Label26.TabIndex = 28 + Me.Label26.Text = "IV" + ' + 'txtIVNR + ' + Me.txtIVNR.Location = New System.Drawing.Point(123, 201) + Me.txtIVNR.Name = "txtIVNR" + Me.txtIVNR.Size = New System.Drawing.Size(208, 20) + Me.txtIVNR.TabIndex = 27 + ' + 'Label24 + ' + Me.Label24.AutoSize = True + Me.Label24.Location = New System.Drawing.Point(17, 153) + Me.Label24.Name = "Label24" + Me.Label24.Size = New System.Drawing.Size(92, 13) + Me.Label24.TabIndex = 25 + Me.Label24.Text = "Krankenkasse-Nr." + ' + 'txtKKNR + ' + Me.txtKKNR.Location = New System.Drawing.Point(123, 150) + Me.txtKKNR.Name = "txtKKNR" + Me.txtKKNR.Size = New System.Drawing.Size(208, 20) + Me.txtKKNR.TabIndex = 24 + ' + 'Label23 + ' + Me.Label23.AutoSize = True + Me.Label23.Location = New System.Drawing.Point(17, 128) + Me.Label23.Name = "Label23" + Me.Label23.Size = New System.Drawing.Size(75, 13) + Me.Label23.TabIndex = 23 + Me.Label23.Text = "Krankenkasse" + ' + 'Label22 + ' + Me.Label22.AutoSize = True + Me.Label22.Location = New System.Drawing.Point(17, 102) + Me.Label22.Name = "Label22" + Me.Label22.Size = New System.Drawing.Size(91, 13) + Me.Label22.TabIndex = 21 + Me.Label22.Text = "Versicherungs-Nr." + ' + 'txtVSNR + ' + Me.txtVSNR.Location = New System.Drawing.Point(123, 95) + Me.txtVSNR.Name = "txtVSNR" + Me.txtVSNR.Size = New System.Drawing.Size(208, 20) + Me.txtVSNR.TabIndex = 7 + ' + 'Label19 + ' + Me.Label19.AutoSize = True + Me.Label19.Location = New System.Drawing.Point(17, 75) + Me.Label19.Name = "Label19" + Me.Label19.Size = New System.Drawing.Size(69, 13) + Me.Label19.TabIndex = 6 + Me.Label19.Text = "Versicherung" + ' + 'Label20 + ' + Me.Label20.AutoSize = True + Me.Label20.Location = New System.Drawing.Point(17, 49) + Me.Label20.Name = "Label20" + Me.Label20.Size = New System.Drawing.Size(39, 13) + Me.Label20.TabIndex = 5 + Me.Label20.Text = "Garant" + ' + 'Label21 + ' + Me.Label21.AutoSize = True + Me.Label21.Location = New System.Drawing.Point(17, 24) + Me.Label21.Name = "Label21" + Me.Label21.Size = New System.Drawing.Size(57, 13) + Me.Label21.TabIndex = 4 + Me.Label21.Text = "Ges. Vertr." + ' + 'GroupBox3 + ' + Me.GroupBox3.BackColor = System.Drawing.Color.Transparent + Me.GroupBox3.Controls.Add(Me.Label12) + Me.GroupBox3.Controls.Add(Me.txtKorrespondenzadresse) + Me.GroupBox3.Location = New System.Drawing.Point(4, 302) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(249, 125) + Me.GroupBox3.TabIndex = 10 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "Korrespondenzadresse" + ' + 'Label12 + ' + Me.Label12.AutoSize = True + Me.Label12.Location = New System.Drawing.Point(17, 22) + Me.Label12.Name = "Label12" + Me.Label12.Size = New System.Drawing.Size(45, 13) + Me.Label12.TabIndex = 19 + Me.Label12.Text = "Adresse" + ' + 'txtKorrespondenzadresse + ' + Me.txtKorrespondenzadresse.Location = New System.Drawing.Point(81, 19) + Me.txtKorrespondenzadresse.Multiline = True + Me.txtKorrespondenzadresse.Name = "txtKorrespondenzadresse" + Me.txtKorrespondenzadresse.Size = New System.Drawing.Size(161, 100) + Me.txtKorrespondenzadresse.TabIndex = 18 + ' + 'GroupBox2 + ' + Me.GroupBox2.BackColor = System.Drawing.Color.Transparent + Me.GroupBox2.Controls.Add(Me.cbboxnrbehandler) + Me.GroupBox2.Controls.Add(Me.cbboxzazRecallTyp) + Me.GroupBox2.Controls.Add(Me.txtzazRecallBemerkung) + Me.GroupBox2.Controls.Add(Me.Label11) + Me.GroupBox2.Controls.Add(Me.Label10) + Me.GroupBox2.Controls.Add(Me.txtZAZRecallfixmonat) + Me.GroupBox2.Controls.Add(Me.Label9) + Me.GroupBox2.Controls.Add(Me.chkZAZRECALLTELEFON) + Me.GroupBox2.Controls.Add(Me.txtzazrecall) + Me.GroupBox2.Controls.Add(Me.Label8) + Me.GroupBox2.Controls.Add(Me.Label7) + Me.GroupBox2.Location = New System.Drawing.Point(3, 111) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(250, 184) + Me.GroupBox2.TabIndex = 9 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Recall" + ' + 'cbboxnrbehandler + ' + Me.cbboxnrbehandler.Dataselection = Nothing + Me.cbboxnrbehandler.Displaymember = Nothing + Me.cbboxnrbehandler.Location = New System.Drawing.Point(82, 18) + Me.cbboxnrbehandler.Name = "cbboxnrbehandler" + Me.cbboxnrbehandler.SelectedValue = Nothing + Me.cbboxnrbehandler.Size = New System.Drawing.Size(160, 22) + Me.cbboxnrbehandler.TabIndex = 18 + Me.cbboxnrbehandler.Table = Nothing + Me.cbboxnrbehandler.Valuemember = Nothing + ' + 'cbboxzazRecallTyp + ' + Me.cbboxzazRecallTyp.Dataselection = Nothing + Me.cbboxzazRecallTyp.Displaymember = Nothing + Me.cbboxzazRecallTyp.Location = New System.Drawing.Point(82, 72) + Me.cbboxzazRecallTyp.Name = "cbboxzazRecallTyp" + Me.cbboxzazRecallTyp.SelectedValue = Nothing + Me.cbboxzazRecallTyp.Size = New System.Drawing.Size(160, 22) + Me.cbboxzazRecallTyp.TabIndex = 9 + Me.cbboxzazRecallTyp.Table = Nothing + Me.cbboxzazRecallTyp.Valuemember = Nothing + ' + 'txtzazRecallBemerkung + ' + Me.txtzazRecallBemerkung.Location = New System.Drawing.Point(82, 129) + Me.txtzazRecallBemerkung.Multiline = True + Me.txtzazRecallBemerkung.Name = "txtzazRecallBemerkung" + Me.txtzazRecallBemerkung.Size = New System.Drawing.Size(161, 49) + Me.txtzazRecallBemerkung.TabIndex = 17 + ' + 'Label11 + ' + Me.Label11.AutoSize = True + Me.Label11.Location = New System.Drawing.Point(17, 132) + Me.Label11.Name = "Label11" + Me.Label11.Size = New System.Drawing.Size(61, 13) + Me.Label11.TabIndex = 16 + Me.Label11.Text = "Bemerkung" + ' + 'Label10 + ' + Me.Label10.AutoSize = True + Me.Label10.Location = New System.Drawing.Point(17, 102) + Me.Label10.Name = "Label10" + Me.Label10.Size = New System.Drawing.Size(62, 13) + Me.Label10.TabIndex = 15 + Me.Label10.Text = "Fixer Monat" + ' + 'txtZAZRecallfixmonat + ' + Me.txtZAZRecallfixmonat.Location = New System.Drawing.Point(82, 99) + Me.txtZAZRecallfixmonat.Name = "txtZAZRecallfixmonat" + Me.txtZAZRecallfixmonat.Size = New System.Drawing.Size(58, 20) + Me.txtZAZRecallfixmonat.TabIndex = 14 + ' + 'Label9 + ' + Me.Label9.AutoSize = True + Me.Label9.Location = New System.Drawing.Point(17, 75) + Me.Label9.Name = "Label9" + Me.Label9.Size = New System.Drawing.Size(25, 13) + Me.Label9.TabIndex = 12 + Me.Label9.Text = "Typ" + ' + 'chkZAZRECALLTELEFON + ' + Me.chkZAZRECALLTELEFON.AutoSize = True + Me.chkZAZRECALLTELEFON.Location = New System.Drawing.Point(157, 47) + Me.chkZAZRECALLTELEFON.Name = "chkZAZRECALLTELEFON" + Me.chkZAZRECALLTELEFON.Size = New System.Drawing.Size(77, 17) + Me.chkZAZRECALLTELEFON.TabIndex = 11 + Me.chkZAZRECALLTELEFON.Text = "telefonisch" + Me.chkZAZRECALLTELEFON.UseVisualStyleBackColor = True + ' + 'txtzazrecall + ' + Me.txtzazrecall.Location = New System.Drawing.Point(82, 46) + Me.txtzazrecall.Name = "txtzazrecall" + Me.txtzazrecall.Size = New System.Drawing.Size(58, 20) + Me.txtzazrecall.TabIndex = 10 + ' + 'Label8 + ' + Me.Label8.AutoSize = True + Me.Label8.Location = New System.Drawing.Point(17, 49) + Me.Label8.Name = "Label8" + Me.Label8.Size = New System.Drawing.Size(44, 13) + Me.Label8.TabIndex = 9 + Me.Label8.Text = "Intervall" + ' + 'Label7 + ' + Me.Label7.AutoSize = True + Me.Label7.Location = New System.Drawing.Point(17, 22) + Me.Label7.Name = "Label7" + Me.Label7.Size = New System.Drawing.Size(55, 13) + Me.Label7.TabIndex = 8 + Me.Label7.Text = "Behandler" + ' + 'GroupBox1 + ' + Me.GroupBox1.BackColor = System.Drawing.Color.Transparent + Me.GroupBox1.Controls.Add(Me.cbboxESTyp) + Me.GroupBox1.Controls.Add(Me.cbboxNrRGTyp) + Me.GroupBox1.Controls.Add(Me.Label6) + Me.GroupBox1.Controls.Add(Me.Label5) + Me.GroupBox1.Controls.Add(Me.Label4) + Me.GroupBox1.Controls.Add(Me.Label3) + Me.GroupBox1.Controls.Add(Me.txtRabatt) + Me.GroupBox1.Location = New System.Drawing.Point(3, 3) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(250, 102) + Me.GroupBox1.TabIndex = 8 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Abrechnung" + ' + 'cbboxESTyp + ' + Me.cbboxESTyp.Dataselection = Nothing + Me.cbboxESTyp.Displaymember = Nothing + Me.cbboxESTyp.Location = New System.Drawing.Point(84, 72) + Me.cbboxESTyp.Name = "cbboxESTyp" + Me.cbboxESTyp.SelectedValue = Nothing + Me.cbboxESTyp.Size = New System.Drawing.Size(160, 22) + Me.cbboxESTyp.TabIndex = 8 + Me.cbboxESTyp.Table = Nothing + Me.cbboxESTyp.Valuemember = Nothing + ' + 'cbboxNrRGTyp + ' + Me.cbboxNrRGTyp.Dataselection = Nothing + Me.cbboxNrRGTyp.Displaymember = Nothing + Me.cbboxNrRGTyp.Location = New System.Drawing.Point(83, 14) + Me.cbboxNrRGTyp.Name = "cbboxNrRGTyp" + Me.cbboxNrRGTyp.SelectedValue = Nothing + Me.cbboxNrRGTyp.Size = New System.Drawing.Size(160, 22) + Me.cbboxNrRGTyp.TabIndex = 7 + Me.cbboxNrRGTyp.Table = Nothing + Me.cbboxNrRGTyp.Valuemember = Nothing + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Location = New System.Drawing.Point(17, 75) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(59, 13) + Me.Label6.TabIndex = 6 + Me.Label6.Text = "Einzahlung" + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(17, 49) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(39, 13) + Me.Label5.TabIndex = 5 + Me.Label5.Text = "Rabatt" + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(17, 16) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(25, 13) + Me.Label4.TabIndex = 4 + Me.Label4.Text = "Typ" + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(194, 49) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(15, 13) + Me.Label3.TabIndex = 2 + Me.Label3.Text = "%" + ' + 'txtRabatt + ' + Me.txtRabatt.Location = New System.Drawing.Point(83, 46) + Me.txtRabatt.Name = "txtRabatt" + Me.txtRabatt.Size = New System.Drawing.Size(108, 20) + Me.txtRabatt.TabIndex = 1 + ' + 'PatientAbrechnung + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.GroupBox4) + Me.Controls.Add(Me.GroupBox3) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.Name = "PatientAbrechnung" + Me.Size = New System.Drawing.Size(617, 436) + Me.GroupBox4.ResumeLayout(False) + Me.GroupBox4.PerformLayout() + Me.GroupBox3.ResumeLayout(False) + Me.GroupBox3.PerformLayout() + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox1.PerformLayout() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox + Friend WithEvents Label30 As System.Windows.Forms.Label + Friend WithEvents Label29 As System.Windows.Forms.Label + Friend WithEvents Label27 As System.Windows.Forms.Label + Friend WithEvents Label28 As System.Windows.Forms.Label + Friend WithEvents txtFSNR As System.Windows.Forms.TextBox + Friend WithEvents Label25 As System.Windows.Forms.Label + Friend WithEvents Label26 As System.Windows.Forms.Label + Friend WithEvents txtIVNR As System.Windows.Forms.TextBox + Friend WithEvents Label24 As System.Windows.Forms.Label + Friend WithEvents txtKKNR As System.Windows.Forms.TextBox + Friend WithEvents Label23 As System.Windows.Forms.Label + Friend WithEvents Label22 As System.Windows.Forms.Label + Friend WithEvents txtVSNR As System.Windows.Forms.TextBox + Friend WithEvents Label19 As System.Windows.Forms.Label + Friend WithEvents Label20 As System.Windows.Forms.Label + Friend WithEvents Label21 As System.Windows.Forms.Label + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents Label12 As System.Windows.Forms.Label + Friend WithEvents txtKorrespondenzadresse As System.Windows.Forms.TextBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents txtzazRecallBemerkung As System.Windows.Forms.TextBox + Friend WithEvents Label11 As System.Windows.Forms.Label + Friend WithEvents Label10 As System.Windows.Forms.Label + Friend WithEvents txtZAZRecallfixmonat As System.Windows.Forms.TextBox + Friend WithEvents Label9 As System.Windows.Forms.Label + Friend WithEvents chkZAZRECALLTELEFON As System.Windows.Forms.CheckBox + Friend WithEvents txtzazrecall As System.Windows.Forms.TextBox + Friend WithEvents Label8 As System.Windows.Forms.Label + Friend WithEvents Label7 As System.Windows.Forms.Label + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents txtRabatt As System.Windows.Forms.TextBox + Friend WithEvents cbboxNrRGTyp As DPM2016.MyCombobox + Friend WithEvents cbboxESTyp As DPM2016.MyCombobox + Friend WithEvents cbboxzazRecallTyp As DPM2016.MyCombobox + Friend WithEvents cbboxnrbehandler As DPM2016.MyCombobox + Friend WithEvents cbboxNrGarant As DPM2016.MyCombobox + Friend WithEvents cbboxNrGesVertreter As DPM2016.MyCombobox + Friend WithEvents CBBOXNRFs As DPM2016.MyCombobox + Friend WithEvents CBBOXNRIV As DPM2016.MyCombobox + Friend WithEvents cbboxNRKK As DPM2016.MyCombobox + Friend WithEvents cbboxNRVS As DPM2016.MyCombobox + Friend WithEvents cbboxnrzahnarzt As DPM2016.MyCombobox + Friend WithEvents cbboxnrhausarzt As DPM2016.MyCombobox + +End Class diff --git a/DPM2016/Patient/PatientAbrechnung.resx b/DPM2016/Patient/PatientAbrechnung.resx new file mode 100644 index 0000000..7080a7d --- /dev/null +++ b/DPM2016/Patient/PatientAbrechnung.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/Patient/PatientAbrechnung.vb b/DPM2016/Patient/PatientAbrechnung.vb new file mode 100644 index 0000000..d4f64e9 --- /dev/null +++ b/DPM2016/Patient/PatientAbrechnung.vb @@ -0,0 +1,407 @@ +Public Class PatientAbrechnung + +#Region "Properties" + Dim m_patientnr As Integer + Property PatientNr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + Try + If value = 0 Then Exit Property + m_patientnr = value + Fill_Stammdaten() + Get_Data() + Catch ex As Exception + log.Writelog("PatientAbrechnung: PatientNr Set: " + ex.Message, clsLog.Logtype.ApplError) + Dim a As Integer = 1 + End Try + End Set + End Property + + Dim m_haschanges As Boolean + Property HasChanges As Boolean + Get + Return m_haschanges + End Get + Set(value As Boolean) + m_haschanges = value + End Set + End Property + +#End Region + +#Region "Deklarationen" + Dim DB As New clsDB + Dim log As New clsLog + Dim FormReadonly As Boolean = False + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + +#End Region + +#Region "Closing / Check_Changes" + + ''' + ''' Prüfung, ob Datenänderungen vorgenommen wurden. + ''' + ''' + Private Function Check_Changes() As Boolean + If Me.FormReadonly Then + Return True + Exit Function + End If + Dim msgres As MsgBoxResult + If Me.HasChanges Then + msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) + Select Case msgres + Case MsgBoxResult.Yes + Save_Data() + Return True + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Me.HasChanges = False + Return True + End Select + Else + Return True + End If + End Function + +#End Region + +#Region "Eventhandler ChangeEreignisse" + ''' + ''' Allg Eventhandler für Chanage-Ereignise festlegen + ''' + ''' + ''' + Private Sub AddChanges(ByVal Container As Control) + Dim l As New List(Of Control) + Me.GetControl(Me, "*", l) + Dim evh As EventHandler = AddressOf ChangesMade + For Each c As Control In l + If TypeOf c Is TextBox Then + Dim ctl As TextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is MaskedTextBox Then + Dim ctl As MaskedTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is ComboBox Then + Dim ctl As ComboBox = c + AddHandler ctl.SelectedValueChanged, evh + End If + If TypeOf c Is RichTextBox Then + Dim ctl As RichTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is CheckBox Then + If c.Name <> "cboxNurAktive" Then + Dim ctl As CheckBox = c + AddHandler ctl.CheckedChanged, evh + End If + End If + If TypeOf c Is DateTimePicker Then + Dim ctl As DateTimePicker = c + AddHandler ctl.ValueChanged, evh + End If + If TypeOf c Is CheckedListBox Then + Dim ctl As CheckedListBox = c + AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange + End If + Next + End Sub + ''' + ''' Envent-Handler für Change-Ereignisse + ''' + ''' + ''' + ''' + Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) + Me.HasChanges = True + Dim objtype As System.Type = sender.GetType + If objtype.Name = "MaskedTextBox" Then + Dim o As MaskedTextBox = sender + If o.Text = "01.01.1900" Then o.Text = " . . " + End If + End Sub + + Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) + Me.HasChanges = True + End Sub + + + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + +#Region "Daten_Laden" + + Public Sub Fill_Stammdaten() + Me.cbboxNrRGTyp.Table = "RGTyp" + Me.cbboxNrRGTyp.Displaymember = "BezD" + Me.cbboxNrRGTyp.Valuemember = "nrrgtyp" + + Me.cbboxESTyp.Table = "ESTyp" + Me.cbboxESTyp.Displaymember = "estyp" + Me.cbboxESTyp.Valuemember = "nrestyp" + + Me.cbboxzazRecallTyp.Table = "RecallTyp" + Me.cbboxzazRecallTyp.Displaymember = "RecallTyp" + Me.cbboxzazRecallTyp.Valuemember = "nrrecalltyp" + + Me.cbboxnrbehandler.Dataselection = DB.Get_SQL(2) + Me.cbboxnrbehandler.Table = "Behandler" + Me.cbboxnrbehandler.Displaymember = "Name" + Me.cbboxnrbehandler.Valuemember = "nrprivat" + + Me.cbboxNrGesVertreter.Dataselection = DB.Get_SQL(3) + Me.cbboxNrGesVertreter.Table = "GesVertreter" + Me.cbboxNrGesVertreter.Displaymember = "Name" + Me.cbboxNrGesVertreter.Valuemember = "nrprivat" + + Me.cbboxNrGarant.Dataselection = DB.Get_SQL(4) + Me.cbboxNrGarant.Table = "Garant" + Me.cbboxNrGarant.Displaymember = "Name" + Me.cbboxNrGarant.Valuemember = "nrprivat" + + Me.cbboxNRVS.Dataselection = DB.Get_SQL(5) + Me.cbboxNRVS.Table = "Versicherung" + Me.cbboxNRVS.Displaymember = "Firmenname" + Me.cbboxNRVS.Valuemember = "nrfirma" + + Me.cbboxNRKK.Dataselection = DB.Get_SQL(6) + Me.cbboxNRKK.Table = "Krankenkasse" + Me.cbboxNRKK.Displaymember = "Firmenname" + Me.cbboxNRKK.Valuemember = "nrfirma" + + Me.CBBOXNRIV.Dataselection = DB.Get_SQL(7) + Me.CBBOXNRIV.Table = "IVStelle" + Me.CBBOXNRIV.Displaymember = "Firmenname" + Me.CBBOXNRIV.Valuemember = "nrfirma" + + Me.CBBOXNRFs.Dataselection = DB.Get_SQL(8) + Me.CBBOXNRFs.Table = "Fürsorgestelle" + Me.CBBOXNRFs.Displaymember = "Firmenname" + Me.CBBOXNRFs.Valuemember = "nrfirma" + + Me.cbboxnrhausarzt.Dataselection = DB.Get_SQL(13) + Me.cbboxnrhausarzt.Table = "Hausarzt" + Me.cbboxnrhausarzt.Displaymember = "Name" + Me.cbboxnrhausarzt.Valuemember = "nrprivat" + + Me.cbboxnrzahnarzt.Dataselection = DB.Get_SQL(14) + Me.cbboxnrzahnarzt.Table = "Zahnarzt" + Me.cbboxnrzahnarzt.Displaymember = "Name" + Me.cbboxnrzahnarzt.Valuemember = "nrprivat" + + End Sub + + + + + Sub Get_Data() + DB.Get_Tabledata("privat", " where nrprivat=" + Me.PatientNr.ToString) + Dim r As DataRow = DB.dsDaten.Tables(0).Rows(0) + + Get_Data_Controls(Me, r) + AddChanges(Me) + Me.HasChanges = False + End Sub + + Sub Get_Data_Controls(ByVal ictl As Control, ByRef R As DataRow) + + For Each ctl As Control In ictl.Controls + + If ctl.Controls.Count = 0 Or (ctl.Controls.Count = 1 And Microsoft.VisualBasic.Left(UCase(ctl.Name), 5) = "CBBOX") Then + get_data_for_control(ctl, R) + Else + Get_Data_Controls(ctl, R) + End If + Next + End Sub + + Sub get_data_for_control(ByRef ctl As Control, ByRef R As DataRow) + + + For Each c As DataColumn In DB.dsDaten.Tables(0).Columns + Try + If UCase(ctl.Name) = "TXT" + UCase(c.ColumnName) Then + ctl.Text = R(c.ColumnName) + Exit For + End If + If UCase(ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + If UCase(c.ColumnName) = "NRFS" Then + + End If + Dim ct As MyCombobox + Dim o As Object = ctl + Try + o.SelectedValue = R(c.ColumnName) + Catch + o.selectedvalue = -1 + End Try + + Exit For + End If + If UCase(ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = ctl + dt.Value = R(c.ColumnName) + Exit For + End If + If UCase(ctl.Name) = "CHK" + UCase(c.ColumnName) Then + Dim dt As CheckBox + dt = ctl + Try + dt.Checked = R(c.ColumnName) + Exit For + Catch + dt.Checked = False + End Try + End If + Catch ex As Exception + MsgBox(ex.Message + " / " + ctl.Name + " / " + R(c.ColumnName)) + End Try + + Next + + End Sub + +#End Region + +#Region "Daten speichern" + + Public Sub Save_Data() + DB.Get_Tabledata("privat", " where nrprivat=" + Me.PatientNr.ToString) + Dim r As DataRow = DB.dsDaten.Tables(0).Rows(0) + + Save_Data_Controls(Me, r) + r("Mutiert_am") = Now + r("mutierer") = Globals.ActUser + DB.Update_Data() + Me.HasChanges = False + End Sub + + Sub Save_Data_Controls(ByVal ictl As Control, ByRef r As DataRow) + + For Each ctl As Control In ictl.Controls + + If ctl.Controls.Count = 0 Or (ctl.Controls.Count = 1 And Microsoft.VisualBasic.Left(UCase(ctl.Name), 5) = "CBBOX") Then + Save_Data_for_Control(ctl, r) + Else + Save_Data_Controls(ctl, r) + + End If + Next + End Sub + + Sub Save_Data_for_Control(ByRef ctl As Control, ByRef r As DataRow) + Dim ctlname As String + Dim colname As String + ctlname = ctl.Name + Try + For Each c As DataColumn In DB.dsDaten.Tables(0).Columns + colname = c.ColumnName + If UCase(ctl.Name) = "TXT" + UCase(c.ColumnName) Then + r(c.ColumnName) = ctl.Text + Exit For + End If + If UCase(ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + Dim ct As MyCombobox + Dim o As Object = ctl + Try + If o.selectedvalue Is System.DBNull.Value Or o.selectedvalue Is Nothing Then + r(c.ColumnName) = -1 + Else + r(c.ColumnName) = o.selectedvalue + End If + Catch ex As Exception + r(c.ColumnName) = -1 + End Try + Exit For + End If + If UCase(ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = ctl + r(c.ColumnName) = dt.Value + Exit For + End If + If UCase(ctl.Name) = "CHK" + UCase(c.ColumnName) Then + Dim dt As CheckBox + dt = ctl + r(c.ColumnName) = dt.Checked + Exit For + End If + Next + + Catch ex As Exception + log.Writelog("Privatdetails: Get_Data: " + ctlname + " / " + colname + " " + ex.Message, clsLog.Logtype.ApplError) + End Try + + + End Sub + + + + + +#End Region + + + Private Sub evh_PatSaved(Nr As Integer) Handles evh.PatSaved + If Nr = Me.PatientNr Then + Me.Save_Data() + End If + End Sub +End Class diff --git a/DPM2016/Patient/PatientDetails.Designer.vb b/DPM2016/Patient/PatientDetails.Designer.vb new file mode 100644 index 0000000..55157da --- /dev/null +++ b/DPM2016/Patient/PatientDetails.Designer.vb @@ -0,0 +1,781 @@ + _ +Partial Class PatientDetails + Inherits System.Windows.Forms.UserControl + + 'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.txtnrprivat = New System.Windows.Forms.TextBox() + Me.lblNr = New System.Windows.Forms.Label() + Me.lblAnrede = New System.Windows.Forms.Label() + Me.lblTitel = New System.Windows.Forms.Label() + Me.txtMutierer = New System.Windows.Forms.TextBox() + Me.txtMutiert_am = New System.Windows.Forms.TextBox() + Me.txtErstellt_am = New System.Windows.Forms.TextBox() + Me.Label18 = New System.Windows.Forms.Label() + Me.Label17 = New System.Windows.Forms.Label() + Me.Label16 = New System.Windows.Forms.Label() + Me.Label15 = New System.Windows.Forms.Label() + Me.Label14 = New System.Windows.Forms.Label() + Me.Label13 = New System.Windows.Forms.Label() + Me.chklbAdresstyp = New System.Windows.Forms.CheckedListBox() + Me.txtBemerkung = New System.Windows.Forms.TextBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.txtFaxG = New System.Windows.Forms.TextBox() + Me.txtName = New System.Windows.Forms.TextBox() + Me.lbltelg = New System.Windows.Forms.Label() + Me.lblName = New System.Windows.Forms.Label() + Me.txtTelg = New System.Windows.Forms.TextBox() + Me.txtVorname = New System.Windows.Forms.TextBox() + Me.lblahv = New System.Windows.Forms.Label() + Me.txtahvnr = New System.Windows.Forms.TextBox() + Me.lblVorname = New System.Windows.Forms.Label() + Me.lblBeruf = New System.Windows.Forms.Label() + Me.txtBeruf = New System.Windows.Forms.TextBox() + Me.txtCOAdresse = New System.Windows.Forms.TextBox() + Me.lblArbeitgeber = New System.Windows.Forms.Label() + Me.lblCO = New System.Windows.Forms.Label() + Me.txtStrasse = New System.Windows.Forms.TextBox() + Me.lblSprache = New System.Windows.Forms.Label() + Me.lblStrasse = New System.Windows.Forms.Label() + Me.txtPLZ = New System.Windows.Forms.TextBox() + Me.lblStatus = New System.Windows.Forms.Label() + Me.lblPLZOrt = New System.Windows.Forms.Label() + Me.lblBriefanrede = New System.Windows.Forms.Label() + Me.txtOrt = New System.Windows.Forms.TextBox() + Me.txtBriefanrede = New System.Windows.Forms.TextBox() + Me.lblGebDat = New System.Windows.Forms.Label() + Me.lblGeschlecht = New System.Windows.Forms.Label() + Me.txttelp = New System.Windows.Forms.TextBox() + Me.lblInternet = New System.Windows.Forms.Label() + Me.lblTelefon = New System.Windows.Forms.Label() + Me.txtWeb = New System.Windows.Forms.TextBox() + Me.txtFaxp = New System.Windows.Forms.TextBox() + Me.lblemail = New System.Windows.Forms.Label() + Me.lblFaxP = New System.Windows.Forms.Label() + Me.txtE_Mail = New System.Windows.Forms.TextBox() + Me.txtNatel = New System.Windows.Forms.TextBox() + Me.lblMobile = New System.Windows.Forms.Label() + Me.dtgebdat = New System.Windows.Forms.DateTimePicker() + Me.dtGueltigab = New System.Windows.Forms.DateTimePicker() + Me.dtgueltigbis = New System.Windows.Forms.DateTimePicker() + Me.cbboxNRArbeitgeber = New DPM2016.MyCombobox() + Me.cbboxNrGeschlecht = New DPM2016.MyCombobox() + Me.cbboxSprache = New DPM2016.MyCombobox() + Me.cbboxStatus = New DPM2016.MyCombobox() + Me.cbboxNRTitel = New DPM2016.MyCombobox() + Me.cbboxNrAnrede = New DPM2016.MyCombobox() + Me.SuspendLayout() + ' + 'txtnrprivat + ' + Me.txtnrprivat.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.txtnrprivat.Location = New System.Drawing.Point(74, 14) + Me.txtnrprivat.Name = "txtnrprivat" + Me.txtnrprivat.ReadOnly = True + Me.txtnrprivat.RightToLeft = System.Windows.Forms.RightToLeft.Yes + Me.txtnrprivat.Size = New System.Drawing.Size(48, 20) + Me.txtnrprivat.TabIndex = 100 + ' + 'lblNr + ' + Me.lblNr.AutoSize = True + Me.lblNr.BackColor = System.Drawing.Color.Transparent + Me.lblNr.Location = New System.Drawing.Point(4, 16) + Me.lblNr.Name = "lblNr" + Me.lblNr.Size = New System.Drawing.Size(21, 13) + Me.lblNr.TabIndex = 103 + Me.lblNr.Text = "Nr." + ' + 'lblAnrede + ' + Me.lblAnrede.AutoSize = True + Me.lblAnrede.BackColor = System.Drawing.Color.Transparent + Me.lblAnrede.Location = New System.Drawing.Point(4, 41) + Me.lblAnrede.Name = "lblAnrede" + Me.lblAnrede.Size = New System.Drawing.Size(41, 13) + Me.lblAnrede.TabIndex = 104 + Me.lblAnrede.Text = "Anrede" + ' + 'lblTitel + ' + Me.lblTitel.AutoSize = True + Me.lblTitel.BackColor = System.Drawing.Color.Transparent + Me.lblTitel.Location = New System.Drawing.Point(4, 68) + Me.lblTitel.Name = "lblTitel" + Me.lblTitel.Size = New System.Drawing.Size(27, 13) + Me.lblTitel.TabIndex = 105 + Me.lblTitel.Text = "Titel" + ' + 'txtMutierer + ' + Me.txtMutierer.Location = New System.Drawing.Point(586, 257) + Me.txtMutierer.Name = "txtMutierer" + Me.txtMutierer.ReadOnly = True + Me.txtMutierer.RightToLeft = System.Windows.Forms.RightToLeft.Yes + Me.txtMutierer.Size = New System.Drawing.Size(135, 20) + Me.txtMutierer.TabIndex = 207 + ' + 'txtMutiert_am + ' + Me.txtMutiert_am.Location = New System.Drawing.Point(586, 234) + Me.txtMutiert_am.Name = "txtMutiert_am" + Me.txtMutiert_am.ReadOnly = True + Me.txtMutiert_am.Size = New System.Drawing.Size(135, 20) + Me.txtMutiert_am.TabIndex = 206 + ' + 'txtErstellt_am + ' + Me.txtErstellt_am.Location = New System.Drawing.Point(586, 212) + Me.txtErstellt_am.Name = "txtErstellt_am" + Me.txtErstellt_am.ReadOnly = True + Me.txtErstellt_am.Size = New System.Drawing.Size(135, 20) + Me.txtErstellt_am.TabIndex = 205 + ' + 'Label18 + ' + Me.Label18.AutoSize = True + Me.Label18.BackColor = System.Drawing.Color.Transparent + Me.Label18.Location = New System.Drawing.Point(527, 260) + Me.Label18.Name = "Label18" + Me.Label18.Size = New System.Drawing.Size(45, 13) + Me.Label18.TabIndex = 204 + Me.Label18.Text = "Mutierer" + ' + 'Label17 + ' + Me.Label17.AutoSize = True + Me.Label17.BackColor = System.Drawing.Color.Transparent + Me.Label17.Location = New System.Drawing.Point(527, 237) + Me.Label17.Name = "Label17" + Me.Label17.Size = New System.Drawing.Size(56, 13) + Me.Label17.TabIndex = 203 + Me.Label17.Text = "Mutiert am" + ' + 'Label16 + ' + Me.Label16.AutoSize = True + Me.Label16.BackColor = System.Drawing.Color.Transparent + Me.Label16.Location = New System.Drawing.Point(528, 215) + Me.Label16.Name = "Label16" + Me.Label16.Size = New System.Drawing.Size(55, 13) + Me.Label16.TabIndex = 202 + Me.Label16.Text = "Erstellt am" + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.BackColor = System.Drawing.Color.Transparent + Me.Label15.Location = New System.Drawing.Point(272, 254) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(50, 13) + Me.Label15.TabIndex = 201 + Me.Label15.Text = "Gültig bis" + ' + 'Label14 + ' + Me.Label14.AutoSize = True + Me.Label14.BackColor = System.Drawing.Color.Transparent + Me.Label14.Location = New System.Drawing.Point(272, 230) + Me.Label14.Name = "Label14" + Me.Label14.Size = New System.Drawing.Size(49, 13) + Me.Label14.TabIndex = 200 + Me.Label14.Text = "Gültig ab" + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.BackColor = System.Drawing.Color.Transparent + Me.Label13.Location = New System.Drawing.Point(527, 42) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(53, 13) + Me.Label13.TabIndex = 199 + Me.Label13.Text = "Adresstyp" + ' + 'chklbAdresstyp + ' + Me.chklbAdresstyp.FormattingEnabled = True + Me.chklbAdresstyp.Items.AddRange(New Object() {"Patient", "Garant", "Zahnarzt", "Ges. Vertreter", "Hausarzt", "Behandler", "DH-Patient", "Nicht annehmen", "Nicht aufbieten", "Betreibung vorhanden"}) + Me.chklbAdresstyp.Location = New System.Drawing.Point(586, 39) + Me.chklbAdresstyp.Name = "chklbAdresstyp" + Me.chklbAdresstyp.Size = New System.Drawing.Size(137, 154) + Me.chklbAdresstyp.TabIndex = 26 + ' + 'txtBemerkung + ' + Me.txtBemerkung.Location = New System.Drawing.Point(275, 301) + Me.txtBemerkung.Multiline = True + Me.txtBemerkung.Name = "txtBemerkung" + Me.txtBemerkung.Size = New System.Drawing.Size(446, 101) + Me.txtBemerkung.TabIndex = 25 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.BackColor = System.Drawing.Color.Transparent + Me.Label2.Location = New System.Drawing.Point(272, 281) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(61, 13) + Me.Label2.TabIndex = 198 + Me.Label2.Text = "Bemerkung" + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.BackColor = System.Drawing.Color.Transparent + Me.Label1.Location = New System.Drawing.Point(272, 200) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(38, 13) + Me.Label1.TabIndex = 197 + Me.Label1.Text = "Fax G." + ' + 'txtFaxG + ' + Me.txtFaxG.Location = New System.Drawing.Point(342, 197) + Me.txtFaxG.Name = "txtFaxG" + Me.txtFaxG.Size = New System.Drawing.Size(162, 20) + Me.txtFaxG.TabIndex = 22 + ' + 'txtName + ' + Me.txtName.Location = New System.Drawing.Point(74, 93) + Me.txtName.Name = "txtName" + Me.txtName.Size = New System.Drawing.Size(162, 20) + Me.txtName.TabIndex = 2 + ' + 'lbltelg + ' + Me.lbltelg.AutoSize = True + Me.lbltelg.BackColor = System.Drawing.Color.Transparent + Me.lbltelg.Location = New System.Drawing.Point(272, 174) + Me.lbltelg.Name = "lbltelg" + Me.lbltelg.Size = New System.Drawing.Size(57, 13) + Me.lbltelg.TabIndex = 196 + Me.lbltelg.Text = "Telefon G." + ' + 'lblName + ' + Me.lblName.AutoSize = True + Me.lblName.BackColor = System.Drawing.Color.Transparent + Me.lblName.Location = New System.Drawing.Point(4, 96) + Me.lblName.Name = "lblName" + Me.lblName.Size = New System.Drawing.Size(35, 13) + Me.lblName.TabIndex = 178 + Me.lblName.Text = "Name" + ' + 'txtTelg + ' + Me.txtTelg.Location = New System.Drawing.Point(342, 171) + Me.txtTelg.Name = "txtTelg" + Me.txtTelg.Size = New System.Drawing.Size(162, 20) + Me.txtTelg.TabIndex = 21 + ' + 'txtVorname + ' + Me.txtVorname.Location = New System.Drawing.Point(74, 119) + Me.txtVorname.Name = "txtVorname" + Me.txtVorname.Size = New System.Drawing.Size(162, 20) + Me.txtVorname.TabIndex = 3 + ' + 'lblahv + ' + Me.lblahv.AutoSize = True + Me.lblahv.BackColor = System.Drawing.Color.Transparent + Me.lblahv.Location = New System.Drawing.Point(272, 148) + Me.lblahv.Name = "lblahv" + Me.lblahv.Size = New System.Drawing.Size(43, 13) + Me.lblahv.TabIndex = 195 + Me.lblahv.Text = "AHV-Nr" + ' + 'txtahvnr + ' + Me.txtahvnr.Location = New System.Drawing.Point(342, 145) + Me.txtahvnr.Name = "txtahvnr" + Me.txtahvnr.Size = New System.Drawing.Size(162, 20) + Me.txtahvnr.TabIndex = 20 + ' + 'lblVorname + ' + Me.lblVorname.AutoSize = True + Me.lblVorname.BackColor = System.Drawing.Color.Transparent + Me.lblVorname.Location = New System.Drawing.Point(4, 122) + Me.lblVorname.Name = "lblVorname" + Me.lblVorname.Size = New System.Drawing.Size(49, 13) + Me.lblVorname.TabIndex = 179 + Me.lblVorname.Text = "Vorname" + ' + 'lblBeruf + ' + Me.lblBeruf.AutoSize = True + Me.lblBeruf.BackColor = System.Drawing.Color.Transparent + Me.lblBeruf.Location = New System.Drawing.Point(272, 122) + Me.lblBeruf.Name = "lblBeruf" + Me.lblBeruf.Size = New System.Drawing.Size(32, 13) + Me.lblBeruf.TabIndex = 194 + Me.lblBeruf.Text = "Beruf" + ' + 'txtBeruf + ' + Me.txtBeruf.Location = New System.Drawing.Point(342, 119) + Me.txtBeruf.Name = "txtBeruf" + Me.txtBeruf.Size = New System.Drawing.Size(162, 20) + Me.txtBeruf.TabIndex = 19 + ' + 'txtCOAdresse + ' + Me.txtCOAdresse.Location = New System.Drawing.Point(74, 145) + Me.txtCOAdresse.Name = "txtCOAdresse" + Me.txtCOAdresse.Size = New System.Drawing.Size(162, 20) + Me.txtCOAdresse.TabIndex = 4 + ' + 'lblArbeitgeber + ' + Me.lblArbeitgeber.AutoSize = True + Me.lblArbeitgeber.BackColor = System.Drawing.Color.Transparent + Me.lblArbeitgeber.Location = New System.Drawing.Point(272, 96) + Me.lblArbeitgeber.Name = "lblArbeitgeber" + Me.lblArbeitgeber.Size = New System.Drawing.Size(61, 13) + Me.lblArbeitgeber.TabIndex = 193 + Me.lblArbeitgeber.Text = "Arbeitgeber" + ' + 'lblCO + ' + Me.lblCO.AutoSize = True + Me.lblCO.BackColor = System.Drawing.Color.Transparent + Me.lblCO.Location = New System.Drawing.Point(4, 148) + Me.lblCO.Name = "lblCO" + Me.lblCO.Size = New System.Drawing.Size(27, 13) + Me.lblCO.TabIndex = 180 + Me.lblCO.Text = "C/O" + ' + 'txtStrasse + ' + Me.txtStrasse.Location = New System.Drawing.Point(74, 171) + Me.txtStrasse.Name = "txtStrasse" + Me.txtStrasse.Size = New System.Drawing.Size(162, 20) + Me.txtStrasse.TabIndex = 5 + ' + 'lblSprache + ' + Me.lblSprache.AutoSize = True + Me.lblSprache.BackColor = System.Drawing.Color.Transparent + Me.lblSprache.Location = New System.Drawing.Point(272, 69) + Me.lblSprache.Name = "lblSprache" + Me.lblSprache.Size = New System.Drawing.Size(47, 13) + Me.lblSprache.TabIndex = 192 + Me.lblSprache.Text = "Sprache" + ' + 'lblStrasse + ' + Me.lblStrasse.AutoSize = True + Me.lblStrasse.BackColor = System.Drawing.Color.Transparent + Me.lblStrasse.Location = New System.Drawing.Point(4, 174) + Me.lblStrasse.Name = "lblStrasse" + Me.lblStrasse.Size = New System.Drawing.Size(42, 13) + Me.lblStrasse.TabIndex = 181 + Me.lblStrasse.Text = "Strasse" + ' + 'txtPLZ + ' + Me.txtPLZ.Location = New System.Drawing.Point(74, 197) + Me.txtPLZ.Name = "txtPLZ" + Me.txtPLZ.Size = New System.Drawing.Size(48, 20) + Me.txtPLZ.TabIndex = 6 + ' + 'lblStatus + ' + Me.lblStatus.AutoSize = True + Me.lblStatus.BackColor = System.Drawing.Color.Transparent + Me.lblStatus.Location = New System.Drawing.Point(272, 42) + Me.lblStatus.Name = "lblStatus" + Me.lblStatus.Size = New System.Drawing.Size(37, 13) + Me.lblStatus.TabIndex = 191 + Me.lblStatus.Text = "Status" + ' + 'lblPLZOrt + ' + Me.lblPLZOrt.AutoSize = True + Me.lblPLZOrt.BackColor = System.Drawing.Color.Transparent + Me.lblPLZOrt.Location = New System.Drawing.Point(4, 200) + Me.lblPLZOrt.Name = "lblPLZOrt" + Me.lblPLZOrt.Size = New System.Drawing.Size(46, 13) + Me.lblPLZOrt.TabIndex = 182 + Me.lblPLZOrt.Text = "PLZ/Ort" + ' + 'lblBriefanrede + ' + Me.lblBriefanrede.AutoSize = True + Me.lblBriefanrede.BackColor = System.Drawing.Color.Transparent + Me.lblBriefanrede.Location = New System.Drawing.Point(4, 411) + Me.lblBriefanrede.Name = "lblBriefanrede" + Me.lblBriefanrede.Size = New System.Drawing.Size(65, 13) + Me.lblBriefanrede.TabIndex = 190 + Me.lblBriefanrede.Text = "Brief-Anrede" + ' + 'txtOrt + ' + Me.txtOrt.Location = New System.Drawing.Point(128, 197) + Me.txtOrt.Name = "txtOrt" + Me.txtOrt.Size = New System.Drawing.Size(108, 20) + Me.txtOrt.TabIndex = 7 + ' + 'txtBriefanrede + ' + Me.txtBriefanrede.Location = New System.Drawing.Point(74, 408) + Me.txtBriefanrede.Name = "txtBriefanrede" + Me.txtBriefanrede.Size = New System.Drawing.Size(647, 20) + Me.txtBriefanrede.TabIndex = 15 + ' + 'lblGebDat + ' + Me.lblGebDat.AutoSize = True + Me.lblGebDat.BackColor = System.Drawing.Color.Transparent + Me.lblGebDat.Location = New System.Drawing.Point(4, 229) + Me.lblGebDat.Name = "lblGebDat" + Me.lblGebDat.Size = New System.Drawing.Size(44, 13) + Me.lblGebDat.TabIndex = 183 + Me.lblGebDat.Text = "GebDat" + ' + 'lblGeschlecht + ' + Me.lblGeschlecht.AutoSize = True + Me.lblGeschlecht.BackColor = System.Drawing.Color.Transparent + Me.lblGeschlecht.Location = New System.Drawing.Point(4, 384) + Me.lblGeschlecht.Name = "lblGeschlecht" + Me.lblGeschlecht.Size = New System.Drawing.Size(61, 13) + Me.lblGeschlecht.TabIndex = 189 + Me.lblGeschlecht.Text = "Geschlecht" + ' + 'txttelp + ' + Me.txttelp.Location = New System.Drawing.Point(74, 251) + Me.txttelp.Name = "txttelp" + Me.txttelp.Size = New System.Drawing.Size(162, 20) + Me.txttelp.TabIndex = 9 + ' + 'lblInternet + ' + Me.lblInternet.AutoSize = True + Me.lblInternet.BackColor = System.Drawing.Color.Transparent + Me.lblInternet.Location = New System.Drawing.Point(4, 358) + Me.lblInternet.Name = "lblInternet" + Me.lblInternet.Size = New System.Drawing.Size(43, 13) + Me.lblInternet.TabIndex = 188 + Me.lblInternet.Text = "Internet" + ' + 'lblTelefon + ' + Me.lblTelefon.AutoSize = True + Me.lblTelefon.BackColor = System.Drawing.Color.Transparent + Me.lblTelefon.Location = New System.Drawing.Point(4, 254) + Me.lblTelefon.Name = "lblTelefon" + Me.lblTelefon.Size = New System.Drawing.Size(55, 13) + Me.lblTelefon.TabIndex = 184 + Me.lblTelefon.Text = "Telefon p." + ' + 'txtWeb + ' + Me.txtWeb.Location = New System.Drawing.Point(74, 355) + Me.txtWeb.Name = "txtWeb" + Me.txtWeb.Size = New System.Drawing.Size(162, 20) + Me.txtWeb.TabIndex = 13 + ' + 'txtFaxp + ' + Me.txtFaxp.Location = New System.Drawing.Point(74, 277) + Me.txtFaxp.Name = "txtFaxp" + Me.txtFaxp.Size = New System.Drawing.Size(162, 20) + Me.txtFaxp.TabIndex = 10 + ' + 'lblemail + ' + Me.lblemail.AutoSize = True + Me.lblemail.BackColor = System.Drawing.Color.Transparent + Me.lblemail.Location = New System.Drawing.Point(4, 332) + Me.lblemail.Name = "lblemail" + Me.lblemail.Size = New System.Drawing.Size(36, 13) + Me.lblemail.TabIndex = 187 + Me.lblemail.Text = "E-Mail" + ' + 'lblFaxP + ' + Me.lblFaxP.AutoSize = True + Me.lblFaxP.BackColor = System.Drawing.Color.Transparent + Me.lblFaxP.Location = New System.Drawing.Point(4, 280) + Me.lblFaxP.Name = "lblFaxP" + Me.lblFaxP.Size = New System.Drawing.Size(36, 13) + Me.lblFaxP.TabIndex = 185 + Me.lblFaxP.Text = "Fax p." + ' + 'txtE_Mail + ' + Me.txtE_Mail.Location = New System.Drawing.Point(74, 329) + Me.txtE_Mail.Name = "txtE_Mail" + Me.txtE_Mail.Size = New System.Drawing.Size(162, 20) + Me.txtE_Mail.TabIndex = 12 + ' + 'txtNatel + ' + Me.txtNatel.Location = New System.Drawing.Point(74, 303) + Me.txtNatel.Name = "txtNatel" + Me.txtNatel.Size = New System.Drawing.Size(162, 20) + Me.txtNatel.TabIndex = 11 + ' + 'lblMobile + ' + Me.lblMobile.AutoSize = True + Me.lblMobile.BackColor = System.Drawing.Color.Transparent + Me.lblMobile.Location = New System.Drawing.Point(4, 306) + Me.lblMobile.Name = "lblMobile" + Me.lblMobile.Size = New System.Drawing.Size(38, 13) + Me.lblMobile.TabIndex = 186 + Me.lblMobile.Text = "Mobile" + ' + 'dtgebdat + ' + Me.dtgebdat.Format = System.Windows.Forms.DateTimePickerFormat.[Short] + Me.dtgebdat.Location = New System.Drawing.Point(74, 223) + Me.dtgebdat.Name = "dtgebdat" + Me.dtgebdat.Size = New System.Drawing.Size(162, 20) + Me.dtgebdat.TabIndex = 8 + ' + 'dtGueltigab + ' + Me.dtGueltigab.Format = System.Windows.Forms.DateTimePickerFormat.[Short] + Me.dtGueltigab.Location = New System.Drawing.Point(342, 225) + Me.dtGueltigab.Name = "dtGueltigab" + Me.dtGueltigab.Size = New System.Drawing.Size(162, 20) + Me.dtGueltigab.TabIndex = 23 + ' + 'dtgueltigbis + ' + Me.dtgueltigbis.Format = System.Windows.Forms.DateTimePickerFormat.[Short] + Me.dtgueltigbis.Location = New System.Drawing.Point(342, 251) + Me.dtgueltigbis.Name = "dtgueltigbis" + Me.dtgueltigbis.Size = New System.Drawing.Size(162, 20) + Me.dtgueltigbis.TabIndex = 24 + ' + 'cbboxNRArbeitgeber + ' + Me.cbboxNRArbeitgeber.Dataselection = Nothing + Me.cbboxNRArbeitgeber.Displaymember = Nothing + Me.cbboxNRArbeitgeber.Location = New System.Drawing.Point(342, 91) + Me.cbboxNRArbeitgeber.Name = "cbboxNRArbeitgeber" + Me.cbboxNRArbeitgeber.Size = New System.Drawing.Size(162, 21) + Me.cbboxNRArbeitgeber.TabIndex = 18 + Me.cbboxNRArbeitgeber.Table = Nothing + Me.cbboxNRArbeitgeber.TableAlias = "" + Me.cbboxNRArbeitgeber.Valuemember = Nothing + ' + 'cbboxNrGeschlecht + ' + Me.cbboxNrGeschlecht.Dataselection = Nothing + Me.cbboxNrGeschlecht.Displaymember = Nothing + Me.cbboxNrGeschlecht.Location = New System.Drawing.Point(74, 381) + Me.cbboxNrGeschlecht.Name = "cbboxNrGeschlecht" + Me.cbboxNrGeschlecht.Size = New System.Drawing.Size(162, 21) + Me.cbboxNrGeschlecht.TabIndex = 14 + Me.cbboxNrGeschlecht.Table = Nothing + Me.cbboxNrGeschlecht.TableAlias = "" + Me.cbboxNrGeschlecht.Valuemember = Nothing + ' + 'cbboxSprache + ' + Me.cbboxSprache.Dataselection = Nothing + Me.cbboxSprache.Displaymember = Nothing + Me.cbboxSprache.Location = New System.Drawing.Point(342, 65) + Me.cbboxSprache.Name = "cbboxSprache" + Me.cbboxSprache.Size = New System.Drawing.Size(162, 21) + Me.cbboxSprache.TabIndex = 17 + Me.cbboxSprache.Table = Nothing + Me.cbboxSprache.TableAlias = "" + Me.cbboxSprache.Valuemember = Nothing + ' + 'cbboxStatus + ' + Me.cbboxStatus.Dataselection = Nothing + Me.cbboxStatus.Displaymember = Nothing + Me.cbboxStatus.Location = New System.Drawing.Point(342, 38) + Me.cbboxStatus.Name = "cbboxStatus" + Me.cbboxStatus.Size = New System.Drawing.Size(162, 21) + Me.cbboxStatus.TabIndex = 16 + Me.cbboxStatus.Table = Nothing + Me.cbboxStatus.TableAlias = "" + Me.cbboxStatus.Valuemember = Nothing + ' + 'cbboxNRTitel + ' + Me.cbboxNRTitel.Dataselection = Nothing + Me.cbboxNRTitel.Displaymember = Nothing + Me.cbboxNRTitel.Location = New System.Drawing.Point(74, 65) + Me.cbboxNRTitel.Name = "cbboxNRTitel" + Me.cbboxNRTitel.Size = New System.Drawing.Size(162, 21) + Me.cbboxNRTitel.TabIndex = 1 + Me.cbboxNRTitel.Table = Nothing + Me.cbboxNRTitel.TableAlias = "" + Me.cbboxNRTitel.Valuemember = Nothing + ' + 'cbboxNrAnrede + ' + Me.cbboxNrAnrede.Dataselection = Nothing + Me.cbboxNrAnrede.Displaymember = Nothing + Me.cbboxNrAnrede.Location = New System.Drawing.Point(74, 38) + Me.cbboxNrAnrede.Name = "cbboxNrAnrede" + Me.cbboxNrAnrede.Size = New System.Drawing.Size(162, 21) + Me.cbboxNrAnrede.TabIndex = 0 + Me.cbboxNrAnrede.Table = Nothing + Me.cbboxNrAnrede.TableAlias = "" + Me.cbboxNrAnrede.Valuemember = Nothing + ' + 'PatientDetails + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.Controls.Add(Me.cbboxNRArbeitgeber) + Me.Controls.Add(Me.cbboxNrGeschlecht) + Me.Controls.Add(Me.cbboxSprache) + Me.Controls.Add(Me.cbboxStatus) + Me.Controls.Add(Me.cbboxNRTitel) + Me.Controls.Add(Me.cbboxNrAnrede) + Me.Controls.Add(Me.dtgueltigbis) + Me.Controls.Add(Me.dtGueltigab) + Me.Controls.Add(Me.dtgebdat) + Me.Controls.Add(Me.txtMutierer) + Me.Controls.Add(Me.txtMutiert_am) + Me.Controls.Add(Me.txtErstellt_am) + Me.Controls.Add(Me.Label18) + Me.Controls.Add(Me.Label17) + Me.Controls.Add(Me.Label16) + Me.Controls.Add(Me.Label15) + Me.Controls.Add(Me.Label14) + Me.Controls.Add(Me.Label13) + Me.Controls.Add(Me.chklbAdresstyp) + Me.Controls.Add(Me.txtBemerkung) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.Label1) + Me.Controls.Add(Me.txtFaxG) + Me.Controls.Add(Me.txtName) + Me.Controls.Add(Me.lbltelg) + Me.Controls.Add(Me.lblName) + Me.Controls.Add(Me.txtTelg) + Me.Controls.Add(Me.txtVorname) + Me.Controls.Add(Me.lblahv) + Me.Controls.Add(Me.txtahvnr) + Me.Controls.Add(Me.lblVorname) + Me.Controls.Add(Me.lblBeruf) + Me.Controls.Add(Me.txtBeruf) + Me.Controls.Add(Me.txtCOAdresse) + Me.Controls.Add(Me.lblArbeitgeber) + Me.Controls.Add(Me.lblCO) + Me.Controls.Add(Me.txtStrasse) + Me.Controls.Add(Me.lblSprache) + Me.Controls.Add(Me.lblStrasse) + Me.Controls.Add(Me.txtPLZ) + Me.Controls.Add(Me.lblStatus) + Me.Controls.Add(Me.lblPLZOrt) + Me.Controls.Add(Me.lblBriefanrede) + Me.Controls.Add(Me.txtOrt) + Me.Controls.Add(Me.txtBriefanrede) + Me.Controls.Add(Me.lblGebDat) + Me.Controls.Add(Me.lblGeschlecht) + Me.Controls.Add(Me.txttelp) + Me.Controls.Add(Me.lblInternet) + Me.Controls.Add(Me.lblTelefon) + Me.Controls.Add(Me.txtWeb) + Me.Controls.Add(Me.txtFaxp) + Me.Controls.Add(Me.lblemail) + Me.Controls.Add(Me.lblFaxP) + Me.Controls.Add(Me.txtE_Mail) + Me.Controls.Add(Me.txtNatel) + Me.Controls.Add(Me.lblMobile) + Me.Controls.Add(Me.txtnrprivat) + Me.Controls.Add(Me.lblNr) + Me.Controls.Add(Me.lblAnrede) + Me.Controls.Add(Me.lblTitel) + Me.Name = "PatientDetails" + Me.Size = New System.Drawing.Size(737, 439) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents txtnrprivat As System.Windows.Forms.TextBox + Friend WithEvents lblNr As System.Windows.Forms.Label + Friend WithEvents lblAnrede As System.Windows.Forms.Label + Friend WithEvents lblTitel As System.Windows.Forms.Label + Friend WithEvents txtMutierer As System.Windows.Forms.TextBox + Friend WithEvents txtMutiert_am As System.Windows.Forms.TextBox + Friend WithEvents txtErstellt_am As System.Windows.Forms.TextBox + Friend WithEvents Label18 As System.Windows.Forms.Label + Friend WithEvents Label17 As System.Windows.Forms.Label + Friend WithEvents Label16 As System.Windows.Forms.Label + Friend WithEvents Label15 As System.Windows.Forms.Label + Friend WithEvents Label14 As System.Windows.Forms.Label + Friend WithEvents Label13 As System.Windows.Forms.Label + Friend WithEvents chklbAdresstyp As System.Windows.Forms.CheckedListBox + Friend WithEvents txtBemerkung As System.Windows.Forms.TextBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents txtFaxG As System.Windows.Forms.TextBox + Friend WithEvents txtName As System.Windows.Forms.TextBox + Friend WithEvents lbltelg As System.Windows.Forms.Label + Friend WithEvents lblName As System.Windows.Forms.Label + Friend WithEvents txtTelg As System.Windows.Forms.TextBox + Friend WithEvents txtVorname As System.Windows.Forms.TextBox + Friend WithEvents lblahv As System.Windows.Forms.Label + Friend WithEvents txtahvnr As System.Windows.Forms.TextBox + Friend WithEvents lblVorname As System.Windows.Forms.Label + Friend WithEvents lblBeruf As System.Windows.Forms.Label + Friend WithEvents txtBeruf As System.Windows.Forms.TextBox + Friend WithEvents txtCOAdresse As System.Windows.Forms.TextBox + Friend WithEvents lblArbeitgeber As System.Windows.Forms.Label + Friend WithEvents lblCO As System.Windows.Forms.Label + Friend WithEvents txtStrasse As System.Windows.Forms.TextBox + Friend WithEvents lblSprache As System.Windows.Forms.Label + Friend WithEvents lblStrasse As System.Windows.Forms.Label + Friend WithEvents txtPLZ As System.Windows.Forms.TextBox + Friend WithEvents lblStatus As System.Windows.Forms.Label + Friend WithEvents lblPLZOrt As System.Windows.Forms.Label + Friend WithEvents lblBriefanrede As System.Windows.Forms.Label + Friend WithEvents txtOrt As System.Windows.Forms.TextBox + Friend WithEvents txtBriefanrede As System.Windows.Forms.TextBox + Friend WithEvents lblGebDat As System.Windows.Forms.Label + Friend WithEvents lblGeschlecht As System.Windows.Forms.Label + Friend WithEvents txttelp As System.Windows.Forms.TextBox + Friend WithEvents lblInternet As System.Windows.Forms.Label + Friend WithEvents lblTelefon As System.Windows.Forms.Label + Friend WithEvents txtWeb As System.Windows.Forms.TextBox + Friend WithEvents txtFaxp As System.Windows.Forms.TextBox + Friend WithEvents lblemail As System.Windows.Forms.Label + Friend WithEvents lblFaxP As System.Windows.Forms.Label + Friend WithEvents txtE_Mail As System.Windows.Forms.TextBox + Friend WithEvents txtNatel As System.Windows.Forms.TextBox + Friend WithEvents lblMobile As System.Windows.Forms.Label + Friend WithEvents dtgebdat As System.Windows.Forms.DateTimePicker + Friend WithEvents dtGueltigab As System.Windows.Forms.DateTimePicker + Friend WithEvents dtgueltigbis As System.Windows.Forms.DateTimePicker + Friend WithEvents cbboxNrAnrede As DPM2016.MyCombobox + Friend WithEvents cbboxNRTitel As DPM2016.MyCombobox + Friend WithEvents cbboxStatus As DPM2016.MyCombobox + Friend WithEvents cbboxSprache As DPM2016.MyCombobox + Friend WithEvents cbboxNrGeschlecht As DPM2016.MyCombobox + Friend WithEvents cbboxNRArbeitgeber As DPM2016.MyCombobox + +End Class diff --git a/DPM2016/Patient/PatientDetails.resx b/DPM2016/Patient/PatientDetails.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/DPM2016/Patient/PatientDetails.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DPM2016/Patient/PatientDetails.vb b/DPM2016/Patient/PatientDetails.vb new file mode 100644 index 0000000..6a27d6b --- /dev/null +++ b/DPM2016/Patient/PatientDetails.vb @@ -0,0 +1,446 @@ +Imports DPM2016.MyCombobox +Public Class PatientDetails + +#Region "Properties" + Dim m_patientnr As Integer + + Property PatientNr As Integer + Get + Return m_patientnr + End Get + Set(value As Integer) + Try + m_patientnr = value + Fill_Stammdaten() + log.Writelog("Partnerdetails: Get_Data Start", clsLog.Logtype.Information) + Get_Data() + log.Writelog("Partnerdetails: Get_Data Ende", clsLog.Logtype.Information) + AddChanges(Me) + Me.HasChanges = False + Globals.EVH.Fire_PatName_Changed(Me.Patientname, Me.PatientNr) + + Catch ex As Exception + log.Writelog("Partnerdetails: Property PatientNr: " + ex.Message, clsLog.Logtype.ApplError) + End Try + End Set + End Property + + Dim m_patname As String + Property Patientname As String + Get + Return Me.txtnrprivat.Text + " " + Me.txtName.Text + " " + Me.txtVorname.Text + " " + Me.txtOrt.Text + End Get + Set(value As String) + + End Set + End Property + + Dim m_haschanges As Boolean + Property HasChanges As Boolean + Get + Return m_haschanges + End Get + Set(value As Boolean) + m_haschanges = value + End Set + End Property + +#End Region + +#Region "Deklarationen" + Dim DB As New clsDB + Dim FormReadonly As Boolean = False + Dim log As New clsLog + Dim WithEvents evh As Generic_Event_Handler = Globals.EVH + +#End Region + +#Region "Closing / Check_Changes" + + ''' + ''' Prüfung, ob Datenänderungen vorgenommen wurden. + ''' + ''' + Private Function Check_Changes() As Boolean + If Me.FormReadonly Then + Return True + Exit Function + End If + Dim msgres As MsgBoxResult + If Me.HasChanges Then + msgres = MsgBox("Daten wurden verändert. Wollen Sie die Änderungen speichern", vbYesNo + vbQuestion) + Select Case msgres + Case MsgBoxResult.Yes + Save_Data() + Return True + Case MsgBoxResult.Cancel + Return False + Case MsgBoxResult.No + Me.HasChanges = False + Return True + End Select + Else + Return True + End If + End Function + +#End Region + +#Region "Eventhandler ChangeEreignisse" + ''' + ''' Allg Eventhandler für Chanage-Ereignise festlegen + ''' + ''' + ''' + Private Sub AddChanges(ByVal Container As Control) + Dim l As New List(Of Control) + Me.GetControl(Me, "*", l) + Dim evh As EventHandler = AddressOf ChangesMade + For Each c As Control In l + If TypeOf c Is TextBox Then + Dim ctl As TextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is MaskedTextBox Then + Dim ctl As MaskedTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is ComboBox Then + Dim ctl As ComboBox = c + AddHandler ctl.SelectedValueChanged, evh + End If + If TypeOf c Is RichTextBox Then + Dim ctl As RichTextBox = c + AddHandler ctl.TextChanged, evh + End If + If TypeOf c Is CheckBox Then + If c.Name <> "cboxNurAktive" Then + Dim ctl As CheckBox = c + AddHandler ctl.CheckedChanged, evh + End If + End If + If TypeOf c Is DateTimePicker Then + Dim ctl As DateTimePicker = c + AddHandler ctl.ValueChanged, evh + End If + If TypeOf c Is CheckedListBox Then + Dim ctl As CheckedListBox = c + AddHandler ctl.ItemCheck, AddressOf ChecketListBoxChange + End If + Next + End Sub + ''' + ''' Envent-Handler für Change-Ereignisse + ''' + ''' + ''' + ''' + Private Sub ChangesMade(ByVal sender As Object, ByVal e As System.EventArgs) + Me.HasChanges = True + Dim objtype As System.Type = sender.GetType + If objtype.Name = "MaskedTextBox" Then + Dim o As MaskedTextBox = sender + If o.Text = "01.01.1900" Then o.Text = " . . " + End If + End Sub + + Private Sub ChecketListBoxChange(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckEventArgs) + Me.HasChanges = True + End Sub + + + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + +#Region "Daten_Laden" + + Public Sub Fill_Stammdaten() + log.Writelog("PartnerDetails: Fill_Stammdaten", clsLog.Logtype.Information) + Me.cbboxNrAnrede.Table = "Anrede" + Me.cbboxNrAnrede.Displaymember = "Anrede_D" + Me.cbboxNrAnrede.Valuemember = "NRANREDE" + + Me.cbboxNRTitel.Table = "Titel" + Me.cbboxNRTitel.Displaymember = "Titel_D" + Me.cbboxNRTitel.Valuemember = "NRTITEL" + + Me.cbboxSprache.Table = "Sprache" + Me.cbboxSprache.Displaymember = "Sprachbezeichnung" + Me.cbboxSprache.Valuemember = "Sprachcode" + + Me.cbboxStatus.Table = "Status" + Me.cbboxStatus.Displaymember = "Status" + Me.cbboxStatus.Valuemember = "nrstatus" + + Me.cbboxNrGeschlecht.Table = "Geschlecht" + Me.cbboxNrGeschlecht.Displaymember = "Geschlecht" + Me.cbboxNrGeschlecht.Valuemember = "NrGeschlecht" + + Me.cbboxNRArbeitgeber.Dataselection = DB.Get_SQL(1) + Me.cbboxNRArbeitgeber.Table = "Arbeitgeber" + Me.cbboxNRArbeitgeber.Displaymember = "Firmenname" + Me.cbboxNRArbeitgeber.Valuemember = "nrfirma" + + log.Writelog("PartnerDetails: Fill_Stammdaten Ende", clsLog.Logtype.Information) + + End Sub + + Sub Get_Data() + Dim ctlname As String + Dim colname As String + Try + DB.Get_Tabledata("privat", " where nrprivat=" + Me.PatientNr.ToString) + Dim r As DataRow = DB.dsDaten.Tables(0).Rows(0) + For Each c As DataColumn In DB.dsDaten.Tables(0).Columns + colname = c.ColumnName + For Each Ctl As Control In Me.Controls + 'Dim objtype As System.Type = Ctl.GetType + 'If objtype.Name = "Label" Then + ' Exit For + 'End If + ctlname = Ctl.Name + log.Writelog("Partnerdtails: Get_Data: " + Ctl.Name, clsLog.Logtype.Information) + If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then + log.Writelog("--Partnerdtails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Ctl.Text = r(c.ColumnName).ToString + Exit For + End If + If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + log.Writelog("--Partnerdtails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Dim ct As MyCombobox + Dim o As Object = Ctl + Try + o.SelectedValue = r(c.ColumnName) + Catch + o.SelectedValue = -1 + End Try + + Exit For + End If + If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then + log.Writelog("--Partnerdtails: Get_Data: " + Ctl.Name + " " + c.ColumnName, clsLog.Logtype.Information) + Dim dt As DateTimePicker + dt = Ctl + Try + dt.Value = r(c.ColumnName) + Catch + End Try + + Exit For + End If + Next + + Select Case LCase(c.ColumnName) + Case "patient" + Set_Adresstype(c.ColumnName, r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "garant" + Set_Adresstype(c.ColumnName, r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "gesvertreter" + Set_Adresstype("Ges. Vertreter", r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "hausarzt" + Set_Adresstype(c.ColumnName, r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "zahnarzt" + Set_Adresstype(c.ColumnName, r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "behandler" + Set_Adresstype(c.ColumnName, r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "dhpat" + Set_Adresstype("DH-Patient", r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "nichtaufbieten" + Set_Adresstype("Nicht Aufbieten", r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "nichtannehmen" + Set_Adresstype("Nicht annehmen", r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + Case "betreibung" + Set_Adresstype("Betreibung vorhanden", r(c.ColumnName).ToString) + log.Writelog("--Partnerdtails: Get_Data Set_Adresstyp: " + c.ColumnName, clsLog.Logtype.Information) + End Select + Next + Catch ex As Exception + log.Writelog("Privatdetails: Get_Data: " + ctlname + " / " + colname + " " + ex.Message, clsLog.Logtype.ApplError) + End Try + End Sub + + Private Sub Set_Adresstype(ByVal feldname, value) + Dim i As Integer + For i = 0 To Me.chklbAdresstyp.Items.Count - 1 + If UCase(chklbAdresstyp.Items(i).ToString) = UCase(feldname) Then + Try + If value <> False Then chklbAdresstyp.SetItemCheckState(i, CheckState.Checked) Else chklbAdresstyp.SetItemCheckState(i, CheckState.Unchecked) + + Catch ex As Exception + chklbAdresstyp.SetItemCheckState(i, CheckState.Unchecked) + + End Try + End If + Next + End Sub + +#End Region + +#Region "Daten speichern" + + Public Sub Save_Data() + DB.Get_Tabledata("privat", " where nrprivat=" + Me.PatientNr.ToString) + Dim r As DataRow = DB.dsDaten.Tables(0).Rows(0) + + For Each c As DataColumn In DB.dsDaten.Tables(0).Columns + For Each Ctl As Control In Me.Controls + If UCase(Ctl.Name) = "TXT" + UCase(c.ColumnName) Then + If UCase(Ctl.Name) <> "TXTMUTIERT_AM" And UCase(Ctl.Name) <> "TXTERSTLLT_AM" Then + r(c.ColumnName) = Ctl.Text + Exit For + End If + End If + If UCase(Ctl.Name) = "CBBOX" + UCase(c.ColumnName) Then + Dim ct As MyCombobox + Dim o As Object = Ctl + Try + r(c.ColumnName) = o.selectedvalue + Catch ex As Exception + r(c.ColumnName) = 0 + End Try + Exit For + End If + If UCase(Ctl.Name) = "DT" + UCase(c.ColumnName) Then + Dim dt As DateTimePicker + dt = Ctl + r(c.ColumnName) = dt.Value + Exit For + End If + Next + Select Case LCase(c.ColumnName) + Case "patient" + r(c.ColumnName) = Get_Adresstype(c.ColumnName, r(c.ColumnName)) + Case "garant" + r(c.ColumnName) = Get_Adresstype(c.ColumnName, r(c.ColumnName)) + Case "gesvertreter" + r(c.ColumnName) = Get_Adresstype("Ges. Vertreter", r(c.ColumnName)) + Case "hausarzt" + r(c.ColumnName) = Get_Adresstype(c.ColumnName, r(c.ColumnName)) + Case "zahnarzt" + r(c.ColumnName) = Get_Adresstype(c.ColumnName, r(c.ColumnName)) + Case "behandler" + r(c.ColumnName) = Get_Adresstype(c.ColumnName, r(c.ColumnName)) + Case "dhpat" + r(c.ColumnName) = Get_Adresstype("DH-Patient", r(c.ColumnName)) + Case "nichtaufbieten" + r(c.ColumnName) = Get_Adresstype("nicht aufbieten", r(c.ColumnName)) + Case "nichtannehmen" + r(c.ColumnName) = Get_Adresstype("nicht annehmen", r(c.ColumnName)) + Case "betreibung" + r(c.ColumnName) = Get_Adresstype("Betreibung vorhanden", r(c.ColumnName)) + End Select + Next + r("Mutiert_am") = Now + r("mutierer") = Globals.ActUser + DB.Update_Data() + Me.HasChanges = False + + End Sub + + Private Function Get_Adresstype(ByVal feldname, value) As Integer + Try + Dim i As Integer + For i = 0 To Me.chklbAdresstyp.Items.Count - 1 + If UCase(chklbAdresstyp.Items(i).ToString) = UCase(feldname) Then + Return chklbAdresstyp.GetItemChecked(i) + End If + Next + Catch + Return -1 + End Try + + End Function + + + +#End Region + + Public Function Create_new() + + End Function + + + Private Sub evh_PatSaved(Nr As Integer) Handles evh.PatSaved + If Nr = Me.PatientNr Then + Me.Save_Data() + End If + End Sub + + Private Sub cbboxNrAnrede_Leave(sender As Object, e As EventArgs) Handles txtVorname.Leave, txtName.Leave, cbboxNrAnrede.Leave, cbboxNRTitel.Leave + Dim alt As String = Me.txtBriefanrede.Text + Dim neu As String + If Me.cbboxNrAnrede.Text = "Frau" Then + neu = "Sehr geehrte Frau " + If Me.cbboxNRTitel.Text <> "" Then neu = neu + Me.cbboxNRTitel.Text + " " + neu = neu + Me.txtName.Text + Else + neu = "Sehr geehrter Herr " + If Me.cbboxNRTitel.Text <> "" Then neu = neu + Me.cbboxNRTitel.Text + " " + neu = neu + Me.txtName.Text + End If + If alt <> neu Then Me.txtBriefanrede.Text = neu + End Sub + + + Private Sub txtPLZ_Leave(sender As Object, e As EventArgs) Handles txtPLZ.Leave + If Me.txtOrt.Text = "" Then Me.txtOrt.Text = IntTables.GetOrt(Me.txtPLZ.Text) + End Sub +End Class diff --git a/DPM2016/Reporting/clsAllgemein.vb b/DPM2016/Reporting/clsAllgemein.vb new file mode 100644 index 0000000..4d418c8 --- /dev/null +++ b/DPM2016/Reporting/clsAllgemein.vb @@ -0,0 +1,4 @@ + +Class clsAllgemein + +End Class diff --git a/DPM2016/Reporting/frmReportView.Designer.vb b/DPM2016/Reporting/frmReportView.Designer.vb new file mode 100644 index 0000000..67a09bc --- /dev/null +++ b/DPM2016/Reporting/frmReportView.Designer.vb @@ -0,0 +1,125 @@ + _ +Partial Class frmReportView + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmReportView)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnquit = New System.Windows.Forms.ToolStripButton() + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.previewControl1 = New FastReport.Preview.PreviewControl() + Me.ToolStrip1.SuspendLayout() + Me.MenuStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnquit}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(792, 25) + Me.ToolStrip1.TabIndex = 23 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnquit + ' + Me.tsbtnquit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnquit.Image = CType(resources.GetObject("tsbtnquit.Image"), System.Drawing.Image) + Me.tsbtnquit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnquit.Name = "tsbtnquit" + Me.tsbtnquit.Size = New System.Drawing.Size(23, 22) + Me.tsbtnquit.Text = "Schliessen" + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(792, 24) + Me.MenuStrip1.TabIndex = 22 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'previewControl1 + ' + Me.previewControl1.BackColor = System.Drawing.SystemColors.AppWorkspace + Me.previewControl1.Buttons = CType(((((((((((FastReport.PreviewButtons.Print Or FastReport.PreviewButtons.Open) _ + Or FastReport.PreviewButtons.Save) _ + Or FastReport.PreviewButtons.Email) _ + Or FastReport.PreviewButtons.Find) _ + Or FastReport.PreviewButtons.Zoom) _ + Or FastReport.PreviewButtons.Outline) _ + Or FastReport.PreviewButtons.PageSetup) _ + Or FastReport.PreviewButtons.Edit) _ + Or FastReport.PreviewButtons.Watermark) _ + Or FastReport.PreviewButtons.Navigator), FastReport.PreviewButtons) + Me.previewControl1.Dock = System.Windows.Forms.DockStyle.Fill + Me.previewControl1.Font = New System.Drawing.Font("Tahoma", 8.0!) + Me.previewControl1.Location = New System.Drawing.Point(0, 49) + Me.previewControl1.Name = "previewControl1" + Me.previewControl1.PageOffset = New System.Drawing.Point(10, 10) + Me.previewControl1.RightToLeft = System.Windows.Forms.RightToLeft.No + Me.previewControl1.Size = New System.Drawing.Size(792, 464) + Me.previewControl1.TabIndex = 24 + Me.previewControl1.UIStyle = FastReport.Utils.UIStyle.VisualStudio2005 + ' + 'frmReportView + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(792, 513) + Me.Controls.Add(Me.previewControl1) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Name = "frmReportView" + Me.Text = "frmReportView" + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents tsbtnquit As System.Windows.Forms.ToolStripButton + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Private WithEvents previewControl1 As FastReport.Preview.PreviewControl +End Class diff --git a/DPM2016/Reporting/frmReportView.resx b/DPM2016/Reporting/frmReportView.resx new file mode 100644 index 0000000..c8b6883 --- /dev/null +++ b/DPM2016/Reporting/frmReportView.resx @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 231, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + 338, 17 + + \ No newline at end of file diff --git a/DPM2016/Reporting/frmReportView.vb b/DPM2016/Reporting/frmReportView.vb new file mode 100644 index 0000000..dcc3afc --- /dev/null +++ b/DPM2016/Reporting/frmReportView.vb @@ -0,0 +1,300 @@ +Public Class frmReportView + Dim splitter() As String + + Dim WithEvents freport As New FastReport.Report + Dim ReportNr As Integer + Dim Design As Boolean + Dim Parameter As String + Dim NrBehandlung As String + Dim daten As New DataSet + + Sub New() + InitializeComponent() + End Sub + + Sub New(ByVal Reportnr As Integer, ByVal design As Boolean, ByVal Titel As String, Optional Parameter As String = "", Optional NrBehandlung As String = "") + InitializeComponent() + Me.ReportNr = Reportnr + Me.Design = design + Me.Text = "Auswertung " + Titel + Me.Parameter = Parameter + Me.NrBehandlung = NrBehandlung + End Sub + + Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + End Sub + + Dim paramdaten As New DataTable + Dim dbr As DataRow = paramdaten.NewRow + Dim db As New clsDB + + Public Sub Fakturierung(ByVal reportnr As Integer, ByVal nrbehandlung As Integer, ByVal Parameter As String, ByVal rate As Integer) + Me.ReportNr = reportnr + Me.Parameter = Parameter + Me.NrBehandlung = nrbehandlung + Print_Rechnung(False, False, rate) + rechnung_buchen(rate, daten.Tables("ESDaten").Rows(0).Item("Nur_Franken") + daten.Tables("ESDaten").Rows(0).Item("Nur_Rappen") / 100) + End Sub + + Sub rechnung_buchen(rate As Integer, Betrag As Decimal) + db.Rechnung_buchen(1, daten.Tables("esdaten").Rows(0).Item("fakturanr"), rate, daten.Tables("behandlungsdaten").Rows(0).Item("nrbehandlung"), Betrag) + End Sub + + Public Sub Print_Rechnung(Optional vorschaue As Boolean = False, Optional design As Boolean = False, Optional Rate As Integer = 0) + Me.ReportNr = Me.ReportNr + 9 + If Rate > 1 Then ReportNr = ReportNr + 1 + Dim FILENAME As String = db.get_reportdata(Me.ReportNr, Parameter) + + db.Get_RptDatei((Me.ReportNr), FILENAME) + Me.freport.Preview = Me.previewControl1 + Try + freport.Load(FILENAME) + Catch ex As Exception + MsgBox(ex.Message) + End Try + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(0).TableName = "Daten" + + + ' Allg Behandlungsdaten / Empänger / Totale + paramdaten.Columns.Clear() + paramdaten.Rows.Clear() + daten.Tables.Clear() + dbr = paramdaten.NewRow + paramdaten.Columns.Add("Paramname") + paramdaten.Columns.Add("Paramvalue") + + dbr(0) = "@behandlungsnr" + dbr(1) = Me.NrBehandlung + paramdaten.Rows.Add(dbr) + dbr = paramdaten.NewRow + dbr(0) = "@typ" + dbr(1) = "2" + + paramdaten.Rows.Add(dbr) + db.Get_Tabledata("sp_get_fakturadata", "", "", "", True, paramdaten) + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(daten.Tables.Count - 1).TableName = "Behandlungsdaten" + + ' Leistungen + 'daten.Tables.Clear() + + 'dbr = paramdaten.NewRow + 'paramdaten.Columns.Add("Paramname") + 'paramdaten.Columns.Add("Paramvalue") + + dbr(0) = "@behandlungsnr" + dbr(1) = Me.NrBehandlung + 'paramdaten.Rows.Add(dbr) + 'dbr = paramdaten.NewRow + dbr(0) = "@typ" + dbr(1) = "3" + + 'paramdaten.Rows.Add(dbr) + db.Get_Tabledata("sp_get_fakturadata", "", "", "", True, paramdaten) + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(daten.Tables.Count - 1).TableName = "Leistungen" + + dbr(0) = "@behandlungsnr" + dbr(1) = Me.NrBehandlung + 'paramdaten.Rows.Add(dbr) + 'dbr = paramdaten.NewRow + dbr(0) = "@typ" + dbr(1) = "4" + + 'paramdaten.Rows.Add(dbr) + db.Get_Tabledata("sp_get_fakturadata", "", "", "", True, paramdaten) + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(daten.Tables.Count - 1).TableName = "Leistungen_LR" + + get_esdaten(Rate) + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(daten.Tables.Count - 1).TableName = "ESDaten" + + + freport.RegisterData(daten) + + 'freport.GetDataSource("Daten").Enabled = True + freport.GetDataSource("Behandlungsdaten").Enabled = True + freport.GetDataSource("Leistungen").Enabled = True + freport.GetDataSource("Leistungen_LR").Enabled = True + freport.GetDataSource("ESDaten").Enabled = True + + freport.PrintSettings.ShowDialog = True + If design = True Then + Dim ReportDate As DateTime = System.IO.File.GetLastWriteTime(FILENAME) + freport.Design() + Dim ReportDate2 As DateTime = System.IO.File.GetLastWriteTime(FILENAME) + If ReportDate < ReportDate2 Then + db.Save_RptDatei(Me.ReportNr, FILENAME) + End If + End If + If vorschaue = True Then + freport.Preview = Me.previewControl1 + freport.Show() + End If + If vorschaue = False And design = False Then + freport.PrintSettings.Printer = "Microsoft Print to PDF" + freport.PrintSettings.ShowDialog = False + freport.Print() + Dim s As String = My.Settings.DocArchivPath + "\" + Now.ToString("yyyyddMMhhmmss_" + Me.NrBehandlung.ToString + ".pdf") + + Dim pdfExport As New FastReport.Export.Pdf.PDFExport() + pdfExport.ShowProgress = False + pdfExport.Subject = "Export" + pdfExport.Title = "Export" + pdfExport.Compressed = False + pdfExport.AllowPrint = True + pdfExport.EmbeddingFonts = True + freport.Export(pdfExport, s) + End If + End Sub + + Private Sub get_esdaten(ratenr As Integer) + 'ES-Daten auselsen + + paramdaten.Rows.Clear() + dbr = paramdaten.NewRow + dbr(0) = "@behandlungsnr" + dbr(1) = Me.NrBehandlung + paramdaten.Rows.Add(dbr) + dbr = paramdaten.NewRow + dbr(0) = "@typ" + dbr(1) = "1" + paramdaten.Rows.Add(dbr) + dbr = paramdaten.NewRow + dbr(0) = "@Betrag" + dbr(1) = "0" + paramdaten.Rows.Add(dbr) + dbr = paramdaten.NewRow + dbr(0) = "@rate" + dbr(1) = ratenr + paramdaten.Rows.Add(dbr) + db.Get_Tabledata("sp_get_fakturadata", "", "", "", True, paramdaten) + + Dim Referenznr As String + Dim s As String + Dim S1 As String + s = db.dsDaten.Tables(0).Rows(0).Item("Nur_Franken").ToString + S1 = db.dsDaten.Tables(0).Rows(0).Item("Nur_Rappen").ToString + While Len(S1) < 2 + S1 = S1 + "0" + End While + s = s + S1 + While Len(s) < 10 + s = "0" + s + End While + s = db.dsDaten.Tables(0).Rows(0).Item("vs_belegart").ToString + s + s = s + Trim(Pruefziffer(s)) + ">" + Referenznr = s + + s = db.dsDaten.Tables(0).Rows(0).Item("vs_besrid").ToString + db.dsDaten.Tables(0).Rows(0).Item("fakturanr").ToString + "0000" + Dim dd As String + dd = Year(Now).ToString + dd = dd.Substring(0, 2) + s = s + dd + dd = Month(Now).ToString + While Len(dd) < 2 + dd = "0" + dd + End While + s = s + dd + dd = DatePart(DateInterval.Day, Now) + + While Len(dd) < 2 + dd = "0" + dd + End While + + s = s + Trim(Pruefziffer(s)) + Referenznr = Referenznr + "+" + s + db.dsDaten.Tables(0).Rows(0).Item("referenzzeile1") = s + " " + s = db.dsDaten.Tables(0).Rows(0).Item("Vs_teilnehmernummer") + s = s + Trim(Pruefziffer(s)) + ">" + Referenznr = Referenznr + " " + s + db.dsDaten.Tables(0).Rows(0).Item("Referenzzeile2") = Referenznr + + End Sub + Public Function Pruefziffer(ByVal zahl As String) As String + Dim ptab(9, 9) As Integer + Dim pz(9) As Integer + Dim s1, s2, s3 As String + + Dim i1, i2 As Long + + s1 = "0,9,4,6,8,2,7,1,3,5" + s2 = s1 + For i1 = 0 To 9 + For i2 = 0 To 9 + ptab(i1, i2) = Mid(s2, (i2 * 2) + 1, 1) + Next + s3 = Microsoft.VisualBasic.Left(s1, 1) + s1 = Microsoft.VisualBasic.Right(s1, Len(s1) - 2) + s1 = s1 + "," + s3 + s2 = s1 + Next + pz(0) = 0 + pz(1) = 9 + pz(2) = 8 + pz(3) = 7 + pz(4) = 6 + pz(5) = 5 + pz(6) = 4 + pz(7) = 3 + pz(8) = 2 + pz(9) = 1 + + Dim i, x, y, z, e As Integer + Dim xx As String + y = 0 + For i = 1 To Len(zahl) + x = Val(Mid(zahl, i, 1)) + y = ptab(x, y) + Next + Pruefziffer = Str(pz(y)) + End Function + Sub DesignReport() + Dim db As New clsDB + Dim FILENAME As String = db.get_reportdata(Me.ReportNr, Parameter) + db.Get_RptDatei(Me.ReportNr, FILENAME) + Me.freport.Preview = Me.previewControl1 + Try + freport.Load(FILENAME) + Catch ex As Exception + MsgBox(ex.Message) + End Try + Dim daten As New DataSet + daten.Tables.Add(db.dsDaten.Tables(0).Copy) + daten.Tables(0).TableName = "Daten" + freport.RegisterData(daten) + 'If splitter.Length > 1 Then + ' Dim i As Integer + ' For i = 0 To splitter.Length - 1 + ' If splitter(i).ToString.Length > 10 Then + ' If i = 0 Then + ' freport.GetDataSource("Daten").Enabled = True + ' Else + ' freport.GetDataSource("Daten_" + i.ToString).Enabled = True + ' End If + ' End If + ' Next + 'Else + 'End If + 'freport.SetParameterValue("Parcours", allg.Get_Option(2)) + 'freport.SetParameterValue("Spruch", allg.Get_Option(3)) + 'freport.Preview = Me.previewControl1 + freport.GetDataSource("Daten").Enabled = True + If Me.Design = True Then + freport.Design() + MsgBox("Hallo") + Me.Close() + + Else + Me.previewControl1.RefreshReport() + freport.Show() + End If + + End Sub + + Private Sub tsbtnquit_Click(sender As Object, e As EventArgs) Handles tsbtnquit.Click + Me.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/Reporting/frmReportauswahl.Designer.vb b/DPM2016/Reporting/frmReportauswahl.Designer.vb new file mode 100644 index 0000000..aba1049 --- /dev/null +++ b/DPM2016/Reporting/frmReportauswahl.Designer.vb @@ -0,0 +1,195 @@ + _ +Partial Class frmReportauswahl + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmReportauswahl)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.tsbtnquit = New System.Windows.Forms.ToolStripButton() + Me.TreeAuswertungen = New DevComponents.AdvTree.AdvTree() + Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components) + Me.Node2 = New DevComponents.AdvTree.Node() + Me.NodeConnector1 = New DevComponents.AdvTree.NodeConnector() + Me.ElementStyle1 = New DevComponents.DotNetBar.ElementStyle() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.DesignToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ReportDateiSpeichernToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog() + Me.MenuStrip1.SuspendLayout() + Me.ToolStrip1.SuspendLayout() + CType(Me.TreeAuswertungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ContextMenuStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(318, 24) + Me.MenuStrip1.TabIndex = 20 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.AllowDrop = True + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.tsbtnquit}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(318, 25) + Me.ToolStrip1.TabIndex = 21 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'tsbtnquit + ' + Me.tsbtnquit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnquit.Image = CType(resources.GetObject("tsbtnquit.Image"), System.Drawing.Image) + Me.tsbtnquit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnquit.Name = "tsbtnquit" + Me.tsbtnquit.Size = New System.Drawing.Size(23, 22) + Me.tsbtnquit.Text = "Schliessen" + ' + 'TreeAuswertungen + ' + Me.TreeAuswertungen.AccessibleRole = System.Windows.Forms.AccessibleRole.Outline + Me.TreeAuswertungen.AllowDrop = True + Me.TreeAuswertungen.AllowExternalDrop = False + Me.TreeAuswertungen.AllowUserToResizeColumns = False + Me.TreeAuswertungen.BackColor = System.Drawing.SystemColors.Window + ' + ' + ' + Me.TreeAuswertungen.BackgroundStyle.Class = "TreeBorderKey" + Me.TreeAuswertungen.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.TreeAuswertungen.ContextMenuStrip = Me.ContextMenuStrip1 + Me.TreeAuswertungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.TreeAuswertungen.DragDropEnabled = False + Me.TreeAuswertungen.DragDropNodeCopyEnabled = False + Me.TreeAuswertungen.ImageList = Me.ImageList1 + Me.TreeAuswertungen.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F" + Me.TreeAuswertungen.Location = New System.Drawing.Point(0, 49) + Me.TreeAuswertungen.Name = "TreeAuswertungen" + Me.TreeAuswertungen.Nodes.AddRange(New DevComponents.AdvTree.Node() {Me.Node2}) + Me.TreeAuswertungen.NodesConnector = Me.NodeConnector1 + Me.TreeAuswertungen.NodeStyle = Me.ElementStyle1 + Me.TreeAuswertungen.PathSeparator = ";" + Me.TreeAuswertungen.Size = New System.Drawing.Size(318, 436) + Me.TreeAuswertungen.Styles.Add(Me.ElementStyle1) + Me.TreeAuswertungen.TabIndex = 22 + Me.TreeAuswertungen.Text = "AdvTree1" + ' + 'ImageList1 + ' + Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer) + Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent + Me.ImageList1.Images.SetKeyName(0, "default-document-icon.png") + Me.ImageList1.Images.SetKeyName(1, "Report-48.png") + ' + 'Node2 + ' + Me.Node2.Name = "Node2" + ' + 'NodeConnector1 + ' + Me.NodeConnector1.LineColor = System.Drawing.SystemColors.ControlText + ' + 'ElementStyle1 + ' + Me.ElementStyle1.CornerType = DevComponents.DotNetBar.eCornerType.Square + Me.ElementStyle1.Name = "ElementStyle1" + Me.ElementStyle1.TextColor = System.Drawing.SystemColors.ControlText + ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DesignToolStripMenuItem, Me.ReportDateiSpeichernToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(196, 48) + ' + 'DesignToolStripMenuItem + ' + Me.DesignToolStripMenuItem.Name = "DesignToolStripMenuItem" + Me.DesignToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + Me.DesignToolStripMenuItem.Text = "Design" + ' + 'ReportDateiSpeichernToolStripMenuItem + ' + Me.ReportDateiSpeichernToolStripMenuItem.Name = "ReportDateiSpeichernToolStripMenuItem" + Me.ReportDateiSpeichernToolStripMenuItem.Size = New System.Drawing.Size(195, 22) + Me.ReportDateiSpeichernToolStripMenuItem.Text = "Report-Datei speichern" + ' + 'OpenFileDialog1 + ' + Me.OpenFileDialog1.FileName = "OpenFileDialog1" + ' + 'frmReportauswahl + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(318, 485) + Me.Controls.Add(Me.TreeAuswertungen) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Name = "frmReportauswahl" + Me.Text = "Auswertungen" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + CType(Me.TreeAuswertungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ContextMenuStrip1.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents tsbtnquit As System.Windows.Forms.ToolStripButton + Friend WithEvents TreeAuswertungen As DevComponents.AdvTree.AdvTree + Friend WithEvents Node2 As DevComponents.AdvTree.Node + Friend WithEvents NodeConnector1 As DevComponents.AdvTree.NodeConnector + Friend WithEvents ElementStyle1 As DevComponents.DotNetBar.ElementStyle + Friend WithEvents ImageList1 As System.Windows.Forms.ImageList + Friend WithEvents ContextMenuStrip1 As System.Windows.Forms.ContextMenuStrip + Friend WithEvents DesignToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ReportDateiSpeichernToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents OpenFileDialog1 As System.Windows.Forms.OpenFileDialog +End Class diff --git a/DPM2016/Reporting/frmReportauswahl.resx b/DPM2016/Reporting/frmReportauswahl.resx new file mode 100644 index 0000000..1f76a92 --- /dev/null +++ b/DPM2016/Reporting/frmReportauswahl.resx @@ -0,0 +1,201 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 124, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAK2SURBVDhPnZLdS1NhHMcfCPoDuummi+gyunJg0QviNrd5 + PDtzc7Z5ztl20pUzo6I3yFIrS9N8K7Qih6lUFJVaGWXZi6KRoZSFmCuyi+iiiCKILgo+HTUWu7QffOD5 + PfB8eL6/5xH/U1+mh4IzM+O/Ovdm8Hdrvi5X5PR2H86ht2oWKUnPEYkr5XYexXfyebKfTxO3+P5mkIv7 + ramCngqZtDV2Vq+zsWbDP9LXWVllWc+PRD+J3krGWv18TTzm8kFHqqC7TCbD6sRml7A7XEmsWU7S19t4 + 3Rlh7JzO6Okgn1/d5dqh7FSBo1kg1Swi2+5DcilI2W4kScblktlglZjsMBg9G+JJS5CPYz1zUf8eFcJ2 + XJD42IXTlORkaridARTJjyJ7kd0eMh1uXsbDjLTqDDYXMDN8idvVyrzAViOYeN9Gx6Ago1pgbxA4Twnk + sqV4lSCeXD9ZOT7Gz2kMntT5cWc5UwPt3K31Ilx1gqfvqomPCNqGzfXbIp69i/D8Q3hOku8Jk5cXRPIE + eHZa5WGTxs/+Fby63cpAg39e8CCxh/i4ID4maH8p6JgUvPgWwXFSEMwrYmMghDtPY6QlwEBjkLY9Tp73 + HOdxc2AugsVuRuib2kxXQpA5G+GEwNEkyC1fhq5GUXUDX9BgqNnPvfp8rh9WeHqpguEWNTlES1atoPet + D2ejwAjswtBKMcLFGEaUiFFIIBTlYYOXO3U++mq8DJ3fzeiZUMozWpzmlZW6xUSN7USLSiiKFs9RaKJt + inG/zkNfdS43jnrob40x3hZJEYjO0rVsKSmlJLaDkq3bksRMCou3c69W5uYxhe4qNzfrQ0y0FyJ0XUfX + QmhaGFWdxVyrmtmrSVSz31igsy8W4EKFYv5AmatHcpns2jw/xIVSpqfvrzyw8vf0hVhqhAXUEpM0IYTl + DzXbwlLPDlfpAAAAAElFTkSuQmCC + + + + 352, 17 + + + 242, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABW + CQAAAk1TRnQBSQFMAgEBAgEAAUABAAFAAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA + AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 + AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA + AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm + AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM + AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA + ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz + AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ + AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM + AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA + AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA + AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ + AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ + AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA + AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm + ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ + Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz + AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA + AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM + AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM + ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM + Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA + AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM + AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ + AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz + AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm + AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw + AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wUAAf8B8gH/CQAB/wEH + Au8K9wHvAbwkAAHsAbwB7QHsAfAB/wgAAfMLByUAAfQBFQHsAv8BBwHsAZIB8gH/BQAB8wsHJQABBwEV + Ae0B8QP/AfQB7wHsAQcEAAHzAbwIBwK8JAAB/wHqARQBBwFJAXIBmAH0A/8B7AH/AwAB8wG8AQcH7QK8 + JAAB8gEUAewB8wH0AQgBcgFJAW0B8QHzAfcEAAHzAvAH8QLwJAAB7QESAQcBSQFyAQgC9AHvAfIB9wHz + BAAB8wLwB/EC8CMAAf8BbQHsAvQBBwFyAUkBcgHxAf8B7AUAAfMB8QEHB+0C8SMAAQcCvAERAXIBBwH0 + AfIBkgEHArwFAAHzAfIB8QbyA/EjAAHsAfQB8wHyAfcB6gFJAewBvAH0AewB/wUAAfQC8gHwAeoB8wFt + AfIBbQPyIgAB8wH3AfIBEAFtAQcB9AHxAewB7QHzAfcGAAH0C/IiAALwAfQB8QHtARQBEQHsAbwB9AH3 + AfMGAAL0CLMBkAHzIgAB/wHvAewB7wLzAbwB6wFtAfQB7AcAAvQJswH0JAAB/wHxAZIB7AEHAfQB8wK8 + BwAB9AjzAewBbQHzJwAB/wHwAuwB6wH/BwAB9AjzAesB8ysAAv8JAAn0JAABQgFNAT4HAAE+AwABKAMA + AUADAAEQAwABAQEAAQEFAAGAFwAD/wEAAfEB/wYAAfABPwHAAQMEAAHgAQcBwAEDBAAB4AEDAcABAwQA + AcABAQHAAQMEAAHAAQMBwAEDBAABwAEDAcABAwQAAYABBwHAAQMEAAGAAQcBwAEDBAABgAEHAcABAwUA + AQ8BwAEDBQABDwHAAQMFAAEfAcABAwQAAcABHwHAAQMEAAH4AR8BwAEHBAAB/wE/AeABDwQACw== + + + + 509, 17 + + \ No newline at end of file diff --git a/DPM2016/Reporting/frmReportauswahl.vb b/DPM2016/Reporting/frmReportauswahl.vb new file mode 100644 index 0000000..bef7c19 --- /dev/null +++ b/DPM2016/Reporting/frmReportauswahl.vb @@ -0,0 +1,55 @@ +Public Class frmReportauswahl + + Dim db As New clsDB + + Dim grpalt As String = "" + Dim tn As New DevComponents.AdvTree.Node + Private Sub frmReportauswahl_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.TreeAuswertungen.Nodes.Clear() + db.Get_Tabledata("Auswertungen", "", "SELECT * FROM dbo.Auswertung WHERE aktiv=1 ORDER BY gruppe, bezeichnung", "") + For Each r As DataRow In db.dsDaten.Tables(0).Rows + If grpalt <> r.Item("Gruppe") Then + grpalt = r.Item("Gruppe") + tn = New DevComponents.AdvTree.Node + tn.Tag = r.Item("Auswertungnr") * -1 + tn.Text = r.Item("Gruppe") + tn.ImageIndex = 0 + Me.TreeAuswertungen.Nodes.Add(tn) + End If + Dim tc As New DevComponents.AdvTree.Node + tc.Tag = r.Item("Auswertungnr") + tc.Text = r.Item("Bezeichnung") + tc.ImageIndex = 1 + tn.Nodes.Add(tc) + Next + Me.TreeAuswertungen.ExpandAll() + End Sub + + Private Sub TreeAuswertungen_Click(sender As Object, e As EventArgs) Handles TreeAuswertungen.Click + + End Sub + + Private Sub TreeAuswertungen_DoubleClick(sender As Object, e As EventArgs) Handles TreeAuswertungen.DoubleClick + If Me.TreeAuswertungen.SelectedNode.Tag > 0 Then + Dim f As New frmReportView(Me.TreeAuswertungen.SelectedNode.Tag, False, Me.TreeAuswertungen.SelectedNode.Text) + f.MdiParent = Me.MdiParent + f.Show() + End If + End Sub + + Private Sub DesignToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DesignToolStripMenuItem.Click + Dim rpt As New frmReportView(Me.TreeAuswertungen.SelectedNode.Tag, True, Me.TreeAuswertungen.SelectedNode.Text) + rpt.DesignReport() + rpt = Nothing + End Sub + + Private Sub ReportDateiSpeichernToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ReportDateiSpeichernToolStripMenuItem.Click + Dim db As New clsDB + Dim filename As String + 'Me.OpenFileDialog1.AddExtension = "Report-Dateien|*.frx" + OpenFileDialog1.ShowDialog() + If Me.OpenFileDialog1.FileName <> "" Then db.Save_RptDatei(Me.TreeAuswertungen.SelectedNode.Tag, Me.OpenFileDialog1.FileName) + End Sub + + +End Class \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmAuswertungen.Designer.vb b/DPM2016/Sysadmin/frmAuswertungen.Designer.vb new file mode 100644 index 0000000..fb7704c --- /dev/null +++ b/DPM2016/Sysadmin/frmAuswertungen.Designer.vb @@ -0,0 +1,127 @@ + _ +Partial Class frmAuswertungen + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmAuswertungen)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.SchliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.C1Auswertungen = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.BearbeitenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.MenuStrip1.SuspendLayout() + CType(Me.C1Auswertungen, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ContextMenuStrip1.SuspendLayout() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(772, 24) + Me.MenuStrip1.TabIndex = 0 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.SchliessenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'SchliessenToolStripMenuItem + ' + Me.SchliessenToolStripMenuItem.Name = "SchliessenToolStripMenuItem" + Me.SchliessenToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + Me.SchliessenToolStripMenuItem.Text = "Schliessen" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(772, 25) + Me.ToolStrip1.TabIndex = 16 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'C1Auswertungen + ' + Me.C1Auswertungen.AlternatingRows = True + Me.C1Auswertungen.ContextMenuStrip = Me.ContextMenuStrip1 + Me.C1Auswertungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Auswertungen.FilterBar = True + Me.C1Auswertungen.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Auswertungen.Images.Add(CType(resources.GetObject("C1Auswertungen.Images"), System.Drawing.Image)) + Me.C1Auswertungen.Location = New System.Drawing.Point(0, 49) + Me.C1Auswertungen.Name = "C1Auswertungen" + Me.C1Auswertungen.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Auswertungen.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Auswertungen.PreviewInfo.ZoomFactor = 75.0R + Me.C1Auswertungen.PrintInfo.PageSettings = CType(resources.GetObject("C1Leistungen.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Auswertungen.Size = New System.Drawing.Size(772, 400) + Me.C1Auswertungen.TabIndex = 17 + Me.C1Auswertungen.Text = "C1TrueDBGrid1" + Me.C1Auswertungen.PropBag = resources.GetString("C1Auswertungen.PropBag") + ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BearbeitenToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(153, 48) + ' + 'BearbeitenToolStripMenuItem + ' + Me.BearbeitenToolStripMenuItem.Name = "BearbeitenToolStripMenuItem" + Me.BearbeitenToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + Me.BearbeitenToolStripMenuItem.Text = "Bearbeiten" + ' + 'frmAuswertungen + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(772, 449) + Me.Controls.Add(Me.C1Auswertungen) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.MainMenuStrip = Me.MenuStrip1 + Me.Name = "frmAuswertungen" + Me.Text = "frmAuswertungen" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + CType(Me.C1Auswertungen, System.ComponentModel.ISupportInitialize).EndInit() + Me.ContextMenuStrip1.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents MenuStrip1 As MenuStrip + Friend WithEvents DateiToolStripMenuItem As ToolStripMenuItem + Friend WithEvents SchliessenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents ToolStrip1 As ToolStrip + Friend WithEvents C1Auswertungen As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ContextMenuStrip1 As ContextMenuStrip + Friend WithEvents BearbeitenToolStripMenuItem As ToolStripMenuItem +End Class diff --git a/DPM2016/Sysadmin/frmAuswertungen.resx b/DPM2016/Sysadmin/frmAuswertungen.resx new file mode 100644 index 0000000..b650176 --- /dev/null +++ b/DPM2016/Sysadmin/frmAuswertungen.resx @@ -0,0 +1,169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 124, 17 + + + 231, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}Style2{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}OddRow{BackColor:ControlLight;}Style3{}Footer{}Style14{}Heading{ForeColor:ControlText;Border:Flat,ControlDark,0, 1, 0, 1;AlignVert:Center;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style1{}Caption{AlignHorz:Center;}Style6{}FilterBar{BackColor:Info;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 770, 398</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 770, 398</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmAuswertungen.vb b/DPM2016/Sysadmin/frmAuswertungen.vb new file mode 100644 index 0000000..9d4387f --- /dev/null +++ b/DPM2016/Sysadmin/frmAuswertungen.vb @@ -0,0 +1,36 @@ +Public Class frmAuswertungen + + Dim db As New clsDB + Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SchliessenToolStripMenuItem.Click + Me.Close() + End Sub + + Private Sub frmAuswertungen_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Dim dt As New DataTable + db.Get_Tabledata("Auswertung") + dt = db.dsDaten.Tables(0).Copy + Me.C1Auswertungen.DataSource = dt + Me.C1Auswertungen.DataMember = dt.TableName + + End Sub + + Private Sub BearbeitenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BearbeitenToolStripMenuItem.Click + Try + If C1Auswertungen.Columns("Design_Funktion").Value = "Fakturierung" Then + + Dim fnkt As String = Me.C1Auswertungen.Columns("Design_Funktion").Value + Dim param As String = Me.C1Auswertungen.Columns("SQL").Value + Dim behandlung As String = db.Get_Datavalue("Select top 1 nrbehandlung from behandlu order by nrbehandlung desc", "") + Dim f As New frmReportView(Me.C1Auswertungen.Columns("AuswertungNr").Value - 9, True, "Design" + Me.C1Auswertungen.Columns("Bezeichnung").Value, param, behandlung) + f.Show() + f.Print_Rechnung(False, True) + f.Close() + + + End If + + Catch + End Try + + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmStammdaten.Designer.vb b/DPM2016/Sysadmin/frmStammdaten.Designer.vb new file mode 100644 index 0000000..7558784 --- /dev/null +++ b/DPM2016/Sysadmin/frmStammdaten.Designer.vb @@ -0,0 +1,210 @@ + +Partial Class frmStammdaten + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Dim TreeNode1 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Konto") + Dim TreeNode2 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Finanzen", New System.Windows.Forms.TreeNode() {TreeNode1}) + Dim TreeNode3 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Anreden") + Dim TreeNode4 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Titel") + Dim TreeNode5 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Orte") + Dim TreeNode6 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Status") + Dim TreeNode7 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Patienten", New System.Windows.Forms.TreeNode() {TreeNode3, TreeNode4, TreeNode5, TreeNode6}) + Dim TreeNode8 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Tarif") + Dim TreeNode9 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Tarife") + Dim TreeNode10 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("TarifGruppe") + Dim TreeNode11 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Taxpunkte") + Dim TreeNode12 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Tarifpakete") + Dim TreeNode13 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Paketpositionen") + Dim TreeNode14 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Dentotar") + Dim TreeNode15 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Tarif", New System.Windows.Forms.TreeNode() {TreeNode8, TreeNode9, TreeNode10, TreeNode11, TreeNode12, TreeNode13, TreeNode14}) + Dim TreeNode16 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Ansatz") + Dim TreeNode17 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Abrechnungstyp") + Dim TreeNode18 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Einmzahlungsscheine") + Dim TreeNode19 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Rechnungstyp") + Dim TreeNode20 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Abrechnung", New System.Windows.Forms.TreeNode() {TreeNode16, TreeNode17, TreeNode18, TreeNode19}) + Dim TreeNode21 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Spalten") + Dim TreeNode22 As System.Windows.Forms.TreeNode = New System.Windows.Forms.TreeNode("Diverse", New System.Windows.Forms.TreeNode() {TreeNode21}) + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmStammdaten)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.SchliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.DentotarImportToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.TreeView1 = New System.Windows.Forms.TreeView() + Me.C1TrueDBGrid1 = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ClsStammdaten_Bez1 = New DPM2016.clsStammdaten_Bez() + Me.ClsStammdaten_flat1 = New DPM2016.clsStammdaten_flat() + Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog() + Me.MenuStrip1.SuspendLayout() + CType(Me.C1TrueDBGrid1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.SchliessenToolStripMenuItem, Me.DentotarImportToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(957, 24) + Me.MenuStrip1.TabIndex = 0 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'SchliessenToolStripMenuItem + ' + Me.SchliessenToolStripMenuItem.Name = "SchliessenToolStripMenuItem" + Me.SchliessenToolStripMenuItem.Size = New System.Drawing.Size(73, 20) + Me.SchliessenToolStripMenuItem.Text = "&Schliessen" + ' + 'DentotarImportToolStripMenuItem + ' + Me.DentotarImportToolStripMenuItem.Name = "DentotarImportToolStripMenuItem" + Me.DentotarImportToolStripMenuItem.Size = New System.Drawing.Size(106, 20) + Me.DentotarImportToolStripMenuItem.Text = "Dentotar-Import" + ' + 'TreeView1 + ' + Me.TreeView1.Dock = System.Windows.Forms.DockStyle.Left + Me.TreeView1.Location = New System.Drawing.Point(0, 24) + Me.TreeView1.Name = "TreeView1" + TreeNode1.Name = "Konto" + TreeNode1.Text = "Konto" + TreeNode2.Name = "Knoten0" + TreeNode2.Text = "Finanzen" + TreeNode3.Name = "Anrede" + TreeNode3.Text = "Anreden" + TreeNode4.Name = "Titel" + TreeNode4.Text = "Titel" + TreeNode5.Name = "Orte" + TreeNode5.Text = "Orte" + TreeNode6.Name = "Status" + TreeNode6.Text = "Status" + TreeNode7.Name = "Knoten7" + TreeNode7.Text = "Patienten" + TreeNode8.Name = "Tarif" + TreeNode8.Text = "Tarif" + TreeNode9.Name = "Tarife" + TreeNode9.Text = "Tarife" + TreeNode10.Name = "tarifgrp" + TreeNode10.Text = "TarifGruppe" + TreeNode11.Name = "Taxpunkt" + TreeNode11.Text = "Taxpunkte" + TreeNode12.Name = "Tarpaket" + TreeNode12.Text = "Tarifpakete" + TreeNode13.Name = "Paketpositionen" + TreeNode13.Tag = "nrpaket;paketbezeichnung;nrtarif;sso_nummer;TarPaket;Tarif;Paketpos" + TreeNode13.Text = "Paketpositionen" + TreeNode14.Name = "Dentotar" + TreeNode14.Text = "Dentotar" + TreeNode15.Name = "Knoten8" + TreeNode15.Text = "Tarif" + TreeNode16.Name = "Ansatz" + TreeNode16.Text = "Ansatz" + TreeNode17.Name = "Abrtyp" + TreeNode17.Text = "Abrechnungstyp" + TreeNode18.Name = "ESTyp" + TreeNode18.Text = "Einmzahlungsscheine" + TreeNode19.Name = "RGTyp" + TreeNode19.Text = "Rechnungstyp" + TreeNode20.Name = "Knoten14" + TreeNode20.Text = "Abrechnung" + TreeNode21.Name = "Spalten" + TreeNode21.Text = "Spalten" + TreeNode22.Name = "Diverse" + TreeNode22.Text = "Diverse" + Me.TreeView1.Nodes.AddRange(New System.Windows.Forms.TreeNode() {TreeNode2, TreeNode7, TreeNode15, TreeNode20, TreeNode22}) + Me.TreeView1.Size = New System.Drawing.Size(204, 425) + Me.TreeView1.TabIndex = 1 + ' + 'C1TrueDBGrid1 + ' + Me.C1TrueDBGrid1.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1TrueDBGrid1.GroupByCaption = "Drag a column header here to group by that column" + Me.C1TrueDBGrid1.Images.Add(CType(resources.GetObject("C1TrueDBGrid1.Images"), System.Drawing.Image)) + Me.C1TrueDBGrid1.Location = New System.Drawing.Point(204, 24) + Me.C1TrueDBGrid1.Name = "C1TrueDBGrid1" + Me.C1TrueDBGrid1.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1TrueDBGrid1.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1TrueDBGrid1.PreviewInfo.ZoomFactor = 75.0R + Me.C1TrueDBGrid1.PrintInfo.PageSettings = CType(resources.GetObject("C1TrueDBGrid1.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1TrueDBGrid1.Size = New System.Drawing.Size(753, 425) + Me.C1TrueDBGrid1.TabIndex = 2 + Me.C1TrueDBGrid1.Text = "C1TrueDBGrid1" + Me.C1TrueDBGrid1.PropBag = resources.GetString("C1TrueDBGrid1.PropBag") + ' + 'ClsStammdaten_Bez1 + ' + Me.ClsStammdaten_Bez1.Connectionstring = Nothing + Me.ClsStammdaten_Bez1.KeyField_left = Nothing + Me.ClsStammdaten_Bez1.KeyField_right = Nothing + Me.ClsStammdaten_Bez1.Keyfieldbez_left = Nothing + Me.ClsStammdaten_Bez1.Keyfieldbez_right = Nothing + Me.ClsStammdaten_Bez1.Location = New System.Drawing.Point(575, 294) + Me.ClsStammdaten_Bez1.Name = "ClsStammdaten_Bez1" + Me.ClsStammdaten_Bez1.Size = New System.Drawing.Size(434, 170) + Me.ClsStammdaten_Bez1.TabIndex = 4 + Me.ClsStammdaten_Bez1.Tablename_bottom = Nothing + Me.ClsStammdaten_Bez1.Tablename_left = Nothing + Me.ClsStammdaten_Bez1.Tablename_right = Nothing + ' + 'ClsStammdaten_flat1 + ' + Me.ClsStammdaten_flat1.Connectionstring = Nothing + Me.ClsStammdaten_flat1.Location = New System.Drawing.Point(232, 56) + Me.ClsStammdaten_flat1.Name = "ClsStammdaten_flat1" + Me.ClsStammdaten_flat1.Size = New System.Drawing.Size(558, 232) + Me.ClsStammdaten_flat1.TabIndex = 3 + Me.ClsStammdaten_flat1.Tablename = Nothing + ' + 'OpenFileDialog1 + ' + Me.OpenFileDialog1.FileName = "OpenFileDialog1" + Me.OpenFileDialog1.Filter = "Excel-Dateien|*.xlsx|Alle Dateien|*.*" + ' + 'frmStammdaten + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(957, 449) + Me.Controls.Add(Me.ClsStammdaten_Bez1) + Me.Controls.Add(Me.ClsStammdaten_flat1) + Me.Controls.Add(Me.C1TrueDBGrid1) + Me.Controls.Add(Me.TreeView1) + Me.Controls.Add(Me.MenuStrip1) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MainMenuStrip = Me.MenuStrip1 + Me.Name = "frmStammdaten" + Me.Text = "frmStammdaten" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + CType(Me.C1TrueDBGrid1, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents SchliessenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents TreeView1 As System.Windows.Forms.TreeView + Friend WithEvents C1TrueDBGrid1 As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents ClsStammdaten_flat1 As DPM2016.clsStammdaten_flat + Friend WithEvents ClsStammdaten_Bez1 As DPM2016.clsStammdaten_Bez + Friend WithEvents DentotarImportToolStripMenuItem As ToolStripMenuItem + Friend WithEvents OpenFileDialog1 As OpenFileDialog +End Class diff --git a/DPM2016/Sysadmin/frmStammdaten.resx b/DPM2016/Sysadmin/frmStammdaten.resx new file mode 100644 index 0000000..2af5d31 --- /dev/null +++ b/DPM2016/Sysadmin/frmStammdaten.resx @@ -0,0 +1,7375 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:Aqua;}Normal{}RecordSelector{AlignImage:Center;}OddRow{}Style3{}Footer{}Style14{}FilterBar{}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;ForeColor:ControlText;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 751, 423</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 751, 423</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + 239, 17 + + + + AAABAAkAAAAAAAEAIAAoIAQAlgAAAICAAAABACAAKAgBAL4gBABgYAAAAQAgAKiUAADmKAUASEgAAAEA + IACIVAAAjr0FAEBAAAABACAAKEIAABYSBgAwMAAAAQAgAKglAAA+VAYAICAAAAEAIACoEAAA5nkGABgY + AAABACAAiAkAAI6KBgAQEAAAAQAgAGgEAAAWlAYAKAAAAAABAAAAAgAAAQAgAAAAAAAAIAQAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkBKSkpAWkpKQFpKSkBqSkpAakpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAakpKQGpKSkBaSkpAWkpKQEpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAKkpKQCpKSkAqSk + pAKkpKQCpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpASkpKQFpKSkBaSk + pAakpKQGpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAikpKQIpKSkCaSkpAqkpKQLpKSkDKSkpA2kpKQOpKSkD6SkpA+kpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkD6SkpA+kpKQOpKSkDaSkpAykpKQLpKSkCqSk + pAmkpKQIpKSkCKSkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAakpKQGpKSkBaSkpAWkpKQEpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpASkpKQFpKSkBaSkpAakpKQGpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQIpKSkCKSkpAmkpKQKpKSkC6Sk + pAykpKQNpKSkDqSkpA+kpKQPpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQRpKSkEaSkpBOkpKQUpKSkFqSkpBikpKQapKSkG6SkpBykpKQdpKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB2kpKQcpKSkG6SkpBqkpKQYpKSkFqSk + pBSkpKQTpKSkEaSkpBGkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkD6Sk + pA+kpKQOpKSkDaSkpAykpKQLpKSkCqSkpAmkpKQIpKSkCKSkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkBqSkpAakpKQFpKSkBaSkpASkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAqSk + pAKkpKQCpKSkAqSkpAKkpKQDpKSkA6SkpAOkpKQEpKSkBaSkpAWkpKQGpKSkBqSkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQIpKSkCKSkpAmkpKQKpKSkC6SkpAykpKQNpKSkDqSkpA+kpKQPpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEaSkpBGkpKQTpKSkFKSk + pBakpKQYpKSkGqSkpBukpKQcpKSkHaSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQfpKSkIKSkpCGkpKQipKSkJaSkpCekpKQqpKSkLKSkpC+kpKQxpKSkMqSkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQypKSkMaSkpC+kpKQspKSkKqSk + pCekpKQlpKSkIqSkpCGkpKQgpKSkH6SkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB2kpKQcpKSkG6SkpBqkpKQYpKSkFqSkpBSkpKQTpKSkEaSkpBGkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQPpKSkD6SkpA6kpKQNpKSkDKSkpAukpKQKpKSkCaSk + pAikpKQIpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAakpKQGpKSkBaSkpAWkpKQEpKSkA6Sk + pAOkpKQDpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQBpKSkAaSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGkpKQBpKSkAqSkpAKkpKQDpKSkA6SkpAOkpKQEpKSkBaSk + pAWkpKQGpKSkBqSkpAekpKQHpKSkCKSkpAikpKQJpKSkCqSkpAukpKQMpKSkDaSkpA6kpKQPpKSkD6Sk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEaSkpBGkpKQTpKSkFKSkpBakpKQYpKSkGqSkpBukpKQcpKSkHaSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkH6SkpCCkpKQhpKSkIqSk + pCWkpKQnpKSkKqSkpCykpKQvpKSkMaSkpDKkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQ0pKSkNKSkpDWkpKQ2pKSkOKSkpDukpKQ/pKSkQqSkpEakpKRJpKSkS6SkpE2kpKROpKSkTqSk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE6kpKROpKSkTaSkpEukpKRJpKSkRqSk + pEKkpKQ/pKSkO6SkpDikpKQ2pKSkNaSkpDSkpKQ0pKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQypKSkMaSkpC+kpKQspKSkKqSkpCekpKQlpKSkIqSkpCGkpKQgpKSkH6SkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHaSkpBykpKQbpKSkGqSkpBikpKQWpKSkFKSk + pBOkpKQRpKSkEaSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkD6SkpA+kpKQOpKSkDaSkpAykpKQLpKSkCqSk + pAmkpKQIpKSkCKSkpAekpKQHpKSkBqSkpAakpKQFpKSkBaSkpASkpKQDpKSkA6SkpAOkpKQCpKSkAqSk + pAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKSkpAGkpKQBpKSkAqSkpAOkpKQEpKSkBaSkpAWkpKQGpKSkB6SkpAikpKQJpKSkCqSk + pAukpKQMpKSkDaSkpA6kpKQPpKSkEKSkpBGkpKQRpKSkE6SkpBSkpKQWpKSkGKSkpBqkpKQbpKSkHKSk + pB2kpKQepKSkHqSkpB6kpKQepKSkH6SkpCCkpKQhpKSkIqSkpCWkpKQnpKSkKqSkpCykpKQvpKSkMaSk + pDKkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkNKSkpDSkpKQ1pKSkNqSk + pDikpKQ7pKSkP6SkpEKkpKRGpKSkSaSkpEukpKRNpKSkTqSkpE6kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpFCkpKRRpKSkUqSkpFWkpKRYpKSkXKSkpGCkpKRkpKSkaKSkpGqkpKRspKSkbaSk + pG6kpKRupKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG6kpKRupKSkbaSkpGykpKRqpKSkaKSk + pGSkpKRgpKSkXKSkpFikpKRVpKSkUqSkpFGkpKRQpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE6kpKROpKSkTaSkpEukpKRJpKSkRqSkpEKkpKQ/pKSkO6SkpDikpKQ2pKSkNaSkpDSkpKQ0pKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDKkpKQxpKSkL6SkpCykpKQqpKSkJ6Sk + pCWkpKQipKSkIaSkpCCkpKQfpKSkHqSkpB6kpKQepKSkHqSkpB2kpKQcpKSkG6SkpBqkpKQYpKSkFqSk + pBSkpKQTpKSkEaSkpBGkpKQQpKSkD6SkpA6kpKQNpKSkDKSkpAukpKQKpKSkCaSkpAikpKQHpKSkBqSk + pAWkpKQFpKSkBKSkpAOkpKQCpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAApKSkAaSkpAKkpKQDpKSkBKSkpAakpKQHpKSkCaSkpAukpKQMpKSkDqSkpA+kpKQRpKSkEqSk + pBSkpKQWpKSkGKSkpBqkpKQbpKSkHaSkpB6kpKQfpKSkIaSkpCKkpKQlpKSkJ6SkpCqkpKQspKSkL6Sk + pDGkpKQypKSkM6SkpDOkpKQzpKSkNKSkpDSkpKQ1pKSkNqSkpDikpKQ7pKSkP6SkpEKkpKRGpKSkSaSk + pEukpKRNpKSkTqSkpE6kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRQpKSkUaSk + pFKkpKRVpKSkWKSkpFykpKRgpKSkZKSkpGikpKRqpKSkbKSkpG2kpKRupKSkbqSkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkcKSkpHKkpKR1pKSkeaSkpH2kpKSBpKSkhaSkpImkpKSMpKSkjqSk + pI+kpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpI+kpKSOpKSkjKSk + pImkpKSFpKSkgaSkpH2kpKR5pKSkdaSkpHKkpKRwpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG6kpKRupKSkbaSkpGykpKRqpKSkaKSkpGSkpKRgpKSkXKSkpFikpKRVpKSkUqSkpFGkpKRQpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkTqSkpE6kpKRNpKSkS6SkpEmkpKRGpKSkQqSk + pD+kpKQ7pKSkOKSkpDakpKQ1pKSkNKSkpDSkpKQzpKSkM6SkpDOkpKQypKSkMaSkpC+kpKQspKSkKqSk + pCekpKQlpKSkIqSkpCGkpKQfpKSkHqSkpB2kpKQbpKSkGqSkpBikpKQWpKSkFKSkpBKkpKQRpKSkD6Sk + pA6kpKQMpKSkC6SkpAmkpKQHpKSkBqSkpASkpKQDpKSkAqSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAApKSkAaSkpAOkpKQEpKSkB6SkpAmkpKQMpKSkD6SkpBKkpKQVpKSkGKSkpBqkpKQdpKSkH6Sk + pCKkpKQkpKSkJ6SkpCqkpKQspKSkL6SkpDGkpKQzpKSkNKSkpDakpKQ4pKSkO6SkpD+kpKRCpKSkRqSk + pEmkpKRLpKSkTaSkpE6kpKROpKSkT6SkpE+kpKRQpKSkUaSkpFKkpKRVpKSkWKSkpFykpKRgpKSkZKSk + pGikpKRqpKSkbKSkpG2kpKRupKSkbqSkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pHCkpKRypKSkdaSkpHmkpKR9pKSkgaSkpIWkpKSJpKSkjKSkpI6kpKSPpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkaSkpJKkpKSUpKSklqSkpJqkpKSepKSkoqSkpKakpKSppKSkrKSk + pK6kpKSvpKSkr6SkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpK+kpKSvpKSkrqSk + pKykpKSppKSkpqSkpKKkpKSepKSkmqSkpJakpKSUpKSkkqSkpJGkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpI+kpKSOpKSkjKSkpImkpKSFpKSkgaSkpH2kpKR5pKSkdaSkpHKkpKRwpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkbqSkpG6kpKRtpKSkbKSkpGqkpKRopKSkZKSk + pGCkpKRcpKSkWKSkpFWkpKRSpKSkUaSkpFCkpKRPpKSkT6SkpE6kpKROpKSkTaSkpEukpKRJpKSkRqSk + pEKkpKQ/pKSkO6SkpDikpKQ2pKSkNKSkpDOkpKQxpKSkL6SkpCykpKQqpKSkJ6SkpCSkpKQipKSkH6Sk + pB2kpKQapKSkGKSkpBWkpKQSpKSkD6SkpAykpKQJpKSkB6SkpASkpKQDpKSkAQAAAAAAAAAAAAAAAAAA + AAAAAAAApKSkAqSkpAOkpKQGpKSkCaSkpA2kpKQSpKSkF6SkpBykpKQgpKSkJaSkpCmkpKQtpKSkMKSk + pDSkpKQ3pKSkO6SkpD+kpKRCpKSkRqSkpEmkpKRLpKSkTqSkpFCkpKRSpKSkVaSkpFikpKRcpKSkYKSk + pGSkpKRopKSkaqSkpGykpKRtpKSkbqSkpG6kpKRvpKSkb6SkpHCkpKRypKSkdaSkpHmkpKR9pKSkgaSk + pIWkpKSJpKSkjKSkpI6kpKSPpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJGkpKSSpKSklKSkpJakpKSapKSknqSkpKKkpKSmpKSkqaSkpKykpKSupKSkr6SkpK+kpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSxpKSks6SkpLWkpKS4pKSkvKSkpL+kpKTCpKSkxaSk + pMikpKTJpKSkyqSkpMukpKTLpKSky6SkpMykpKTMpKSkzKSkpMykpKTMpKSky6SkpMukpKTLpKSkyqSk + pMmkpKTIpKSkxaSkpMKkpKS/pKSkvKSkpLikpKS1pKSks6SkpLGkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpK+kpKSvpKSkrqSkpKykpKSppKSkpqSkpKKkpKSepKSkmqSkpJakpKSUpKSkkqSk + pJGkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkj6SkpI6kpKSMpKSkiaSk + pIWkpKSBpKSkfaSkpHmkpKR1pKSkcqSkpHCkpKRvpKSkb6SkpG6kpKRupKSkbaSkpGykpKRqpKSkaKSk + pGSkpKRgpKSkXKSkpFikpKRVpKSkUqSkpFCkpKROpKSkS6SkpEmkpKRGpKSkQqSkpD+kpKQ7pKSkN6Sk + pDSkpKQwpKSkLaSkpCmkpKQlpKSkIKSkpBykpKQXpKSkEqSkpA2kpKQJpKSkBqSkpAOkpKQCAAAAAAAA + AAAAAAAApKSkAaSkpAOkpKQGpKSkC6SkpBCkpKQXpKSkHqSkpCakpKQtpKSkNKSkpDukpKRApKSkRaSk + pEqkpKROpKSkU6SkpFekpKRcpKSkYKSkpGSkpKRnpKSka6SkpG2kpKRvpKSkcqSkpHWkpKR4pKSkfaSk + pIGkpKSFpKSkiaSkpIykpKSOpKSkj6SkpJCkpKSQpKSkkKSkpJGkpKSSpKSklKSkpJakpKSapKSknqSk + pKKkpKSmpKSkqaSkpKykpKSupKSkr6SkpK+kpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksaSkpLOkpKS1pKSkuKSkpLykpKS/pKSkwqSkpMWkpKTIpKSkyaSkpMqkpKTLpKSky6Sk + pMukpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpM2kpKTPpKSk0aSkpNSkpKTXpKSk2aSk + pNykpKTdpKSk36SkpN+kpKTgpKSk4KSkpOCkpKThpKSk4aSkpOGkpKThpKSk4aSkpOCkpKTgpKSk4KSk + pN+kpKTfpKSk3aSkpNykpKTZpKSk16SkpNSkpKTRpKSkz6SkpM2kpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSky6SkpMukpKTLpKSkyqSkpMmkpKTIpKSkxaSkpMKkpKS/pKSkvKSkpLikpKS1pKSks6Sk + pLGkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSkr6SkpK+kpKSupKSkrKSk + pKmkpKSmpKSkoqSkpJ6kpKSapKSklqSkpJSkpKSSpKSkkaSkpJCkpKSQpKSkkKSkpI+kpKSOpKSkjKSk + pImkpKSFpKSkgaSkpH2kpKR4pKSkdaSkpHKkpKRvpKSkbaSkpGukpKRnpKSkZKSkpGCkpKRcpKSkV6Sk + pFOkpKROpKSkSqSkpEWkpKRApKSkO6SkpDSkpKQtpKSkJqSkpB6kpKQXpKSkEKSkpAukpKQGpKSkA6Sk + pAEAAAAApKSkAaSkpAOkpKQGpKSkCqSkpBGkpKQZpKSkI6SkpC2kpKQ4pKSkQ6SkpEykpKRVpKSkXKSk + pGKkpKRopKSkbaSkpHKkpKR3pKSke6SkpICkpKSEpKSkiKSkpIykpKSOpKSkkKSkpJOkpKSWpKSkmaSk + pJ2kpKSipKSkpqSkpKmkpKSspKSkrqSkpK+kpKSvpKSksKSkpLCkpKSwpKSksaSkpLOkpKS1pKSkuKSk + pLykpKS/pKSkwqSkpMWkpKTIpKSkyaSkpMqkpKTLpKSky6SkpMukpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTNpKSkz6SkpNGkpKTUpKSk16SkpNmkpKTcpKSk3aSkpN+kpKTfpKSk4KSk + pOCkpKTgpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKTipKSk46SkpOSkpKTmpKSk6KSk + pOqkpKTrpKSk7aSkpO2kpKTupKSk7qSkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO6kpKTupKSk7aSkpO2kpKTrpKSk6qSkpOikpKTmpKSk5KSkpOOkpKTipKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOCkpKTgpKSk4KSkpN+kpKTfpKSk3aSkpNykpKTZpKSk16SkpNSkpKTRpKSkz6Sk + pM2kpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTLpKSky6SkpMukpKTKpKSkyaSk + pMikpKTFpKSkwqSkpL+kpKS8pKSkuKSkpLWkpKSzpKSksaSkpLCkpKSwpKSksKSkpK+kpKSvpKSkrqSk + pKykpKSppKSkpqSkpKKkpKSdpKSkmaSkpJakpKSTpKSkkKSkpI6kpKSMpKSkiKSkpISkpKSApKSke6Sk + pHekpKRypKSkbaSkpGikpKRipKSkXKSkpFWkpKRMpKSkQ6SkpDikpKQtpKSkI6SkpBmkpKQRpKSkCqSk + pAakpKQDpKSkAaSkpAKkpKQEpKSkCKSkpA+kpKQYpKSkI6SkpDCkpKQ+pKSkTKSkpFqkpKRmpKSkcKSk + pHmkpKSApKSkhqSkpIukpKSRpKSklaSkpJqkpKSfpKSko6SkpKekpKSqpKSkraSkpK+kpKSxpKSktKSk + pLekpKS6pKSkvqSkpMKkpKTFpKSkx6SkpMmkpKTKpKSkyqSkpMukpKTLpKSky6SkpMykpKTNpKSkz6Sk + pNGkpKTUpKSk16SkpNmkpKTbpKSk3aSkpN6kpKTfpKSk4KSkpOCkpKTgpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4qSkpOOkpKTkpKSk5qSkpOikpKTqpKSk66SkpOykpKTtpKSk7qSk + pO6kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpPCkpKTxpKSk8qSk + pPOkpKT0pKSk9aSkpPakpKT3pKSk96SkpPekpKT3pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPekpKT3pKSk96SkpPekpKT2pKSk9aSkpPSkpKTzpKSk8qSkpPGkpKTwpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO6kpKTupKSk7aSkpOykpKTrpKSk6qSkpOikpKTmpKSk5KSk + pOOkpKTipKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4KSkpOCkpKTgpKSk36Sk + pN6kpKTdpKSk26SkpNmkpKTXpKSk1KSkpNGkpKTPpKSkzaSkpMykpKTLpKSky6SkpMukpKTKpKSkyqSk + pMmkpKTHpKSkxaSkpMKkpKS+pKSkuqSkpLekpKS0pKSksaSkpK+kpKStpKSkqqSkpKekpKSjpKSkn6Sk + pJqkpKSVpKSkkaSkpIukpKSGpKSkgKSkpHmkpKRwpKSkZqSkpFqkpKRMpKSkPqSkpDCkpKQjpKSkGKSk + pA+kpKQIpKSkBKSkpAKkpKQCpKSkBaSkpAukpKQTpKSkHqSkpCykpKQ9pKSkTqSkpF+kpKRupKSkfKSk + pIikpKSSpKSkmaSkpKCkpKSlpKSkq6SkpK+kpKS0pKSkuKSkpL2kpKTApKSkw6SkpMakpKTIpKSkyqSk + pMykpKTOpKSk0aSkpNSkpKTXpKSk2qSkpNykpKTdpKSk3qSkpN6kpKTfpKSk36SkpN+kpKTgpKSk4KSk + pOKkpKTjpKSk5aSkpOekpKTppKSk6qSkpOykpKTtpKSk7aSkpO6kpKTupKSk7qSkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTwpKSk8KSkpPGkpKTzpKSk9KSkpPWkpKT2pKSk9qSk + pPekpKT3pKSk96SkpPekpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPmkpKT5pKSk+qSkpPukpKT7pKSk+6SkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT7pKSk+6SkpPukpKT6pKSk+aSkpPmkpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk96SkpPekpKT3pKSk96SkpPakpKT2pKSk9aSkpPSkpKTzpKSk8aSk + pPCkpKTwpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO6kpKTupKSk7qSk + pO2kpKTtpKSk7KSkpOqkpKTppKSk56SkpOWkpKTjpKSk4qSkpOCkpKTgpKSk36SkpN+kpKTfpKSk3qSk + pN6kpKTdpKSk3KSkpNqkpKTXpKSk1KSkpNGkpKTOpKSkzKSkpMqkpKTIpKSkxqSkpMOkpKTApKSkvaSk + pLikpKS0pKSkr6SkpKukpKSlpKSkoKSkpJmkpKSSpKSkiKSkpHykpKRupKSkX6SkpE6kpKQ9pKSkLKSk + pB6kpKQTpKSkC6SkpAWkpKQCpKSkAqSkpAakpKQMpKSkFqSkpCKkpKQzpKSkRaSkpFmkpKRspKSkfaSk + pIykpKSYpKSkoqSkpKukpKSxpKSkt6SkpLykpKTApKSkxaSkpMmkpKTNpKSk0KSkpNOkpKTWpKSk2KSk + pNmkpKTbpKSk3aSkpN+kpKTipKSk5KSkpOakpKTopKSk6aSkpOqkpKTrpKSk66SkpOukpKTrpKSk66Sk + pOykpKTtpKSk7qSkpO+kpKTwpKSk8qSkpPOkpKT0pKSk9aSkpPWkpKT2pKSk9qSkpPakpKT2pKSk9qSk + pPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT4pKSk+KSkpPmkpKT6pKSk+qSk + pPqkpKT7pKSk+6SkpPukpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpP2kpKT9pKSk/aSkpP2kpKT+pKSk/qSkpP6kpKT+pKSk/qSkpP6kpKT+pKSk/qSk + pP6kpKT+pKSk/qSkpP6kpKT+pKSk/aSkpP2kpKT9pKSk/aSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT7pKSk+6SkpPukpKT6pKSk+qSkpPqkpKT5pKSk+KSk + pPikpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk9qSkpPakpKT2pKSk9qSk + pPakpKT1pKSk9aSkpPSkpKTzpKSk8qSkpPCkpKTvpKSk7qSkpO2kpKTspKSk66SkpOukpKTrpKSk66Sk + pOukpKTqpKSk6aSkpOikpKTmpKSk5KSkpOKkpKTfpKSk3aSkpNukpKTZpKSk2KSkpNakpKTTpKSk0KSk + pM2kpKTJpKSkxaSkpMCkpKS8pKSkt6SkpLGkpKSrpKSkoqSkpJikpKSMpKSkfaSkpGykpKRZpKSkRaSk + pDOkpKQipKSkFqSkpAykpKQGpKSkAqSkpAKkpKQGpKSkDaSkpBekpKQkpKSkNaSkpEikpKRcpKSkcKSk + pIKkpKSRpKSknaSkpKikpKSwpKSkt6SkpLykpKTBpKSkxaSkpMmkpKTNpKSk0aSkpNSkpKTYpKSk2qSk + pN2kpKTepKSk4KSkpOKkpKTjpKSk5aSkpOikpKTqpKSk66SkpO2kpKTupKSk7qSkpO+kpKTvpKSk76Sk + pO+kpKTwpKSk8KSkpPGkpKTxpKSk86SkpPSkpKT1pKSk9qSkpPekpKT3pKSk+KSkpPikpKT4pKSk+aSk + pPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPqkpKT6pKSk+qSk + pPukpKT7pKSk/KSkpPykpKT8pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP6kpKT+pKSk/qSkpP6kpKT+pKSk/qSkpP6kpKT+pKSk/qSk + pP6kpKT+pKSk/qSkpP6kpKT+pKSk/qSkpP6kpKT+pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/KSkpPykpKT8pKSk+6SkpPukpKT6pKSk+qSk + pPqkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+KSk + pPikpKT4pKSk96SkpPekpKT2pKSk9aSkpPSkpKTzpKSk8aSkpPGkpKTwpKSk8KSkpO+kpKTvpKSk76Sk + pO+kpKTupKSk7qSkpO2kpKTrpKSk6qSkpOikpKTlpKSk46SkpOKkpKTgpKSk3qSkpN2kpKTapKSk2KSk + pNSkpKTRpKSkzaSkpMmkpKTFpKSkwaSkpLykpKS3pKSksKSkpKikpKSdpKSkkaSkpIKkpKRwpKSkXKSk + pEikpKQ1pKSkJKSkpBekpKQNpKSkBqSkpAKkpKQCpKSkBqSkpAykpKQWpKSkIqSkpDKkpKRFpKSkWKSk + pGukpKR8pKSkiqSkpJakpKSgpKSkqaSkpK+kpKS1pKSkuaSkpL2kpKTBpKSkxaSkpMmkpKTNpKSk0KSk + pNOkpKTWpKSk2KSkpNqkpKTbpKSk3aSkpN+kpKThpKSk5KSkpOakpKTopKSk6aSkpOqkpKTqpKSk66Sk + pOukpKTrpKSk66SkpOykpKTspKSk7aSkpO6kpKTvpKSk8aSkpPKkpKTzpKSk9KSkpPWkpKT1pKSk9qSk + pPakpKT2pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96Sk + pPikpKT4pKSk+aSkpPqkpKT6pKSk+6SkpPukpKT7pKSk+6SkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPukpKT7pKSk+6SkpPukpKT6pKSk+qSkpPmkpKT4pKSk+KSk + pPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT3pKSk96SkpPekpKT2pKSk9qSk + pPakpKT1pKSk9aSkpPSkpKTzpKSk8qSkpPGkpKTvpKSk7qSkpO2kpKTspKSk7KSkpOukpKTrpKSk66Sk + pOukpKTqpKSk6qSkpOmkpKTopKSk5qSkpOSkpKThpKSk36SkpN2kpKTbpKSk2qSkpNikpKTWpKSk06Sk + pNCkpKTNpKSkyaSkpMWkpKTBpKSkvaSkpLmkpKS1pKSkr6SkpKmkpKSgpKSklqSkpIqkpKR8pKSka6Sk + pFikpKRFpKSkMqSkpCKkpKQWpKSkDKSkpAakpKQCpKSkAqSkpAWkpKQLpKSkE6SkpB6kpKQspKSkPKSk + pE2kpKRepKSkbaSkpHqkpKSFpKSkjqSkpJakpKScpKSkoqSkpKakpKSqpKSkrqSkpLKkpKS3pKSku6Sk + pL6kpKTCpKSkxaSkpMekpKTJpKSky6SkpM2kpKTPpKSk0qSkpNWkpKTYpKSk2qSkpNykpKTdpKSk3qSk + pN6kpKTfpKSk36SkpN+kpKTfpKSk4KSkpOGkpKTipKSk5KSkpOakpKTopKSk6aSkpOukpKTspKSk7aSk + pO6kpKTupKSk7qSkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pPCkpKTxpKSk8qSkpPOkpKT0pKSk9aSkpPakpKT2pKSk96SkpPekpKT3pKSk96SkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+KSk + pPikpKT4pKSk+KSkpPikpKT4pKSk96SkpPekpKT3pKSk96SkpPakpKT2pKSk9aSkpPSkpKTzpKSk8qSk + pPGkpKTwpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk7qSk + pO6kpKTupKSk7aSkpOykpKTrpKSk6aSkpOikpKTmpKSk5KSkpOKkpKThpKSk4KSkpN+kpKTfpKSk36Sk + pN+kpKTepKSk3qSkpN2kpKTcpKSk2qSkpNikpKTVpKSk0qSkpM+kpKTNpKSky6SkpMmkpKTHpKSkxaSk + pMKkpKS+pKSku6SkpLekpKSypKSkrqSkpKqkpKSmpKSkoqSkpJykpKSWpKSkjqSkpIWkpKR6pKSkbaSk + pF6kpKRNpKSkPKSkpCykpKQepKSkE6SkpAukpKQFpKSkAqSkpAKkpKQEpKSkCKSkpA+kpKQYpKSkI6Sk + pDCkpKQ+pKSkS6SkpFikpKRjpKSkbKSkpHSkpKR7pKSkgaSkpIakpKSLpKSkj6SkpJOkpKSXpKSknKSk + pKCkpKSkpKSkqKSkpKukpKStpKSksKSkpLKkpKS0pKSkt6SkpLukpKS/pKSkwqSkpMWkpKTHpKSkyaSk + pMqkpKTKpKSky6SkpMukpKTLpKSky6SkpMykpKTNpKSkz6SkpNGkpKTUpKSk16SkpNmkpKTcpKSk3aSk + pN+kpKTfpKSk4KSkpOCkpKTgpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOKkpKTjpKSk5KSkpOakpKTopKSk6qSkpOukpKTtpKSk7aSkpO6kpKTupKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk76Sk + pO+kpKTvpKSk76SkpO+kpKTvpKSk76SkpO+kpKTvpKSk7qSkpO6kpKTtpKSk7aSkpOukpKTqpKSk6KSk + pOakpKTkpKSk46SkpOKkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4KSk + pOCkpKTgpKSk36SkpN+kpKTdpKSk3KSkpNmkpKTXpKSk1KSkpNGkpKTPpKSkzaSkpMykpKTLpKSky6Sk + pMukpKTLpKSkyqSkpMqkpKTJpKSkx6SkpMWkpKTCpKSkv6SkpLukpKS3pKSktKSkpLKkpKSwpKSkraSk + pKukpKSopKSkpKSkpKCkpKScpKSkl6SkpJOkpKSPpKSki6SkpIakpKSBpKSke6SkpHSkpKRspKSkY6Sk + pFikpKRLpKSkPqSkpDCkpKQjpKSkGKSkpA+kpKQIpKSkBKSkpAKkpKQBpKSkA6SkpAakpKQKpKSkEaSk + pBmkpKQipKSkLaSkpDekpKRBpKSkSaSkpFGkpKRYpKSkXqSkpGOkpKRnpKSka6SkpG+kpKRzpKSkd6Sk + pHykpKSApKSkhaSkpImkpKSMpKSkjqSkpJGkpKSTpKSklqSkpJmkpKSdpKSkoqSkpKakpKSppKSkrKSk + pK6kpKSvpKSkr6SkpLCkpKSwpKSksKSkpLCkpKSxpKSks6SkpLWkpKS4pKSkvKSkpL+kpKTCpKSkxaSk + pMikpKTJpKSkyqSkpMukpKTLpKSky6SkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTNpKSkz6SkpNGkpKTUpKSk16SkpNmkpKTcpKSk3aSkpN+kpKTfpKSk4KSkpOCkpKTgpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKThpKSk4aSk + pOGkpKThpKSk4aSkpOGkpKThpKSk4aSkpOGkpKTgpKSk4KSkpOCkpKTfpKSk36SkpN2kpKTcpKSk2aSk + pNekpKTUpKSk0aSkpM+kpKTNpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMukpKTLpKSky6SkpMqkpKTJpKSkyKSkpMWkpKTCpKSkv6SkpLykpKS4pKSktaSkpLOkpKSxpKSksKSk + pLCkpKSwpKSksKSkpK+kpKSvpKSkrqSkpKykpKSppKSkpqSkpKKkpKSdpKSkmaSkpJakpKSTpKSkkaSk + pI6kpKSMpKSkiaSkpIWkpKSApKSkfKSkpHekpKRzpKSkb6SkpGukpKRnpKSkY6SkpF6kpKRYpKSkUaSk + pEmkpKRBpKSkN6SkpC2kpKQipKSkGaSkpBGkpKQKpKSkBqSkpAOkpKQBAAAAAKSkpAGkpKQDpKSkBqSk + pAukpKQQpKSkFqSkpB2kpKQkpKSkK6SkpDGkpKQ3pKSkPKSkpEGkpKRFpKSkSaSkpE2kpKRQpKSkVKSk + pFikpKRcpKSkYKSkpGSkpKRopKSka6SkpG2kpKRvpKSkcqSkpHWkpKR4pKSkfaSkpIGkpKSFpKSkiaSk + pIykpKSOpKSkj6SkpJCkpKSQpKSkkKSkpJCkpKSRpKSkkqSkpJSkpKSWpKSkmqSkpJ6kpKSipKSkpqSk + pKmkpKSspKSkrqSkpK+kpKSvpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSxpKSks6SkpLWkpKS4pKSkvKSkpL+kpKTCpKSkxaSkpMikpKTJpKSkyqSkpMukpKTLpKSky6Sk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSkzKSk + pMykpKTMpKSkzKSkpMykpKTMpKSkzKSkpMykpKTMpKSky6SkpMukpKTLpKSkyqSkpMmkpKTIpKSkxaSk + pMKkpKS/pKSkvKSkpLikpKS1pKSks6SkpLGkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpK+kpKSvpKSkrqSkpKykpKSppKSkpqSkpKKkpKSepKSkmqSkpJakpKSUpKSkkqSk + pJGkpKSQpKSkkKSkpJCkpKSQpKSkj6SkpI6kpKSMpKSkiaSkpIWkpKSBpKSkfaSkpHikpKR1pKSkcqSk + pG+kpKRtpKSka6SkpGikpKRkpKSkYKSkpFykpKRYpKSkVKSkpFCkpKRNpKSkSaSkpEWkpKRBpKSkPKSk + pDekpKQxpKSkK6SkpCSkpKQdpKSkFqSkpBCkpKQLpKSkBqSkpAOkpKQBAAAAAAAAAAAAAAAApKSkAqSk + pAOkpKQGpKSkCaSkpA2kpKQRpKSkFqSkpBqkpKQepKSkIqSkpCakpKQppKSkLaSkpC+kpKQypKSkNaSk + pDikpKQ7pKSkP6SkpEKkpKRGpKSkSaSkpEukpKROpKSkUKSkpFKkpKRVpKSkWKSkpFykpKRgpKSkZKSk + pGikpKRqpKSkbKSkpG2kpKRupKSkbqSkpG+kpKRvpKSkb6SkpHCkpKRypKSkdaSkpHmkpKR9pKSkgaSk + pIWkpKSJpKSkjKSkpI6kpKSPpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSRpKSkkqSkpJSkpKSWpKSkmqSkpJ6kpKSipKSkpqSkpKmkpKSspKSkrqSkpK+kpKSvpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSk + pLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSksKSkpLCkpKSwpKSkr6SkpK+kpKSupKSkrKSk + pKmkpKSmpKSkoqSkpJ6kpKSapKSklqSkpJSkpKSSpKSkkaSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkj6SkpI6kpKSMpKSkiaSkpIWkpKSBpKSkfaSkpHmkpKR1pKSkcqSk + pHCkpKRvpKSkb6SkpG+kpKRupKSkbqSkpG2kpKRspKSkaqSkpGikpKRkpKSkYKSkpFykpKRYpKSkVaSk + pFKkpKRQpKSkTqSkpEukpKRJpKSkRqSkpEKkpKQ/pKSkO6SkpDikpKQ1pKSkMqSkpC+kpKQtpKSkKaSk + pCakpKQipKSkHqSkpBqkpKQWpKSkEaSkpA2kpKQJpKSkBqSkpAOkpKQCAAAAAAAAAAAAAAAAAAAAAAAA + AACkpKQBpKSkA6SkpASkpKQHpKSkCaSkpAukpKQOpKSkEKSkpBOkpKQVpKSkGKSkpBqkpKQcpKSkHqSk + pCCkpKQipKSkJKSkpCekpKQqpKSkLKSkpC+kpKQxpKSkM6SkpDSkpKQ2pKSkOKSkpDukpKQ/pKSkQqSk + pEakpKRJpKSkS6SkpE2kpKROpKSkTqSkpE+kpKRPpKSkT6SkpFCkpKRRpKSkUqSkpFWkpKRYpKSkXKSk + pGCkpKRkpKSkaKSkpGqkpKRspKSkbaSkpG6kpKRupKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpHCkpKRypKSkdaSkpHmkpKR9pKSkgaSkpIWkpKSJpKSkjKSkpI6kpKSPpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSk + pJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSQpKSkkKSkpJCkpKSPpKSkjqSk + pIykpKSJpKSkhaSkpIGkpKR9pKSkeaSkpHWkpKRypKSkcKSkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRupKSkbqSkpG2kpKRspKSkaqSkpGikpKRkpKSkYKSkpFykpKRYpKSkVaSk + pFKkpKRRpKSkUKSkpE+kpKRPpKSkT6SkpE6kpKROpKSkTaSkpEukpKRJpKSkRqSkpEKkpKQ/pKSkO6Sk + pDikpKQ2pKSkNKSkpDOkpKQxpKSkL6SkpCykpKQqpKSkJ6SkpCSkpKQipKSkIKSkpB6kpKQcpKSkGqSk + pBikpKQVpKSkE6SkpBCkpKQOpKSkC6SkpAmkpKQHpKSkBKSkpAOkpKQBAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKSkpAGkpKQCpKSkA6SkpASkpKQFpKSkBqSkpAikpKQJpKSkC6SkpAykpKQNpKSkD6Sk + pBCkpKQRpKSkEqSkpBSkpKQWpKSkGKSkpBqkpKQbpKSkHaSkpB6kpKQfpKSkIaSkpCKkpKQlpKSkJ6Sk + pCqkpKQspKSkL6SkpDGkpKQypKSkM6SkpDOkpKQzpKSkM6SkpDSkpKQ0pKSkNaSkpDakpKQ4pKSkO6Sk + pD+kpKRCpKSkRqSkpEmkpKRLpKSkTaSkpE6kpKROpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpFCkpKRRpKSkUqSkpFWkpKRYpKSkXKSkpGCkpKRkpKSkaKSkpGqkpKRspKSkbaSk + pG6kpKRupKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6Sk + pG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG+kpKRvpKSkb6SkpG6kpKRupKSkbaSk + pGykpKRqpKSkaKSkpGSkpKRgpKSkXKSkpFikpKRVpKSkUqSkpFGkpKRQpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE6kpKROpKSkTaSkpEukpKRJpKSkRqSkpEKkpKQ/pKSkO6Sk + pDikpKQ2pKSkNaSkpDSkpKQ0pKSkM6SkpDOkpKQzpKSkM6SkpDKkpKQxpKSkL6SkpCykpKQqpKSkJ6Sk + pCWkpKQipKSkIaSkpB+kpKQepKSkHaSkpBukpKQapKSkGKSkpBakpKQUpKSkEqSkpBGkpKQQpKSkD6Sk + pA2kpKQMpKSkC6SkpAmkpKQIpKSkBqSkpAWkpKQEpKSkA6SkpAKkpKQBAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAqSkpAKkpKQDpKSkBKSkpAWkpKQFpKSkBqSk + pAekpKQHpKSkCKSkpAmkpKQKpKSkC6SkpAykpKQNpKSkDqSkpA+kpKQQpKSkEaSkpBGkpKQTpKSkFKSk + pBakpKQYpKSkGqSkpBukpKQcpKSkHaSkpB6kpKQepKSkHqSkpB6kpKQepKSkH6SkpCCkpKQhpKSkIqSk + pCWkpKQnpKSkKqSkpCykpKQvpKSkMaSkpDKkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOgoKBAmZmZZpaWlo2VlZWak5OTs5KSks2RkZHNkZGRzpCQkM+QkJDQkpKSo5KSkqSVlZWDmZmZbqSk + pE6kpKROpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6Sk + pE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkT6SkpE+kpKRPpKSkTqSk + pE6kpKRNpKSkS6SkpEmkpKRGpKSkQqSkpD+kpKQ7pKSkOKSkpDakpKQ1pKSkNKSkpDSkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDKkpKQxpKSkL6SkpCykpKQqpKSkJ6Sk + pCWkpKQipKSkIaSkpCCkpKQfpKSkHqSkpB6kpKQepKSkHqSkpB6kpKQdpKSkHKSkpBukpKQapKSkGKSk + pBakpKQUpKSkE6SkpBGkpKQRpKSkEKSkpA+kpKQOpKSkDaSkpAykpKQLpKSkCqSkpAmkpKQIpKSkB6Sk + pAekpKQGpKSkBaSkpAWkpKQEpKSkA6SkpAKkpKQCpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGkpKQBpKSkAqSk + pAKkpKQCpKSkA6SkpAOkpKQDpKSkBKSkpAWkpKQFpKSkBqSkpAakpKQHpKSkB6SkpAikpKQIpKSkCaSk + pAqkpKQLpKSkDKSkpA2kpKQOpKSkD6SkpA+kpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQRpKSkEaSk + pBOkpKQUpKSkFqSkpBikpKQapKSkG6SkpBykpKQdpKSkHqSkpB6kpKQepKSkHqSkpB6kpKQemZmZZJeX + l52VlZXVlJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yM + jP+Li4v/jIyMzI+Pj4yZmZlNpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6SkpDOkpKQzpKSkM6Sk + pDOkpKQzpKSkMqSkpDGkpKQvpKSkLKSkpCqkpKQnpKSkJaSkpCKkpKQhpKSkIKSkpB+kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQdpKSkHKSkpBukpKQapKSkGKSk + pBakpKQUpKSkE6SkpBGkpKQRpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkD6SkpA+kpKQOpKSkDaSk + pAykpKQLpKSkCqSkpAmkpKQIpKSkCKSkpAekpKQHpKSkBqSkpAakpKQFpKSkBaSkpASkpKQDpKSkA6Sk + pAOkpKQCpKSkAqSkpAKkpKQBpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQDpKSkA6Sk + pAOkpKQEpKSkBaSkpAWkpKQGpKSkBqSkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkCKSk + pAikpKQJpKSkCqSkpAukpKQMpKSkDaSkpA6kpKQPpKSkD6SkpBCkpKQQpKSkEJubm0yYmJill5eX8JeX + l/+Wlpb/lZWV/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42N + jf+MjIz/jIyM/4uLi/+Kior/iYmJ/4qKitWMjIyAmpqaLKSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSkpB6kpKQepKSkHqSk + pB6kpKQepKSkHqSkpB2kpKQcpKSkG6SkpBqkpKQYpKSkFqSkpBSkpKQTpKSkEaSkpBGkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkD6SkpA+kpKQOpKSkDaSk + pAykpKQLpKSkCqSkpAmkpKQIpKSkCKSkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkBqSk + pAakpKQFpKSkBaSkpASkpKQDpKSkA6SkpAOkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAGkpKQBpKSkAaSk + pAGkpKQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpASkpKQFpKSkBaSkpAakpKQGpKSkB6SkpAekpKQHm5ubZJqamtGZmZn/mZmZ/5iY + mP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46O + jv+Ojo7/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiPCIiIilkJCQLqSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSkpBCkpKQQpKSkEKSk + pBCkpKQQpKSkEKSkpBCkpKQPpKSkD6SkpA6kpKQNpKSkDKSkpAukpKQKpKSkCaSkpAikpKQIpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkBqSk + pAakpKQFpKSkBaSkpASkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAKkpKQCpKSkAqSkpAKcnJxBnJyc0Jubm/+ampr/mpqa/5mZ + mf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+IiIiTj4+PF6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQHpKSkB6Sk + pAekpKQHpKSkB6SkpAekpKQHpKSkB6SkpAekpKQGpKSkBqSkpAWkpKQFpKSkBKSkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ6enhCenp6gnZ2d/5ycnP+cnJz/m5ub/5qa + mv+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4eH + h++Hh4dSpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAOkpKQDpKSkA6Sk + pAOkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+fn0Cfn5/vnp6e/52dnf+dnZ3/nJyc/5yc + nP+bm5v/mpqa/5qamv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KS + kv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iI + iP+Hh4f/hoaG/4aGhrCIiIgRpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCgoICgoKD/n5+f/5+fn/+enp7/nZ2d/52d + nf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OT + k/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJ + if+JiYn/iIiI/4eHh/+Ghob/hoaGz4WFhTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKGhoZ+hoaH/oKCg/6CgoP+fn5//n5+f/56e + nv+dnZ3/nZ2d/5ycnP+cnJz/m5ub/5qamv+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WV + lf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uL + i/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+GhobvhYWFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo6OjEKOjo6+ioqL/oaGh/6Ghof+goKD/oKCg/5+f + n/+fn5//np6e/52dnf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aW + lv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yM + jP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aGhv+FhYVgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkEKSkpM+jo6P/o6Oj/6Kiov+hoaH/oaGh/6Cg + oP+goKD/n5+f/5+fn/+enp7/nZ2d/52dnf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eX + l/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42N + jf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Ghob/hoaG/4WFhWAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApaWlEKWlpc+kpKT/pKSk/6Ojo/+jo6P/oqKi/6Gh + of+hoaH/oKCg/6CgoP+fn5//n5+f/56env+dnZ3/nZ2d/5ycnP+cnJz/m5ub/5qamv+ampr/mZmZ/5iY + mP+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+P + j/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+Ghob/hYWFYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApqamEKamps+lpaX/paWl/6SkpP+kpKT/o6Oj/6Oj + o/+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qa + mv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQ + kP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aG + hv+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAp6enEKenp8+mpqb/pqam/6Wlpf+lpaX/pKSk/6Sk + pP+jo6P/oqKi/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/5ub + m/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GR + kf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+IiIj/iIiI/4eH + h/+Ghob/hoaG/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqKioEKioqM+np6f/p6en/6ampv+mpqb/paWl/6Wl + pf+kpKT/pKSk/6Ojo/+ioqL/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/5yc + nP+bm5v/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OT + k/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4iI + iP+IiIj/h4eH/4aGhv+Ghob/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqampEKmpqc+oqKj/qKio/6enp/+np6f/pqam/6am + pv+lpaX/paWl/6SkpP+kpKT/o6Oj/6Kiov+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52d + nf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SU + lP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qK + iv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqqqqEKqqqs+pqan/qamp/6ioqP+oqKj/p6en/6en + p/+mpqb/pqam/6Wlpf+lpaX/pKSk/6SkpP+jo6P/oqKi/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/56e + nv+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+Wlpb/lpaW/5WV + lf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uL + i/+Li4v/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAq6urEKurq8+qqqr/qqqq/6mpqf+pqan/qKio/6io + qP+np6f/p6en/6ampv+mpqb/paWl/6Wlpf+kpKT/pKSk/6Ojo/+ioqL/oqKi/6Ghof+hoaH/oKCg/6Cg + oP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5aW + lv+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42N + jf+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+Ghob/hYWFYAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArKysEKysrM+rq6v/q6ur/6qqqv+qqqr/qamp/6mp + qf+oqKj/qKio/6enp/+np6f/pqam/6ampv+lpaX/paWl/6SkpP+kpKT/o6Oj/6Kiov+ioqL/oaGh/6Gh + of+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iY + mP+Xl5f/lpaW/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46O + jv+NjY3/jY2N/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYVgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAra2tEK2trc+srKz/rKys/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6ioqP+oqKj/p6en/6enp/+mpqb/pqam/6Wlpf+lpaX/pKSk/6SkpP+jo6P/oqKi/6Ki + ov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZ + mf+YmJj/mJiY/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+P + j/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WF + hWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArq6uEK6urs+tra3/ra2t/6ysrP+srKz/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6ampv+mpqb/paWl/6Wlpf+kpKT/o6Oj/6Oj + o/+ioqL/oqKi/6Ghof+lpaX/qKio/6qqqv+srKz/rq6u/66urv+urq7/ra2t/6enp/+mpqb/oKCg/52d + nf+ampr/mZmZ/5iYmP+YmJj/l5eX/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5OTk/+SkpL/kZGR/5GR + kf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aG + hv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAr6+vEK+vr8+urq7/rq6u/62trf+tra3/rKys/6ys + rP+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6enp/+np6f/pqam/6ampv+lpaX/paWl/6Sk + pP+lpaX/qqqq/7CwsP+2trb/tra2/7a2tv+1tbX/tLS0/7S0tP+zs7P/s7Oz/7Ozs/+zs7P/srKy/7Gx + sf+xsbH/ra2t/6ampv+dnZ3/mJiY/5iYmP+Xl5f/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/k5OT/5KS + kv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iI + iP+Hh4f/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsLCwELCwsM+vr6//r6+v/66urv+urq7/ra2t/62t + rf+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/p6en/6enp/+mpqb/pqam/6io + qP+xsbH/t7e3/7e3t/+3t7f/t7e3/7e3t/+2trb/tra2/7W1tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Oz + s/+ysrL/sbGx/7Gxsf+wsLD/r6+v/6ysrP+hoaH/mZmZ/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OT + k/+SkpL/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJ + if+IiIj/iIiI/4eHh/+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsbGxELGxsc+wsLD/sLCw/6+vr/+vr6//rq6u/66u + rv+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+np6f/qKio/7Oz + s/+6urr/ubm5/7m5uf+4uLj/t7e3/7e3t/+3t7f/t7e3/7a2tv+ysrL/sLCw/6+vr/+vr6//rq6u/7Cw + sP+zs7P/s7Oz/7Kysv+xsbH/sbGx/7CwsP+vr6//r6+v/6ysrP+goKD/l5eX/5aWlv+Wlpb/lZWV/5SU + lP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qK + iv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsrKyELGxsc+xsbH/sbGx/7CwsP+wsLD/r6+v/6+v + r/+urq7/rq6u/62trf+tra3/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+oqKj/rq6u/7q6 + uv+7u7v/urq6/7q6uv+5ubn/ubm5/7S0tP+vr6//qamp/6Wlpf+ioqL/oaGh/6Ghof+goKD/n5+f/5+f + n/+enp7/np6e/6Ghof+lpaX/qqqq/7CwsP+xsbH/sLCw/6+vr/+vr6//r6+v/6mpqf+bm5v/lpaW/5aW + lv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yM + jP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs7OzELKyss+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+vr6//r6+v/66urv+urq7/ra2t/62trf+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+qqqr/tbW1/7y8 + vP+8vLz/u7u7/7u7u/+5ubn/sbGx/6ioqP+lpaX/pKSk/6Ojo/+jo6P/oqKi/6Kiov+hoaH/oaGh/6Cg + oP+fn5//n5+f/56env+enp7/nZ2d/5ycnP+cnJz/oqKi/6qqqv+wsLD/r6+v/6+vr/+vr6//ra2t/6Cg + oP+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42N + jf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hYWF/4WFhWAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtLS0ELOzs8+zs7P/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/6+vr/+vr6//rq6u/66urv+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+rq6v/ubm5/7y8 + vP+8vLz/vLy8/7u7u/+xsbH/qKio/6ampv+mpqb/paWl/6SkpP+kpKT/o6Oj/6Ojo/+ioqL/oqKi/6Gh + of+hoaH/oKCg/5+fn/+fn5//np6e/56env+dnZ3/nJyc/5ycnP+bm5v/nZ2d/6ioqP+vr6//r6+v/6+v + r/+vr6//pKSk/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46O + jv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+FhYX/hYWFYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtLS0ELS0tM+0tLT/s7Oz/7Ozs/+ysrL/srKy/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/r6+v/6+vr/+urq7/rq6u/62trf+tra3/rKys/6ysrP+srKz/urq6/729 + vf+9vb3/vLy8/7S0tP+pqan/qKio/6enp/+np6f/pqam/6ampv+lpaXvpKSkr6SkpICjo6NAo6OjMAAA + AAAAAAAAAAAAAKCgoBCgoKBAn5+fUJ+fn4+enp7Pnp6e/52dnf+cnJz/nJyc/5ubm/+bm5v/np6e/6ur + q/+vr6//r6+v/6+vr/+lpaX/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WF + hf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtbW1ELW1tc+0tLT/tLS0/7S0tP+zs7P/s7Oz/7Ky + sv+ysrL/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/66urv+urq7/ra2t/62trf+tra3/u7u7/76+ + vv++vr7/vLy8/6+vr/+pqan/qamp/6ioqP+oqKj/p6en/6enp6+mpqZQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ6eniCdnZ1wnZ2d35ycnP+cnJz/m5ub/5ub + m/+ampr/pKSk/6+vr/+vr6//rq6u/6Wlpf+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/h4eH/4eH + h/+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtra2ELa2ts+1tbX/tbW1/7S0tP+0tLT/tLS0/7Oz + s/+zs7P/srKy/7Kysv+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//rq6u/66urv+urq7/vLy8/7+/ + v/+/v7//u7u7/6ysrP+qqqr/qqqq/6mpqf+pqan/qKion6ioqCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ1gnJyc35yc + nP+bm5v/m5ub/5qamv+fn5//rq6u/6+vr/+urq7/paWl/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KS + kv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iI + iP+Hh4f/h4eH/4aGhv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt7e3ELa2ts+2trb/tra2/7W1tf+1tbX/tLS0/7S0 + tP+0tLT/s7Oz/7Ozs/+ysrL/srKy/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//vb29/8DA + wP/AwMD/uLi4/62trf+rq6v/q6ur/6qqqv+qqqrPqampQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACcnJxwnJyc75ubm/+bm5v/mpqa/52dnf+urq7/r6+v/66urv+lpaX/lpaW/5aWlv+VlZX/lJSU/5SU + lP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qK + iv+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuLi4ELe3t8+3t7f/tra2/7a2tv+2trb/tbW1/7W1 + tf+0tLT/tLS0/7S0tP+zs7P/s7Oz/7Kysv+ysrL/sbGx/7Gxsf+wsLD/sLCw/7CwsP+wsLD/vb29/8DA + wP/AwMD/ubm5/62trf+srKz/rKys/6urq/+rq6ufqqqqEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJycnDCcnJzPm5ub/5ubm/+ampr/nZ2d/66urv+vr6//rq6u/6Wlpf+Wlpb/lpaW/5WV + lf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uL + i/+Kior/iYmJ/4mJif+IiIj/h4eH/4eHh/+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALi4uM+4uLj/t7e3/7e3t/+2trb/tra2/7a2 + tv+1tbX/tbW1/7S0tP+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+xsbH/sbGx/7CwsP+xsbH/vr6+/8HB + wf/BwcH/ubm5/66urv+tra3/ra2t/6ysrP+srKxgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAnJycEJycnL+bm5v/m5ub/5qamv+dnZ3/rq6u/6+vr/+urq7/paWl/5aW + lv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yM + jP+MjIz/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALm5uZ+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2 + tv+2trb/tra2/7W1tf+1tbX/tLS0/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Gxsf+xsbH/vb29/8LC + wv/CwsL/urq6/6+vr/+urq7/rq6u/62trf+tra1gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycn5ubm/+bm5v/mpqa/52dnf+urq7/r6+v/66u + rv+lpaX/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46O + jv+NjY3/jIyM/4yMjP+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+FhYVgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALm5uZ+5ubn/ubm5/7i4uP+4uLj/t7e3/7e3 + t/+3t7f/tra2/7a2tv+2trb/tbW1/7W1tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/ubm5/8PD + w//CwsL/u7u7/6+vr/+vr6//r6+v/66urv+urq5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcnJyfm5ub/5qamv+ampr/nZ2d/66u + rv+vr6//rq6u/6Wlpf+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+P + j/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4eHh/+Ghob/hYWF/4WF + hWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALq6umC6urr/ubm5/7m5uf+5ubn/uLi4/7i4 + uP+3t7f/t7e3/7e3t/+2trb/tra2/7a2tv+1tbX/tbW1/7S0tP+0tLT/s7Oz/7Ozs/+zs7P/tLS0/8TE + xP/Dw8P/v7+//7CwsP+wsLD/r6+v/6+vr/+vr69gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJycnJ+bm5v/mpqa/5qa + mv+dnZ3/rq6u/6+vr/+urq7/paWl/5aWlv+VlZX/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQ + kP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/h4eH/4aG + hv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALu7uzC6urrvurq6/7q6uv+5ubn/ubm5/7m5 + uf+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2tv+2trb/tra2/7W1tf+1tbX/tLS0/7S0tP+zs7P/s7Oz/8DA + wP/ExMT/wcHB/7Kysv+xsbH/sLCw/7CwsP+vr69gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycn5ub + m/+ampr/mpqa/52dnf+urq7/r6+v/66urv+lpaX/lpaW/5WVlf+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KS + kv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eH + h/+Hh4f/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7u7vPu7u7/7q6uv+6urr/urq6/7m5 + uf+5ubn/ubm5/7i4uP+4uLj/t7e3/7e3t/+3t7f/tra2/7a2tv+1tbX/tbW1/7W1tf+0tLT/tLS0/7i4 + uP/ExMT/w8PD/7W1tf+ysrL/sbGx/7Gxsf+wsLBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACbm5ufm5ub/5qamv+ampr/nZ2d/66urv+vr6//rq6u/6Wlpf+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OT + k/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJ + if+IiIj/h4eH/4eHh/+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8vLxwu7u7/7u7u/+7u7v/urq6/7q6 + uv+6urr/ubm5/7m5uf+5ubn/uLi4/7i4uP+3t7f/t7e3/7e3t/+2trb/tra2/7W1tf+1tbX/tbW1/7S0 + tP/BwcH/xMTE/7q6uv+zs7P/srKy/7Kysv+xsbGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJubm5+bm5v/mpqa/5qamv+dnZ3/rq6u/6+vr/+urq7/paWl/5aWlv+VlZX/lZWV/5SU + lP+Tk5P/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qK + iv+JiYn/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8vLwQvLy877y8vP+7u7v/u7u7/7u7 + u/+6urr/urq6/7q6uv+5ubn/ubm5/7m5uf+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2tv+2trb/tbW1/7W1 + tf+3t7f/xcXF/8HBwf+zs7P/s7Oz/7Ozs/+ysrK/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ubm/+ampr/mpqa/52dnf+urq7/r6+v/66urv+lpaX/lpaW/5WV + lf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uL + i/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Ghob/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvb29j7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/ubm5/7i4uP+4uLj/t7e3/7e3t/+3t7f/tra2/7a2 + tv+1tbX/v7+//8fHx/+4uLj/tLS0/7Ozs/+zs7Pvs7OzEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5ufm5ub/5qamv+ampr/nZ2d/66urv+vr6//rq6u/6Wl + pf+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42N + jf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+Ghob/hYWF/4WFhWAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvb29EL29vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+5ubn/uLi4/7i4uP+3t7f/t7e3/7e3 + t/+2trb/tra2/8TExP/CwsL/tbW1/7S0tP+0tLT/s7OzcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJubm5+bm5v/mpqa/5qamv+dnZ3/rq6u/6+v + r/+urq7/paWl/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46O + jv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hYWFYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29vYC9vb3/vb29/7y8 + vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/7m5uf+4uLj/uLi4/7e3 + t/+3t7f/t7e3/7m5uf/IyMj/urq6/7W1tf+1tbX/tLS03wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ubm/+ampr/mpqa/52d + nf+urq7/r6+v/66urv+lpaX/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+P + j/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Ghob/hoaG/4WF + hf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC+vr7fvb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/uLi4/7i4 + uP+4uLj/t7e3/7e3t/++vr7/xcXF/7a2tv+1tbX/tbW1/7W1tWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5ufm5ub/5qa + mv+ampr/nZ2d/66urv+vr6//rq6u/6Wlpf+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GR + kf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4aG + hv+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC+vr5Qvr6+/76+ + vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5 + uf+4uLj/uLi4/7i4uP+3t7f/wsLC/8DAwP+2trb/tra2/7W1te+1tbUQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJub + m5+bm5v/mpqa/5qamv+dnZ3/rq6u/6+vr/+urq7/paWl/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KS + kv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iI + iP+Hh4f/hoaG/4aGhv+FhYX/hYWFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvr6+n76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+5ubn/ubm5/7i4uP+4uLj/uLi4/8TExP+6urr/t7e3/7a2tv+2trafAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAm5ubn5ubm/+ampr/mpqa/52dnf+urq7/r6+v/66urv+lpaX/lpaW/5WVlf+VlZX/lJSU/5OT + k/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJ + if+JiYn/iIiI/4eHh/+Ghob/hoaG/4WFhf+FhYVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+/ + v+++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7m5uf+5ubn/uLi4/7i4uP/FxcX/t7e3/7e3t/+3t7f/tra2YAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACbm5ufm5ub/5qamv+ampr/nZ2d/66urv+vr6//rq6u/6Wlpf+Wlpb/lZWV/5WV + lf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uL + i/+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+Ghob/hYWF/4WFhWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+/ + vzC/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+4uLj/xMTE/7i4uP+3t7f/t7e3/7e3tyAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJubm5+bm5v/mpqa/5qamv+dnZ3/rq6u/6+vr/+urq7/paWl/5aW + lv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yM + jP+Li4v/i4uL/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hYWFMAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC/v79wv7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/8DAwP+4uLj/uLi4/7e3t98AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ubm/+ampr/mpqa/52dnf+urq7/r6+v/66u + rv+lpaX/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42N + jf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WFhe+FhYUwAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAwMDAn7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/ubm5/7m5uf/BwcH/uLi4/7i4uP+4uLi/AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5ufm5ub/5qamv+ampr/nZ2d/66u + rv+vr6//rq6u/6Wlpf+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+P + j/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+Ghob/hYWFz4WF + hRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMDAwL/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+7u7v/urq6/7q6uv+5ubn/vLy8/7m5uf+4uLj/uLi4nwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJubm5+bm5v/mpqa/5qa + mv+dnZ3/rq6u/6+vr/+urq7/paWl/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQ + kP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aG + hv+FhYWPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADAwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/ubm5/7i4 + uIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ub + m/+ampr/mpqa/52dnf+urq7/r6+v/66urv+lpaX/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GR + kf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eH + h/+Ghob/hoaG/4WFhUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5 + uf+5ubmAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACbm5ufm5ub/5qamv+ampr/nZ2d/66urv+vr6//rq6u/6Wlpf+Wlpb/lZWV/5SUlP+UlJT/k5OT/5OT + k/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4qKiv+Kior/iYmJ/4iI + iP+IiIj/h4eH/4aGhv+GhobfhYWFEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwcHBMMHBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+5ubn/ubm5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJubm5+bm5v/mpqa/5qamv+dnZ3/rq6u/6+vr/+urq7/oqKi/5aWlv+VlZX/lJSU/5SU + lP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qK + iv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHBwUDBwcH/wcHB/8DAwP/Q0ND/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7q6ur8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ubm/+ampr/mpqa/52dnf+urq7/r6+v/66urv+enp7/lpaW/5WV + lf+UlJT/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+MjIz/jIyM/4uL + i/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+GhobvhoaGEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBwcFAwcHB/8HBwf/BwcH/0NDQ/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urq/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5ufm5ub/5qamv+ZmZn/nZ2d/66urv+vr6//ra2t/5iY + mP+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5GRkf+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yM + jP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwcHBQMHBwf/BwcH/wcHB/9HR0f/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJubm5+bm5v/mpqa/5mZmf+dnZ3/rq6u/6+v + r/+lpaX/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46O + jv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4fvAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHBwUDBwcH/wcHB/8HBwf/U1NT/wcHB/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubn5ubm/+ampr/mZmZ/6Cg + oP+vr6//r6+v/52dnf+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+P + j/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh2AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsIQwcHB/8HBwf/BwcH/1dXV/8HB + wf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/u7u7cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5u/m5ub/5qa + mv+ZmZn/paWl/6+vr/+pqan/l5eX/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQ + kP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIivAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwv/BwcH/wcHB/9fX + 1//Hx8f/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u88AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubEJub + m9+bm5v/mpqa/5mZmf+srKz/r6+v/52dnf+Xl5f/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KS + kv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iI + iBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsLfwsLC/8HB + wf/Q0ND/zs7O/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7IAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACcnJwwm5ub/5ubm/+ampr/n5+f/6+vr/+mpqb/mJiY/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OT + k/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJ + if+JiYlQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCv8LC + wv/CwsL/zc3N/9XV1f/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u58AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJycnICbm5v/m5ub/5qamv+qqqr/rq6u/5iYmP+Xl5f/l5eX/5aWlv+Wlpb/lZWV/5SU + lP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qK + iv+Kior/iYmJnwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLC + woDCwsL/wsLC/8jIyP/e3t7/w8PD/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7IAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACcnJwQnJyc35ubm/+bm5v/oKCg/6+vr/+goKD/mJiY/5eXl/+Xl5f/lpaW/5aW + lv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yM + jP+Li4v/ioqK/4qKis8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADCwsJQwsLC/8LCwv/CwsL/3d3d/87Ozv/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJycnGCcnJz/m5ub/5ubm/+srKz/pqam/5mZmf+YmJj/l5eX/5eX + l/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42N + jf+MjIz/jIyM/4uLi/+Kior/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAwsLCEMLCwv/CwsL/wsLC/9XV1f/b29v/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/vLy8UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJyc75ycnP+bm5v/o6Oj/6ysrP+ZmZn/mZmZ/5iY + mP+Xl5f/l5eX/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46O + jv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4uLi0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADCwsLPwsLC/8LCwv/Ozs7/39/f/83Nzf/BwcH/wcHB/8HBwf/BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vO+8vLwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dnY+cnJz/nJyc/5ycnP+xsbH/mpqa/5mZ + mf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4tAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwsLCcMLCwv/CwsL/wsLC/93d3f/c3Nz/wsLC/8HBwf/BwcH/wcHB/8HB + wf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8z7y8vBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0wnZ2d/5ycnP+cnJz/ra2t/5+f + n/+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDwyDCwsL/wsLC/8LCwv/V1dX/39/f/8/Pz//CwsL/wcHB/8HB + wf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLzPvLy8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dne+dnZ3/nJyc/6en + p/+hoaH/mpqa/5qamv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KS + kv+SkpL/kZGR/5CQkP+QkJD/j4+P/5GRkf+Ojo7/jY2N/4yMjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDr8LCwv/CwsL/x8fH/9/f3//d3d3/xMTE/8LC + wv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vM+8vLwQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACenp6vnZ2d/52d + nf+jo6P/oaGh/5ubm/+ampr/mpqa/5mZmf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5SU + lP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+bm5v/jo6O/46Ojv+NjY2AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw0DDw8P/wsLC/8LCwv/V1dX/39/f/9bW + 1v/CwsL/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8z7y8vBAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKurq0Crq6uAq6urn6qqqr+qqqq/qqqqv6mp + qb+pqamAqKioYKioqCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn5+fgJ6e + nv+dnZ3/oaGh/6Kiov+cnJz/m5ub/5qamv+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WV + lf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+ZmZn/m5ub/4+Pj/+Ojo7/jo6OgAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDz8PDw//CwsL/x8fH/9/f + 3//f39//z8/P/8LCwv/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLzPvLy8EAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACtra0grKysj6ysrO+srKz/q6ur/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6mpqf+oqKj/qKioz6ioqGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+f + n1Cfn5//np6e/52dnf+ioqL/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aW + lv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+SkpL/nZ2d/5ycnP+QkJD/j4+P/46OjoAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw0DDw8P/w8PD/8LC + wv/R0dH/39/f/9/f3//Kysr/wsLC/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vM+8vLwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6urhCtra2fra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en36enp1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACgoKBAn5+f/5+fn/+enp7/oKCg/52dnf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+ZmZn/mJiY/5eX + l/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/6mpqf+dnZ3/kJCQ/5CQkP+Pj4+AAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDv8PD + w//Dw8P/wsLC/9ra2v/f39//3d3d/8jIyP/CwsL/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8z7y8vBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAK+vr0Curq7vrq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6ur + q/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6enr6enpxAAAAAAAAAAAAAA + AAAAAAAAoKCgQKCgoP+fn5//n5+f/56env+dnZ3/nZ2d/5ycnP+cnJz/m5ub/5qamv+ampr/mZmZ/5mZ + mf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+vr6//mpqa/5GRkf+QkJD/kJCQgAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + wyDDw8P/w8PD/8PDw//IyMj/3d3d/9/f3//d3d3/yMjI/8LCwv/CwsL/wcHB/8HBwf/BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLzPvLy8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAK+vr2Cvr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ys + rP+srKz/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6enp/+np6fPp6enIAAA + AAAAAAAAAAAAAKGhoUCgoKD/oKCg/5+fn/+fn5//np6e/52dnf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qa + mv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/u7u7/5KSkv+RkZH/kZGR/5CQ + kFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDgMPDw//Dw8P/w8PD/87Ozv/f39//39/f/93d3f/IyMj/wsLC/8LCwv/BwcH/wcHB/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vM+7u7sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALCwsGCvr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62t + rf+srKz/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en/6en + p++np6cwAAAAAAAAAAChoaFAoaGh/6CgoP+goKD/n5+f/5+fn/+enp7/nZ2d/52dnf+cnJz/nJyc/5ub + m/+ampr/mpqa/5mZmf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/mpqa/7y8vP+Tk5P/kpKS/5GR + kf+RkZFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8O/w8PD/8PDw//Dw8P/09PT/9/f3//f39//3d3d/8jIyP/CwsL/wsLC/8HB + wf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8z7u7uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALCwsGCwsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6io + qP+np6f/p6en76enpzAAAAAAoqKiUKGhof+hoaH/oKCg/6CgoP+fn5//n5+f/56env+dnZ3/nZ2d/5yc + nP+cnJz/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5eXl/+Wlpb/lZWV/6mpqf+3t7f/k5OT/5OT + k/+SkpL/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDEMPDw+/Dw8P/w8PD/8PDw//V1dX/39/f/9/f3//d3d3/yMjI/8LC + wv/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLzPu7u7EAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALGxsTCxsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6mp + qf+oqKj/qKio/6enp/+np6fvp6enMKKiooCioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+fn5//np6e/52d + nf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+6urr/rKys/5SU + lP+Tk5P/k5OT3wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Mww8PD78PDw//Dw8P/w8PD/9XV1f/f39//39/f/93d + 3f/IyMj/wsLC/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vM+7u7sQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACxsbHfsbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mp + qf+pqan/qamp/6ioqP+oqKj/p6en/6enp++kpKTPo6Oj/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/5+f + n/+enp7/nZ2d/52dnf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+cnJz/w8PD/6Gh + of+VlZX/lJSU/5SUlJ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDwzDDw8Pvw8PD/8PDw//Dw8P/1dXV/9/f + 3//f39//3d3d/8jIyP/CwsL/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8z7u7 + uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACysrKAsrKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qq + qv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6SkpP+jo6P/oqKi/6Ghof+hoaH/oKCg/6Cg + oP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/s7Oz/8HB + wf+Wlpb/lZWV/5WVlf+UlJRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8PD + w//V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+8vLzPu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsrKy77Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+rq6v/q6ur/6ur + q/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pKSk/6Kiov+ioqL/oaGh/6Gh + of+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qamv+ZmZn/np6e/8XF + xf+zs7P/l5eX/5aWlv+VlZX/lZWVEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PD + w//Dw8P/w8PD/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7y8vM+7u7sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs7OzYLOzs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ur + q/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+kpKT/oqKi/6Ki + ov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/7W1 + tf/FxcX/o6Oj/5eXl/+Xl5f/lpaWrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w2DDw8P/w8PD/8PDw//Dw8P/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wsLC/8HBwf/BwcH/wcHB/8HB + wf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/vLy8z7u7uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALOzs6+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ys + rP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6Sk + pP+ioqL/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/6Ki + ov/Hx8f/wMDA/5iYmP+YmJj/l5eX/5eXl2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDYMPDw//Dw8P/w8PD/8PDw//V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/CwsL/wcHB/8HB + wf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLzPu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLT/s7Oz/7Ozs/+zs7P/srKy/7Ky + sv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62t + rf+tra3/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6en + p/+np6f/pKSk/6Kiov+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ub + m/++vr7/x8fH/6qqqv+ZmZn/mJiY/5iYmO+Xl5cQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/w8PD/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8LC + wv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u8+7u7sQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLQwtLS0/7S0tP+zs7P/s7Oz/7Oz + s/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66u + rv+tra3/ra2t/62trf+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6io + qP+oqKj/p6en/6enp/+kpKT/oqKi/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52d + nf+ysrL/x8fH/8HBwf+ampr/mpqa/5mZmf+YmJiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//Dw8P/1dXV/9/f3//f39//3d3d/8jI + yP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7z7u7uxAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtLS0QLS0tP+0tLT/tLS0/8DA + wP+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66u + rv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mp + qf+oqKj/qKio/6ioqP+np6f/p6en/6SkpP+ioqL/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56e + nv+oqKj/ycnJ/8jIyP+pqan/m5ub/5qamv+amprvmZmZIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f + 3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7vPu7u7EAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALW1tXC0tLT/tLS0/7S0 + tP/Kysr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+v + r/+vr6//rq6u/66urv+urq7/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qq + qv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pKSk/6Kiov+ioqL/oaGh/6Ghof+goKD/oKCg/5+f + n/+mpqb/xcXF/8nJyf+9vb3/nJyc/5ubm/+bm5v/mpqagAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV + 1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u8+7u7sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC1tbWAtbW1/7S0 + tP+6urr/1dXV/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7Cw + sP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qq + qv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+kpKT/oqKi/6Kiov+hoaH/oaGh/6Cg + oP+ioqL/wcHB/8nJyf/FxcX/oqKi/52dnf+cnJz/m5ub75ubmxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PD + w//CwsL/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7z7u7uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtbW1cLW1 + tf+1tbX/tLS0/9fX1//BwcH/s7Oz/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7Cw + sP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/rKys/6ysrP+srKz/q6ur/6ur + q/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6SkpP+ioqL/oqKi/6Gh + of+jo6P/wsLC/8rKyv/Kysr/rq6u/56env+dnZ3/nZ2d/5ycnFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPD + w//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7vPu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALa2 + tkC1tbX/tbW1/7W1tf/X19f/09PT/7S0tP+zs7P/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+srKz/rKys/6ys + rP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pKSk/6Ki + ov+kpKT/wsLC/8vLy//Ly8v/t7e3/5+fn/+enp7/np6e/52dna8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u8+7u7sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC2trYwtra2/7W1tf+1tbX/0dHR/9fX1//FxcX/tLS0/7Ozs/+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/62trf+tra3/ra2t/6ys + rP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6en + p/+mpqb/w8PD/8zMzP/Ly8v/u7u7/6CgoP+fn5//n5+f/56ent+enp4QAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wcHB/8HB + wf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7z7u7uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALa2tu+2trb/tbW1/8nJyf/X19f/19fX/7+/v/+0tLT/s7Oz/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/ra2t/62t + rf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6io + qP+np6f/qamp/8TExP/MzMz/w8PD/6Ghof+hoaH/oKCg/5+fn++fn58wAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//d3d3/yMjI/8LC + wv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7vPu7u7EAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC2travtra2/7a2tv+7u7v/19fX/9fX1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qamp/6io + qP+oqKj/qKio/6enp/+pqan/vb29/6Wlpf+ioqL/oaGh/6Ghof+goKBgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/93d + 3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u8+7u7sQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAtra2ULa2tv+2trb/tra2/8/Pz//X19f/19fX/9XV1f+6urr/tLS0/7Oz + s/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qamp/6mp + qf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+kpKT/oqKi/6Kiov+hoaFgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f + 3//f39//3d3d/8jIyP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7z7u7 + uyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC2trbftra2/7a2tv+8vLz/19fX/9fX1//X19f/1dXV/7q6 + uv+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6SkpP+ioqJgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LC + wv/V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7vvu7u7cAAAAAAAAAAAAAAAAAAAAAAAAAAAt7e3YLa2tv+2trb/tra2/8fHx//X19f/19fX/9fX + 1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en/6enp/+np6fvp6enMAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PD + w//Dw8P/wsLC/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+7u7u/u7u7QAAAAAAAAAAAAAAAAAAAAAC3t7fPtra2/7a2tv+2trb/y8vL/9fX + 1//X19f/19fX/9XV1f+6urr/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7Cw + sP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6ur + q/+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6enp++np6cwAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7u/u7u7UAAAAAAAAAAAt7e3MLe3t++2trb/tra2/7a2 + tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ys + rP+srKz/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6enp/+np6f/p6en76am + pjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729 + vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urrfurq6n7q6ulC4uLhwt7e3/7a2 + tv+2trb/tra2/8vLy//X19f/19fX/9fX1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62t + rf+srKz/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en/6en + p/+np6fvpqamMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8HB + wf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7i4 + uP+3t7f/tra2/7a2tv+2trb/y8vL/9fX1//X19f/19fX/9XV1f+6urr/tLS0/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6io + qP+np6f/p6en/6enp++mpqYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f3//f39//3d3d/8jI + yP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6 + uv+6urr/uLi4/7e3t/+2trb/tra2/7a2tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+0tLT/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6mp + qf+oqKj/qKio/6enp/+np6f/p6en76ampjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f + 3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urr/urq6/7q6uv+4uLj/t7e3/7a2tv+2trb/tra2/8vLy//X19f/19fX/9fX1//V1dX/urq6/7S0 + tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mp + qf+pqan/qamp/6ioqP+oqKj/p6en/6enp/+np6fvpqamMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV + 1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6uv+6urr/urq6/7i4uP+3t7f/tra2/7a2tv+2trb/y8vL/9fX1//X19f/19fX/9XV + 1f+6urr/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qq + qv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6enp++mpqYwAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PD + w//CwsL/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/uLi4/7e3t/+2trb/tra2/7a2tv/Ly8v/19fX/9fX + 1//X19f/1dXV/7q6uv+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6ur + q/+qqqr/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6enp/+np6f/p6en76ampjAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKSkhCSkpJAkZGRgJCQkJ+QkJC/j4+Pv46O + ju+Ojo7/jY2N/4yMjP+MjIy/i4uLv4qKiq+KioqAiYmJUImJiSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPD + w//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+4uLj/t7e3/7a2tv+2trb/tra2/8vL + y//X19f/19fX/9fX1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ur + q/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+np6fvpqamMAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVlZUwlJSUj5SUlM+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI34eHh5+Hh4dQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HB + wf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7i4uP+3t7f/tra2/7a2 + tv+2trb/y8vL/9fX1//X19f/19fX/9XV1f+6urr/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ys + rP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6en + p++mpqYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAl5eXIJeXl4CWlpbflZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4eH + h++GhoaPhoaGIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f3//f39//3d3d/8jIyP/CwsL/wcHB/8HB + wf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/uLi4/7e3 + t/+2trb/tra2/7a2tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Ky + sv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62t + rf+tra3/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6en + p/+np6f/p6en76ampjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACZmZkgmZmZn5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KS + kv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iI + iP+Hh4f/h4eH/4aGhv+FhYWvhYWFMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//d3d3/yMjI/8LC + wv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+4uLj/t7e3/7a2tv+2trb/tra2/8vLy//X19f/19fX/9fX1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Oz + s/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66u + rv+tra3/ra2t/62trf+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6io + qP+oqKj/p6en/6enp/+np6fvpqamMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJubmxCbm5uAmpqa/5mZmf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OT + k/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJ + if+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+FhYWfhISEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/93d + 3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7i4uP+3t7f/tra2/7a2tv+2trb/y8vL/9fX1//X19f/19fX/9XV1f+6urr/tLS0/7Oz + s/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66u + rv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mp + qf+oqKj/qKio/6ioqP+np6f/p6en/6enp++mpqYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJycnFCcnJzfm5ub/5qamv+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WV + lf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uL + i/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+Ghob/hYWF/4SEhO+EhIRwAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f + 3//f39//3d3d/8jIyP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urr/uLi4/7e3t/+2trb/tra2/7a2tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6 + uv+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+v + r/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qq + qv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pqam76ampjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJ2dnY+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aW + lv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yM + jP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4SEhK+Dg4MQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LC + wv/V1dX/39/f/9/f3//d3d3/yMjI/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+4uLj/t7e3/7a2tv+2trb/tra2/8vLy//X19f/19fX/9fX + 1//V1dX/urq6/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7Cw + sP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qq + qv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+mpqbvpqamMAAAAAAAAAAAAAAAAAAA + AAAAAAAAn5+fEJ+fn8+enp7/nZ2d/52dnf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eX + l/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42N + jf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Ghob/hoaG/4WFhf+EhIT/hISE34OD + gzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PD + w//Dw8P/wsLC/9XV1f/f39//39/f/93d3f/IyMj/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7i4uP+2trb/tra2/7a2tv+2trb/y8vL/9fX + 1//X19f/19fX/9XV1f+6urr/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7Cw + sP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/rKys/6ysrP+srKz/q6ur/6ur + q/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6ampu+mpqYwAAAAAAAA + AAAAAAAAoKCgMKCgoO+fn5//n5+f/56env+dnZ3/nZ2d/5ycnP+cnJz/m5ub/5qamv+ampr/mZmZ/5iY + mP+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+P + j/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+Ghob/hYWF/4SE + hP+EhITvg4ODUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w2DDw8P/w8PD/8PDw//CwsL/1dXV/9/f3//f39//3d3d/8zMzP/CwsL/wcHB/8HBwf/BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/uLi4/7a2tv+2trb/tra2/7a2 + tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+srKz/rKys/6ys + rP+rq6v/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pqam76am + pjAAAAAAoaGhMKGhoe+goKD/oKCg/5+fn/+fn5//np6e/52dnf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qa + mv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQ + kP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aG + hv+FhYX/hISE/4SEhP+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDYMPDw//Dw8P/w8PD/8LCwv/V1dX/39/f/9/f3//f39//0dHR/8LCwv/BwcH/wcHB/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+4uLj/tra2/7a2 + tv+2trb/tra2/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/6ys + rP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6en + p/+mpqbvpKSkYKKiou+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/nJyc/5ub + m/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GR + kf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eH + h/+Ghob/hoaG/4WFhf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8Ngw8PD/8PDw//Dw8P/wsLC/9XV1f/f39//39/f/9/f3//a2tr/yMjI/8HB + wf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7y8 + vP+2trb/tra2/7a2tv+2trb/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6io + qP+np6f/p6en/6ampv+jo6P/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/5yc + nP+bm5v/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OT + k/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4iI + iP+IiIj/h4eH/4aGhv+Ghob/hYWF/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/w8PD/8PDw//CwsL/0dHR/9/f3//f39//39/f/9/f + 3//S0tL/w8PD/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/vLy8/8vL + y//Y2Nj/zc3N/7a2tv+2trb/tra2/7a2tv/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qamp/6io + qP+oqKj/qKio/6enp/+np6f/pqam/6Ojo/+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52d + nf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SU + lP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qK + iv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw+/Dw8P/w8PD/8LCwv/Ozs7/3d3d/9/f + 3//f39//39/f/93d3f/Q0ND/w8PD/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+9vb3/ysrK/9fX + 1//a2tr/2tra/9ra2v/Nzc3/tra2/7a2tv+2trb/tra2/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Oz + s/+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qamp/6mp + qf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+mpqb/o6Oj/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/56e + nv+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+Xl5f/lpaW/5WV + lf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uL + i/+Li4v/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WFhf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Mww8PD78PDw//Dw8P/wsLC/8fH + x//a2tr/39/f/9/f3//f39//39/f/97e3v/U1NT/y8vL/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/8LCwv/Q0ND/2dnZ/9vb + 2//b29v/29vb/9ra2v/W1tb/v7+//7i4uP+2trb/tra2/7a2tv+2trb/y8vL/9fX1//X19f/19fX/9XV + 1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6ampv+jo6P/oqKi/6Ghof+hoaH/oKCg/6Cg + oP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5aW + lv+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42N + jf+MjIz/i4uL/4uLi/+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+Ghob/hYWF/4SEhP+Dg4P/g4ODYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDwzDDw8Pfw8PD/8PD + w//CwsL/wsLC/8/Pz//d3d3/39/f/9/f3//e3t7/3t7e/97e3v/c3Nz/1dXV/87Ozv/IyMj/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/8XFxf/Ly8v/0dHR/9ra2v/c3Nz/3Nzc/9zc + 3P/b29v/29vb/9vb2//Ly8v/vLy8/7q6uv+5ubn/uLi4/7a2tv+2trb/tra2/7a2tv/Ly8v/19fX/9fX + 1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pqam/6Ojo/+ioqL/oaGh/6Gh + of+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ubm/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iY + mP+Xl5f/lpaW/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46O + jv+NjY3/jY2N/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4OD + g/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDEMPD + w6/Dw8P/wsLC/8LCwv/CwsL/xMTE/9HR0f/d3d3/39/f/97e3v/e3t7/3t7e/97e3v/e3t7/3t7e/97e + 3v/e3t7/19fX/9fX1//W1tb/1tbW/9bW1v/W1tb/29vb/93d3f/d3d3/3d3d/9zc3P/c3Nz/3Nzc/9zc + 3P/c3Nz/3Nzc/9DQ0P+/v7//u7u7/7q6uv+6urr/urq6/7m5uc+3t7dwtra2/7a2tv+2trb/tra2/8vL + y//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7Gx + sf+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6ur + q/+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6enp/+mpqb/o6Oj/6Ki + ov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZ + mf+YmJj/mJiY/5eXl/+Wlpb/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+P + j/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WF + hf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDcMPDw+/CwsL/wsLC/8LCwv/CwsL/xMTE/9HR0f/c3Nz/3t7e/97e3v/e3t7/3t7e/97e + 3v/e3t7/3t7e/97e3v/e3t7/3t7e/93d3f/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/3Nzc/9zc + 3P/a2tr/z8/P/8DAwP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uoAAAAAAAAAAALe3t2C2trb/tra2/7a2 + tv+2trb/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ys + rP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6enp/+np6f/p6en/6am + pv+jo6P/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qa + mv+ampr/mZmZ/5iYmP+YmJj/l5eX/5aWlv+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kZGR/5GR + kf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aG + hv+Ghob/hYWF/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8Mgw8PDr8LCwv/CwsL/wsLC/8LCwv/CwsL/wsLC/8jIyP/S0tL/2dnZ/97e + 3v/e3t7/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/3d3d/93d3f/d3d3/3d3d/93d3f/d3d3/2dnZ/9DQ + 0P/Hx8f/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7v7u7uzAAAAAAAAAAAAAAAAAAAAAAt7e3YLa2 + tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62t + rf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en/6en + p/+np6f/pqam/6Ojo/+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ub + m/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/k5OT/5KS + kv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iI + iP+Hh4f/hoaG/4WFhf+FhYX/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NAwsLCv8LCwv/CwsL/wsLC/8LCwv/CwsL/wsLC/8HB + wf/Dw8P/ycnJ/87Ozv/Q0ND/1dXV/9fX1//X19f/19fX/9fX1//W1tb/z8/P/8/Pz//Hx8f/wMDA/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLy/vLy8QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC3t7dgtra2/7a2tv+2trb/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6io + qP+np6f/p6en/6enp/+mpqb/o6Oj/6Kiov+hoaH/oaGh/6CgoP+fn5//oKCg/6Ojo/+oqKj/qamp/62t + rf+srKz/rKys/6urq/+rq6v/p6en/6SkpP+fn5//m5ub/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OT + k/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJ + if+IiIj/iIiI/4eHh/+Ghob/hYWF/4WFhf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsIwwsLCn8LCwu/CwsL/wsLC/8LC + wv/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vZ+9vb1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALe3t2C2trb/tra2/7a2tv+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6mp + qf+oqKj/qKio/6enp/+np6f/p6en/6ampv+jo6P/oqKi/6SkpP+qqqr/sbGx/7S0tP+0tLT/s7Oz/7Oz + s/+zs7P/s7Oz/7Kysv+xsbH/sbGx/7CwsP+vr6//r6+v/6+vr/+srKz/pKSk/5ubm/+Wlpb/lZWV/5SU + lP+UlJT/k5OT/5KSkv+SkpL/kZGR/5GRkf+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qK + iv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+FhYX/hYWF/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsIQwsLCYMLC + wq/CwsLvwsLC/8LCwv/BwcH/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr6vvr6+YL6+vhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAt7e3YLa2tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6 + uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mp + qf+pqan/qamp/6ioqP+oqKj/p6en/6enp/+np6f/pqam/6+vr/+3t7f/tra2/7a2tv+1tbX/tLS0/7S0 + tP+zs7P/s7Oz/7Ozs/+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//r6+v/6+vr/+urq7/qqqq/56e + nv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yM + jP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4WFhf+FhYX/hISE/4ODg/+Dg4NgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMLCwjDCwsJwwsLCj8HBwb/BwcHPwcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA38DA + wL+/v7+fv7+/cL+/v0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3t7dgtra2/7a2tv+2trb/tbW1/8vLy//X19f/19fX/9fX + 1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/qqqq/6qq + qv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+np6f/p6en/6enp/+np6f/tLS0/7e3t/+2trb/tra2/7W1 + tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/sbGx/7Gxsf+wsLD/r6+v/6+vr/+vr6//r6+v/66u + rv+tra3/qqqq/56env+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42N + jf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hYWF/4WFhf+EhIT/g4OD/4OD + g2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALe3t2C2trb/tra2/7a2tv+1tbX/y8vL/9fX + 1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6ur + q/+qqqr/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6enp/+np6f/p6en/6enp/+0tLT/t7e3/7a2 + tv+2trb/tLS0/6+vr/+tra3/qamp/6mpqf+oqKj/qqqq/6ysrP+tra3/sbGx/7CwsP+vr6//r6+v/6+v + r/+vr6//rq6u/62trf+tra3/pqam/5eXl/+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46O + jv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+FhYX/hYWF/4SE + hP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt7e3YLa2tv+2trb/tra2/7W1 + tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ys + rP+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/p6en/6enp/+np6f/p6en/6+v + r/+oqKj/oqKi/6Ghof+goKD/n5+f/5+fn/+enp7/np6e/52dnf+cnJz/nJyc/5ubm/+goKD/paWl/6ur + q/+vr6//r6+v/6+vr/+urq7/ra2t/62trf+rq6v/nJyc/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WF + hf+FhYX/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3t7dgtra2/7a2 + tv+2trb/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ys + rP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6en + p/+mpqb/o6Oj/6Kiov+hoaH/oaGh/6CgoP+fn5//n5+f/56env+enp7/nZ2d/5ycnP+cnJz/m5ub/5ub + m/+ampr/np6e/6enp/+urq7/r6+v/66urv+tra3/ra2t/6ysrP+dnZ3/lJSU/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/h4eH/4eH + h/+Ghob/hYWF/4WFhf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALa2 + tmC2trb/tra2/7a2tv+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Ky + sv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62t + rf+tra3/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6en + p/+np6f/p6en/6ampv+jo6P/oqKi/6Ghof+hoaH/oKCg35+fn7+fn5/Pnp6e/56env+dnZ3/nJyc/5yc + nP+bm5v/m5ub/5qamv+ZmZn/mpqa/6SkpP+urq7/rq6u/62trf+tra3/rKys/6Ojo/+UlJT/k5OT/5KS + kv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iI + iP+Hh4f/h4eH/4aGhv+FhYX/hYWF/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAtra2YLa2tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Oz + s/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66u + rv+tra3/ra2t/62trf+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6io + qP+oqKj/p6en/6enp/+np6f/pqam/6SkpHCioqIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnZ2dQJ2d + nXCcnJyfnJyc75ubm/+bm5v/mpqa/5mZmf+ZmZn/m5ub/6mpqf+urq7/ra2t/62trf+srKz/o6Oj/5SU + lP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qK + iv+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+FhYX/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC2trZgtra2/7a2tv+2trb/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Oz + s/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66u + rv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mp + qf+oqKj/qKio/6ioqP+np6f/p6en/6enp/+mpqbvpqamMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACcnJxgm5ubv5ubm/+ampr/mZmZ/5mZmf+YmJj/oaGh/66urv+tra3/ra2t/6ys + rP+jo6P/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uL + i/+Kior/ioqK/4mJif+IiIj/h4eH/4eHh/+Ghob/hYWF/4WFhf+EhIT/g4OD/4ODg2AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALa2tmC2trb/tra2/7a2tv+1tbX/y8vL/9fX1//X19f/19fX/9XV + 1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+v + r/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6qq + qv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/p6en/6ampu+mpqYwAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbm5tAm5ubv5qamv+ZmZn/mZmZ/5iYmP+dnZ3/ra2t/62t + rf+tra3/rKys/6Ojo/+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yM + jP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+FhYX/hYWF/4SEhP+Dg4P/g4ODYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtra2YLa2tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX + 1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7Cw + sP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6urq/+rq6v/q6ur/6qq + qv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+mpqb/pqam76ampjAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACamppwmpqa75mZmf+ZmZn/mJiY/5yc + nP+srKz/ra2t/62trf+srKz/o6Oj/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46O + jv+NjY3/jIyM/4yMjP+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+FhYX/hISE/4OD + g/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC2trZgtra2/7a2tv+2trb/tbW1/8vL + y//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7Cw + sP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/rKys/6ysrP+srKz/q6ur/6ur + q/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6ampv+mpqbvpqamMAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqamiCamprPmZmZ/5mZ + mf+YmJj/nJyc/6ysrP+tra3/ra2t/6ysrP+jo6P/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+P + j/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4eHh/+Ghob/hYWF/4SE + hP+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALa2tmC2trb/tra2/7a2 + tv+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+srKz/rKys/6ys + rP+rq6v/q6ur/6urq/+qqqr/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6f/pqam/6am + ps+mpqYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaEJqa + mq+ZmZn/mZmZ/5iYmP+cnJz/rKys/62trf+tra3/rKys/6Ojo/+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQ + kP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/h4eH/4aG + hv+FhYX/hISE/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtra2YLa2 + tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/6ys + rP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+oqKj/p6en/6en + p/+mpqb/pqamzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAmpqan5mZmf+ZmZn/mJiY/5ycnP+srKz/ra2t/6ysrP+srKz/o6Oj/5SUlP+Tk5P/kpKS/5KS + kv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4mJif+JiYn/iIiI/4eH + h/+Hh4f/hoaG/4WFhf+EhIT/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC2trZgtra2/7a2tv+2trb/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/6io + qP+np6f/p6en/6ampv+mpqaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACampqfmZmZ/5mZmf+YmJj/nJyc/6ysrP+tra3/rKys/6ysrP+ioqL/lJSU/5OT + k/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJ + if+IiIj/h4eH/4eHh/+Ghob/hYWF/4SEhP+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALi4uL+2trb/tra2/7a2tv+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+urq7/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qamp/6io + qP+oqKj/qKio/6enp/+np6f/pqam/6ampiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqamp+ZmZn/mZmZ/5iYmP+cnJz/rKys/62trf+srKz/rKys/6Ki + ov+Tk5P/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+Li4v/i4uL/4qK + iv+JiYn/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+FhYX/hISE/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALq6unC5ubn/uLi4/7a2tv+2trb/tra2/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6 + uv+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/qamp/6mp + qf+pqan/qKio/6ioqP+oqKj/p6en/6enp/+mpqafAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqan5mZmf+ZmZn/mJiY/5ycnP+srKz/ra2t/6ys + rP+srKz/oqKi/5OTk/+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/42Njf+NjY3/jIyM/4uL + i/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Hh4f/hoaG/4WFhf+EhIT/hISE/4ODg/+Dg4NgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALq6uiC6urrvurq6/7m5uf+4uLj/tra2/7a2tv+2trb/tbW1/8vLy//X19f/19fX/9fX + 1//V1dX/urq6/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6mpqf+oqKj/qKio/6ioqP+np6f/p6en/6enpxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACampqfmZmZ/5mZmf+YmJj/nJyc/6ys + rP+tra3/rKys/6ysrP+ioqL/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42N + jf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4eHh/+Ghob/hYWF/4SEhP+EhIT/g4OD/4OD + g2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC7u7u/urq6/7q6uv+6urr/ubm5/7i4uP+2trb/tra2/7a2tv+1tbX/y8vL/9fX + 1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+ysrL/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qamp/6ioqP+oqKj/qKio/6enp/+np6dgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqamp+ZmZn/mZmZ/5iY + mP+cnJz/rKys/62trf+srKz/rKys/6Kiov+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46O + jv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4SE + hP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC7u7tQu7u7/7u7u/+6urr/urq6/7q6uv+5ubn/uLi4/7a2tv+2trb/tra2/7W1 + tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Kysv+ysrL/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/7CwsP+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/6ur + q/+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+pqan/qKio/6ioqP+oqKj/p6enrwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqan5mZ + mf+ZmZn/mJiY/5ycnP+srKz/ra2t/6ysrP+srKz/oqKi/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+P + j/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+JiYn/iIiI/4eHh/+Ghob/hoaG/4WF + hf+EhIT/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAvLy837u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+4uLj/tra2/7a2 + tv+2trb/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ys + rP+srKz/q6ur/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6mpqf+oqKj/qKio/6ioqN8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACampqfmZmZ/5iYmP+YmJj/nJyc/6ysrP+tra3/rKys/6ysrP+ioqL/k5OT/5OTk/+SkpL/kZGR/5GR + kf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4mJif+IiIj/h4eH/4aG + hv+Ghob/hYWF/4SEhP+EhIT/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAvLy8YLy8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7i4 + uP+2trb/tra2/7a2tv+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+6urr/s7Oz/7Ozs/+ysrL/srKy/7Ky + sv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62t + rf+srKz/rKys/6ysrP+rq6v/q6ur/6urq/+qqqr/qqqq/6mpqf+1tbX/qamp/6ioqP+oqKj/AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJqamp+ZmZn/mJiY/5iYmP+cnJz/rKys/62trf+srKz/rKys/6Kiov+Tk5P/k5OT/5KS + kv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iYmJ/4iI + iP+Hh4f/hoaG/4aGhv+FhYX/hISE/4SEhP+Dg4P/g4ODYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vL+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+5ubn/uLi4/7a2tv+2trb/tbW1/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7q6uv+zs7P/s7Oz/7Ky + sv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62t + rf+tra3/ra2t/6ysrP+srKz/rKys/6urq/+rq6v/q6ur/6qqqv+qqqr/wcHB/6mpqf+pqan/qKio/6io + qBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAmpqan5mZmf+YmJj/mJiY/5ubm/+srKz/ra2t/6ysrP+srKz/oqKi/5OT + k/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJ + if+JiYn/iIiI/4eHh/+Ghob/hoaG/4WFhf+EhIT/hISE/4ODg/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29vTC9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7m5uf+4uLj/tra2/7a2tv+1tbX/tbW1/8vLy//X19f/19fX/9fX1//V1dX/urq6/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66u + rv+urq7/ra2t/62trf+tra3/rKys/6ysrP+srKz/q6ur/6urq/+qqqr/r6+v/8fHx/+pqan/qamp/6mp + qf+oqKhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACampqfmZmZ/5iYmP+YmJj/m5ub/6ysrP+tra3/rKys/6ys + rP+ioqL/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uL + i/+Kior/iYmJ/4mJif+IiIj/h4eH/4aGhv+Ghob/hYWF/4SEhP+Dg4P/g4OD/4ODg2AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC9vb2Pvb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urr/ubm5/7i4uP+2trb/tra2/7W1tf+1tbX/y8vL/9fX1//X19f/19fX/9XV + 1f+6urr/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/6+v + r/+urq7/rq6u/66urv+tra3/ra2t/62trf+srKz/rKys/6ysrP+rq6v/q6ur/8DAwP/IyMj/qqqq/6mp + qf+pqan/qampIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqamp+ZmZn/mJiY/5iYmP+bm5v/rKys/62t + rf+srKz/rKys/6Kiov+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yM + jP+Li4v/i4uL/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4ODg/+Dg4P/g4ODYAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvr6+3729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/uLi4/7a2tv+2trb/tbW1/7W1tf/Ly8v/19fX/9fX + 1//X19f/1dXV/7m5uf+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/rq6u/62trf+tra3/ra2t/6ysrP+srKz/rKys/62trf/Pz8//yMjI/6qq + qv+qqqr/qamp/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZn5mZmf+YmJj/mJiY/5ub + m/+srKz/ra2t/6ysrP+srKz/oqKi/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42N + jf+NjY3/jIyM/4uLi/+Li4v/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hoaG/4WFhf+EhIT/g4OD/4OD + g/+Dg4NgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvr6+ML6+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+4uLj/tra2/7a2tv+1tbX/tbW1/8vL + y//X19f/19fX/9fX1//V1dX/ubm5/7Ozs/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+urq7/ra2t/62trf+tra3/rKys/6ysrP/FxcX/0dHR/8DA + wP+qqqr/qqqq/6qqqu8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZmfmZmZ/5iY + mP+YmJj/m5ub/6ysrP+tra3/rKys/6ysrP+ioqL/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+P + j/+Ojo7/jY2N/42Njf+MjIz/i4uL/4uLi/+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+Ghob/hYWF/4SE + hP+Dg4P/g4OD/4ODg2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6+vnC+vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+5ubn/ubm5/7i4uP+2trb/tra2/7W1 + tf+1tbX/y8vL/9fX1//X19f/19fX/9XV1f+5ubn/s7Oz/7Ozs/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gx + sf+wsLD/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/66urv+tra3/ra2t/62trf+6urr/0tLS/9LS + 0v+3t7f/q6ur/6qqqv+qqqqvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZ + mZ+ZmZn/mJiY/5iYmP+bm5v/rKys/62trf+srKz/rKys/6Kiov+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQ + kP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/i4uL/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aG + hv+FhYX/hISE/4ODg/+Dg4Pvg4ODMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/v7+vvr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7u7u/+6urr/urq6/7m5uf+5ubn/uLi4/7a2 + tv+2trb/tbW1/7W1tf/Ly8v/19fX/9fX1//X19f/1dXV/7m5uf+zs7P/s7Oz/7Kysv+ysrL/srKy/7Gx + sf+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//r6+v/66urv+urq7/rq6u/62trf+7u7v/09PT/9LS + 0v/Q0ND/rKys/6urq/+rq6v/qqqqcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAmZmZn5mZmf+YmJj/mJiY/5ubm/+srKz/ra2t/6ysrP+srKz/oqKi/5OTk/+Tk5P/kpKS/5GR + kf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+NjY3/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eH + h/+Ghob/hoaG/4WFhf+EhIT/g4OD/4ODg++Dg4MgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv7+/37+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5 + uf+4uLj/tra2/7a2tv+1tbX/tbW1/8vLy//X19f/19fX/9fX1//V1dX/vr6+/7Ozs/+zs7P/srKy/7Ky + sv+ysrL/sbGx/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+7u7v/09PT/9PT + 0//T09P/v7+//6ysrP+rq6v/q6ur/6urqyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACZmZmfmZmZ/5iYmP+YmJj/m5ub/6ysrP+tra3/rKys/6ysrP+ioqL/k5OT/5OT + k/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/42Njf+MjIz/i4uL/4qKiv+Kior/iYmJ/4iI + iP+IiIj/h4eH/4aGhv+Ghob/hYWF/4SEhP+Dg4P/g4ODzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+5ubn/ubm5/7i4uP+2trb/tra2/7W1tf+1tbX/y8vL/9fX1//X19f/19fX/9fX1//ExMT/s7Oz/7Oz + s/+ysrL/srKy/7Kysv+xsbH/sbGx/7Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/7Gxsf/CwsL/09PT/9PT + 0//T09P/0dHR/6+vr/+srKz/rKys/6urq68AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmZ+ZmZn/mJiY/5iYmP+bm5v/rKys/62trf+srKz/rKys/6Ki + ov+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQkP+Pj4//j4+P/46Ojv+NjY3/jY2N/4yMjP+Li4v/ioqK/4qK + iv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4aGhv+FhYX/hISE/4ODg/+Dg4OPAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwDC/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7m5uf+5ubn/uLi4/7a2tv+2trb/tbW1/7W1tf/Ly8v/19fX/9fX1//X19f/19fX/9LS + 0v/AwMD/s7Oz/7Kysv+ysrL/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLD/sLCw/729vf/Q0ND/1NTU/9PT + 0//T09P/09PT/7m5uf+tra3/ra2t/6ysrP+srKxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZn5mZmf+YmJj/mJiY/5ubm/+srKz/ra2t/6ys + rP+rq6v/np6e/5OTk/+Tk5P/kpKS/5GRkf+RkZH/kJCQ/4+Pj/+Pj4//jo6O/42Njf+MjIz/jIyM/4uL + i/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hYWF/4WFhf+EhIT/g4OD/4ODg0AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMBAwMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+4uLj/tra2/7a2tv+1tbX/tbW1/8vLy//X19f/19fX/9fX + 1//X19f/1tbW/9TU1P/Jycn/v7+//7u7u/+7u7v/urq6/7q6uv++vr7/x8fH/9LS0v/U1NT/1NTU/9TU + 1P/U1NT/09PT/8LCwv+urq7/ra2t/62trf+tra2fAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZmfmZmZ/5iYmP+YmJj/m5ub/6ys + rP+tra3/rKys/6urq/+cnJz/k5OT/5OTk/+SkpL/kZGR/5GRkf+QkJD/j4+P/4+Pj/+Ojo7/jY2N/4yM + jP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aGhv+FhYX/hYWF/4SEhP+Dg4PPAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMDAQMDA + wP/AwMD/v7+//8TExP+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/7i4uP+2trb/tra2/7W1tf+1tbX/y8vL/9fX + 1//X19f/19fX/9fX1//W1tb/1tbW/9bW1v/W1tb/1tbW/9bW1v/V1dX/1dXV/9XV1f/U1NT/1NTU/9TU + 1P/U1NT/1NTU/8XFxf+urq7/rq6u/66urv+tra3fra2tEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmZ+ZmZn/mJiY/5iY + mP+bm5v/rKys/62trf+srKz/qqqq/5iYmP+Tk5P/kpKS/5KSkv+RkZH/kZGR/5CQkP+Pj4//jo6O/46O + jv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiP+Hh4f/hoaG/4WFhf+FhYX/hISE/4SE + hGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDA + wHDAwMD/wMDA/8DAwP/Hx8f/v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/uLi4/7a2tv+2trb/tbW1/7W1 + tf/Jycn/19fX/9fX1//X19f/19fX/9bW1v/W1tb/1tbW/9bW1v/W1tb/1tbW/9XV1f/V1dX/1dXV/9TU + 1P/U1NT/1NTU/7+/v/+vr6//r6+v/66urv+urq7vrq6uMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZn5mZ + mf+YmJj/mJiY/5ubm/+srKz/ra2t/6ysrP+np6f/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+P + j/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/iIiI/4eHh/+Ghob/hYWF/4WF + hf+EhITfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADAwMCAwMDA/8DAwP/AwMD/z8/P/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+4uLjvtra2/7a2 + tv+1tbX/tbW1/7+/v//T09P/19fX/9fX1//X19f/1tbW/9bW1v/W1tb/1tbW/9bW1v/W1tb/1dXV/9XV + 1f/V1dX/0NDQ/7m5uf+wsLD/r6+v/6+vr/+vr6/vrq6uMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACZmZmfmZmZ/5iYmP+YmJj/m5ub/6ysrP+tra3/rKys/6CgoP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQ + kP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+IiIj/h4eH/4aG + hv+FhYX/hYWF/4SEhGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAwcHBcMDAwP/AwMD/wMDA/9HR0f/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5z7a2 + tmC2trbvtra2/7W1tf+1tbX/tbW1/8HBwf/R0dH/19fX/9fX1//W1tb/1tbW/9bW1v/W1tb/1tbW/9bW + 1v/MzMz/vr6+/7Gxsf+wsLD/sLCw/7CwsP+vr6/vr6+vMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJmZmZ+ZmZn/mJiY/5iYmP+bm5v/rKys/62trf+srKz/l5eX/5SUlP+Tk5P/kpKS/5KS + kv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iI + iP+Hh4f/hoaG/4WFhf+FhYXfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMHBwUDBwcH/wMDA/8DAwP/X19f/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5 + uf+5ubkQtra2MLa2tt+2trb/tbW1/7W1tf+1tbX/tLS0/7i4uP+9vb3/xMTE/8TExP/ExMT/xMTE/7u7 + u/+0tLT/srKy/7Gxsf+xsbH/sbGx/7CwsP+wsLDPsLCwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAmZmZn5mZmf+YmJj/mJiY/6CgoP+tra3/ra2t/6Ojo/+UlJT/lJSU/5OT + k/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJ + if+IiIj/h4eH/4eHh/+Ghob/hYWF/4WFhTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADBwcFAwcHB/8HBwf/AwMD/3t7e/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6 + uv+6urr/urq6YAAAAAC2trYQtra2j7a2tv+1tbX/tbW1/7W1tf+0tLT/tLS0/7S0tP+zs7P/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+ysrL/sbGx/7Gxse+xsbGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZnPmZmZ/5iYmP+YmJj/pKSk/62trf+tra3/lpaW/5SU + lP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qK + iv+Kior/iYmJ/4iIiP+Hh4f/h4eH/4aGhv+GhoafAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwcHBQMHBwf/BwcH/wcHB/9vb2//Kysr/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urr/urq6/7q6uq8AAAAAAAAAAAAAAAC2trYgtra2j7W1te+1tbX/tbW1/7S0tP+0tLT/tLS0/7Oz + s/+zs7P/s7Oz/7Ozs/+ysrL/srKy37KysoCxsbEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaEJmZmd+ZmZn/mJiY/5mZmf+rq6v/ra2t/6Cg + oP+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yM + jP+Li4v/ioqK/4qKiv+JiYn/iIiI/4eHh/+Hh4f/hoaG7wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBwcH/wcHB/8HBwf/X19f/09PT/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6uv+6urr/urq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAtbW1QLW1tYC1tbWftLS0v7S0 + tL+0tLS/s7Ozv7Ozs5+zs7NwsrKyMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACamppAmZmZ/5mZmf+YmJj/oKCg/66u + rv+qqqr/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42N + jf+MjIz/jIyM/4uLi/+Kior/ioqK/4mJif+IiIj/h4eH/4eHh/+GhoYwAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwcHB38HBwf/BwcH/0NDQ/9zc3P/AwMD/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqamo+ZmZn/mZmZ/5iY + mP+pqan/rq6u/5mZmf+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46O + jv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+Kior/iYmJ/4iIiP+Hh4f/h4eHcAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwq/BwcH/wcHB/8vLy//e3t7/y8vL/8DA + wP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urrvurq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACampoQmpqa75mZ + mf+ZmZn/oaGh/66urv+hoaH/lpaW/5aWlv+VlZX/lJSU/5SUlP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQ + kP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4qKiv+JiYn/iIiI/4iIiK8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsJwwsLC/8HBwf/Dw8P/3t7e/9fX + 1//BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uo8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJqa + moCampr/mZmZ/5mZmf+srKz/pqam/5eXl/+Wlpb/lpaW/5WVlf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GR + kf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uLi/+Kior/iYmJ/4mJif+IiIjfAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCMMLCwv/CwsL/wcHB/9nZ + 2f/e3t7/ycnJ/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/u7u7QAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACbm5sQm5ub/5qamv+ZmZn/paWl/6urq/+Xl5f/l5eX/5aWlv+Wlpb/lZWV/5SUlP+UlJT/k5OT/5KS + kv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/jY2N/4yMjP+MjIz/i4uL/4qKiv+JiYn/iYmJ/wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsLvwsLC/8LC + wv/Ozs7/3t7e/9fX1//BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u++7u7sQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJubm6+ampr/mpqa/52dnf+vr6//mJiY/5eXl/+Xl5f/lpaW/5aWlv+VlZX/lJSU/5SU + lP+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/46Ojv+NjY3/jIyM/4yMjP+Li4v/ioqK/4mJ + if+JiYkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCn8LC + wv/CwsL/xcXF/97e3v/e3t7/ycnJ/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7z7u7 + uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACcnJxgm5ub/5qamv+ampr/rq6u/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WV + lf+UlJT/lJSU/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+Pj/+Ojo7/jo6O/42Njf+MjIz/jIyM/4uL + i/+Kior/ioqKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLC + wjDCwsL/wsLC/8LCwv/U1NT/3t7e/9vb2//Dw8P/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7vPu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAnJycEJycnP+bm5v/mpqa/6mpqf+dnZ3/mZmZ/5iYmP+Xl5f/l5eX/5aW + lv+VlZX/lZWV/5SUlP+UlJT/k5OT/5KSkv+SkpL/kZGR/5CQkP+QkJD/j4+P/46Ojv+Ojo7/lpaW/4yM + jP+Li4v/i4uL/4qKikAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAwsLC38LCwv/CwsL/ysrK/9/f3//e3t7/0tLS/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u8+7u7sQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcnJzPnJyc/5ubm/+lpaX/n5+f/5mZmf+ZmZn/mJiY/5eX + l/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5KSkv+RkZH/kJCQ/5CQkP+Pj4//jo6O/52d + nf+NjY3/jIyM/4uLi/+Li4tAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMLCwmDCwsL/wsLC/8LCwv/Y2Nj/39/f/97e3v/Nzc3/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7z7u7uxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnZ2dr5ycnP+cnJz/oaGh/6CgoP+ampr/mZmZ/5mZ + mf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OTk/+SkpL/kpKS/5GRkf+QkJD/kJCQ/4+P + j/+mpqb/jY2N/42Njf+MjIz/jIyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwsLC38LCwv/CwsL/yMjI/9/f3//f39//3Nzc/8fHx//BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7vPu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dnYCdnZ3/nJyc/6Ghof+cnJz/mpqa/5qa + mv+ZmZn/mZmZ/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SUlP+Tk5P/k5OT/5KSkv+RkZH/kZGR/5CQ + kP+Pj4//sLCw/46Ojv+NjY3/jY2N/4yMjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwmDCwsL/wsLC/8LCwv/T09P/39/f/9/f3//c3Nz/x8fH/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u8+7u7sQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACenp6AnZ2d/52dnf+cnJz/nJyc/5ub + m/+ampr/mpqa/5mZmf+ZmZn/mJiY/5eXl/+Xl5f/lpaW/5WVlf+VlZX/lJSU/5OTk/+Tk5P/kpKS/5GR + kf+RkZH/kJCQ/7a2tv+Pj4//jo6O/42Njf+NjY1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCz8LCwv/CwsL/xMTE/9zc3P/f39//39/f/9zc + 3P/Hx8f/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7z7u7uxAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnp6egJ6env+dnZ3/nZ2d/5yc + nP+cnJz/m5ub/5qamv+ampr/mZmZ/5mZmf+YmJj/l5eX/5eXl/+Wlpb/lZWV/5WVlf+UlJT/k5OT/5OT + k/+SkpL/kZGR/5SUlP+/v7//j4+P/4+Pj/+Ojo7/jo6OQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwjDCwsL/wsLC/8LCwv/IyMj/39/f/9/f + 3//f39//3Nzc/8fHx//BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7vPurq6EAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+fn4Cfn5//np6e/52d + nf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/l5eX/5aWlv+VlZX/lZWV/5SU + lP+Tk5P/k5OT/5KSkv+jo6P/tLS0/5CQkP+Pj4//j4+P/46OjiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCgMLCwv/CwsL/wsLC/87O + zv/f39//39/f/9/f3//c3Nz/x8fH/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u8+6uroQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgoKCAn5+f/5+f + n/+enp7/nZ2d/52dnf+cnJz/nJyc/5ubm/+ampr/mpqa/5mZmf+YmJj/mJiY/5eXl/+Xl5f/lpaW/5WV + lf+VlZX/lJSU/5OTk/+Tk5P/r6+v/7Kysv+RkZH/kJCQ/4+Pj/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8PPwsLC/8LC + wv/CwsL/09PT/9/f3//f39//39/f/9zc3P/Hx8f/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7z7q6uhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKCggKCg + oP+fn5//n5+f/56env+dnZ3/nZ2d/5ycnP+cnJz/m5ub/5qamv+ampr/mZmZ/5iYmP+YmJj/l5eX/5eX + l/+Wlpb/lZWV/5WVlf+UlJT/lpaW/76+vv+qqqr/kZGR/5GRkf+QkJDPAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDEMPD + w+/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//f39//3Nzc/8fHx//BwcH/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7vPurq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKGh + ob+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ycnP+bm5v/mpqa/5qamv+ZmZn/mJiY/5iY + mP+Xl5f/l5eX/5aWlv+VlZX/lZWV/6Wlpf/BwcH/np6e/5KSkv+RkZH/kZGRnwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADDw8Mww8PD78LCwv/CwsL/wsLC/9XV1f/f39//39/f/9/f3//c3Nz/x8fH/8HBwf/BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u8+6uroQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAChoaHvoaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZ + mf+YmJj/mJiY/5eXl/+Xl5f/lpaW/5WVlf+9vb3/wsLC/5OTk/+Tk5P/kpKS/5KSkmAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMPDwzDDw8P/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//39/f/9zc3P/Hx8f/wcHB/8HB + wf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7z7q6uhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACioqIgoqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qa + mv+ampr/mZmZ/5iYmP+YmJj/l5eX/5eXl/+hoaH/w8PD/7S0tP+UlJT/k5OT/5OTk/+SkpIgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//f39//3Nzc/8fH + x//BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7vPurq6EAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAo6OjcKKiov+ioqL/oaGh/6Ghof+goKD/oKCg/5+fn/+enp7/np6e/52dnf+dnZ3/nJyc/5ub + m/+bm5v/mpqa/5qamv+ZmZn/mJiY/5iYmP+Xl5f/vr6+/8PDw/+mpqb/lZWV/5SUlP+Tk5PPAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8Ngw8PD/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/9/f + 3//c3Nz/x8fH/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u8+6uroQAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKSkpM+jo6P/oqKi/6Kiov+hoaH/oaGh/6CgoP+goKD/n5+f/56env+enp7/nZ2d/52d + nf+cnJz/m5ub/5ubm/+ampr/mpqa/5mZmf+YmJj/rKys/8TExP/BwcH/mZmZ/5WVlf+VlZX/lJSUgAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DDw8P/wsLC/8LCwv/CwsL/1dXV/9/f + 3//f39//39/f/9zc3P/Hx8f/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/u7u7z7q6 + uhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKWlpUCkpKT/pKSk/6Ojo/+ioqL/oqKi/6Ghof+hoaH/oKCg/6CgoP+fn5//np6e/56e + nv+dnZ3/nZ2d/5ycnP+bm5v/m5ub/5qamv+ampr/nJyc/8LCwv/FxcX/s7Oz/5aWlv+Wlpb/lZWV/5WV + lSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMPDw//CwsL/wsLC/8LC + wv/V1dX/39/f/9/f3//e3t7/3Nzc/8fHx//BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urrPurq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAClpaWfpaWl/6SkpP+kpKT/o6Oj/6Kiov+ioqL/oaGh/6Ghof+goKD/oKCg/5+f + n/+enp7/np6e/52dnf+dnZ3/nJyc/5ubm/+bm5v/mpqa/7u7u//FxcX/xcXF/52dnf+Xl5f/lpaW/5aW + lr8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NgwsLC/8LC + wv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/c3Nz/x8fH/8HBwf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6us+6uroQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACmpqZApqam/6Wlpf+lpaX/pKSk/6SkpP+jo6P/oqKi/6Kiov+hoaH/oaGh/6Cg + oP+goKD/n5+f/56env+enp7/nZ2d/52dnf+cnJz/m5ub/7CwsP/Hx8f/x8fH/7S0tP+YmJj/mJiY/5eX + l/+Xl5dAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9zc3P/Hx8f/wcHB/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7v/urq6z7q6uhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAp6enz6ampv+mpqb/paWl/6Wlpf+kpKT/o6Oj/6Ojo/+ioqL/oqKi/6Gh + of+hoaH/oKCg/6CgoP+fn5//np6e/56env+dnZ3/nZ2d/6ysrP/Hx8f/x8fH/8PDw/+cnJz/mZmZ/5iY + mP+YmJi/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/3Nzc/8fHx//BwcH/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urrPurq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAqKiogKenp/+np6f/pqam/6ampv+lpaX/paWl/6SkpP+jo6P/o6Oj/6Ki + ov+ioqL/oaGh/6Ghof+goKD/n5+f/5+fn/+enp7/np6e/6Wlpf/FxcX/yMjI/8fHx/+urq7/mpqa/5qa + mv+ZmZn/mJiYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/c3Nz/x8fH/8HB + wf/BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6us+6uroQAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAqampQKioqP+oqKj/p6en/6enp/+mpqb/pqam/6Wlpf+lpaX/pKSk/6Oj + o/+jo6P/oqKi/6Kiov+hoaH/oaGh/6CgoP+fn5//n5+f/6ampv/FxcX/ycnJ/8nJyf+8vLz/m5ub/5ub + m/+ampr/mZmZrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9zc + 3P/Hx8f/wcHB/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6z7q6uhAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAqqqqMKmpqe+pqan/qKio/6ioqP+np6f/p6en/6ampv+mpqb/paWl/6Wl + pf+kpKT/o6Oj/6Ojo/+ioqL/oqKi/6Ghof+hoaH/oKCg/6enp//Hx8f/ycnJ/8nJyf/FxcX/n5+f/5yc + nP+bm5v/m5ub75qamiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f + 3//e3t7/3Nzc/8fHx//BwcH/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urrPurq6EAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAq6urMKqqqu+qqqr/qamp/6mpqf+oqKj/qKio/6enp/+np6f/pqam/6am + pv+lpaX/paWl/6SkpP+jo6P/o6Oj/6Kiov+ioqL/oaGh/6ioqP/IyMj/ysrK/8rKyv/Jycn/pqam/52d + nf+cnJz/nJyc/5ubm2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV + 1f/f39//39/f/97e3v/c3Nz/x8fH/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + us+6uroQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAArKysMKurq++rq6v/qqqq/6qqqv+pqan/qamp/6ioqP+oqKj/p6en/6en + p/+mpqb/pqam/6Wlpf+lpaX/pKSk/6Ojo/+jo6P/oqKi/6qqqv/Jycn/y8vL/8vLy//Kysr/r6+v/56e + nv+enp7/nZ2d/5ycnJ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LC + wv/CwsL/1dXV/9/f3//f39//3t7e/9zc3P/Hx8f/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6z7q6uhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAra2tMKysrO+srKz/q6ur/6urq/+qqqr/qqqq/6mpqf+pqan/qKio/6io + qP+np6f/p6en/6ampv+mpqb/paWl/6SkpP+kpKT/o6Oj/6qqqv/Jycn/zMzM/8vLy//Ly8v/sLCw/5+f + n/+fn5//np6e/56ens+dnZ0QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLC + wv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/3Nzc/8fHx//BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urrPurq6EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAArq6uMK2tre+tra3/rKys/6ysrP+rq6v/q6ur/6qqqv+qqqr/qamp/6mp + qf+oqKj/qKio/6enp/+np6f/pqam/6ampv+lpaX/pKSk/6ysrP/Kysr/zMzM/8zMzP/MzMz/sLCw/6Gh + of+goKD/n5+f/5+fn9+enp4QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/c3Nz/x8fH/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6us+6uroQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAr6+vMK6uru+urq7/ra2t/62trf+srKz/rKys/6urq/+rq6v/qqqq/6qq + qv+pqan/qamp/6ioqP+oqKj/p6en/6enp/+mpqb/pqam/62trf/Ly8v/zc3N/8zMzP/MzMz/srKy/6Ki + ov+hoaH/oaGh/6CgoO+fn58wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9zc3P/Hx8f/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6z7q6ujAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAsLCwYK+vr++vr6//rq6u/66urv+tra3/ra2t/6ysrP+srKz/q6ur/6ur + q/+qqqr/qqqq/6mpqf+pqan/qKio/6ioqP+np6f/p6en/62trf/MzMz/zs7O/83Nzf/Nzc3/srKy/6Oj + o/+ioqL/oqKi/6Ghoe+hoaEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/3Nzc/8PD + w//BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729 + vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urrvurq6cAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACxsbEQsLCwr7CwsP+wsLD/r6+v/6+vr/+urq7/rq6u/62trf+tra3/rKys/6ys + rP+rq6v/q6ur/6qqqv+qqqr/qamp/6mpqf+oqKj/qKio/66urv/MzMz/zs7O/87Ozv/Ozs7/s7Oz/6Sk + pP+jo6P/o6Oj/6Kiou+ioqIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e + 3v/Z2dn/w8PD/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urrPurq6QAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALKyshCysrKAsbGx77Gxsf+wsLD/sLCw/7CwsP+vr6//r6+v/66urv+urq7/ra2t/62t + rf+srKz/rKys/6urq/+rq6v/qqqq/6qqqv+pqan/qamp/6+vr//Nzc3/z8/P/8/Pz//Ozs7/tLS0/6Wl + pf+kpKT/pKSk/6Ojo++jo6MwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f + 3//f39//3t7e/9nZ2f/Dw8P/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6 + uv+6urrPubm5YLm5uRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAtLS0ILOzs4Czs7PvsrKy/7Kysv+xsbH/sbGx/7CwsP+wsLD/sLCw/6+vr/+vr6//rq6u/66u + rv+tra3/ra2t/6ysrP+srKz/q6ur/6urq/+qqqr/qqqq/7CwsP/Ozs7/0NDQ/9DQ0P/Pz8//tbW1/6am + pv+lpaX/paWl/6SkpO+kpKQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LC + wv/V1dX/39/f/9/f3//e3t7/2dnZ/8PDw//BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urr/urq6/7q6uv+5ubn/ubm5r7m5uYC4uLhAuLi4EAAAAAAAAAAAAAAAAAAAAAAAAAAAtra2MLW1 + tVC1tbWPtLS0z7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Gxsf+xsbH/sLCw/7CwsP+wsLD/r6+v/6+v + r/+urq7/rq6u/62trf+tra3/rKys/6ysrP+rq6v/q6ur/7Gxsf/Ozs7/0NDQ/9DQ0P/Q0ND/tra2/6en + p/+np6f/pqam/6Wlpe+lpaUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NgwsLC/8LC + wv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/Z2dn/w8PD/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/ubm5/7i4uP+4uLj/t7e3/7e3t/+3t7f/tra2/7a2 + tv+2trb/tbW1/7W1tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/sbGx/7Gxsf+wsLD/sLCw/6+v + r/+vr6//r6+v/66urv+urq7/ra2t/62trf+srKz/rKys/7Kysv/Pz8//0dHR/9HR0f/Q0ND/t7e3/6io + qP+oqKj/p6en/6enp++mpqYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9nZ2f/Dw8P/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+5ubn/uLi4/7i4uP+3t7f/t7e3/7e3 + t/+2trb/tra2/7a2tv+1tbX/tbW1/7S0tP+0tLT/s7Oz/7Ozs/+zs7P/srKy/7Kysv+xsbH/sbGx/7Cw + sP+wsLD/r6+v/6+vr/+vr6//rq6u/66urv+tra3/ra2t/7Ozs//Q0ND/0dHR/9HR0f/R0dH/uLi4/6mp + qf+pqan/qKio/6ioqO+np6cwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/2dnZ/8PDw//BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/729vf+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/7m5uf+4uLj/uLi4/7e3 + t/+3t7f/t7e3/7a2tv+2trb/tra2/7W1tf+1tbX/tLS0/7S0tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Gx + sf+xsbH/sLCw/7CwsP+vr6//r6+v/6+vr/+urq7/rq6u/7S0tP/R0dH/0tLS/9LS0v/R0dH/ubm5/6qq + qv+qqqr/qamp/6mpqe+oqKgwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/Z2dn/w8PD/8HB + wf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vb29/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/ubm5/7i4 + uP+4uLj/t7e3/7e3t/+3t7f/tra2/7a2tv+1tbX/tbW1/7W1tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Ky + sv+ysrL/sbGx/7Gxsf+wsLD/sLCw/6+vr/+vr6//r6+v/7W1tf/R0dH/09PT/9PT0//S0tL/urq6/6ur + q/+rq6v/qqqq/6qqqu+pqakwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9nZ + 2f/Dw8P/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5 + uf+5ubn/uLi4/7i4uP+3t7f/t7e3/7e3t/+2trb/tra2/7W1tf+1tbX/tbW1/7S0tP+0tLT/s7Oz/7Oz + s/+zs7P/srKy/7Kysv+xsbH/sbGx/7CwsP+wsLD/r6+v/7a2tv/R0dH/09PT/9PT0//T09P/u7u7/6ys + rP+srKz/q6ur/6urq++qqqowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f + 3//e3t7/2dnZ/8PDw//BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/729vf+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6 + uv+5ubn/ubm5/7m5uf+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2tv+2trb/tbW1/7W1tf+1tbX/tLS0/7S0 + tP+zs7P/s7Oz/7Ozs/+ysrL/srKy/7Gxsf+xsbH/sLCw/7e3t//S0tL/1NTU/9TU1P/T09P/u7u7/62t + rf+tra3/rKys/6ysrO+rq6swAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDw8NgwsLC/8LCwv/CwsL/wsLC/9XV + 1f/f39//39/f/97e3v/Z2dn/w8PD/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6 + uv+6urr/urq6/7m5uf+5ubn/ubm5/7i4uP+4uLj/t7e3/7e3t/+3t7f/tra2/7a2tv+1tbX/tbW1/7W1 + tf+0tLT/tLS0/7Ozs/+zs7P/s7Oz/7Kysv+ysrL/sbGx/7i4uP/S0tL/1NTU/9TU1P/U1NT/vLy8/66u + rv+urq7/ra2t/62tre+srKwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw2DCwsL/wsLC/8LC + wv/CwsL/1dXV/9/f3//f39//3t7e/9nZ2f/Dw8P/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/ + v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/u7u7/7u7 + u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+5ubn/uLi4/7i4uP+3t7f/t7e3/7e3t/+2trb/tra2/7W1 + tf+1tbX/tbW1/7S0tP+0tLT/s7Oz/7Ozs/+zs7P/srKy/7i4uP/T09P/1dXV/9TU1P/U1NT/vb29/6+v + r/+urq7/rq6u/66uru+tra0wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDYMLC + wv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/2dnZ/8PDw//BwcH/wcHB/8DAwP/AwMD/wMDA/8DA + wP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/7m5uf+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2 + tv+2trb/tbW1/7W1tf+1tbX/tLS0/7S0tP+zs7P/s7Oz/7m5uf/U1NT/1tbW/9XV1f/V1dX/vb29/7Cw + sP+vr6//r6+v/66uru+urq4wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADCwsJgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/Z2dn/w8PD/8HBwf/BwcH/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8 + vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5uf+5ubn/uLi4/7i4uP+4uLj/t7e3/7e3 + t/+3t7f/tra2/7a2tv+1tbX/tbW1/7W1tf+0tLT/tLS0/7q6uv/U1NT/1tbW/9bW1v/W1tb/vr6+/7Gx + sf+wsLD/sLCw/6+vr++vr68wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMLCwmDCwsL/wsLC/8LCwv/CwsL/1dXV/9/f3//f39//3t7e/9nZ2f/Dw8P/wcHB/8HB + wf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729 + vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6uv+6urr/ubm5/7m5uf+4uLj/uLi4/7i4 + uP+3t7f/t7e3/7e3t/+2trb/tra2/7W1tf+1tbX/tbW1/7q6uv/V1dX/1tbW/9bW1v/W1tb/v7+//7Ky + sv+xsbH/sbGx/7CwsO+wsLAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAwsLCYMLCwv/CwsL/wsLC/8LCwv/V1dX/39/f/9/f3//e3t7/3Nzc/8fH + x//BwcH/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729 + vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7u/+6urr/urq6/7q6uv+5ubn/ubm5/7i4 + uP+4uLj/uLi4/7e3t/+3t7f/t7e3/7a2tv+2trb/tbW1/729vf/V1dX/19fX/9fX1//W1tb/wMDA/7Ky + sv+ysrL/srKy/7Gxse+xsbEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsJgwsLC/8LCwv/CwsL/wsLC/9XV1f/f39//39/f/97e + 3v/c3Nz/ycnJ/8HBwf/BwcH/wMDA/8DAwP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+ + vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7u/+7u7v/u7u7/7q6uv+6urr/urq6/7m5 + uf+5ubn/uLi4/7i4uP+4uLj/t7e3/7e3t/+3t7f/tra2/8LCwv/X19f/19fX/9fX1//X19f/wcHB/7Oz + s/+zs7P/srKy/7Kysu+ysrIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwmDCwsL/wsLC/8LCwv/CwsL/1dXV/9/f + 3//f39//3t7e/97e3v/Q0ND/wcHB/8HBwf/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+ + vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8vP+8vLz/u7u7/7u7u/+7u7v/urq6/7q6 + uv+6urr/ubm5/7m5uf+4uLj/uLi4/7i4uP+3t7f/ubm5/8zMzP/Y2Nj/2NjY/9fX1//X19f/wcHB/7S0 + tP+0tLT/s7Oz/7Ozs++ysrIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCYMLCwv/CwsL/wsLC/8LC + wv/V1dX/39/f/9/f3//e3t7/3t7e/9fX1//FxcX/wcHB/8DAwP/AwMD/wMDA/8DAwP+/v7//v7+//7+/ + v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urr/urq6/7q6uv+5ubn/ubm5/7i4uP+4uLj/wMDA/9XV1f/Z2dn/2dnZ/9jY2P/Y2Nj/wsLC/7W1 + tf+1tbX/tLS0/7S0tO+zs7MwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsJgwsLC/8LC + wv/CwsL/wsLC/9XV1f/f39//39/f/97e3v/e3t7/3t7e/9DQ0P/Dw8P/wMDA/8DAwP/AwMD/wMDA/7+/ + v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8/7y8vP+8vLz/vLy8/7u7 + u/+7u7v/u7u7/7q6uv+6urr/ubm5/7m5uf+9vb3/zc3N/9nZ2f/Z2dn/2dnZ/9nZ2f/Z2dn/wsLC/7a2 + tv+1tbX/tbW1/7W1te+0tLQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLC + wmDCwsL/wsLC/8LCwv/CwsL/z8/P/9/f3//f39//3t7e/97e3v/e3t7/3Nzc/9DQ0P/CwsL/wMDA/8DA + wP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vv+9vb3/vb29/729vf+8vLz/vLy8/7y8 + vP+7u7v/u7u7/7u7u/+7u7v/urq6/76+vv/Ozs7/2tra/9ra2v/Z2dn/2dnZ/9nZ2f/X19f/wcHB/7e3 + t/+2trb/tra2/7W1te+1tbUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAwsLCYMLCwu/CwsL/wsLC/8LCwv/MzMz/3d3d/97e3v/e3t7/3t7e/97e3v/e3t7/3t7e/9XV + 1f/Kysr/wMDA/8DAwP+/v7//v7+//7+/v/+/v7//vr6+/76+vv++vr7/vr6+/729vf+9vb3/vb29/7y8 + vP+8vLz/vLy8/7u7u/+9vb3/yMjI/9PT0//a2tr/2tra/9ra2v/a2tr/2tra/9nZ2f/T09P/vr6+/7e3 + t/+3t7f/t7e3/7a2tu+2trYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADCwsIwwsLC78LCwv/CwsL/wsLC/8fHx//Y2Nj/3t7e/97e3v/e3t7/3t7e/97e + 3v/e3t7/3t7e/97e3v/X19f/z8/P/8fHx//Dw8P/v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729 + vf/BwcH/x8fH/83Nzf/W1tb/29vb/9vb2//b29v/2tra/9ra2v/a2tr/2tra/9ra2v/MzMz/urq6/7i4 + uP+4uLj/t7e3/7e3t8+3t7cgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwjDCwsLPwsLC/8LCwv/CwsL/wsLC/87Ozv/b29v/3t7e/97e + 3v/e3t7/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/3d3d/93d3f/Z2dn/1tbW/9bW1v/W1tb/1tbW/9vb + 2//c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/b29v/29vb/9vb2//a2tr/2tra/9TU1P/BwcH/ubm5/7m5 + uf+4uLj/uLi4/7i4uL+3t7cQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCEMLCwq/CwsL/wsLC/8LCwv/CwsL/xMTE/9DQ + 0P/b29v/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/3t7e/97e3v/d3d3/3d3d/93d3f/d3d3/3d3d/93d + 3f/d3d3/3d3d/9zc3P/c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9vb2//b29v/19fX/8fHx/+6urr/urq6/7m5 + uf+5ubn/ubm5/7i4uIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCUMLCwu/CwsL/wsLC/8LC + wv/CwsL/wcHB/83Nzf/X19f/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/3t7e/93d3f/d3d3/3d3d/93d + 3f/d3d3/3d3d/93d3f/d3d3/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/Q0ND/w8PD/7u7u/+7u7v/urq6/7q6 + uv+6urr/ubm5z7m5uTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsIQwsLCj8LC + wv/CwsL/wsLC/8LCwv/BwcH/wcHB/8XFxf/Nzc3/1dXV/9vb2//e3t7/3t7e/97e3v/e3t7/3d3d/93d + 3f/d3d3/3d3d/93d3f/d3d3/3d3d/93d3f/Y2Nj/0dHR/8fHx/++vr7/vLy8/7y8vP+7u7v/u7u7/7u7 + u/+6urrvurq6gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADCwsIgwsLCn8LCwv/CwsL/wsLC/8HBwf/BwcH/wcHB/8HBwf/BwcH/wsLC/8jIyP/MzMz/0NDQ/8/P + z//Pz8//z8/P/8/Pz//Pz8//yMjI/8fHx/++vr7/vr6+/729vf+9vb3/vb29/7y8vP+8vLz/vLy8/7u7 + u++7u7uAu7u7EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADCwsIgwsLCgMLCwt/CwsL/wcHB/8HBwf/BwcH/wcHB/8HBwf/AwMD/wMDA/8DA + wP/AwMD/wMDA/7+/v/+/v7//v7+//7+/v/++vr7/vr6+/76+vv++vr7/vb29/729vf+9vb3/vLy8z7y8 + vGC8vLwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwsLCMMLCwo/BwcHPwcHB/8HBwf/BwcH/wcHB/8DA + wP/AwMD/wMDA/8DAwP/AwMD/v7+//7+/v/+/v7//v7+//76+vv++vr7/vr6+/76+vr+9vb1wvb29IAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHBwRDBwcFAwcHBcMHB + wYDBwcG/wMDAv8DAwL/AwMC/wMDAv8DAwL+/v7+/v7+/r7+/v4C/v79gvr6+QAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///////////////////////////////////////////////////////////// + ////////////////////////////////////////////AAB///////////////////////////////gA + AAAAAAAAAAAAAAAAAB///////////////////gAAAAAAAAAAAAAAAAAAAAAAAAAAf////////////wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////8 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + Af/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAP4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAH8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/8AAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///8AAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/////////AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAP/////////////gAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////8AAAAA + AAAAAAAAAAAAAAAAAf///////////////////gAAAAAAP//////////////////////////////////8 + AAAAAAAf//////////////////////////////////AAAAAAAA////////////////////////////// + ////4AAAAAAAB//////////////////////////////////AAAAAAAAD//////////////////////// + /////////4AAAAAAAAH/////////////////////////////////AAAAAAAAAP////////////////// + //////////////4AAAAAAAAAf////////////////////////////////AAAAAAAAAA///////////// + ///////////////////4AAAAAAAAAB////////////////////////////////AAAAAAAAAAD/////// + ////////////////////////4AAAAAAAAAAH///////////////////////////////AAAAAAAAAAAP/ + /////////////////////////////4AAAAAAAAAAAf//////////////////////////////AAAAAAAA + AAAA//////////////////////////////4AAAAAAAAAAAB//////////////////////////////AAA + AAAAAAAAAD/////////////////////////////4AAAAAAAAAAAAH/////////////////////////// + //AAAAAAAAAAAAAP////////////////////////////4AAAAAAAAAAAAAf///////////////////// + ///////AAAAAAcAAAAAAA////////////////////////////4AAAAA//gAAAAAB//////////////// + ////////////AAAAAP//wAAAAAD///////////////////////////4AAAAD///wAAAAAH////////// + /////////////////AAAAAf///gAAAAAP//////////////////////////8AAAAH////AAAAAAf//// + //////////////////////gAAAA/////AAAAAA//////////////////////////8AAAAH////+AAAAA + B//////////////////////////gAAAA/////8AAAAAD/////////////////////////8AAAAH///// + 4AAAAAH/////////////////////////wAAAA//////wAAAAAP////////////////////////+AAAAH + //////gAAAAAf////////////////////////wAAAA///////AAAAAA///////////////////////// + AAAAD//////+AAAAAB////////////////////////4AAAAf//////8AAAAAD/////////////////// + /////gAAAD///////4AAAAAH///////////////////////+AAAAP///////wAAAAAP///////////// + //////////wAAAA////////gAAAAAf///////////////////////AAAAH////////AAAAAA//////// + ///////////////8AAAAf///////+AAAAAB///////////////////////gAAAB////////8AAAAAD// + ////////////////////+AAAAP////////4AAAAAH//////////////////////4AAAA/////////wAA + AAAP//////////////////////gAAAD/////////gAAAAA//////////////////////+AAAAP////// + ///AAAAAB//////////////////////4AAAA/////////+AAAAAD//////////////////////AAAAD/ + ////////8AAAAAP/////////////////////8AAAAP/////////4AAAAAf/////////////////////w + AAAA//////////wAAAAB//////////////////////AAAAD//////////gAAAAH///////////////// + ////8AAAAH//////////AAAAAP/////////////////////wAAAAf/////////+AAAAA//////////// + //////////gAAAB//////////4AAAAB/////////////////////+AAAAD//////////wAAAAH////// + ///////////////4AAAAP//////////gAAAAf/////////////////////gAAAAf/////////+AAAAB/ + ////////////////////+AAAAB//////////8AAAAH/////////////////////4AAAAD//////////4 + AAAAP/////////////////////wAAAAH//////////gAAAA//////////////////////AAAAAP///// + ////+AAAAD/////////////////////8AAAAAf/////////8AAAAP/////////////////////4AAAAA + //////////wAAAA//////////////////////gAAAAB//////8AP/AAAAD////////////////////// + AAAAAD/////+AAP8AAAAP/////////////////////8AAAAAH/////gAAPwAAAA///////////////// + /////4AAAAAP////8AAAPAAAAD//////////////////////gAAAAAf////gAAAcAAAAP/////////// + ///////////AAAAAA////8AAAAwAAAA//////////////////////+AAAAAB////gAAABAAAAH////// + ////////////////4AAAAAD///8AAAAAAAAAf//////////////////////wAAAAAH///wAAAAAAAAB/ + //////////////////////gAAAAAP//+AAAAAAAAAH///////////////////////AAAAAAf//4AAAAA + AAAAf//////////////////////+AAAAAA///AAAAAAAAAD///////////////////////8AAAAAB//8 + AAAAAAAAAP///////////////////////4AAAAAD//wAAAAAAAAA////////////////////////wAAA + AAH/+AAAAAAAAAH////////////////////////gAAAAAP/4AAAAAAAAAf////////////////////// + //AAAAAAf/gAAAAAAAAD////////////////////////+AAAAAA/+AAAAAAAAAP///////////////// + ///////8AAAAAB/4AAAAAAAAB/////////////////////////4AAAAAD/gAAAAAAAAP//////////// + /////////////wAAAAAH+AAAAAAAAA//////////////////////////gAAAAAP8AAAAAAAAH/////// + ///////////////////AAAAAAfwAAAAAAAA//////////////////////////+AAAAAA/AAAAAAAAH// + ////////////////////////8AAAAAB+AAAAAAAA///////////////////////////4AAAAAD4AAAAA + AAD///////////////////////////wAAAAADwAAAAAAAH///////////////////////////gAAAAAD + AAAAAAAAP///////////////////////////AAAAAAAAAAAAAAAf//////////////////////////+A + AAAAAAAAAAAAAA///////////////////////////8AAAAAAAAAAAAAAB/////////////////////// + ////4AAAAAAAAAAAAAAD///////////////////////////wAAAAAAAAAAAAAAH///////////////// + //////////gAAAAAAAAAAAAAAP///8AAP////////////////////AAAAAAAAAAAAAAAf//+AAAH//// + ///////////////+AAAAAAAAAAAAAAA///AAAAD///////////////////8AAAAAAAAAAAAAAB//wAAA + AD///////////////////4AAAAAAAAAAAAAAD/8AAAAAD///////////////////wAAAAAAAAAAAAAAH + /gAAAAAH///////////////////gAAAAAAAAAAAAAAP8AAAAAAH///////////////////AAAAAAAAAA + AAAAAfAAAAAAAP//////////////////+AAAAAAAAAAAAAAA4AAAAAAAf//////////////////8AAAA + AAAAAAAAAABAAAAAAAA///////////////////4AAAAAAAAAAAAAAAAAAAAAAB////////////////// + /wAAAAAAAAAAAAAAAAAAAAAAD///////////////////gAAAAAAAAAAAAAAAAAAAAAAH//////////// + ///////AAAAAAAAAAAAAAAAAAAAAAAP//////////////////+AAAAAAAAAAAAAAAAAAAAAAAf////// + ////////////8AAAAAAAAAAAAAAAAAAAAAAA///////////////////4AAAAAAAAAAAAAAAAAAAAAAB/ + //////////////////4AAAAABgAAAAAAAAAAAAAAAD///////////////////wAAAAAPAAAAAAAAAAAA + AAAAH///////////////////wAAAAD+AAAAAAAAAAAAAAAAP///////////////////wAAAA/8AAAAAA + AAAAAAAAAAf///////////////////wAAAP/4AAAAAAAAAAAAAAAA////////////////////8AAP//w + AAAAAAAAAAAAAAAB//////////////////////////gAAAAAAAAAAAAAAAD///////////////////// + /////AAAAAAAAAAAAAAAAH/////////////////////////+AAAAAAAAAAAAAAAAP/////////////// + //////////8AAAAAAAAAAAAAAAAf/////////////////////////4AAAAAAAA/AAAAAAA////////// + ////////////////wAAAAAAAD/wAAAAAB//////////////////////////gAAAAAAAH/wAAAAAD//// + //////////////////////AAAAAAAAP/wAAAAAH/////////////////////////+AAAAAAAAf/gAAAA + AP/////////////////////////8AAAAAAAA//AAAAAAf/////////////////////////4AAAAAAAD/ + /AAAAAA//////////////////////////wAAAAAAAH/+AAAAAB//////////////////////////gAAA + AAAAP/8AAAAAD/////////////////////////8AAAAAAAA//4AAAAAH//////////////////////// + /gAAAAAAAB//wAAAAAP////////////////////////+AAAAAAAAH//gAAAAAf////////////////// + //////wAAAAAAAAf//AAAAAA/////////////////////////AAAAAAAAB//+AAAAAB///////////// + ///////////4AAAAAAAAH//8AAAAAD////////////////////////gAAAAAAAAP//4AAAAAH/////// + ////////////////8AAAAAAAAA///wAAAAAP///////////////////////wAAAAAAAAD///gAAAAAf/ + //////////////////////AAAAAAAAAf///AAAAAA///////////////////////4AAAAAAAAB///+AA + AAAB///////////////////////gAAAAAAAAH///8AAAAAD//////////////////////+AAAAAAAAAf + ///4AAAAAH//////////////////////4AAAAAAAAB////wAAAAAf//////////////////////gAAAA + AAAAP////gAAAAA//////////////////////8AAAAAAAAA/////AAAAAB////////////////////// + wAAAAAAAAH////+AAAAAH//////////////////////AAAAAAAAAf////8AAAAAP//////////////// + /////8AAAAAAAAD/////4AAAAA//////////////////////wAAAAAAAAf/////wAAAAB/////////// + ///////////AAAAAAAAD//////gAAAAH/////////////////////8AAAAAAAAf//////AAAAAP///// + ////////////////wAAAAQAAH//////+AAAAA//////////////////////AAAABwAA///////4AAAAD + /////////////////////+AAAAD4Af///////wAAAAH/////////////////////4AAAAP////////// + gAAAAf/////////////////////gAAAAf/////////+AAAAB/////////////////////+AAAAB///// + /////8AAAAH/////////////////////4AAAAD//////////wAAAAf/////////////////////wAAAA + H//////////gAAAA//////////////////////AAAAAP/////////+AAAAD///////////////////// + 8AAAAAf/////////4AAAAP/////////////////////4AAAAA//////////wAAAA//////////////// + //////gAAAAB//////////AAAAD//////////////////////AAAAAD/////////8AAAAP////////// + ///////////8AAAAAH/////////wAAAA//////////////////////4AAAAAP/////////AAAAD///// + /////////////////gAAAAAf////////8AAAAP//////////////////////AAAAAA/////////wAAAB + //////////////////////+AAAAAB/////////AAAAH//////////////////////4AAAAAD//////// + 8AAAAf//////////////////////wAAAAAH////////wAAAB///////////////////////gAAAAAP// + /////+AAAAH///////////////////////AAAAAAf///////4AAAA///////////////////////+AAA + AAA////////gAAAD///////////////////////8AAAAAB///////8AAAAP///////////////////// + //4AAAAAD///////wAAAB////////////////////////wAAAAAH//////+AAAAH//////////////// + ////////gAAAAAP//////4AAAA/////////////////////////AAAAAAf//////AAAAD/////////// + /////////////+AAAAAA//////4AAAAf////////////////////////8AAAAAB//////AAAAB////// + ///////////////////4AAAAAD/////4AAAAP/////////////////////////wAAAAAH/////AAAAB/ + /////////////////////////gAAAAAP////4AAAAH//////////////////////////AAAAAAf////A + AAAA//////////////////////////+AAAAAA////4AAAAH//////////////////////////8AAAAAB + ////AAAAA///////////////////////////4AAAAAD///wAAAAH///////////////////////////w + AAAAAD//8AAAAA////////////////////////////gAAAAAB//AAAAAH/////////////////////// + /////AAAAAAAfAAAAAA////////////////////////////+AAAAAAAAAAAAAH////////////////// + //////////8AAAAAAAAAAAAA/////////////////////////////4AAAAAAAAAAAAH///////////// + ////////////////wAAAAAAAAAAAA//////////////////////////////gAAAAAAAAAAAH//////// + //////////////////////AAAAAAAAAAAA//////////////////////////////+AAAAAAAAAAAH/// + ///////////////////////////8AAAAAAAAAAA///////////////////////////////4AAAAAAAAA + AH///////////////////////////////wAAAAAAAAAA////////////////////////////////gAAA + AAAAAAH////////////////////////////////AAAAAAAAAA/////////////////////////////// + /+AAAAAAAAAH////////////////////////////////8AAAAAAAAA////////////////////////// + ///////4AAAAAAAAH/////////////////////////////////wAAAAAAAA///////////////////// + /////////////gAAAAAAAH//////////////////////////////////AAAAAAAA//////////////// + //////////////////+AAAAAAAH//////////////////////////////////8AAAAAAA/////////// + ////////////////////////4AAAAAAP///////////////////////////////////4AAAAAB////// + //////////////////////////////wAAAAAf////////////////////////////////////wAAAAD/ + ////////////////////////////////////wAAAA//////////////////////////////////////4 + AAAf//////////////////////////////////////8AAf////////////////////////////////// + /////////////////////////////////////////////////////////////ygAAACAAAAAAAEAAAEA + IAAAAAAAAAgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSk + pAGkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQBpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSk + pAGkpKQBpKSkAaSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkA6SkpASkpKQEpKSkBaSk + pAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSk + pAWkpKQFpKSkBaSkpAWkpKQFpKSkBqSkpAikpKQJpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6Sk + pAukpKQKpKSkCaSkpAekpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSk + pAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQFpKSkBaSkpAWkpKQEpKSkBKSkpAOkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGkpKQCpKSkAqSk + pAOkpKQEpKSkBKSkpAWkpKQFpKSkBaSkpAWkpKQHpKSkCaSkpAqkpKQLpKSkC6SkpAukpKQLpKSkC6Sk + pAukpKQMpKSkDaSkpA+kpKQSpKSkFaSkpBakpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6Sk + pBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBikpKQbpKSkH6Sk + pCSkpKQnpKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCWkpKQipKSkHaSkpBmkpKQYpKSkF6Sk + pBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkF6Sk + pBekpKQXpKSkF6SkpBakpKQVpKSkEqSkpA+kpKQNpKSkDKSkpAukpKQLpKSkC6SkpAukpKQLpKSkC6Sk + pAqkpKQJpKSkB6SkpAWkpKQFpKSkBaSkpAWkpKQEpKSkBKSkpAOkpKQCpKSkAqSkpAGkpKQBAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkpKQBpKSkAqSk + pAOkpKQFpKSkBqSkpAikpKQJpKSkC6SkpAykpKQOpKSkEaSkpBSkpKQVpKSkF6SkpBekpKQYpKSkGaSk + pB2kpKQipKSkJaSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCqkpKQspKSkMaSkpDekpKQ9pKSkQKSk + pECkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSk + pEGkpKRBpKSkQaSkpEGkpKRBpKSkQ6SkpEikpKRPpKSkVqSkpFukpKRdpKSkXqSkpF+kpKRfpKSkX6Sk + pF6kpKRdpKSkWaSkpFOkpKRLpKSkRaSkpEKkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSk + pEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRBpKSkQaSkpEGkpKRApKSkQKSkpD2kpKQ3pKSkMaSk + pCykpKQqpKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkJaSkpCKkpKQdpKSkGaSkpBikpKQXpKSkF6Sk + pBWkpKQUpKSkEaSkpA6kpKQMpKSkC6SkpAmkpKQIpKSkBqSkpAWkpKQDpKSkAqSkpAEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACkpKQCpKSkBaSkpAqkpKQOpKSkE6SkpBekpKQbpKSkH6SkpCSkpKQnpKSkKqSk + pC6kpKQ0pKSkOqSkpD6kpKRApKSkQaSkpEKkpKRFpKSkS6SkpFOkpKRZpKSkXaSkpF6kpKRfpKSkX6Sk + pF+kpKRfpKSkYKSkpGOkpKRqpKSkcqSkpHmkpKR9pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6Sk + pH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKSCpKSkh6Sk + pI+kpKSXpKSknaSkpJ+kpKSgpKSkoKSkpKCkpKSgpKSkn6SkpJ6kpKSapKSkk6SkpIukpKSEpKSkgKSk + pH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6Sk + pH+kpKR/pKSkf6SkpH+kpKR9pKSkeaSkpHKkpKRqpKSkY6SkpGCkpKRfpKSkX6SkpF+kpKRfpKSkXqSk + pF2kpKRZpKSkU6SkpEukpKRFpKSkQqSkpEGkpKRApKSkPqSkpDqkpKQ0pKSkLqSkpCqkpKQnpKSkJKSk + pB+kpKQbpKSkF6SkpBOkpKQOpKSkCqSkpAWkpKQCAAAAAAAAAAAAAAAApKSkA6SkpAqkpKQVpKSkIaSk + pC2kpKQ2pKSkP6SkpEekpKRPpKSkVqSkpFykpKRgpKSkZqSkpG6kpKR2pKSkfKSkpH6kpKR/pKSkgKSk + pISkpKSLpKSkk6SkpJqkpKSepKSkn6SkpKCkpKSgpKSkoKSkpKCkpKShpKSkpKSkpKukpKSypKSkuKSk + pLykpKS9pKSkvaSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSk + pL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL+kpKTDpKSkyaSkpM+kpKTTpKSk1aSkpNWkpKTWpKSk1qSk + pNakpKTVpKSk1KSkpNGkpKTMpKSkxqSkpMGkpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSk + pL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkvqSkpL6kpKS9pKSkvaSkpLykpKS4pKSksqSk + pKukpKSkpKSkoaSkpKCkpKSgpKSkoKSkpKCkpKSfpKSknqSkpJqkpKSTpKSki6SkpISkpKSApKSkf6Sk + pH6kpKR8pKSkdqSkpG6kpKRmpKSkYKSkpFykpKRWpKSkT6SkpEekpKQ/pKSkNqSkpC2kpKQhpKSkFaSk + pAqkpKQDAAAAAKSkpAKkpKQJpKSkGaSkpC+kpKRIpKSkXaSkpG2kpKR5pKSkg6SkpI2kpKSVpKSknKSk + pKCkpKSmpKSkraSkpLWkpKS6pKSkvKSkpL2kpKS+pKSkwaSkpMakpKTMpKSk0aSkpNSkpKTVpKSk1qSk + pNakpKTWpKSk1qSkpNakpKTYpKSk26SkpOCkpKTkpKSk5qSkpOekpKTnpKSk6KSkpOikpKTopKSk6KSk + pOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSk + pOqkpKTspKSk76SkpPGkpKTypKSk86SkpPOkpKTzpKSk86SkpPKkpKTypKSk8KSkpO6kpKTrpKSk6aSk + pOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSkpOikpKTopKSk6KSk + pOikpKTopKSk6KSkpOekpKTnpKSk5qSkpOSkpKTgpKSk26SkpNikpKTWpKSk1qSkpNakpKTWpKSk1qSk + pNWkpKTUpKSk0aSkpMykpKTGpKSkwaSkpL6kpKS9pKSkvKSkpLqkpKS1pKSkraSkpKakpKSgpKSknKSk + pJWkpKSNpKSkg6SkpHmkpKRtpKSkXaSkpEikpKQvpKSkGaSkpAmkpKQCpKSkA6SkpBCkpKQnpKSkSqSk + pG2kpKSKpKSknqSkpKukpKS1pKSkvqSkpMakpKTMpKSk0KSkpNSkpKTZpKSk3qSkpOKkpKTkpKSk5aSk + pOWkpKTmpKSk6aSkpOykpKTvpKSk8aSkpPKkpKTypKSk8qSkpPOkpKTzpKSk86SkpPOkpKT0pKSk9qSk + pPekpKT4pKSk+aSkpPmkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSk + pPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT7pKSk/KSkpP2kpKT9pKSk/aSk + pP2kpKT9pKSk/aSkpPykpKT8pKSk+6SkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSk + pPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT6pKSk+aSkpPmkpKT4pKSk96Sk + pPakpKT0pKSk86SkpPOkpKTzpKSk86SkpPKkpKTypKSk8qSkpPGkpKTvpKSk7KSkpOmkpKTmpKSk5aSk + pOWkpKTkpKSk4qSkpN6kpKTZpKSk1KSkpNCkpKTMpKSkxqSkpL6kpKS1pKSkq6SkpJ6kpKSKpKSkbaSk + pEqkpKQnpKSkEKSkpAOkpKQEpKSkEaSkpCukpKRQpKSkdqSkpJOkpKSopKSktaSkpL+kpKTHpKSkzqSk + pNWkpKTapKSk3aSkpOGkpKTlpKSk6aSkpOukpKTspKSk7aSkpO2kpKTupKSk8aSkpPOkpKT1pKSk9qSk + pPekpKT3pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk+aSkpPqkpKT7pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT9pKSk/aSkpP2kpKT9pKSk/aSkpP2kpKT9pKSk/aSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSkpPykpKT8pKSk/KSk + pPykpKT8pKSk/KSkpPykpKT8pKSk+6SkpPqkpKT5pKSk+KSkpPikpKT4pKSk+KSkpPikpKT4pKSk96Sk + pPekpKT2pKSk9aSkpPOkpKTxpKSk7qSkpO2kpKTtpKSk7KSkpOukpKTppKSk5aSkpOGkpKTdpKSk2qSk + pNWkpKTOpKSkx6SkpL+kpKS1pKSkqKSkpJOkpKR2pKSkUKSkpCukpKQRpKSkBKSkpAOkpKQNpKSkIaSk + pD2kpKRbpKSkc6SkpISkpKSRpKSkmqSkpKKkpKSrpKSks6SkpLmkpKS9pKSkwaSkpMikpKTOpKSk0qSk + pNSkpKTVpKSk1aSkpNakpKTZpKSk3qSkpOKkpKTlpKSk5qSkpOekpKTopKSk6KSkpOikpKTopKSk6KSk + pOmkpKTrpKSk7qSkpPCkpKTypKSk8qSkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86Sk + pPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86Sk + pPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86Sk + pPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk86SkpPOkpKTzpKSk8qSkpPKkpKTwpKSk7qSk + pOukpKTppKSk6KSkpOikpKTopKSk6KSkpOikpKTnpKSk5qSkpOWkpKTipKSk3qSkpNmkpKTWpKSk1aSk + pNWkpKTUpKSk0qSkpM6kpKTIpKSkwaSkpL2kpKS5pKSks6SkpKukpKSipKSkmqSkpJGkpKSEpKSkc6Sk + pFukpKQ9pKSkIaSkpA2kpKQDpKSkAaSkpAakpKQRpKSkIKSkpDGkpKRApKSkTKSkpFakpKRdpKSkZaSk + pG6kpKR2pKSkfKSkpIGkpKSHpKSkj6SkpJekpKSdpKSkn6SkpKCkpKSgpKSkoqSkpKekpKSupKSktaSk + pLqkpKS8pKSkvaSkpL6kpKS+pKSkvqSkpL6kpKS+pKSkwaSkpMakpKTMpKSk0aSkpNSkpKTVpKSk1qSk + pNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSk + pNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSk + pNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSkpNakpKTWpKSk1qSk + pNakpKTWpKSk1qSkpNakpKTVpKSk1KSkpNGkpKTMpKSkxqSkpMGkpKS+pKSkvqSkpL6kpKS+pKSkvqSk + pL2kpKS8pKSkuqSkpLWkpKSupKSkp6SkpKKkpKSgpKSkoKSkpJ+kpKSdpKSkl6SkpI+kpKSHpKSkgaSk + pHykpKR2pKSkbqSkpGWkpKRdpKSkVqSkpEykpKRApKSkMaSkpCCkpKQRpKSkBqSkpAEAAAAApKSkAaSk + pAWkpKQLpKSkEqSkpBikpKQfpKSkJKSkpCmkpKQupKSkNKSkpDqkpKQ/pKSkQ6SkpEikpKRPpKSkVqSk + pFukpKRdpKSkXqSkpF+kpKRhpKSkZqSkpG6kpKR2pKSkfKSkpH6kpKR/pKSkf6SkpH+kpKR/pKSkf6Sk + pICkpKSEpKSki6SkpJOkpKSapKSknqSkpJ+kpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSk + pKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSk + pKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSk + pKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpKCkpKSgpKSkoKSkpJ+kpKSepKSkmqSk + pJOkpKSLpKSkhKSkpICkpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH6kpKR8pKSkdqSkpG6kpKRmpKSkYaSk + pF+kpKRepKSkXaSkpFukpKRWpKSkT6SkpEikpKRDpKSkP6SkpDqkpKQ0pKSkLqSkpCmkpKQkpKSkH6Sk + pBikpKQSpKSkC6SkpAWkpKQBAAAAAAAAAAAAAAAAAAAAAKSkpAKkpKQDpKSkBqSkpAikpKQKpKSkDKSk + pA6kpKQRpKSkFKSkpBakpKQYpKSkG6SkpB+kpKQkpKSkJ6SkpCikpKQopKSkKaSkpCukpKQupKSkNKSk + pDqkpKQ+pKSkQKSkpEGkpKRBpKSkQaOjo0SdnZ1knJyce5qampCampqUmpqajZubm36hoaFlpKSkXqSk + pF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6Sk + pF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6Sk + pF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6SkpF+kpKRfpKSkX6Sk + pF+kpKRfpKSkX6SkpF+kpKRfpKSkXqSkpF2kpKRZpKSkU6SkpEukpKRFpKSkQqSkpEGkpKRBpKSkQaSk + pEGkpKRBpKSkQKSkpD6kpKQ6pKSkNKSkpC6kpKQrpKSkKaSkpCikpKQopKSkJ6SkpCSkpKQfpKSkG6Sk + pBikpKQWpKSkFKSkpBGkpKQOpKSkDKSkpAqkpKQIpKSkBqSkpAOkpKQCAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQCpKSkAqSkpAOkpKQEpKSkBKSkpAWkpKQGpKSkCKSk + pAmkpKQLo6OjC6Ojowujo6MLpKSkDKSkpA6kpKQRpKSkFKSkpBWkpKQXoaGhJp2dnXSXl5e/lJSU9JOT + k/+SkpL/kZGR/4+Pj/+Ojo7/jY2N/4uLi/+MjIzVlJSUlZubm0SkpKQopKSkKKSkpCikpKQopKSkKKSk + pCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSk + pCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSk + pCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSkpCikpKQopKSkKKSk + pCWkpKQipKSkHaSkpBmkpKQYpKSkF6SkpBekpKQXpKSkF6SkpBekpKQXpKSkFaSkpBSkpKQRpKSkDqSk + pAykpKQLpKSkC6SkpAukpKQLpKSkCaSkpAikpKQGpKSkBaSkpASkpKQEpKSkA6SkpAKkpKQCpKSkAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGjo6MCo6OjAqOjowKjo6MCoqKiAqKi + ogOhoaEEn5+fFJycnI6ZmZnzmJiY/5eXl/+Wlpb/lJSU/5OTk/+SkpL/kZGR/4+Pj/+Ojo7/jY2N/4uL + i/+Kior/iIiI+4mJibSXl5cynZ2dC56engufn58LoKCgC6CgoAuhoaELoqKiC6OjowukpKQLpKSkC6Sk + pAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6Sk + pAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkC6Sk + pAukpKQLpKSkC6SkpAukpKQLpKSkC6SkpAukpKQLpKSkCqSkpAmkpKQHpKSkBaSkpAWkpKQFpKSkBaSk + pAWkpKQFpKSkBaSkpAWkpKQEpKSkBKSkpAOkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAGkpKQBAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+fn0+dnZ3nnJyc/5ubm/+ZmZn/mJiY/5eX + l/+Wlpb/lJSU/5OTk/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uLi/+Kior/iIiI/4eHh/uKioqBkpKSBpeX + lwKYmJgCmpqaAp2dnQKfn58CoqKiAqOjowKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSk + pAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSkpAKkpKQCpKSkAqSk + pAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAChoaGHn5+f/56env+dnZ3/nJyc/5ubm/+ZmZn/mJiY/5eXl/+Wlpb/lJSU/5OTk/+SkpL/kJCQ/4+P + j/+Ojo7/jIyM/4uLi/+Kior/iIiI/4eHh/+FhYW7j4+PEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjo6MEo6Ojo6Kiov+goKD/n5+f/56env+dnZ3/nJyc/5ub + m/+ZmZn/mJiY/5eXl/+Wlpb/lJSU/5OTk/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uLi/+Kior/iIiI/4eH + h/+FhYXXjY2NGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApaWlBKWl + paukpKT/o6Oj/6Kiov+goKD/n5+f/56env+dnZ3/nJyc/5qamv+ZmZn/mJiY/5eXl/+Wlpb/lJSU/5OT + k/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uLi/+Kior/iIiI/4eHh/+FhYXXiIiIGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKenpwSnp6erpqam/6Wlpf+kpKT/o6Oj/6Ghof+goKD/n5+f/56e + nv+dnZ3/nJyc/5qamv+ZmZn/mJiY/5eXl/+Wlpb/lJSU/5OTk/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uL + i/+Kior/iIiI/4eHh/+FhYXXh4eHGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACpqakEqampq6io + qP+np6f/pqam/6Wlpf+kpKT/o6Oj/6Ghof+goKD/n5+f/56env+dnZ3/nJyc/5qamv+ZmZn/mJiY/5eX + l/+VlZX/lJSU/5OTk/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uLi/+Kior/iIiI/4eHh/+FhYXXh4eHGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAq6urBKurq6uqqqr/qamp/6ioqP+np6f/pqam/6Wlpf+kpKT/o6Oj/6Gh + of+goKD/n5+f/56env+dnZ3/nJyc/5qamv+ZmZn/mJiY/5eXl/+VlZX/lJSU/5OTk/+SkpL/kJCQ/4+P + j/+Ojo7/jIyM/4uLi/+JiYn/iIiI/4eHh/+FhYXXh4eHGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK2trQStra2rrKys/6ur + q/+qqqr/qamp/6ioqP+np6f/pqam/6Wlpf+kpKT/oqKi/6Ghof+hoaH/pKSk/6Wlpf+lpaX/oqKi/56e + nv+ampr/mJiY/5eXl/+VlZX/lJSU/5OTk/+SkpL/kJCQ/4+Pj/+Ojo7/jIyM/4uLi/+JiYn/iIiI/4eH + h/+FhYXXh4eHGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACvr68Er6+vq66urv+tra3/rKys/6urq/+qqqr/qamp/6ioqP+np6f/pqam/6am + pv+srKz/srKy/7a2tv+1tbX/tLS0/7Ozs/+zs7P/srKy/7CwsP+oqKj/n5+f/5eXl/+VlZX/lJSU/5OT + k/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uLi/+JiYn/iIiI/4eHh/+FhYXXh4eHGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsbGxBLGxsauwsLD/r6+v/66u + rv+tra3/rKys/6urq/+qqqr/qamp/6ioqP+tra3/uLi4/7m5uf+3t7f/sbGx/62trf+pqan/p6en/6am + pv+pqan/rKys/7CwsP+vr6//qqqq/5ycnP+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uL + i/+JiYn/iIiI/4eHh/+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALOzswSysrKrsbGx/7Gxsf+wsLD/r6+v/66urv+tra3/rKys/6urq/+qqqr/tbW1/7y8 + vP+4uLj/rq6u/6ampv+jo6P/oqKi/6Ghof+goKD/n5+f/56env+dnZ3/nZ2d/6SkpP+tra3/rq6u/6Ki + ov+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uLi/+JiYn/iIiI/4aGhv+FhYXXhoaGGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC0tLQEtLS0q7Ozs/+ysrL/sbGx/7Gx + sf+wsLD/r6+v/66urv+tra3/rKys/7e3t/+9vb3/srKy/6ioqP+np6f/pqamv6ioqGenp6cwp6enDAAA + AACjo6MUoqKiN5+fn3ucnJzTm5ub/5ubm/+mpqb/r6+v/6Ojo/+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+P + j/+NjY3/jIyM/4uLi/+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAtra2BLa2tqu1tbX/tLS0/7Ozs/+ysrL/sbGx/7CwsP+wsLD/r6+v/66urv+5ubn/vb29/6+v + r/+qqqr/qampw6urqy8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACfn59Pm5ub15qa + mv+hoaH/rq6u/6Ojo/+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uLi/+JiYn/iIiI/4aG + hv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC3t7ertra2/7a2tv+1tbX/tLS0/7Oz + s/+ysrL/sbGx/7CwsP+wsLD/u7u7/76+vv+wsLD/rKys/6ysrH+tra0EAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACfn58Mm5ubp5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5OT + k/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uLi/+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAuLi4j7i4uP+3t7f/tra2/7a2tv+1tbX/tLS0/7Ozs/+ysrL/sbGx/7q6uv/AwMD/sbGx/66u + rv+urq5vAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAnJycj5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4uL + i/+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALq6ul+5ubn/ubm5/7i4uP+3t7f/tra2/7a2 + tv+1tbX/tLS0/7Ozs/+2trb/w8PD/7S0tP+vr6//sLCwbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycj5qamv+goKD/rq6u/6Oj + o/+VlZX/lJSU/5OTk/+RkZH/kJCQ/4+Pj/+NjY3/jIyM/4qKiv+JiYn/iIiI/4aGhv+FhYXXhoaGGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC7u7scu7u787q6uv+5ubn/ubm5/7i4uP+3t7f/tra2/7W1tf+1tbX/tLS0/8DAwP+5ubn/sbGx/7Gx + sXcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KSkv+RkZH/kJCQ/4+P + j/+NjY3/jIyM/4qKiv+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vKO7u7v/u7u7/7q6uv+5ubn/ubm5/7i4 + uP+3t7f/tra2/7W1tf+4uLj/wcHB/7Ozs/+ysrKvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qa + mv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KSkv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qKiv+JiYn/iIiI/4aG + hv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAC8vLwkvb29/7y8vP+7u7v/u7u7/7q6uv+5ubn/ubm5/7i4uP+3t7f/tra2/76+vv+5ubn/tLS097W1 + tRwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KS + kv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qKiv+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29vYu9vb3/vLy8/7y8vP+7u7v/u7u7/7q6 + uv+5ubn/uLi4/7i4uP+3t7f/wcHB/7W1tf+1tbWXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAm5ubj5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KSkv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qK + iv+JiYn/iIiI/4aGhv+FhYXXhoaGGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAvr6+476+vv+9vb3/vLy8/7y8vP+7u7v/u7u7/7q6uv+5ubn/uLi4/7i4uP++vr7/tra2/7e3 + tz8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/6Oj + o/+VlZX/lJSU/5KSkv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qKiv+JiYn/h4eH/4aGhv+FhYXXhoaGGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6+vii/v7//vr6+/76+vv+9vb3/vLy8/7y8 + vP+7u7v/u7u7/7q6uv+5ubn/uLi4/729vf+3t7f3uLi4CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KSkv+RkZH/kJCQ/46O + jv+NjY3/jIyM/4qKiv+JiYn/h4eH/4aGhv+FhYXHhoaGDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAv7+/V7+/v/+/v7//vr6+/76+vv+9vb3/vLy8/7y8vP+7u7v/u7u7/7q6uv+5ubn/u7u7/7i4 + uNcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qa + mv+goKD/rq6u/6Ojo/+VlZX/lJSU/5KSkv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qKiv+JiYn/h4eH/4aG + hv+FhYWbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMB/wMDA/7+/v/+/v7//vr6+/76+ + vv+9vb3/vLy8/7y8vP+7u7v/urq6/7q6uv+5ubn/uLi4vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/6Ojo/+VlZX/k5OT/5KS + kv+RkZH/kJCQ/46Ojv+NjY3/jIyM/4qKiv+JiYn/h4eH/4aGhv+GhoZLAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMHBwZvAwMD/xMTE/7+/v/+/v7//vr6+/76+vv+9vb3/vLy8/7y8vP+7u7v/urq6/7q6 + uv+5ubnPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAm5ubj5qamv+goKD/rq6u/6Ghof+VlZX/k5OT/5KSkv+RkZH/kJCQ/46Ojv+NjY3/i4uL/4qK + iv+JiYn/h4eH/4aGhtuHh4cEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwcHBn8HBwf/IyMj/wMDA/7+/ + v/+/v7//vr6+/76+vv+9vb3/vLy8/7y8vP+7u7v/urq6/7q6uu8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubj5qamv+goKD/rq6u/5qa + mv+VlZX/k5OT/5KSkv+RkZH/j4+P/46Ojv+NjY3/i4uL/4qKiv+JiYn/h4eH/4eHh1sAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADBwcGTwcHB/8rKyv/AwMD/wMDA/7+/v/+/v7//vr6+/76+vv+9vb3/vLy8/7y8 + vP+7u7v/urq6/7q6uigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAm5ubl5qamv+jo6P/qamp/5aWlv+VlZX/k5OT/5KSkv+RkZH/j4+P/46O + jv+NjY3/i4uL/4qKiv+JiYn/h4eHwwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw3fBwcH/z8/P/8DA + wP/AwMD/wMDA/7+/v/+/v7//vr6+/76+vv+9vb3/vLy8/7y8vP+7u7v/u7u7ewAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0Em5ubw5qa + mv+qqqr/nJyc/5aWlv+VlZX/k5OT/5KSkv+RkZH/j4+P/46Ojv+NjY3/i4uL/4qKiv+JiYn/iYmJGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAw8PDT8LCwv/S0tL/wcHB/8DAwP/AwMD/wMDA/7+/v/+/v7//vr6+/76+ + vv+9vb3/vLy8/7y8vP+7u7vnu7u7CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0km5ub95+fn/+lpaX/l5eX/5aWlv+VlZX/k5OT/5KS + kv+RkZH/j4+P/46Ojv+NjY3/i4uL/4qKiv+KiopbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMQYwsLC/83N + zf/Kysr/wcHB/8DAwP/AwMD/wMDA/7+/v/+/v7//vr6+/729vf+9vb3/vLy8/7y8vP+7u7t/AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACcnJyTm5ub/6ioqP+YmJj/l5eX/5aWlv+VlZX/k5OT/5KSkv+RkZH/j4+P/46Ojv+NjY3/i4uL/4uL + i48AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCwsLPxcXF/9nZ2f/BwcH/wcHB/8DAwP/AwMD/wMDA/7+/ + v/+/v7//vr6+/729vf+9vb3/vLy8/7y8vPu8vLw/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dnS+cnJz/paWl/5ubm/+YmJj/l5eX/5aW + lv+VlZX/k5OT/5KSkv+RkZH/j4+P/46Ojv+NjY3/i4uLrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPD + w3PCwsL/1tbW/8zMzP/BwcH/wcHB/8DAwP/AwMD/wMDA/7+/v/+/v7//vr6+/729vf+9vb3/vLy8/7y8 + vPO8vLw7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJ2dneegoKD/nZ2d/5mZmf+YmJj/l5eX/5aWlv+UlJT/k5OT/5KSkv+RkZH/j4+P/5KS + kv+NjY2/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxsbGEMLCwvPIyMj/3Nzc/8XFxf/BwcH/wcHB/8DA + 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 + q/+rq6v/qqqq/6mpqf+oqKj/qKio/6enp/+kpKT/oaGh/6CgoP+fn5//np6e/52dnf+cnJz/mpqa/5mZ + mf+3t7f/oaGh/5aWluubm5sEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729 + vf+9vb3/vLy8/7y8vPO7u7s7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACzs7PrsrKy/7Ky + sv+xsbH/sLCw/7CwsP+vr6//rq6u/66urv+tra3/rKys/6urq/+rq6v/qqqq/6mpqf+oqKj/qKio/6en + p/+kpKT/oaGh/6CgoP+fn5//np6e/52dnf+cnJz/paWl/76+vv+YmJj/l5eXlwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PD + w//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/O7u7s7AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAtbW1HLS0tP+2trb/srKy/7Kysv+xsbH/sLCw/7CwsP+vr6//rq6u/66u + rv+tra3/rKys/6urq/+rq6v/qqqq/6mpqf+oqKj/qKio/6enp/+kpKT/oaGh/6CgoP+fn5//np6e/6Cg + oP/CwsL/p6en/5mZmfudnZ0oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/ + v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/O7u7s7AAAAAAAAAAAAAAAAAAAAAAAAAAC2trY8tLS0/8PD + w/+zs7P/srKy/7Kysv+xsbH/sLCw/7CwsP+vr6//rq6u/66urv+tra3/rKys/6urq/+rq6v/qqqq/6mp + qf+oqKj/qKio/6enp/+kpKT/oaGh/6CgoP+goKD/vb29/7u7u/+cnJz/mpqanwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fH + x//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7 + u/O7u7s7AAAAAAAAAAAAAAAAAAAAALe3tyy1tbX/xcXF/76+vv+zs7P/srKy/7Kysv+xsbH/sLCw/7Cw + sP+vr6//rq6u/66urv+tra3/rKys/6urq/+rq6v/qqqq/6mpqf+oqKj/qKio/6enp/+kpKT/oqKi/7y8 + vP/FxcX/oqKi/52dneujo6MUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DA + wP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/O7u7s7AAAAAAAAAAAAAAAAubm5DLW1 + tfvBwcH/0tLS/7a2tv+zs7P/srKy/7Kysv+xsbH/sLCw/7CwsP+vr6//rq6u/62trf+tra3/rKys/6ur + q/+rq6v/qqqq/6mpqf+oqKj/qKio/6enp/+1tbX/ycnJ/6enp/+fn5/7oKCgRwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729 + vf+9vb3/vLy8/7u7u/O7u7s7AAAAAAAAAAAAAAAAtra2v7e3t//V1dX/zs7O/7W1tf+zs7P/srKy/7Ky + sv+xsbH/sLCw/7CwsP+vr6//rq6u/62trf+tra3/rKys/6urq/+rq6v/qqqq/6mpqf+oqKj/qKio/6en + p/+rq6v/oaGh/6Kiom8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PD + w//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/O6urpfAAAAAAAA + AAC5ublPtra2/8TExP/X19f/zs7O/7W1tf+zs7P/srKy/7Kysv+xsbH/sLCw/7CwsP+vr6//rq6u/62t + rf+tra3/rKys/6urq/+rq6v/qqqq/6mpqf+oqKj/qKio/6enp/+lpaWfAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/ + v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/+7u7u/u7u7QwAAAAC2tra7tra2/8jIyP/X19f/zs7O/7W1 + tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+tra3/rKys/6urq/+rq6v/qqqq/6mp + qf+oqKj/p6en/6enp/unp6dTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fH + x//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7 + u/+7u7v/urq637m5ua+3t7f/tra2/8jIyP/X19f/zs7O/7W1tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+v + r/+vr6//rq6u/62trf+tra3/rKys/6urq/+qqqr/qqqq/6mpqf+oqKj/p6en/6enp/umpqZTAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DA + wP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/+7u7v/urq6/7m5uf+3t7f/tra2/8jI + yP/X19f/zs7O/7W1tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+tra3/rKys/6ur + q/+qqqr/qqqq/6mpqf+oqKj/p6en/6enp/umpqZTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729 + vf+9vb3/vLy8/7u7u/+7u7v/urq6/7m5uf+3t7f/tra2/8jIyP/X19f/zs7O/7W1tf+zs7P/srKy/7Gx + sf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+tra3/rKys/6urq/+qqqr/qqqq/6mpqf+oqKj/p6en/6en + p/umpqZTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKS + khSRkZFHkJCQX46OjnuNjY1/jIyMX4uLi0uKioocAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PD + w//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/+7u7v/urq6/7m5 + uf+3t7f/tra2/8jIyP/X19f/zs7O/7W1tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62t + rf+tra3/rKys/6urq/+qqqr/qqqq/6mpqf+oqKj/p6en/6enp/umpqZTAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAl5eXKJWVlYOUlJTXkpKS/5GRkf+QkJD/j4+P/42Njf+MjIz/ioqK/4mJ + if+IiIjfh4eHj4eHhysAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/ + v/++vr7/vr6+/729vf+9vb3/vLy8/7u7u/+7u7v/urq6/7m5uf+3t7f/tra2/8jIyP/X19f/zs7O/7W1 + tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+tra3/rKys/6urq/+qqqr/qqqq/6mp + qf+oqKj/p6en/6enp/umpqZTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAm5ubJJmZma+YmJj/lpaW/5WV + lf+UlJT/kpKS/5GRkf+QkJD/jo6O/42Njf+MjIz/ioqK/4mJif+IiIj/hoaG/4WFhbeFhYUrAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fH + x//c3Nz/2NjY/8PDw//BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+9vb3/vLy8/7u7 + u/+7u7v/urq6/7m5uf+3t7f/tra2/8jIyP/X19f/zs7O/7W1tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+v + r/+vr6//rq6u/62trf+tra3/rKys/6urq/+qqqr/qqqq/6mpqf+oqKj/p6en/6enp/umpqZTAAAAAAAA + AAAAAAAAAAAAAJ2dnXebm5v3mpqa/5mZmf+YmJj/lpaW/5WVlf+UlJT/kpKS/5GRkf+QkJD/jo6O/42N + jf+MjIz/ioqK/4mJif+IiIj/hoaG/4WFhfuEhISHhYWFBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//c3Nz/2NjY/8PDw//BwcH/wcHB/8DA + wP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+8vLz/vLy8/7u7u/+7u7v/urq6/7m5uf+2trb/tra2/8jI + yP/X19f/zs7O/7W1tf+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+srKz/rKys/6ur + q/+qqqr/qqqq/6mpqf+oqKj/p6en/6ampvumpqZTAAAAAKKiogyfn5+znp6e/5ycnP+bm5v/mpqa/5mZ + mf+Xl5f/lpaW/5WVlf+UlJT/kpKS/5GRkf+QkJD/jo6O/42Njf+MjIz/ioqK/4mJif+IiIj/hoaG/4WF + hf+Dg4O/hYWFFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvw8PD/8fHx//c3Nz/2dnZ/8XFxf/BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729 + vf+8vLz/vLy8/7u7u/+7u7v/urq6/7m5uf+2trb/tra2/8jIyP/X19f/zs7O/7S0tP+zs7P/srKy/7Gx + sf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+srKz/rKys/6urq/+qqqr/qqqq/6mpqf+oqKj/p6en/6am + pvulpaVfoaGhw6CgoP+fn5//nZ2d/5ycnP+bm5v/mpqa/5mZmf+Xl5f/lpaW/5WVlf+UlJT/kpKS/5GR + kf+QkJD/jo6O/42Njf+MjIz/ioqK/4mJif+IiIj/hoaG/4WFhf+Dg4PXhYWFGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvw8PD/8fHx//b29v/3d3d/87O + zv/BwcH/wcHB/8DAwP/AwMD/v7+//7+/v/++vr7/vr6+/729vf+8vLz/vLy8/7u7u/+7u7v/urq6/8bG + xv+7u7v/tra2/8jIyP/X19f/zs7O/7S0tP+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62t + rf+srKz/rKys/6urq/+qqqr/qamp/6mpqf+oqKj/p6en/6ampv+jo6P/oaGh/6CgoP+fn5//nZ2d/5yc + nP+bm5v/mpqa/5mZmf+Xl5f/lpaW/5WVlf+UlJT/kpKS/5GRkf+QkJD/jo6O/42Njf+MjIz/ioqK/4mJ + if+Hh4f/hoaG/4WFhf+Dg4PXhYWFGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRfw8PD+8XFxf/X19f/39/f/9ra2v/Nzc3/w8PD/8DAwP/AwMD/v7+//7+/ + v/++vr7/vr6+/729vf+8vLz/vb29/8jIyP/V1dX/2tra/8/Pz/+2trb/tra2/8jIyP/X19f/zs7O/7S0 + tP+zs7P/srKy/7Gxsf+xsbH/sLCw/6+vr/+vr6//rq6u/62trf+srKz/rKys/6urq/+qqqr/qamp/6mp + qf+oqKj/p6en/6ampv+jo6P/oaGh/6CgoP+fn5//nZ2d/5ycnP+bm5v/mpqa/5mZmf+Xl5f/lpaW/5WV + lf+UlJT/kpKS/5GRkf+QkJD/jo6O/42Njf+MjIz/ioqK/4mJif+Hh4f/hoaG/4WFhf+Dg4PXhISEGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRHw8PD68LC + wv/MzMz/29vb/97e3v/d3d3/19fX/9HR0f/Nzc3/ysrK/8rKyv/Ly8v/z8/P/9XV1f/b29v/3Nzc/9jY + 2P/IyMj/urq6/7m5ufO2trbbtra2/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+xsbH/sLCw/6+v + r/+urq7/rq6u/62trf+srKz/rKys/6urq/+qqqr/qamp/6mpqf+oqKj/p6en/6ampv+jo6P/oaGh/6Cg + oP+fn5//nZ2d/5ycnP+bm5v/mpqa/5mZmf+Xl5f/lpaW/5WVlf+UlJT/kpKS/5GRkf+QkJD/jo6O/42N + jf+MjIz/ioqK/4mJif+Hh4f/hoaG/4WFhf+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgcwsLCr8LCwv/CwsL/zMzM/9XV1f/c3Nz/3t7e/97e + 3v/e3t7/3d3d/93d3f/d3d3/3Nzc/9PT0//IyMj/vb29/7u7u/+6urq7wMDAIL6+vhi2trbXtra2/8jI + yP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/rKys/6ur + q/+qqqr/qamp/6mpqf+oqKj/p6en/6ampv+jo6P/oaGh/6CgoP+fn5//nZ2d/5ycnP+bm5v/mpqa/5mZ + mf+Xl5f/lpaW/5WVlf+Tk5P/kpKS/5GRkf+QkJD/jo6O/42Njf+Li4v/ioqK/4mJif+Hh4f/hoaG/4SE + hP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAxsbGP8LCwrPCwsL7wsLC/8HBwf/Gxsb/ycnJ/8vLy//Ly8v/ycnJ/8XFxf++vr7/vr6+/729 + vf+8vLy3wMDAPwAAAAAAAAAAAAAAAL6+vhi2trbXtbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gx + sf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/rKys/6urq/+qqqr/qamp/6mpqf+oqKj/p6en/6am + pv+jo6P/oqKi/6ampv+qqqr/ra2t/6+vr/+urq7/rKys/6ioqP+jo6P/mpqa/5WVlf+Tk5P/kpKS/5GR + kf+QkJD/jo6O/42Njf+Li4v/ioqK/4mJif+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMbGxhzHx8dnwsLCp8HB + wdPBwcHzwcHB/8DAwP/AwMD3v7+/17+/v6vDw8Nrw8PDHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29 + vRi2trbXtbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62t + rf+srKz/rKys/6urq/+qqqr/qamp/6mpqf+oqKj/p6en/6ampv+wsLD/tra2/7W1tf+zs7P/s7Oz/7Ky + sv+xsbH/sLCw/6+vr/+urq7/qKio/5ycnP+Tk5P/kpKS/5GRkf+Pj4//jo6O/42Njf+Li4v/ioqK/4mJ + if+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29vRi2trbXtbW1/8jIyP/X19f/zs7O/7S0 + tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/rKys/6urq/+qqqr/qamp/6mp + qf+oqKj/p6en/6enp/+wsLD/ra2t/6mpqf+lpaX/o6Oj/6Ojo/+lpaX/qamp/66urv+urq7/ra2t/6Wl + pf+VlZX/kpKS/5GRkf+Pj4//jo6O/42Njf+Li4v/ioqK/4mJif+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAL29vRi2trbXtbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+v + r/+urq7/rq6u/62trf+srKz/q6ur/6urq/+qqqr/qamp/6ioqP+oqKj/p6en/6ampv+jo6P/oaGh/6Cg + oPeenp7jnZ2d/5ycnP+bm5v/m5ub/6Kiov+rq6v/ra2t/6ioqP+Xl5f/kpKS/5GRkf+Pj4//jo6O/42N + jf+Li4v/ioqK/4mJif+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vBi2trbXtbW1/8jI + yP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/q6ur/6ur + q/+qqqr/qamp/6ioqP+oqKj/p6en/6ampv+kpKRnAAAAAAAAAAAAAAAAoaGhLKCgoGObm5vHmpqa/5mZ + mf+kpKT/ra2t/6qqqv+Xl5f/kpKS/5GRkf+Pj4//jo6O/42Njf+Li4v/ioqK/4mJif+Hh4f/hoaG/4SE + hP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vBi2trbXtbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gx + sf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/q6ur/6urq/+qqqr/qamp/6ioqP+oqKj/p6en/6am + pvumpqZTAAAAAAAAAAAAAAAAAAAAAAAAAACenp4/mZmZ15iYmP+fn5//rKys/6qqqv+Xl5f/kpKS/5GR + kf+Pj4//jo6O/42Njf+Li4v/ioqK/4iIiP+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8 + vBi2trbXtbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62t + rf+srKz/q6ur/6urq/+qqqr/qamp/6ioqP+oqKj/p6en/6ampvulpaVDAAAAAAAAAAAAAAAAAAAAAAAA + AACenp4ImZmZo5iYmP+fn5//rKys/6qqqv+Xl5f/kpKS/5GRkf+Pj4//jo6O/42Njf+Li4v/ioqK/4iI + iP+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALy8vBi2trbXtbW1/8jIyP/X19f/zs7O/7S0 + tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/rq6u/62trf+srKz/q6ur/6urq/+qqqr/qamp/6io + qP+oqKj/p6en/6ampvOlpaUgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+fn5//rKys/6mp + qf+Xl5f/kpKS/5GRkf+Pj4//jo6O/42Njf+Li4v/ioqK/4iIiP+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALq6uou2trb/tbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+v + r/+urq7/rq6u/62trf+srKz/q6ur/6urq/+qqqr/qamp/6ioqP+oqKj/p6en/6ampq8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+fn5//rKys/6mpqf+Wlpb/kpKS/5GRkf+Pj4//jo6O/4yM + jP+Li4v/ioqK/4iIiP+Hh4f/hoaG/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7u7s3urq6+7m5uf+2trb/tbW1/8jI + yP/X19f/zs7O/7S0tP+ysrL/srKy/7Gxsf+wsLD/sLCw/6+vr/+urq7/ra2t/62trf+srKz/q6ur/6ur + q/+qqqr/qamp/6ioqP+oqKj/p6en/6enpxwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iY + mP+fn5//rKys/6mpqf+Wlpb/kpKS/5CQkP+Pj4//jo6O/4yMjP+Li4v/ioqK/4iIiP+Hh4f/hYWF/4SE + hP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALu7u8u6urr/urq6/7m5uf+2trb/tbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/srKy/7Gx + sf+wsLD/sLCw/6+vr/+urq7/ra2t/62trf+srKz/q6ur/6urq/+qqqr/qamp/6ioqP+oqKj/qampYwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+fn5//rKys/6mpqf+Wlpb/kpKS/5CQ + kP+Pj4//jo6O/4yMjP+Li4v/ioqK/4iIiP+Hh4f/hYWF/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7u7tHvLy8/7u7u/+6urr/urq6/7m5 + uf+2trb/tbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/sbGx/7Gxsf+wsLD/r6+v/6+vr/+urq7/ra2t/62t + rf+srKz/q6ur/6urq/+qqqr/srKy/6ioqP+pqamDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAmpqaj5iYmP+enp7/rKys/6mpqf+Wlpb/kpKS/5CQkP+Pj4//jo6O/4yMjP+Li4v/ioqK/4iI + iP+Hh4f/hYWF/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAL29va+8vLz/vLy8/7u7u/+6urr/urq6/7m5uf+2trb/tbW1/8jIyP/X19f/zs7O/7S0 + tP+ysrL/sbGx/7Gxsf+wsLD/r6+v/6+vr/+urq7/ra2t/62trf+srKz/q6ur/6qqqv+/v7//qamp/6io + qJcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+enp7/rKys/6mp + qf+Wlpb/kpKS/5CQkP+Pj4//jo6O/4yMjP+Li4v/ioqK/4iIiP+Hh4f/hYWF/4SEhP+Dg4PXhISEGAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC9vb0Mvb299729vf+8vLz/vLy8/7u7 + u/+6urr/urq6/7m5uf+2trb/tbW1/8jIyP/X19f/zs7O/7S0tP+ysrL/sbGx/7Gxsf+wsLD/r6+v/6+v + r/+urq7/ra2t/62trf+srKz/srKy/8rKyv+qqqr/ra2tewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+enp7/rKys/6mpqf+Wlpb/kpKS/5CQkP+Pj4//jo6O/4yM + jP+Li4v/ioqK/4iIiP+Hh4f/hYWF/4SEhP+Dg4PXhISEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAL6+vke+vr7/vb29/729vf+8vLz/vLy8/7u7u/+6urr/ubm5/7i4uP+2trb/tbW1/8jI + yP/X19f/zs7O/7S0tP+ysrL/sbGx/7Gxsf+wsLD/r6+v/6+vr/+urq7/ra2t/7CwsP/MzMz/wcHB/6qq + qv+urq5HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iY + mP+enp7/rKys/6mpqf+Wlpb/kpKS/5CQkP+Pj4//jo6O/4yMjP+Li4v/iYmJ/4iIiP+Hh4f/hYWF/4SE + hP+Dg4PDhISECAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvr6+d76+vv++vr7/vb29/729 + vf+8vLz/u7u7/7u7u/+6urr/ubm5/7i4uP+2trb/tbW1/8jIyP/X19f/0NDQ/7e3t/+ysrL/sbGx/7Gx + sf+wsLD/r6+v/6+vr/+zs7P/zc3N/9LS0v+xsbH/q6ur67GxsQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmpqaj5iYmP+enp7/rKys/6mpqf+Wlpb/kpKS/5CQ + kP+Pj4//jo6O/4yMjP+Li4v/iYmJ/4iIiP+Hh4f/hYWF/4SEhP+Dg4OXAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + mP+ioqL/qqqq/5SUlP+Tk5P/kZGR/5CQkP+Pj4//jY2N/4yMjP+Li4v/iYmJ/4iIiP+Ghob/hYWFswAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMLCwo/BwcH/09PT/8DAwP+/v7//v7+//76+vv++vr7/vb29/729 + vf+8vLz/u7u7/7u7u/+6urr/urq6bwAAAAC6urort7e3i7S0tMe0tLTfs7Oz37Ozs8O1tbWDuLi4JAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcnJwEmZmZx5iYmP+pqan/nZ2d/5SUlP+Tk5P/kZGR/5CQ + kP+Pj4//jY2N/4yMjP+Li4v/iYmJ/4iIiP+Ghob7h4eHDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDY8HB + wf/V1dX/wsLC/8DAwP+/v7//v7+//76+vv++vr7/vb29/729vf+8vLz/u7u7/7u7u/+6urrbu7u7BAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACbm5snmZmZ+56env+lpaX/lZWV/5SUlP+Tk5P/kZGR/5CQkP+Pj4//jY2N/4yMjP+Li4v/iYmJ/4iI + iP+IiIhHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMQowcHB/87Ozv/Pz8//wMDA/8DAwP+/v7//v7+//76+ + vv++vr7/vb29/729vf+8vLz/u7u7/7u7u/+6urpzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACampqjmZmZ/6ioqP+Wlpb/lZWV/5SU + lP+Tk5P/kZGR/5CQkP+Pj4//jY2N/4yMjP+Li4v/iYmJ/4qKincAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADCwsLjxcXF/9zc3P/Dw8P/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/729vf+8vLz/u7u7/7u7 + u/u6uro7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJubm0Oampr/paWl/5iYmP+Wlpb/lZWV/5SUlP+Tk5P/kZGR/5CQkP+Pj4//jY2N/4yM + jP+Li4v/iYmJmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDw4PCwsL/1tbW/9PT0//BwcH/wMDA/8DA + wP+/v7//v7+//76+vv++vr7/vb29/729vf+8vLz/u7u7/7u7u/O6uro7AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycBJubm/OgoKD/m5ub/5iY + mP+Wlpb/lZWV/5SUlP+SkpL/kZGR/5CQkP+Pj4//k5OT/4yMjP+KioqfAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAxsbGGMLCwvfJycn/3t7e/8zMzP/BwcH/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/729 + vf+8vLz/u7u7/7u7u/O7u7s7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAnJycy56env+cnJz/mZmZ/5iYmP+Wlpb/lZWV/5SUlP+SkpL/kZGR/5CQ + kP+dnZ3/jY2N/4yMjJ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAw8PDi8LCwv/U1NT/3t7e/8rK + yv/BwcH/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/729vf+8vLz/u7u7/7u7u/O7u7s7AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ2/nJyc/5ub + m/+ampr/mZmZ/5iYmP+Wlpb/lZWV/5SUlP+SkpL/kZGR/6ampv+Ojo7/jY2NnwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADHx8cMwsLC38PDw//a2tr/3t7e/8rKyv/BwcH/wMDA/8DAwP+/v7//v7+//76+ + vv++vr7/vb29/7y8vP+8vLz/u7u7/7u7u/O6uro7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ+fn7+enp7/nJyc/5ubm/+ampr/mZmZ/5eXl/+Wlpb/lZWV/5SU + lP+SkpL/rq6u/5CQkP+RkZGHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADGxsY3wsLC+8bG + xv/c3Nz/3t7e/8rKyv/BwcH/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/7y8vP+8vLz/u7u7/7u7 + u/O6uro7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoKCgz5+f + n/+dnZ3/nJyc/5ubm/+ampr/mZmZ/5eXl/+Wlpb/lZWV/5mZmf+xsbH/kZGR/5WVlVsAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRTwsLC/8bGxv/c3Nz/3t7e/8rKyv/BwcH/wMDA/8DA + wP+/v7//v7+//76+vv++vr7/vb29/7y8vP+8vLz/u7u7/7u7u/O6uro7AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCgoAihoaH7oKCg/5+fn/+dnZ3/nJyc/5ubm/+ampr/mZmZ/5eX + l/+Wlpb/ra2t/6enp/+SkpL/lpaWIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + nv+rq6v/x8fH/7Ozs/+ampr/m5ubewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8rKyv/BwcH/wMDA/8DA + wP+/v7//v7+//76+vv++vr7/vb29/7y8vP+8vLz/u7u7/7q6uvO6uro7AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACqqqoMqampw6io + qP+np6f/pqam/6Wlpf+kpKT/o6Oj/6Kiov+hoaH/ra2t/8nJyf+/v7//nZ2d/5ubm9Ojo6MIAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvwsLC/8bGxv/c3Nz/3d3d/8rKyv/AwMD/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/7y8 + vP+8vLz/u7u7/7q6uvO6uro7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAArKysDKurq8Oqqqr/qamp/6ioqP+np6f/pqam/6Wlpf+kpKT/o6Oj/6+v + r//Kysr/xMTE/6Kiov+dnZ3zoqKiKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8rK + yv/AwMD/wMDA/8DAwP+/v7//v7+//76+vv++vr7/vb29/7y8vP+8vLz/u7u7/7q6uvO6uro7AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6urgytra3DrKys/6ur + q/+qqqr/qamp/6ioqP+np6f/pqam/6Wlpf+ysrL/y8vL/8XFxf+lpaX/oKCg+6GhoUcAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8nJyf/AwMD/wMDA/8DAwP+/v7//v7+//76+ + vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uvO6urpjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACwsLAvr6+v066urv+tra3/rKys/6urq/+qqqr/qamp/6ioqP+np6f/s7Oz/83N + zf/Gxsb/p6en/6KiovukpKRTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bG + xv/c3Nz/3d3d/8jIyP/AwMD/wMDA/8DAwP+/v7//v7+//76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6 + uv+6urrDubm5S7m5uQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACzs7MosrKyn7GxsfuwsLD/r6+v/66u + rv+tra3/rKys/6urq/+qqqr/qamp/7W1tf/Pz8//yMjI/6mpqf+kpKT7pqamUwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8jIyP/AwMD/wMDA/8DA + wP+/v7//v7+//76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/ubm567i4uK+4uLiDt7e3f7a2 + tn+1tbWftLS017Ozs/+zs7P/srKy/7Gxsf+wsLD/r6+v/66urv+tra3/rKys/6urq/+3t7f/0NDQ/8nJ + yf+rq6v/pqam+6ioqFMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvwsLC/8bGxv/c3Nz/3d3d/8jIyP/AwMD/wMDA/8DAwP+/v7//v7+//76+vv+9vb3/vb29/7y8 + vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4uP+3t7f/t7e3/7a2tv+1tbX/tLS0/7Ozs/+zs7P/srKy/7Gx + sf+wsLD/r6+v/66urv+tra3/ubm5/9HR0f/Ly8v/ra2t/6ioqPuqqqpTAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8jI + yP/AwMD/wMDA/8DAwP+/v7//v7+//76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4 + uP+3t7f/t7e3/7a2tv+1tbX/tLS0/7Ozs/+zs7P/srKy/7Gxsf+wsLD/r6+v/7q6uv/S0tL/zMzM/6+v + r/+qqqr7rKysUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8jIyP/AwMD/wMDA/8DAwP+/v7//v7+//76+ + vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4uP+3t7f/t7e3/7a2tv+1tbX/tLS0/7Oz + s/+zs7P/srKy/7Gxsf+8vLz/09PT/83Nzf+xsbH/rKys+66urlMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bG + xv/c3Nz/3d3d/8jIyP/AwMD/wMDA/7+/v/+/v7//vr6+/76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6 + uv+6urr/ubm5/7i4uP+3t7f/t7e3/7a2tv+1tbX/tLS0/7Ozs/+zs7P/vb29/9TU1P/Ozs7/srKy/66u + rvuwsLBTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3d3d/8jIyP/AwMD/wMDA/7+/ + v/+/v7//vr6+/76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4uP+3t7f/t7e3/7a2 + tv+1tbX/tLS0/7+/v//V1dX/0NDQ/7S0tP+wsLD7sbGxUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADExMRvwsLC/8bGxv/c3Nz/3d3d/8vLy//AwMD/wMDA/7+/v/+/v7//vr6+/76+vv+9vb3/vb29/7y8 + vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4uP+3t7f/t7e3/7a2tv/CwsL/1tbW/9HR0f+2trb/srKy+7Oz + s1MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/c3Nz/3t7e/9HR + 0f/BwcH/wMDA/7+/v/+/v7//vr6+/76+vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/ubm5/7i4 + uP+5ubn/zMzM/9jY2P/S0tL/t7e3/7Ozs/u1tbVTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRvwsLC/8bGxv/b29v/3t7e/9ra2v/Ly8v/wMDA/7+/v/+/v7//vr6+/76+ + vv+9vb3/vb29/7y8vP+8vLz/u7u7/7q6uv+6urr/x8fH/9bW1v/Z2dn/0tLS/7m5uf+1tbX7t7e3UwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRfwsLC+8TE + xP/W1tb/3t7e/97e3v/b29v/0dHR/8nJyf/CwsL/vr6+/76+vv+9vb3/vb29/8DAwP/Gxsb/zs7O/9jY + 2P/a2tr/2tra/8zMzP+5ubn/t7e387i4uE8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADExMRDwsLC68LCwv/Ly8v/2dnZ/97e3v/e3t7/3t7e/93d + 3f/c3Nz/2dnZ/9nZ2f/c3Nz/3Nzc/9zc3P/b29v/29vb/9TU1P/CwsL/ubm5/7i4uN+8vLwzAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADIyMgUwsLCo8LCwv/BwcH/ycnJ/9PT0//b29v/3t7e/93d3f/d3d3/3d3d/93d3f/c3Nz/2NjY/8/P + z//CwsL/u7u7/7q6uvu8vLyTwMDADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHL8LCwqfBwcH3wcHB/8HB + wf/CwsL/x8fH/8fHx//Hx8f/xcXF/8DAwP+9vb3/vb29/7y8vPO7u7uXwMDAJAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMrKygzHx8dXwcHBk8HBwbvAwMDfwMDA37+/v9+/v7/bvr6+t8HB + wY/ExMRLxcXFCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////////////////////// + ///////gA/////////////wAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAD//AAAAAAAAAAAAAAAAAA + AA/AAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAA + AAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAf+AAAAAAAAAAAAAAAAAAB///8AAAAAAAAAAAAAAAD///// + /wAAAAAAAAAAB/////////4AAAP////////////////4AAAB////////////////8AAAAP////////// + /////+AAAAB////////////////AAAAAP///////////////gAAAAB///////////////wAAAAAP//// + //////////4AAAAAB//////////////8AAAAAAP/////////////+AAAAAAB//////////////AAAIAA + AP/////////////gAA/4AAB/////////////4AAf/AAAP////////////8AAf/8AAB////////////+A + AP//gAAP////////////AAH//8AAB////////////wAD///gAAP///////////4AA///8AAB//////// + ///+AAf///gAAP///////////gAH///8AAB///////////wAB////gAAP//////////8AA////8AAD// + /////////AAP////gAAf//////////wAD////8AAD//////////8AA/////gAA///////////AAH//// + 8AAP//////////wAB/////AAB//////////8AAP////4AAf//////////AAD/////AAH//////////4A + Af////wAB//////////+AAD////+AAf//////////gAAf//gHgAH//////////8AAD//wAYAB/////// + ////AAAf/4ACAAf//////////4AAD/8AAAAH///////////AAAf+AAAAB///////////4AAD/gAAAAf/ + //////////AAAf4AAAAP///////////4AAD8AAAAD////////////AAAfAAAAB////////////4AADwA + AAAf////////////AAAcAAAAP////////////4AADgAAAH/////////////AAAYAAAD///////////// + 4AABAAAAf/////////////AAAAAAAD/////////////4AAAAAAAf/////////////AAAAAAAD/+Af/// + //////4AAAAAAAf8AA//////////AAAAAAAD8AAD/////////4AAAAAAAeAAAP/////////AAAAAAACA + AAB/////////4AAAAAAAAAAAP/////////AAAAAAAAAAAB/////////4AAAAAAAAAAAP/////////AAA + AAAAAAAAB/////////4AAAAAAAAAAAP/////////gABwAAAAAAAB/////////+AB+AAAAAAAAP////// + //////wAAAAAAAB////////////+AAAAAAAAP////////////wAAADgAAB////////////+AAAAfAAAP + ////////////wAAAD4AAB////////////+AAAAfgAAP////////////wAAAH8AAB////////////4AAA + A/gAAP///////////+AAAAP8AAB////////////AAAAD/gAAP///////////wAAAA/8AAB////////// + /4AAAAP/gAAP//////////+AAAAD/8AAB///////////gAAAA//gAAf//////////4AAAAf/8AAD//// + //////+AAAAH//gAA///////////gAAAD//8AAH//////////4AAAB///gAB//////////+AAIB///4A + AP//////////gAB/////AAD//////////4AAf////4AA///////////AAD////+AAP//////////wAAf + ////gAD//////////8AAD////8AA///////////gAAf////AAP//////////4AAD////wAD///////// + //AAAf///8AA///////////4AAD///+AAP///////////AAAf///gAH///////////4AAD///4AB//// + ////////AAAf//8AAf///////////4AAD//+AAP////////////AAAf//AAD////////////4AAD//gA + B/////////////AAAf/wAA/////////////4AAD/4AAf/////////////AAAH4AAP/////////////4A + AAAAAH//////////////AAAAAAD//////////////4AAAAAB///////////////AAAAAA/////////// + ////4AAAAAf///////////////AAAAAP///////////////4AAAAH////////////////AAAAD////// + //////////4AAAB/////////////////AAAA/////////////////4AAAf/////////////////AAAP/ + ////////////////8AAP//////////////////wAP/////////////////////////8oAAAAYAAAAMAA + AAABACAAAAAAAICUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAGjo6MCpKSkAqSkpAKjo6MCpKSkAqSk + pAKkpKQCo6OjAqSkpAKkpKQCo6OjAqSkpAKkpKQCo6OjAqSkpAKkpKQCo6OjAqSkpAOkpKQEo6OjBaSk + pAWkpKQFo6OjBaSkpAWkpKQFo6OjBKSkpAOkpKQCo6OjAqSkpAKjo6MCpKSkAqSkpAKjo6MCpKSkAqSk + pAKjo6MCpKSkAqSkpAKjo6MCpKSkAqSkpAKjo6MCpKSkAqSkpAGjo6MBAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjo6MBo6OjAaOj + owKjo6MCo6OjA6OjowSjo6MEo6OjBKOjowajo6MIo6OjCaOjowmjo6MJo6OjCaOjowmjo6MKo6OjDaOj + oxCjo6MSo6OjE6OjoxOjo6MSo6OjE6OjoxOjo6MTo6OjEqOjoxOjo6MTo6OjEqOjoxOjo6MTo6OjEqOj + oxOjo6MTo6OjFKOjoxijo6Mdo6OjIaOjoyKjo6Mio6OjIqOjoyKjo6Mio6OjH6Ojoxqjo6MWo6OjE6Oj + oxOjo6MSo6OjE6OjoxOjo6MSo6OjE6OjoxOjo6MSo6OjE6OjoxOjo6MSo6OjE6OjoxOjo6MSo6OjEqOj + oxCjo6MNo6OjCqOjowmjo6MJo6OjCaOjowmjo6MJo6OjCKOjowajo6MEo6OjBKOjowSjo6MDo6OjAqOj + owKjo6MBo6OjAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACjo6MBpKSkA6Sk + pAWjo6MHpKSkCqSkpAyjo6MPpKSkEaSkpBWkpKQZo6OjHaSkpB6jo6MepKSkIaSkpCejo6MupKSkMaSk + pDKjo6MypKSkMqSkpDKjo6M1pKSkPKSkpEWjo6NKpKSkTKSkpEyjo6NMpKSkTKSkpEykpKRMo6OjTKSk + pEykpKRMo6OjTKSkpEykpKRMo6OjTKSkpEykpKRMo6OjT6SkpFekpKRho6OjaKSkpGqkpKRro6Oja6Sk + pGukpKRpo6OjZKSkpFukpKRRo6OjTaSkpEyjo6NMpKSkTKSkpEyjo6NMpKSkTKSkpEyjo6NMpKSkTKSk + pEyjo6NMpKSkTKSkpEyjo6NMpKSkSqSkpEWjo6M8pKSkNaSkpDKjo6MypKSkMqSkpDKjo6MxpKSkLqSk + pCejo6MhpKSkHqSkpB6jo6MdpKSkGaSkpBWjo6MRpKSkD6SkpAyjo6MKpKSkB6SkpAWjo6MDpKSkAQAA + AAAAAAAAAAAAAKSkpAOjo6MLpKSkFqSkpCCjo6MopKSkMKSkpDijo6M/pKSkRaSkpEykpKRWo6OjXKSk + pF+jo6NgpKSkZaSkpG6jo6N4pKSkfaSkpH+jo6N/pKSkf6SkpH+jo6ODpKSkjKSkpJajo6OdpKSkn6Sk + pJ+jo6OfpKSkn6SkpJ+kpKSfo6Ojn6SkpJ+kpKSfo6Ojn6SkpJ+kpKSfo6Ojn6SkpJ+kpKSfo6OjoqSk + pKqkpKSzo6OjuaSkpLukpKS8o6OjvKSkpLykpKS7o6OjtqSkpK2kpKSko6Ojn6SkpJ+jo6OfpKSkn6Sk + pJ+jo6OfpKSkn6SkpJ+jo6OfpKSkn6SkpJ+jo6OfpKSkn6SkpJ+jo6OfpKSknaSkpJajo6OMpKSkg6Sk + pH+jo6N/pKSkf6SkpH+jo6N9pKSkeKSkpG6jo6NlpKSkYKSkpF+jo6NcpKSkVqSkpEyjo6NFpKSkP6Sk + pDijo6MwpKSkKKSkpCCjo6MWpKSkC6SkpAMAAAAAo6OjA6Ojow6jo6Mmo6OjRKOjo1ujo6Nso6OjeaOj + o4Wjo6OOo6OjlaOjo56jo6Ooo6Ojr6Ojo7Gjo6Oyo6OjtqOjo7+jo6PGo6OjyqOjo8yjo6PMo6OjzKOj + o8yjo6POo6Oj1KOjo9qjo6Peo6Oj4KOjo+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4KOj + o+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4aOjo+Wjo6Ppo6Oj7KOjo+6jo6Puo6Oj7qOjo+6jo6Pto6Oj66Oj + o+ajo6Pio6Oj4KOjo+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4KOjo+Cjo6Pgo6Oj4KOj + o+Cjo6Pgo6Oj3qOjo9qjo6PUo6OjzqOjo8yjo6PMo6OjzKOjo8yjo6PKo6OjxqOjo7+jo6O2o6OjsqOj + o7Gjo6Ovo6OjqKOjo56jo6OVo6OjjqOjo4Wjo6N5o6OjbKOjo1ujo6NEo6OjJqOjow6jo6MCpKSkBaSk + pBujo6NFpKSkdqSkpJejo6OspKSkuqSkpMWjo6POpKSk1KSkpNmkpKTgo6Oj5aSkpOejo6PnpKSk6aSk + pOyjo6PwpKSk8qSkpPOjo6P0pKSk9KSkpPSjo6P0pKSk9aSkpPejo6P5pKSk+aSkpPqjo6P6pKSk+qSk + pPqkpKT6o6Oj+qSkpPqkpKT6o6Oj+qSkpPqkpKT6o6Oj+qSkpPqkpKT6o6Oj+qSkpPukpKT7o6Oj/KSk + pP2kpKT9o6Oj/aSkpP2kpKT9o6Oj/KSkpPukpKT6o6Oj+qSkpPqjo6P6pKSk+qSkpPqjo6P6pKSk+qSk + pPqjo6P6pKSk+qSkpPqjo6P6pKSk+qSkpPqjo6P5pKSk+aSkpPejo6P1pKSk9KSkpPSjo6P0pKSk9KSk + pPOjo6PypKSk8KSkpOyjo6PppKSk56SkpOejo6PlpKSk4KSkpNmjo6PUpKSkzqSkpMWjo6O6pKSkrKSk + pJejo6N2pKSkRaSkpBujo6MFpKSkBaSkpBqjo6NBpKSkcKSkpI+jo6OjpKSksKSkpLujo6PFpKSkzKSk + pNGkpKTXo6Oj3qSkpOGjo6PipKSk46SkpOWjo6PppKSk7aSkpPCjo6PwpKSk8aSkpPGjo6PxpKSk8aSk + pPKjo6P1pKSk96SkpPijo6P4pKSk+aSkpPmkpKT5o6Oj+KSkpPmkpKT5o6Oj+KSkpPmkpKT5o6Oj+KSk + pPmkpKT5o6Oj+KSkpPmkpKT5o6Oj+aSkpPmkpKT5o6Oj+aSkpPmkpKT5o6Oj+aSkpPmkpKT5o6Oj+KSk + pPmjo6P4pKSk+aSkpPmjo6P4pKSk+aSkpPmjo6P4pKSk+aSkpPmjo6P4pKSk+KSkpPijo6P3pKSk9aSk + pPKjo6PxpKSk8aSkpPGjo6PxpKSk8KSkpPCjo6PtpKSk6aSkpOWjo6PjpKSk4qSkpOGjo6PepKSk16Sk + pNGjo6PMpKSkxaSkpLujo6OwpKSko6SkpI+jo6NvpKSkQaSkpBqjo6MFo6OjAqOjow2jo6Mio6OjPKOj + o1Gjo6Nfo6OjaqOjo3Wjo6OAo6OjiaOjo4+jo6OZo6Ojo6Ojo6mjo6Oqo6Ojq6Ojo6+jo6O2o6Ojv6Oj + o8Sjo6PFo6OjxqOjo8ajo6PGo6Ojx6Ojo8ujo6PSo6Oj2KOjo9ujo6Pco6Oj3KOjo9yjo6Pco6Oj3KOj + o9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOj + o9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOjo9yjo6Pco6Oj3KOj + o9yjo6Pco6Oj3KOjo9ujo6PYo6Oj0qOjo8ujo6PHo6OjxqOjo8ajo6PGo6OjxqOjo8Sjo6O/o6Ojt6Oj + o6+jo6Oro6OjqqOjo6mjo6Ojo6OjmaOjo4+jo6OJo6OjgKOjo3Wjo6Nqo6OjX6Ojo1Gjo6M8o6OjIqOj + ow2jo6MCAAAAAKSkpAKjo6MIpKSkEKSkpBejo6MdpKSkI6SkpCqjo6MxpKSkN6SkpDykpKREo6OjTaSk + pFKjo6NTpKSkVKSkpFijo6NhpKSka6SkpHGjo6NzpKSkc6SkpHOjo6NzpKSkdaSkpHujo6OFpKSkj6Sk + pJKjo6OTpKSkk6SkpJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6Sk + pJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6SkpJOkpKSTo6Ojk6SkpJOjo6OTpKSkk6Sk + pJOjo6OTpKSkk6SkpJOjo6OTpKSkk6SkpJOjo6OTpKSkk6SkpJKjo6OOpKSkhaSkpHujo6N1pKSkc6Sk + pHOjo6NzpKSkc6SkpHGjo6NrpKSkYaSkpFijo6NUpKSkU6SkpFKjo6NNpKSkRKSkpDyjo6M3pKSkMaSk + pCqjo6MjpKSkHqSkpBejo6MQpKSkCKSkpAIAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAOjo6MEpKSkBqSk + pAijo6MKpKSkDKSkpA6kpKQSo6OjFaSkpBejo6MYo6OjGaSkpBujo6MgpKSkJqSkpCmjo6MtoaGhSZyc + nIKXl5exlJSUy5KSkteRkZHTkpKSwJeXl5+dnZ1ooqKiR6SkpEKkpKRCo6OjQqSkpEKkpKRCo6OjQqSk + pEKkpKRCo6OjQqSkpEKkpKRCo6OjQqSkpEKkpKRCo6OjQqSkpEKkpKRCo6OjQqSkpEKkpKRCo6OjQqSk + pEKkpKRCo6OjQqSkpEKjo6NCpKSkQqSkpEKjo6NCpKSkQqSkpEKjo6NCpKSkQqSkpEKjo6NCpKSkQqSk + pEGjo6M+pKSkN6SkpDCjo6MrpKSkKqSkpCqjo6MqpKSkKqSkpCmjo6MmpKSkIKSkpBujo6MZpKSkGKSk + pBejo6MVpKSkEqSkpA6jo6MMpKSkCqSkpAijo6MGpKSkBKSkpAOjo6MBAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBo6OjAqOjowOjo6MDo6OjA6Oj + owOioqIFoaGhBp+fnz2bm5uzmJiY9ZaWlv+UlJT+k5OT/5GRkf+Pj4/+jY2N/4uLi/+Kior7jIyMxpWV + lV6enp4Rn5+fEKCgoBChoaEQoqKiEKOjoxCjo6MQo6OjEKSkpBCkpKQQo6OjEKSkpBCkpKQQo6OjEKSk + pBCkpKQQo6OjEKSkpBCkpKQQo6OjEKSkpBCkpKQQo6OjEKSkpBCjo6MQpKSkEKSkpBCjo6MQpKSkEKSk + pBCjo6MQpKSkEKSkpBCjo6MQpKSkEKSkpBCjo6MOpKSkDKSkpAmjo6MIpKSkB6SkpAejo6MHpKSkB6Sk + pAejo6MGpKSkBaSkpAOjo6MDpKSkA6SkpAOjo6MCpKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAChoaEMn5+fk5ycnPqbm5v+mZmZ/piYmP6Wlpb+lJSU/pKS + kv6RkZH+j4+P/o2Njf6Li4v+iYmJ/oiIiP6IiIi2kJCQG5eXlwGZmZkBnJycAaCgoAGioqIBo6OjAaOj + owGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowGjo6MBo6OjAaOj + owGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowGjo6MBo6OjAaOjowEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKOjoxihoaG4oKCg/56e + nv+cnJz+m5ub/5mZmf+YmJj+lpaW/5SUlP+SkpL+kZGR/4+Pj/+NjY3+i4uL/4qKiv+IiIj/hoaG1o2N + jTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAApaWlF6SkpMejo6P+oaGh/qCgoP6enp7+nJyc/pubm/6ZmZn+l5eX/paWlv6UlJT+kpKS/pGR + kf6Pj4/+jY2N/ouLi/6JiYn+iIiI/oaGhuCJiYkuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACoqKgXp6enz6Wlpf+kpKT+o6Oj/6Ghof+goKD+np6e/5yc + nP+bm5v+mZmZ/5iYmP+Wlpb+lJSU/5KSkv+RkZH+j4+P/42Njf+Li4v/iYmJ/oeHh/+GhobohoaGLgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqqqhupqanHqKio/6en + p/+lpaX+pKSk/6Ojo/+hoaH+oKCg/56env+cnJz+m5ub/5mZmf+Xl5f+lpaW/5SUlP+SkpL+kZGR/4+P + j/+NjY3/i4uL/omJif+Hh4f/hoaG4IaGhjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAra2tF6ysrMerq6v+qamp/qioqP6np6f+paWl/qSkpP6ioqL+oaGh/qKiov6jo6P+oqKi/p+f + n/6ampr+l5eX/paWlv6UlJT+kpKS/pGRkf6Pj4/+jY2N/ouLi/6JiYn+h4eH/oaGhuCGhoYuAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwsLAXr6+vz62trf+srKz+q6ur/6mpqf+oqKj+p6en/6io + qP+urq7+tLS0/7a2tv+zs7P+srKy/7Kysv+wsLD+qamp/5+fn/+Wlpb+lJSU/5KSkv+RkZH/j4+P/o2N + jf+Li4v/iYmJ/oeHh/+FhYXohoaGLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALKyshuxsbHIsLCw/q+v + r/+tra3+rKys/6urq/+pqan+r6+v/7i4uP+2trb+ra2t/6enp/+jo6P+oaGh/6CgoP+ioqL+qKio/62t + rf+oqKj+mZmZ/5SUlP+SkpL/kJCQ/o+Pj/+NjY3/i4uL/omJif+Hh4f/hYWF4IaGhjIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAtLS0F7Ozs8eysrL+sbGx/rCwsP6vr6/+ra2t/qysrP6ysrL+u7u7/q+vr/6np6f+pqamwaam + pnilpaVMpaWlQaGhoVufn5+SnJyc5p2dnf6mpqb+q6ur/pmZmf6UlJT+kpKS/pCQkP6Ojo7+jY2N/ouL + i/6JiYn+h4eH/oWFheCGhoYuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC2trYXtra2z7S0tP+zs7P/srKy/rGxsf+wsLD+r6+v/7W1 + tf+7u7v+ra2t/6qqqserq6s4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoqKiCZ6ennCbm5vsoqKi/6qq + qv+ampr/lJSU/pKSkv+QkJD/jo6O/o2Njf+Li4v/iYmJ/oeHh/+FhYXohoaGLgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALi4uBK3t7fBtra2/7a2 + tv+0tLT/s7Oz/rKysv+xsbH+t7e3/7y8vP+wsLD+ra2tpq6urhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACdnZ00m5ub4aKiov+qqqr/mZmZ/pSUlP+SkpL/kJCQ/o+Pj/+NjY3/i4uL/omJ + if+Hh4f/hYWF4IaGhjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAubm5BLm5uae4uLj+t7e3/ra2tv61tbX+tLS0/rOzs/60tLT+wMDA/rKysv6vr6+usbGxCAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnp6eLZqamuGhoaH+q6ur/pmZ + mf6UlJT+kpKS/pCQkP6Ojo7+jY2N/ouLi/6JiYn+h4eH/oWFheCGhoYuAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAu7u7Yrq6uvy5ubn+ubm5/7e3t/+2trb/tbW1/rS0 + tP+9vb3+tra2/7KysrOzs7MIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJ2dnSmamprdoaGh/qqqqv+ZmZn/k5OT/pKSkv+QkJD/jo6O/o2Njf+Li4v/iYmJ/oeH + h/+FhYXohoaGLgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8vLwIvLy847u7 + u/+6urr+ubm5/7m5uf+3t7f/tra2/re3t/++vr7+s7Oz5rW1tR8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0pmpqa4aGhof+qqqr/mZmZ/pSU + lP+SkpL/kJCQ/o6Ojv+MjIz/i4uL/omJif+Hh4f/hYWF4IaGhjIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC9vb1avb29/ry8vP67u7v+urq6/rm5uf64uLj+t7e3/ru7u/65ubn+tbW1gQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAnZ2dLZqamuGhoaH+q6ur/pmZmf6Tk5P+kpKS/pCQkP6Ojo7+jIyM/ouLi/6JiYn+h4eH/oWF + heCGhoYuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL29vQG+vr6yvb29/729vf+8vLz+u7u7/7q6 + uv+5ubn/uLi4/ry8vP+3t7f+t7e3JgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dnSmamprdoaGh/qqqqv+ZmZn/k5OT/pKS + kv+QkJD/jo6O/oyMjP+Li4v/iYmJ/oeHh/+FhYXohoaGKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6+ + vhC/v7/gvr6+/729vf+9vb3+vLy8/7u7u/+6urr/ubm5/ru7u/+3t7fsuLi4AQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACdnZ0pmpqa4aGhof+qqqr/mZmZ/pSUlP+SkpL/kJCQ/o6Ojv+MjIz/i4uL/omJif+Hh4f/hYWF04aG + hhgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+/vx2/v7/6v7+//r6+vv69vb3+vb29/ry8vP67u7v+urq6/rm5 + uf64uLjSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnZ2dLZqamuGhoaH+q6ur/pmZmf6Tk5P+kpKS/pCQ + kP6Ojo7+jIyM/oqKiv6IiIj+h4eH/oaGhp6Hh4cBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHBwTXAwMD+w8PD/7+/ + v/++vr7+vb29/729vf+8vLz/u7u7/rq6uv+5ubneAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2d + nSmamprdoaGh/qqqqv+Xl5f/k5OT/pKSkv+QkJD/jo6O/oyMjP+Kior/iIiI/oeHh/iHh4dAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMHBwTXAwMD+x8fH/7+/v/+/v7/+vr6+/729vf+9vb3/vLy8/ru7u/+6urr7urq6DAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ0pmpqa4qKiov+kpKT/lZWV/pOTk/+SkpL/kJCQ/o6O + jv+MjIz/ioqK/omJif+Hh4esAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMPDwx/BwcH7ysrK/8DAwP+/v7/+v7+//76+ + vv+9vb3/vb29/ry8vP+7u7v+u7u7UAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycPZqa + mvOnp6f/mZmZ/pWVlf+Tk5P/kZGR/pCQkP+Ojo7/jIyM/oqKiv+JiYn3iYmJDQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMTE + xBHBwcHizs7O/sHBwf7AwMD+v7+//r+/v/6+vr7+vb29/ry8vP68vLz+u7u7v7u7uwYAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgdw8PD1crKyv/b29v+ysrK/8HBwf/AwMD+wMDA/7+/ + v/++vr7+vr6+/729vf+8vLz+u7u78Lu7u1EAAAAAAAAAALm5uQe1tbXMx8fH/7y8vP+zs7P/srKy/rGx + sf+wsLD/r6+v/q6urv+tra3/rKys/qurq/+qqqr/qamp/qioqP+np6f/paWl/rq6uv+7u7v/n5+f9KKi + okUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHIcPD + w9XJycn+29vb/8rKyv/BwcH+wMDA/8DAwP+/v7/+vr6+/76+vv+9vb3+vLy8/7u7u/C7u7tNAAAAAAAA + AAC3t7eZv7+//9HR0f+4uLj/srKy/rKysv+xsbH/sLCw/q+vr/+urq7/ra2t/qysrP+rq6v/qqqq/qmp + qf+oqKj/p6en/rGxsf+kpKT/oqKicKioqAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHxx3Dw8PRycnJ/tvb2/7Kysr+wcHB/sDAwP6/v7/+v7+//r6+ + vv6+vr7+vb29/ry8vP67u7v4urq6cbu7uwu6urostra2+szMzP7S0tL+uLi4/rKysv6ysrL+sbGx/rCw + sP6vr6/+rq6u/q2trf6srKz+q6ur/qqqqv6pqan+qKio/qenp/6lpaXHqKioBAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cdw8PD1crK + yv/b29v+ysrK/8HBwf/AwMD+wMDA/7+/v/++vr7+vr6+/729vf+8vLz+u7u7/bu7u9O7u7t1t7e3sLi4 + uP/Ozs7/0dHR/ri4uP+ysrL/sbGx/rGxsf+wsLD/r6+v/q6urv+tra3/rKys/qurq/+qqqr/qamp/qio + qP+np6f+p6enk6enpwgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAx8fHIcPDw9XJycn+29vb/8rKyv/BwcH+wMDA/8DAwP+/v7/+vr6+/76+ + vv+9vb3+vLy8/7u7u/+6urr+urq6/7e3t/+4uLj/zs7O/tHR0f+4uLj/srKy/rGxsf+xsbH/sLCw/q+v + r/+urq7/ra2t/qysrP+rq6v/qqqq/qmpqf+oqKj/p6en/aamppSmpqYEAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHxx3Dw8PRycnJ/tvb + 2/7Kysr+wcHB/sDAwP6/v7/+v7+//r6+vv6+vr7+vb29/ry8vP67u7v+urq6/rq6uv63t7f+t7e3/s3N + zf7S0tL+uLi4/rKysv6xsbH+sLCw/rCwsP6vr6/+rq6u/q2trf6srKz+q6ur/qqqqv6pqan+qKio/qen + p/6mpqabpqamBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVlZUElJSUMpGRkWOQkJCEjo6OnYyM + jJOLi4t8iYmJTYiIiB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADHx8cdw8PD1crKyv/b29v+ysrK/8HBwf/AwMD+wMDA/7+/v/++vr7+vr6+/729 + vf+8vLz+u7u7/7u7u/+6urr/t7e3/ri4uP/Ozs7/0dHR/ri4uP+ysrL/sbGx/rGxsf+wsLD/r6+v/q6u + rv+tra3/rKys/qurq/+qqqr/qamp/qioqP+np6f+pqamk6ampggAAAAAAAAAAAAAAAAAAAAAmpqaEZiY + mHKWlpbQlJSU95KSkv+RkZH+j4+P/42Njf+Li4v+iYmJ/oiIiO2GhoauhoaGPIaGhgMAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHIcPDw9XJycn+29vb/8rK + yv/BwcH+wMDA/8DAwP+/v7/+vr6+/76+vv+9vb3+vLy8/7u7u/+7u7v/ubm5/re3t/+4uLj/zs7O/tHR + 0f+4uLj/srKy/rGxsf+xsbH/sLCw/q+vr/+urq7/ra2t/qysrP+rq6v/qqqq/qmpqf+oqKj/p6en/aam + ppSlpaUEAAAAAAAAAACdnZ1Dm5ub2JmZmf+Xl5f+lpaW/5SUlP+SkpL+kJCQ/4+Pj/+NjY3+i4uL/4mJ + if+Hh4f+hYWF+YSEhJ+FhYUSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMfHxx3Dw8PRycnJ/tvb2/7Kysr+wcHB/sDAwP6/v7/+v7+//r6+vv69vb3+vb29/ry8 + vP67u7v+urq6/rq6uv63t7f+t7e3/s3Nzf7S0tL+uLi4/rKysv6xsbH+sLCw/rCwsP6vr6/+rq6u/q2t + rf6srKz+q6ur/qqqqv6pqan+qKio/qenp/6mpqabpKSkB6CgoHienp76nJyc/pubm/6ZmZn+l5eX/paW + lv6UlJT+kpKS/pCQkP6Pj4/+jY2N/ouLi/6JiYn+h4eH/oWFhf6EhITbhYWFLAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cdw8PD1crKyv/b29v+z8/P/8LC + wv/AwMD+wMDA/7+/v/++vr7+vr6+/729vf+8vLz/u7u7/ru7u/+6urr/urq6/ri4uP/Ozs7/0dHR/ri4 + uP+ysrL/sbGx/rGxsf+wsLD/r6+v/q6urv+tra3/rKys/qurq/+qqqr/qamp/qioqP+np6f+paWlyKGh + ofqfn5/+np6e/5ycnP+bm5v+mZmZ/5eXl/+Wlpb+lJSU/5KSkv+QkJD+j4+P/42Njf+Li4v+iYmJ/4eH + h/+FhYX+hISE4ISEhDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAyMjIIcPDw8nIyMj+2tra/9nZ2f/MzMz+wsLC/8DAwP+/v7/+vr6+/76+vv+9vb3/vLy8/sHB + wf/Nzc3/19fX/r6+vv+4uLj/zs7O/tHR0f+3t7f/srKy/rGxsf+xsbH/sLCw/q+vr/+urq7/ra2t/qys + rP+rq6v/qqqq/qmpqf+oqKj/p6en/qSkpP+hoaH+n5+f/56env+cnJz+mpqa/5mZmf+Xl5f+lpaW/5SU + lP+SkpL+kJCQ/4+Pj/+NjY3+i4uL/4mJif+Hh4f+hYWF/4ODg+CEhIQuAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjIyBHDw8Okw8PD/c/Pz/7b29v+3Nzc/tbW + 1v7R0dH+z8/P/s/Pz/7S0tL+2NjY/tvb2/7T09P+wsLC/rq6uui4uLivt7e3/s3Nzf7S0tL+t7e3/rKy + sv6xsbH+sLCw/q+vr/6urq7+ra2t/q2trf6srKz+q6ur/qqqqv6pqan+qKio/qenp/6kpKT+oaGh/p+f + n/6enp7+nJyc/pqamv6ZmZn+l5eX/pWVlf6UlJT+kpKS/pCQkP6Pj4/+jY2N/ouLi/6JiYn+h4eH/oWF + hf6Dg4PohISELgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADJyckFxcXFWsLCwtHDw8P7ysrK/9HR0f/V1dX+19fX/9bW1v/S0tL/y8vL/sPDw/+9vb3xvb29ncDA + wCXBwcEEuLi4kbi4uPzNzc3/0dHR/ri4uP+ysrL/sbGx/rCwsP+vr6//rq6u/q6urv+tra3/rKys/qur + q/+qqqr/qamp/qioqP+np6f+pKSk/6Ghof+hoaH+oqKi/6SkpP+jo6P+oaGh/5ycnP+Xl5f+lJSU/5KS + kv+QkJD+j4+P/42Njf+Li4v+iYmJ/4eHh/+FhYX+g4OD4ISEhDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMnJyQnGxsZHxMTElsHBwc7AwMDywMDA/r+/ + v/2/v7/lv7+/uMHBwXLDw8MmAAAAAAAAAAAAAAAAvr6+Bbi4uJG3t7f+zs7O/tHR0f63t7f+srKy/rGx + sf6wsLD+r6+v/q6urv6tra3+rKys/qysrP6rq6v+qamp/qmpqf6oqKj+p6en/qioqP6zs7P+tLS0/rOz + s/6ysrL+sLCw/q+vr/6rq6v+oqKi/paWlv6SkpL+kJCQ/o6Ojv6MjIz+i4uL/omJif6Hh4f+hYWF/oOD + g+CEhIQuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6+ + vgS4uLiLt7e3/s3Nzf/S0tL/t7e3/rKysv+xsbH/sLCw/q+vr/+urq7/ra2t/q2trf+srKz/q6ur/qqq + qv+pqan+qKio/6enp/+srKz+qqqq/6Wlpf+ioqL+oqKi/6SkpP+oqKj+ra2t/6urq/+cnJz+kpKS/5CQ + kP+Ojo7+jY2N/4uLi/+JiYn+h4eH/4WFhf+Dg4PohISELgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC+vr4EuLi4kbi4uPzNzc3/0dHR/ri4uP+ysrL/sbGx/rCw + sP+vr6//rq6u/q6urv+tra3/rKys/qurq/+qqqr+qamp/6ioqP+np6f+pKSk8aOjo4ujo6NsoaGhhZ2d + nbObm5vrnJyc/6ampv+rq6v+np6e/5KSkv+QkJD+jo6O/42Njf+Li4v+iYmJ/4eHh/+FhYX+g4OD4ISE + hDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + kf+Pj4/+jo6O/4yMjP+Kior+iIiI/4aGhvaHh4cxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHBwc/Q0ND+wcHB/r+/ + v/6/v7/+vr6+/r29vf68vLz+u7u7/ru7u/66urrUvLy8Ar29vQK8vLwevb29L729vSq9vb0LAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAmpqacpubm/6kpKT+lZWV/pOTk/6RkZH+j4+P/o6Ojv6MjIz+ioqK/oiIiP6Hh4dsAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMPDw5TKysr/zc3N/sDAwP+/v7//v7+//r6+vv+9vb3/vLy8/ry8vP+7u7v/urq6cAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJycDZqamt6kpKT+lpaW/5WVlf+Tk5P+kZGR/4+P + j/+Ojo7+jIyM/4qKiv+JiYmfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMTExEfDw8P+2NjY/sTExP/AwMD/v7+//r+/ + v/++vr7/vb29/ry8vP+8vLz/u7u78rq6ulEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJub + m5WgoKD+mZmZ/5aWlv+UlJT+k5OT/5GRkf+Pj4/+jo6O/46Ojv+Kioq2AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfH + xwvCwsLR0NDQ/tTU1P7BwcH+wMDA/r+/v/6/v7/+vr6+/r29vf68vLz+u7u7/ru7u/C6urpNAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJycnF2enp7+m5ub/piYmP6Wlpb+lJSU/pOTk/6RkZH+j4+P/peX + l/6MjIy3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADFxcVTw8PD/tnZ2f/T09P/wcHB/sDAwP+/v7//vr6+/r6+ + vv+9vb3/vLy8/ry8vP+7u7v4urq6TQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ2dnU+dnZ3+m5ub/5qa + mv+YmJj+lpaW/5SUlP+Tk5P+kpKS/5+fn/+NjY20AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgCw8PDqsjI + yP7c3Nz/0tLS/sHBwf/AwMD/v7+//r6+vv++vr7/vb29/ry8vP+7u7v+u7u78Lq6ulEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJ+fn1Kenp7+nZ2d/5ubm/+ZmZn+mJiY/5aWlv+UlJT+nZ2d/5+fn/+SkpKVAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAyMjIFMLCwsnJycn+3d3d/tLS0v7BwcH+wMDA/r+/v/6+vr7+vr6+/r29 + vf68vLz+u7u7/ru7u/C6urpNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCgoHugoKD+np6e/p2dnf6bm5v+mZmZ/piY + mP6Wlpb+rq6u/pmZmf6VlZVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjIyB3Dw8PRycnJ/tzc + 3P/T09P/wcHB/sDAwP+/v7//vr6+/r6+vv+9vb3+vLy8/7y8vP+7u7v4urq6TQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoqKiBKOj + o8ahoaH+oKCg/56env+dnZ3+m5ub/5mZmf+fn5/+t7e3/5WVle+bm5shAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADJyckdwsLC1cnJyf/c3Nz/0dHR/sHBwf/AwMD/v7+//r6+vv++vr7+vb29/7y8 + vP+7u7v+urq68Lq6ulEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAApaWlQ6SkpPejo6P+oaGh/6CgoP+enp7+nZ2d/52dnf+6urr+pqam/5iY + mKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADIyMgdwsLC1cnJyf/c3Nz+z8/P/8HBwf/AwMD+v7+//76+vv++vr7+vb29/7y8vP+7u7v+urq6/7q6 + uv25ubntuLi437e3t9+2trbltbW197Ozs/+ysrL+sbGx/7CwsP+vr6/+rq6u/66urv/BwcH+zMzM/7Cw + sP6np6fHrq6uFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyMjIIcLCwtXJycn+3d3d/s/Pz/7AwMD+v7+//r+/ + v/6+vr7+vr6+/r29vf68vLz+u7u7/rq6uv65ubn+ubm5/ri4uP62trb+tbW1/rS0tP6zs7P+srKy/rGx + sf6wsLD+r6+v/sPDw/7Pz8/+srKy/qqqqsewsLAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjI + yB3CwsLRycnJ/9zc3P/Q0ND+wMDA/8DAwP+/v7/+vr6+/76+vv+9vb3+vLy8/7u7u/+6urr+urq6/7m5 + uf+4uLj+t7e3/7W1tf+0tLT+s7Oz/7Kysv+ysrL+xsbG/8/Pz/+0tLT+ra2tw7OzsxQAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgdwsLC1cnJyf/c3Nz+z8/P/8HBwf+/v7/+v7+//76+ + vv+9vb3+vb29/7y8vP+7u7v+urq6/7q6uv+5ubn+t7e3/7e3t/+1tbX+tLS0/7S0tP/Hx8f+0dHR/7e3 + t/6vr6/HtbW1FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHIcLC + wtXJycn+3d3d/tHR0f7BwcH+v7+//r+/v/6+vr7+vb29/r29vf68vLz+u7u7/rq6uv65ubn+uLi4/re3 + t/62trb+tra2/snJyf7T09P+uLi4/rGxsce3t7cXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjIyB3CwsLRycnJ/9zc3P/X19f+xcXF/8DAwP+/v7/+vr6+/76+ + vv+9vb3+vLy8/7u7u/+6urr+urq6/7m5uf++vr7+0tLS/9PT0/+6urr+tLS0w7m5uRQAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgdwsLC0MjI + yP7a2tr+3Nzc/9LS0v/Hx8f+wcHB/7+/v/+9vb3+vb29/7y8vP+9vb3+w8PD/87Ozv/Y2Nj+0tLS/7y8 + vP62trbFvLy8FAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAyMjIF8LCwrXExMT+0tLS/tzc3P7d3d3+2tra/tbW1v7S0tL+09PT/tXV + 1f7Y2Nj+29vb/tnZ2f7Kysr+urq6/rm5uae9vb0RAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMrKygPFxcVjwsLC4cTE + xP/Nzc3+1dXV/9jY2P/Z2dn+2dnZ/9fX1//S0tL+yMjI/729vf66urrZvr6+V8LCwgIAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAycnJE8bGxmDCwsK1wcHB5sHBwfLBwcH2wcHB97+/v/G+vr7lvr6+rcHB + wVjDw8MPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAycnJDsrK + yifKysovysrKL8nJySXIyMgLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////// + ////////////AAAAAAAA/////wAAAAAAAAAAAAD/wAAAAAAAAAAAAAADgAAAAAAAAAAAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAB4AAAAAAA + AAAAAAAH/8AAAAAAAAAAAAP///+AAAAAAAAP//////8AAB////////////4AAA////////////wAAAf/ + //////////gAAAP///////////AAAAH//////////+AAAAD//////////8AAAAB//////////4AAAAA/ + /////////wAH4AAf/////////gAP+AAP/////////AAf/AAH/////////AA//gAD////////+AB//wAB + ////////+AD//4AA////////8AD//8AAf///////8AD//+AAP///////8AH///AAH///////8AH///gA + H///////8AD///wAH///////8AD///4AD///////8AB///8AD///////8AB///8AD///////+AA///8A + D///////+AAf/wGAD////////AAP/AAAD////////AAH/AAAD////////gAD+AAAD////////wAB+AAA + H////////4AA8AAAH////////8AAcAAAH////////+AAMAAAP/////////AAGAAAP/////////gAAAAA + f/////////wAAAAAP/////////4AAAAAH/////////8AAAAAD+AP//////+AAAAAB4AB///////AAAAA + AwAA///////gAAAAAAAAf//////wAAAAAAAAP//////4AAAAAAAAH//////8AAAAAAAAD//////+AAAA + AAAAB///////gA4AAAAAA/////////8AAAAAAf////////+AAAAAAP/////////AAAGAAH/////////g + AAHgAD/////////wAADwAB/////////wAAB4AA/////////gAAB8AAf////////gAAB+AAP////////g + AAB/AAH////////gAAB/gAD////////AAAD/wAB////////AAAD/4AB////////AAAH/8AA////////A + AAP/+AA////////gAA///AA////////gAf///AA////////gAP///gA////////gAH///gA////////w + AD///gA////////wAB///gA////////4AA///gA////////8AAf//AA////////+AAP//AB///////// + AAH/+AB/////////gAD/8AB/////////wAB/4AD/////////4AA/wAH/////////8AACAAP///////// + +AAAAAf//////////AAAAA///////////gAAAB///////////wAAAD///////////4AAAH////////// + /8AAAP///////////+AAAf////////////AAA/////////////gAB/////////////4AH/////////// + ///A////KAAAAEgAAACQAAAAAQAgAAAAAABgVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSkpAKkpKQDpKSkA6SkpAOkpKQDpKSkA6SkpAWkpKQHpKSkCKSk + pAikpKQIpKSkCKSkpAikpKQIpKSkCKSkpAikpKQIpKSkCKSkpAikpKQIpKSkC6SkpA6kpKQQpKSkEKSk + pBCkpKQQpKSkD6SkpAykpKQJpKSkCKSkpAikpKQIpKSkCKSkpAikpKQIpKSkCKSkpAikpKQIpKSkCKSk + pAikpKQHpKSkBaSkpAOkpKQDpKSkA6SkpAOkpKQDpKSkAqSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAo6OjAaSkpASjo6MGpKSkCaOjowykpKQPpKSkFKOj + oxekpKQYo6OjG6SkpCGjo6MnpKSkKaOjoymkpKQppKSkLKOjozSkpKQ9o6OjQKSkpECjo6NApKSkQKOj + o0CkpKRApKSkQKOjo0CkpKRAo6OjQKSkpECjo6NCpKSkSaOjo1WkpKRcpKSkXaOjo12kpKRco6OjWKSk + pE2jo6NDpKSkQaOjo0CkpKRAo6OjQKSkpECkpKRAo6OjQKSkpECjo6NApKSkQKOjo0CkpKQ9o6OjNKSk + pCykpKQpo6OjKaSkpCmjo6MnpKSkIaOjoxukpKQYo6OjF6SkpBSkpKQPo6OjDKSkpAmjo6MGpKSkBKOj + owEAAAAAAAAAAKSkpAGkpKQJpKSkGqSkpCqkpKQ3pKSkQ6SkpE2kpKRWpKSkYqSkpGukpKRtpKSkcqSk + pH6kpKSJpKSkjaSkpI2kpKSNpKSkkKSkpJukpKSmpKSkq6SkpKukpKSrpKSkq6SkpKukpKSrpKSkq6Sk + pKukpKSrpKSkq6SkpKukpKSspKSktKSkpL+kpKTFpKSkxqSkpMakpKTFpKSkwaSkpLekpKStpKSkq6Sk + pKukpKSrpKSkq6SkpKukpKSrpKSkq6SkpKukpKSrpKSkq6SkpKukpKSmpKSkm6SkpJCkpKSNpKSkjaSk + pI2kpKSJpKSkfqSkpHKkpKRtpKSka6SkpGKkpKRWpKSkTaSkpEOkpKQ3pKSkKqSkpBqkpKQJpKSkAaSk + pAakpKQlo6OjWaSkpIGjo6OXpKSkqKOjo7SkpKS9pKSkyKOjo8+kpKTRo6Oj1KSkpNujo6PhpKSk5KOj + o+WkpKTlpKSk5aOjo+mkpKTuo6Oj8KSkpPGjo6PxpKSk8aOjo/GkpKTxpKSk8aOjo/GkpKTxo6Oj8aSk + pPGjo6PxpKSk8qOjo/WkpKT3pKSk+KOjo/ikpKT4o6Oj9qSkpPOjo6PxpKSk8aOjo/GkpKTxo6Oj8aSk + pPGkpKTxo6Oj8aSkpPGjo6PxpKSk8aOjo/CkpKTuo6Oj6aSkpOWkpKTlo6Oj5aSkpOSjo6PhpKSk26Oj + o9SkpKTRo6Ojz6SkpMikpKS9o6OjtKSkpKijo6OXpKSkgaOjo1mkpKQlo6OjBqSkpAikpKQupKSka6Sk + pJekpKSvpKSkvqSkpMqkpKTTpKSk2qSkpOKkpKTlpKSk5qSkpOmkpKTupKSk8aSkpPKkpKTzpKSk86Sk + pPOkpKT1pKSk+KSkpPmkpKT5pKSk+qSkpPmkpKT6pKSk+qSkpPmkpKT6pKSk+aSkpPqkpKT5pKSk+qSk + pPqkpKT6pKSk+qSkpPqkpKT6pKSk+qSkpPqkpKT5pKSk+qSkpPmkpKT6pKSk+aSkpPqkpKT6pKSk+aSk + pPqkpKT5pKSk+aSkpPikpKT1pKSk86SkpPOkpKTzpKSk8qSkpPGkpKTupKSk6aSkpOakpKTlpKSk4qSk + pNqkpKTTpKSkyqSkpL6kpKSvpKSkl6SkpGukpKQupKSkCKSkpAOkpKQTo6OjMKSkpEijo6NYpKSkZaOj + o3OkpKR9pKSkiKOjo5WkpKSao6OjnKSkpKGjo6OtpKSktqOjo7ikpKS5pKSkuaOjo7qkpKTCo6OjzKSk + pNCjo6PRpKSk0aOjo9GkpKTRpKSk0aOjo9GkpKTRo6Oj0aSkpNGjo6PRpKSk0aOjo9GkpKTRpKSk0aOj + o9GkpKTRo6Oj0aSkpNGjo6PRpKSk0aOjo9GkpKTRo6Oj0aSkpNGkpKTRo6Oj0aSkpNGjo6PRpKSk0KOj + o8ykpKTCo6OjuqSkpLmkpKS5o6OjuKSkpLajo6OtpKSkoaOjo5ykpKSao6OjlaSkpIikpKR9o6Ojc6Sk + pGWjo6NYpKSkSKOjozCkpKQTo6OjAwAAAACkpKQCpKSkBqSkpAukpKQQpKSkFaSkpBukpKQfpKSkJqSk + pC6kpKQypKSkM6SkpDekpKRBpKSkSaSkpEuioqJVn5+fc5ycnI6bm5ubnJyckaCgoHyjo6NqpKSkaaSk + pGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGmkpKRppKSkaaSk + pGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGmkpKRppKSkaaSkpGSkpKRXpKSkTqSk + pEykpKRMpKSkS6SkpEmkpKRBpKSkN6SkpDOkpKQypKSkLqSkpCakpKQfpKSkG6SkpBWkpKQQpKSkC6Sk + pAakpKQCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQCpKSkA6SkpASjo6MFo6OjBaOj + owaioqIJoaGhKZycnJyXl5fmlJSU/pKSkv+QkJD/jY2N/4uLi/aOjo7El5eXYKCgoBehoaEWoqKiFqKi + ohajo6MWpKSkFqSkpBakpKQWpKSkFqSkpBakpKQWpKSkFqSkpBakpKQWpKSkFqSkpBakpKQWpKSkFqSk + pBakpKQWpKSkFqSkpBakpKQWpKSkFqSkpBakpKQWpKSkFqSkpBSkpKQQpKSkDKSkpAukpKQLpKSkC6Sk + pAukpKQJpKSkBqSkpAWkpKQFpKSkBKSkpAOkpKQCpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKKiogGgoKBnnZ2d85ub + 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 + AADHx8cwxMTE5dXV1f7Ly8v/wcHB/sDAwP+/v7/+vr6+/729vf68vLz/u7u7w7u7uw4AAAAAAAAAALa2 + tii3t7f+s7Oz/7Gxsf6wsLD/r6+v/66urv6srKz/q6ur/qqqqv+oqKj+p6en/6Kiov6goKD/p6en/7Oz + s/6bm5ueAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHLsTE + xOfV1dX/y8vL/8HBwf/AwMD/v7+//76+vv+9vb3/vLy8/7u7u8C7u7sRAAAAALi4uCO7u7v+v7+//7Ky + sv+xsbH/sLCw/6+vr/+urq7/rKys/6urq/+qqqr/qKio/6enp/+qqqr/vr6+/6CgoOSjo6McAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHxzDExMTm1dXV/svL + y//BwcH+wMDA/7+/v/6+vr7/vb29/7y8vP67u7vBurq6ELq6uge3t7fez8/P/7q6uv6ysrL/sbGx/7Cw + sP6vr6//ra2t/qysrP+rq6v+qqqq/6ioqP6qqqr/p6en86WlpT8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cuxMTE5tXV1f/Ly8v/wcHB/8DA + wP+/v7//vr6+/729vf+8vLz/u7u727u7u1q5ubl1vr6+/dLS0v+6urr/srKy/7Gxsf+wsLD/rq6u/62t + rf+srKz/q6ur/6mpqf+oqKj/p6en6qioqC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHMMTExOfW1tb/y8vL/8HBwf/AwMD/v7+//76+ + vv+9vb3/vLy8/7u7u/66urrtt7e3/b+/v//S0tL/urq6/7Kysv+xsbH/sLCw/66urv+tra3/rKys/6ur + q/+pqan/qKio/6enp+OmpqYtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHxy7ExMTl1dXV/8vLy/7BwcH/wMDA/7+/v/6+vr7/vb29/ry8 + vP+7u7v+urq6/7e3t/6/v7//0tLS/7q6uv6ysrL/sbGx/rCwsP+urq7+ra2t/6ysrP6rq6v/qamp/6io + qP6np6fnpqamLgAAAAAAAAAAAAAAAAAAAAAAAAAAlpaWH5OTk2eRkZGZjo6OsYyMjKuKioqMiIiIUYeH + hw4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADHx8cwxMTE59XV1f/Ly8v/wcHB/8DAwP+/v7//vr6+/729vf+8vLz/u7u7/7q6 + uv+3t7f/v7+//9LS0v+6urr/srKy/7Gxsf+wsLD/rq6u/62trf+srKz/q6ur/6mpqf+oqKj/p6en5Kam + pi4AAAAAAAAAAJycnByZmZmjl5eX9ZWVlf+SkpL/kJCQ/42Njf+Li4v/iYmJ/oaGhuWFhYVzhYWFBwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAx8fHL8TExOXV1dX/y8vL/8DAwP7AwMD/v7+//r6+vv+9vb3+vLy8/7u7u/66urr/t7e3/7+/ + v/7S0tL/urq6/rKysv+xsbH+sLCw/66urv6tra3/rKys/6qqqv6pqan/qKio/qampualpaUvoaGhRZ2d + neibm5v/mZmZ/peXl/+VlZX/kpKS/pCQkP+NjY3+i4uL/4mJif6Ghob/hISEwoWFhRgAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfH + xy/ExMTm1dXV/9DQ0P/CwsL/wMDA/7+/v/++vr7/vb29/7y8vP+7u7v/u7u7/7+/v/+/v7//0tLS/7q6 + uv+ysrL/sbGx/7CwsP+urq7/ra2t/6ysrP+rq6v/qamp/6ioqP+mpqbooqKi85+fn/+dnZ3/m5ub/5mZ + mf+Xl5f/lZWV/5KSkv+QkJD/jY2N/4uLi/+JiYn/hoaG/4SEhNGEhIQcAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cpw8PD1tDQ + 0P7Z2dn/0NDQ/sjIyP/ExMT+w8PD/8XFxf7MzMz/1dXV/8zMzP64uLjzv7+//tLS0v+6urr+srKy/7Gx + sf6wsLD/rq6u/62trf6srKz/qqqq/qmpqf+oqKj+pqam/6Kiov6fn5//nZ2d/pubm/+ZmZn/l5eX/pSU + lP+SkpL+kJCQ/42Njf6Li4v/iIiI/oaGhv+EhITThISEGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAycnJEMTExJPFxcXxzs7O/9XV + 1f/Y2Nj/2NjY/9TU1P/MzMz/wcHB9729vaXAwMAiubm5jL+/v/3S0tL/urq6/7Kysv+xsbH/r6+v/66u + rv+tra3/rKys/6urq/+pqan/qKio/6ampv+ioqL/oKCg/6Ghof+ioqL/n5+f/5qamv+VlZX/kpKS/5CQ + kP+NjY3/i4uL/4iIiP+Ghob/hISE0oSEhBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIyMgbxsbGZ8TExJ/Dw8O8w8PDvsLC + wqbDw8Nxw8PDJgAAAAAAAAAAv7+/A7i4uIy+vr7+0tLS/7q6uv6ysrL/sLCw/6+vr/6urq7/ra2t/qys + rP+qqqr+qamp/6ioqP6mpqb/sLCw/rS0tP+wsLD/r6+v/q+vr/+pqan+nJyc/5KSkv6Pj4//jY2N/ouL + i/+IiIj/hoaG/oSEhNKEhIQaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAL6+vgO4uLiLvr6+/dLS0v+6urr/srKy/7CwsP+vr6//rq6u/62trf+srKz/qqqq/6mp + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHL8PDw+XW1tb/0NDQ/sDAwP+/v7//vr6+/r29 + vf+8vLz+u7u7/7q6uv65ubn/uLi4/ra2tv+1tbX/s7Oz/rKysv+3t7f+zc3N/7a2tv6urq6Cs7OzAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHxy/Dw8Pn1tbW/8/Pz//AwMD/v7+//76+vv+9vb3/vLy8/7u7 + u/+6urr/ubm5/7e3t/+2trb/tbW1/7q6uv/Pz8//ubm5/bGxsYS3t7cCAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADHx8cww8PD5dbW1v/T09P/wcHB/r+/v/++vr7+vb29/7y8vP67u7v/urq6/rm5 + uf+3t7f/wMDA/tLS0v+8vLz+tLS0g7m5uQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAx8fHLsPDw+TU1NT/2dnZ/8zMzP/CwsL/v7+//729vf+8vLz/vb29/8LCwv/Ozs7/1NTU/76+ + vvy3t7eCvLy8AgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfH + xyTDw8PHzMzM/tnZ2f/c3Nz+2NjY/9XV1f7W1tb/2NjY/tnZ2f/Nzc3/vLy88bu7u2e/v78BAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADJyckFxsbGZsPD + w8/Gxsb6y8vL/83Nzf/MzMz/xsbG/76+vui9vb2ZwcHBIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMrKygPIyMgnx8fHUMfH + x13Hx8daxsbGOsbGxg4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////wAAAP+AAAAAAAAB/wAAAMAAAAAAAAAAAwAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAQAAAPwA + AAAAAAAAPwAAAP/wAAAAAB///wAAAP/gAB///////wAAAP/AAA///////wAAAP+AAAf//////wAAAP+A + AAP//////wAAAP4AAAH//////wAAAPwAAAD//////wAAAPgA+AB//////wAAAPgD/AA//////wAAAPAH + /gAf/////wAAAPAH/wAP/////wAAAOAP/4AH/////wAAAOAP/8AD/////wAAAOAP/+AD/////wAAAOAP + //AB/////wAAAOAP//gB/////wAAAOAH//wB/////wAAAOAD//wB/////wAAAPAB/gAB/////wAAAPAA + /AAB/////wAAAPgAfAAB/////wAAAPwAOAAB/////wAAAP4AGAAD/////wAAAP8ACAAD/////wAAAP+A + AAAH/////wAAAP/AAAAH/////wAAAP/gAAAD/////wAAAP/wAAAB8A///wAAAP/4AAAAwAP//wAAAP/8 + AAAAAAH//wAAAP/+AAAAAAD//wAAAP//AAAAAAB//wAAAP//gAAAAAA//wAAAP//4BgAAAAf/wAAAP// + //wAAAAP/wAAAP////4AAAAH/wAAAP////8AAMAD/wAAAP////+AAOAB/wAAAP////8AAHAA/wAAAP// + //8AAHgAfwAAAP////8AAHwAPwAAAP////8AAH4AHwAAAP////8AAP8AHwAAAP////8AAf+AHwAAAP// + //8AA//ADwAAAP////8AP//gDwAAAP////8AH//gDwAAAP////+AD//gDwAAAP////+AB//gDwAAAP// + ///AA//gDwAAAP/////gAf/AHwAAAP/////wAP/AHwAAAP/////4AH8APwAAAP/////8AD4AfwAAAP// + ///+AAAAfwAAAP//////AAAA/wAAAP//////gAAB/wAAAP//////wAAD/wAAAP//////4AAH/wAAAP// + ////8AAP/wAAAP//////+AAf/wAAAP///////AB//wAAAP///////wH//wAAACgAAABAAAAAgAAAAAEA + IAAAAAAAAEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkAaSkpAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAApKSkAaSkpAGkpKQCpKSkAqSkpAOkpKQFpKSkBqSkpAakpKQGpKSkB6SkpAqkpKQNpKSkDqSk + pA6kpKQOpKSkDqSkpA6kpKQOpKSkDqSkpA6kpKQOpKSkDqSkpBCkpKQVpKSkGaSkpBqkpKQapKSkGaSk + pBakpKQRpKSkDqSkpA6kpKQOpKSkDqSkpA6kpKQOpKSkDqSkpA6kpKQOpKSkDqSkpA2kpKQKpKSkB6Sk + pAakpKQGpKSkBqSkpAWkpKQDpKSkAqSkpAKkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AACkpKQCpKSkB6SkpAykpKQSpKSkGKSkpB2kpKQlpKSkK6SkpCykpKQypKSkPaSkpEKkpKRDpKSkQ6Sk + pEakpKRRpKSkXaSkpGCkpKRgpKSkYKSkpGCkpKRgpKSkYKSkpGCkpKRgpKSkYKSkpGCkpKRlpKSkc6Sk + pH2kpKR/pKSkf6SkpH6kpKR2pKSkaKSkpGCkpKRgpKSkYKSkpGCkpKRgpKSkYKSkpGCkpKRgpKSkYKSk + pGCkpKRdpKSkUaSkpEakpKRDpKSkQ6SkpEKkpKQ9pKSkMqSkpCykpKQrpKSkJaSkpB2kpKQYpKSkEqSk + pAykpKQHpKSkAgAAAACkpKQEpKSkGqSkpD2kpKRXpKSkaaSkpHmkpKSDpKSkkqSkpJykpKSepKSkpaSk + pLKkpKS5pKSku6SkpLukpKS9pKSkxqSkpM+kpKTSpKSk06SkpNOkpKTTpKSk06SkpNOkpKTTpKSk06Sk + pNOkpKTTpKSk1aSkpN2kpKTjpKSk5KSkpOSkpKTjpKSk36SkpNakpKTTpKSk06SkpNOkpKTTpKSk06Sk + pNOkpKTTpKSk06SkpNOkpKTSpKSkz6SkpMakpKS9pKSku6SkpLukpKS5pKSksqSkpKWkpKSepKSknKSk + pJKkpKSDpKSkeaSkpGmkpKRXpKSkPaSkpBqkpKQEpKSkCqSkpDukpKSApKSkqaSkpL6kpKTNpKSk16Sk + pN+kpKTnpKSk6aSkpOukpKTwpKSk86SkpPWkpKT1pKSk9aSkpPakpKT5pKSk+qSkpPukpKT7pKSk+6Sk + pPukpKT7pKSk+6SkpPukpKT7pKSk+6SkpPukpKT7pKSk/KSkpP2kpKT9pKSk/KSkpPykpKT7pKSk+6Sk + pPukpKT7pKSk+6SkpPukpKT7pKSk+6SkpPukpKT7pKSk+qSkpPmkpKT2pKSk9aSkpPWkpKT1pKSk86Sk + pPCkpKTrpKSk6aSkpOekpKTfpKSk16SkpM2kpKS+pKSkqaSkpICkpKQ7pKSkCqSkpAakpKQkpKSkUKSk + pG6kpKSApKSkkKSkpJ2kpKSopKSktaSkpLqkpKS7pKSkw6SkpM2kpKTSpKSk06SkpNOkpKTUpKSk26Sk + pOKkpKTkpKSk5aSkpOWkpKTlpKSk5aSkpOWkpKTlpKSk5aSkpOWkpKTlpKSk5aSkpOWkpKTlpKSk5aSk + pOWkpKTlpKSk5aSkpOWkpKTlpKSk5aSkpOWkpKTlpKSk5aSkpOWkpKTlpKSk5KSkpOKkpKTbpKSk1KSk + pNOkpKTTpKSk0qSkpM2kpKTDpKSku6SkpLqkpKS1pKSkqKSkpJ2kpKSQpKSkgKSkpG6kpKRQpKSkJKSk + pAYAAAAApKSkBaSkpA2kpKQVpKSkHKSkpCWkpKQspKSkNKSkpD+kpKRDpKSkRaSkpE6kpKRapKSkX6Sk + pGCioqJpn5+fhJ+fn5ChoaGHpKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6Sk + pH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6SkpH+kpKR/pKSkf6Sk + pH+kpKR7pKSkb6SkpGOkpKRgpKSkYKSkpF+kpKRapKSkTqSkpEWkpKRDpKSkP6SkpDSkpKQspKSkJaSk + pBykpKQVpKSkDaSkpAUAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAqSkpASkpKQFo6OjBqOj + owejo6MJoqKiEJ+fn2+ZmZnMlJSU/JKSkv+Pj4//jY2N/42NjdqUlJSHn5+fI6GhoRqioqIao6OjGqOj + oxqkpKQapKSkGqSkpBqkpKQapKSkGqSkpBqkpKQapKSkGqSkpBqkpKQapKSkGqSkpBqkpKQapKSkGqSk + pBqkpKQapKSkGqSkpBqkpKQapKSkGKSkpBSkpKQPpKSkDqSkpA6kpKQOpKSkDKSkpAmkpKQHpKSkBqSk + pAWkpKQEpKSkAqSkpAGkpKQBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAoaGhIZ6ens2cnJz/mZmZ/5eXl/+UlJT/kpKS/4+Pj/+MjIz/ioqK/4iI + iN6Pj480l5eXAZycnAGhoaEBo6OjAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApKSkLKOjo+igoKD/np6e/5ycnP+ZmZn/l5eX/5SU + lP+SkpL/j4+P/4yMjP+Kior/h4eH9YqKikEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqKioLKenp+qlpaX/o6Oj/6Cg + oP+enp7/nJyc/5mZmf+Xl5f/lJSU/5KSkv+Pj4//jIyM/4mJif+Hh4f1hoaGQQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArKysLKur + q+qpqan/p6en/6Wlpf+ioqL/oaGh/6Ghof+fn5//mpqa/5eXl/+UlJT/kpKS/4+Pj/+MjIz/iYmJ/4eH + h/WGhoZBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAsLCwLK+vr+qtra3/q6ur/6mpqf+oqKj/sbGx/7S0tP+wsLD/ra2t/62trf+pqan/nJyc/5SU + lP+RkZH/j4+P/4yMjP+JiYn/hoaG9YaGhkEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAtLS0LLKysuqxsbH/r6+v/62trf+urq7/uLi4/62trf+mpqbJpKSkjqKi + ooSfn5+snp6e9Kenp/+ioqL/lJSU/5GRkf+Pj4//jIyM/4mJif+Ghob1hoaGQQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + u/e5ubnrurq6/9HR0f+7u7v/srKy/7Gxsf+vr6//rq6u/62trf+rq6v/qqqq/6ioqP+np6fSpqamFAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxcXFd8vLy//U1NT/wcHB/8DA + wP+/v7//vr6+/729vf+8vLz/u7u7/7m5uf+6urr/0dHR/7u7u/+ysrL/sbGx/6+vr/+urq7/ra2t/6ur + q/+qqqr/qKio/6enp9KmpqYUAAAAAAAAAAAAAAAAAAAAAJaWliqTk5N6kJCQqY6Ojr6Li4uqiYmJfoeH + hy4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADFxcV3y8vL/9TU1P/BwcH/wMDA/7+/v/++vr7/vb29/7y8vP+7u7v/ubm5/7q6uv/R0dH/u7u7/7Ky + sv+xsbH/r6+v/66urv+tra3/q6ur/6qqqv+oqKj/p6en0qamphQAAAAAnp6eHZqamrKYmJj/lZWV/5KS + kv+QkJD/jY2N/4qKiv+IiIj/hYWFt4WFhSIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMXFxXfLy8v/1NTU/8LCwv/AwMD/v7+//76+vv+9vb3/vLy8/7u7 + u/+5ubn/urq6/9HR0f+6urr/srKy/7Gxsf+vr6//rq6u/6ysrP+rq6v/qqqq/6ioqP+mpqbSo6OjS5+f + n+ycnJz/mpqa/5eXl/+VlZX/kpKS/5CQkP+NjY3/ioqK/4eHh/+FhYXvhISEQAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxcXFc8rKyv7Y2Nj/ysrK/8HB + wf+/v7//vr6+/729vf+8vLz/xcXF/8rKyv+6urr/0dHR/7q6uv+ysrL/sbGx/6+vr/+urq7/rKys/6ur + q/+pqan/qKio/6ampv+hoaH/n5+f/5ycnP+ampr/l5eX/5WVlf+SkpL/kJCQ/42Njf+Kior/h4eH/4SE + hPWEhIRBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADGxsZTxMTE69LS0v/Z2dn/1tbW/9TU1P/V1dX/2NjY/87Ozv++vr7uu7u7gbq6uvXR0dH/urq6/7Ky + sv+wsLD/r6+v/66urv+srKz/q6ur/6mpqf+oqKj/pqam/6Ghof+fn5//nJyc/5qamv+Xl5f/lZWV/5KS + kv+QkJD/jY2N/4qKiv+Hh4f/hISE9YSEhEEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMnJyQ/FxcVyw8PDw8TExPHGxsb/w8PD87+/v8XAwMB0wsLCDwAA + AAC8vLxBurq69dHR0f+6urr/srKy/7CwsP+vr6//rq6u/6ysrP+rq6v/qamp/6ioqP+mpqb/q6ur/7Cw + sP+wsLD/ra2t/6ampv+bm5v/kpKS/4+Pj/+NjY3/ioqK/4eHh/+EhIT1hISEQQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxcXFd8vLy//X19f/wsLC/7+/ + v/++vr7/vb29/7y8vP+7u7v/urq6w7m5uWe4uLhAtra2R7S0tH+ysrLmsLCw/66urv+srKz/ra2t/8fH + x/+wsLD+qKioaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADFxcV3y8vL/9fX1//CwsL/v7+//76+vv+9vb3/vLy8/7u7u/+6urr/uLi4/7e3t/+1tbX/s7Oz/7Ky + sv+wsLD/sbGx/8rKyv+0tLT+rKysaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMXFxXfLy8v/19fX/8LCwv+/v7//vr6+/729vf+8vLz/u7u7/7q6 + uv+4uLj/t7e3/7W1tf+zs7P/tbW1/8zMzP+3t7f+sLCwaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxcXFd8vLy//X19f/w8PD/7+/ + v/++vr7/vb29/7y8vP+7u7v/urq6/7i4uP+3t7f/uLi4/8/Pz/+7u7v+s7OzaAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADFxcV3y8vL/9ra2v/Kysr/v7+//76+vv+9vb3/vLy8/7u7u/+6urr/w8PD/9TU1P++vr7+t7e3aAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMXFxWfHx8f62NjY/9ra2v/R0dH/zMzM/8zMzP/Pz8//19fX/9LS + 0v+9vb33u7u7XQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyMjILcPDw7XHx8f9z8/P/9LS + 0v/R0dH/zMzM/8LCwvy8vLytwcHBJwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAycnJGMbGxlPHx8dvxsbGbsXFxVHGxsYUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/////n/////8AAAAAAAAP4AAAAAAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAHwAAAAAAAAD//gAAAAB////8AA////////gAB///////8A + AD///////gAAH//////8AAAP//////gDwAf/////8AfwA//////wD/gB/////+Af/AD/////4B/+AH// + ///gP/8AP////+A//4A/////4B//wB/////gH//AH////+AP/+Af////4Af4AB/////wA/AAH/////gB + 4AAf/////ADgAD/////+AGAAP/////8AIAB//////4AAAH//////wAAAP//////gAAAeA/////AAAAgA + ////+AAAAAB////8AAAAAD////4AAAAAH////wBAAAAP/////+AAAAf/////8AAAA//////4ABAB//// + //gAHAD/////+AAeAH/////wAB8AP/////AAH4Af////8AAfwB/////wAD/gD/////AAf+AP////8Af/ + 8A/////4A//wD/////gB//gP/////AD/8A/////+AH/wD/////8AP+AP/////4AfwB//////wA+AP/// + ///gAAB///////AAAP//////+AAB///////8AAP///////4AB////////wAP////////gB/////////g + f/8oAAAAMAAAAGAAAAABACAAAAAAAIAlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAGkpKQBpKSkAaSkpAKkpKQDpKSkA6SkpAKkpKQBpKSkAaSkpAGkpKQBpKSkAaSkpAGkpKQBpKSkAaSk + pAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKOj + owGjo6MDpKSkBqOjowijo6MNpKSkEKOjoxKjo6MZpKSkHaOjox2kpKQfo6OjJ6Ojoy+jo6MvpKSkL6Oj + oy+jo6MvpKSkL6Ojoy+jo6MvpKSkNaOjo0Kjo6NGpKSkRqOjo0Ojo6M3pKSkMKOjoy+jo6MvpKSkL6Oj + oy+kpKQvo6OjL6Ojoy+kpKQno6OjH6Ojox2kpKQdo6OjGaOjoxKkpKQQo6OjDaOjowikpKQGo6OjA6Oj + owEAAAAApKSkBaOjoyKjo6NEpKSkWqOjo2qjo6N6pKSkh6Ojo4ujo6ObpKSkpaOjo6akpKSno6OjtKOj + o76jo6PApKSkwKOjo8Cjo6PApKSkwKOjo8Cjo6PApKSkxKOjo9Cjo6PVpKSk1aOjo9Kjo6PGpKSkwKOj + o8Cjo6PApKSkwKOjo8CkpKTAo6OjwKOjo76kpKS0o6Ojp6Ojo6akpKSlo6Ojm6Ojo4ukpKSHo6OjeqOj + o2qkpKRao6OjRKOjoyKjo6MFpKSkEKSkpFukpKSdpKSku6SkpM2kpKTYpKSk46SkpOWkpKTrpKSk8aSk + pPKkpKTzpKSk9KSkpPekpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPqkpKT7pKSk+6Sk + pPqkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPmkpKT5pKSk+aSkpPekpKT0pKSk86SkpPKkpKTxpKSk66Sk + pOWkpKTjpKSk2KSkpM2kpKS7pKSknaSkpFukpKQQpKSkBKOjox6jo6M5pKSkS6Ojo1yjo6NqpKSke6Oj + o3+jo6OIpKSkmKOjo5ykpKSdo6OjoKOjo6+jo6O3pKSkuKOjo7ijo6O4pKSkuKOjo7ijo6O4pKSkuKOj + o7ijo6O4pKSkuKOjo7ijo6O4pKSkuKOjo7ijo6O4pKSkuKOjo7ikpKS4o6Ojt6Ojo6+kpKSgo6OjnaOj + o5ykpKSYo6OjiKOjo3+kpKR7o6OjaqOjo1ykpKRLo6OjOaOjox6jo6MEAAAAAAAAAACjo6MCpKSkA6Oj + owajo6MIo6OjDKOjow6jo6MRoqKiJJ6enoeYmJjMk5OT6JCQkOSSkpLAmpqaa6GhoSmioqIpo6OjKaOj + oymjo6MppKSkKaOjoymjo6MppKSkKaOjoymjo6MppKSkKaOjoymjo6MppKSkKaOjoymkpKQpo6OjKaOj + oySkpKQbo6OjGaOjoxikpKQXo6OjEaOjow6kpKQMo6OjCKOjowakpKQDo6OjAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACioqI3np6e45ubm/+YmJj/lJSU/5GRkf+NjY3/ioqK/oqK + iqqUlJQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKampj+kpKTxoaGh/56env6bm5v/l5eX/pSU + lP6RkZH+jY2N/4mJif6Hh4e9iYmJCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArKysPqmpqfGnp6f+pKSk/6Gh + of6goKD/nZ2d/piYmP6UlJT+kZGR/42Njf6JiYn+hoaGvIaGhgsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACxsbE+r6+v86ys + rP+pqan/ra2t/7Gxsf+tra3/qamp/6mpqf+ioqL/lZWV/5CQkP+NjY3/iYmJ/4aGhr2GhoYMAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALW1 + tT+zs7PxsbGx/6+vr/60tLT+sLCw8ampqX6oqKgxpaWlJ6CgoGCfn5/WpKSk/5WVlf6QkJD+jY2N/4mJ + if6Ghoa9hoaGCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAubm5L7e3t++1tbX/s7Oz/7e3t/+zs7Pqr6+vMAAAAAAAAAAAAAAAAAAAAACenp4NnZ2du6Sk + pP+VlZX/kJCQ/42Njf+JiYn/hoaGvIaGhgsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAC8vLwCu7u70Lm5uf63t7f+tra2/7m5ufi0tLQ3AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAnp6eCp2dnbmkpKT+lJSU/5CQkP6MjIz+iYmJ/4aGhr2GhoYMAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC9vb1Dvb29/7u7u/65ubn+urq6/7e3t6kAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ6engudnZ25pKSk/5SUlP6QkJD+jIyM/4mJif6Ghoa9hoaGCgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/v7+Cvr6+/729vf67u7v+urq6/7i4 + uHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACenp4KnZ2du6SkpP6UlJT+kJCQ/4yM + jP6JiYn+hoaGogAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBwcGawsLC/76+ + vv+9vb3/u7u7/7q6unkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnp6eCp2d + nbqioqL/k5OT/5CQkP+MjIz/iYmJ/YiIiDsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADCwsKDxsbG/7+/v/6+vr7+vb29/7u7u8O7u7sBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJ6eng+enp7cmpqa/5OTk/6QkJD+jIyM/4qKipMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADExMRGy8vL/8DAwP6/v7/+vr6+/7y8vP68vLxpAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACdnZ1vnp6e/5aWlv6Tk5P+kJCQ/42NjcEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADGxsYCx8fH08zMzP/AwMD/v7+//76+vv+8vLz9vLy8ZAAA + AAAAAAAAAAAAAAAAAAAAAAAArq6uHKysrKyrq6vuqamp26ampmqhoaFAnp6e/5qamv+Wlpb/lZWV/5WV + lcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHNMzMzPHMzMz+wMDA/7+/ + v/6+vr7+vLy8+7u7u2UAAAAAAAAAAAAAAACxsbEKsLCw2K6urv6srKz+qqqq/6ioqP6lpaXEoKCg/52d + nf6ampr+oKCg/5iYmKEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfH + x0XMzMz0zMzM/8DAwP6/v7/+vr6+/7y8vPu7u7tkAAAAAAAAAAC0tLRXsrKy/7CwsP6urq7+rKys/6qq + qv6oqKj+paWl/6CgoP6dnZ3+q6ur/pycnE8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADHx8dDzMzM9MzMzP/AwMD/v7+//76+vv+8vLz9u7u7ZAAAAAC2trZvvb29/7Ky + sv+wsLD/rq6u/6ysrP+qqqr/qKio/6Wlpf+0tLT/o6Ojw6KiogMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAx8fHRczMzPPMzMz+wMDA/7+/v/6+vr7/vLy8+7u7 + u225ubk0xcXF/b29vf6ysrL+sLCw/66urv6srKz+qqqq/6ioqP6oqKjxp6enHQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHx0XMzMz0zMzM/8DA + wP6/v7//vr6+/ry8vP67u7vRuLi468nJyf69vb3+sbGx/7CwsP6urq7+rKys/6qqqv6oqKj+p6eni6am + pgEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADHx8dDzMzM9MzMzP/AwMD/v7+//76+vv+8vLz/u7u7/7i4uP/Jycn/vb29/7Gxsf+wsLD/rq6u/6ys + rP+qqqr/qKio/qampoympqYCAAAAAJqamgSXl5dRk5OToo+Pj8eMjIzDiYmJlYeHhzoAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAx8fHRczMzPPMzMz/wMDA/r+/v/6+vr7+vLy8/7q6uv64uLj+ycnJ/729 + vf6xsbH+sLCw/66urv6srKz+qqqq/6ioqP6mpqaMoqKiH52dncWZmZn+lpaW/5KSkv6Pj4//i4uL/oeH + h/2FhYWjhISECwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMfHx0XMzMzx0dHR/sPDw/6/v7/+vr6+/7y8 + vP7AwMD+wsLC/8nJyf69vb3+sbGx/7CwsP6urq7+rKys/6qqqv6oqKj+pKSk8J+fn/6cnJz+mZmZ/5aW + lv6SkpL/j4+P/ouLi/6Hh4f/hISEvISEhAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cvxsbGytHR + 0f7T09P/09PT/9LS0v/Ly8v7vr6+qrq6upHJycn+vb29/7Gxsf+vr6//rq6u/6ysrP+qqqr/qKio/6Sk + pP+goKD/n5+f/52dnf+Xl5f/kpKS/4+Pj/+Li4v/h4eH/4SEhL2EhIQMAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAyMjIAsfHxzfGxsZwxsbGf8TExGfExMQmAAAAAL6+vgG5ubmIycnJ/729vf6xsbH+r6+v/62t + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMjIyATHx8dFxcXFg8XFxZPExMSCw8PDQcPDwwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA//gAAB//AACAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAA + AAAAAwAA/wA/////AAD+AB////8AAPwAD////wAA+AAH////AADwAAP///8AAOA8Af///wAAwH4A//// + AADA/wB///8AAMD/gH///wAAwP/AP///AADAf+A///8AAMB/8D///wAAwD4AP///AADgHAA///8AAPAM + AD///wAA+AQAP///AAD8AAB///8AAP4AAD///wAA/wAAEB//AAD/gAAAB/8AAP/AAAAD/wAA/+AAAAH/ + AAD/8CAAAP8AAP//8AAAfwAA///4AIA/AAD///wAQB8AAP//+ABgDwAA///4AHAHAAD///gA+AcAAP// + +AH8BwAA///4D/4HAAD///gH/gcAAP///AP+BwAA///+Af4HAAD///8A/AcAAP///4B4DwAA////wAAf + AAD////gAD8AAP////AAfwAA////+AD/AAD////8Af8AAP////4D/wAAKAAAACAAAABAAAAAAQAgAAAA + AACAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkpKQBpKSkAqSkpAOkpKQDpKSkBaSk + pAekpKQHpKSkB6SkpAekpKQHpKSkCaSkpA2kpKQNpKSkCqSkpAekpKQHpKSkB6SkpAekpKQHpKSkBaSk + pAOkpKQDpKSkAqSkpAEAAAAAAAAAAAAAAAAAAAAApKSkCKSkpCqkpKRDpKSkVaSkpGSkpKRxpKSkfqSk + pICkpKSRpKSkmaSkpJmkpKSZpKSkmaSkpJmkpKSipKSksaSkpLGkpKSlpKSkmaSkpJmkpKSZpKSkmaSk + pJmkpKSRpKSkgKSkpH6kpKRxpKSkZKSkpFWkpKRDpKSkKqSkpAikpKQbpKSkeqSkpKekpKS/pKSkz6Sk + pNakpKTipKSk5KSkpOekpKTvpKSk8KSkpPCkpKTwpKSk8KSkpPCkpKTwpKSk8KSkpPCkpKTwpKSk8KSk + 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 + yv/CwsLUurq6GgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHx8cLx8fHcsvL + y7DKysqvwsLCb7+/vwkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAPAAAAAAAAAAAAAAAA+A////AH + ///gA///wYH//4PA//+D4H//g/A//4P4P/+BwD//wIA//+AAf//wAH//+AAA//wAAH/+AAA///gAH//8 + AA///AIH//wDA//8B4P//B/D//wPw//+B4P//wMD//+AB///wA///+Af///wPygAAAAYAAAAMAAAAAEA + IAAAAAAAYAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAi4uLApSUlAWkpKQIpKSkDaOjow+kpKQWpKSkGKOj + oxikpKQYpKSkGaSkpCOjo6MkpKSkGqOjoxikpKQYpKSkGKOjoxakpKQPpKSkDaOjowiWlpYFjIyMAgAA + AACkpKQlpKSkfaOjo6KkpKS3pKSkx6Ojo8ykpKTXpKSk3KOjo92kpKTdpKSk3qSkpOejo6PnpKSk3qOj + o92kpKTdpKSk3KOjo9ekpKTMpKSkx6Ojo7ekpKSipKSkfaOjoyWjo6MIo6OjIqOjozWjo6NFo6OjVZ+f + n6OamprHnZ2dpqOjo3Cjo6Nwo6OjcKOjo3Cjo6Nwo6OjcKOjo3Cjo6Nwo6OjcKOjo2Sjo6Nao6OjUqOj + o0Wjo6M1o6OjIqOjowgAAAAAAAAAAAAAAACmpqYPoaGhwpubm/6UlJT/jY2N/ouLi5yUlJQDAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKys + rA+srKzIqKio/6ioqP6ioqL/l5eX/42Njf6Hh4ehe3t7AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArq6uC7W1tceysrL+sbGxwqioqCuhoaEhoKCgp5eX + l/6NjY3+h4eHoXt7ewIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + AAD+EQAA/wEAAP+DAAA= + + + \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmStammdaten.vb b/DPM2016/Sysadmin/frmStammdaten.vb new file mode 100644 index 0000000..6b1c2ce --- /dev/null +++ b/DPM2016/Sysadmin/frmStammdaten.vb @@ -0,0 +1,149 @@ +Imports FlexCel.Core +Imports FlexCel.XlsAdapter +Public Class frmStammdaten + + Dim db As New clsDB + Dim spalten As New Tabellenspalte + Private Sub SchliessenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SchliessenToolStripMenuItem.Click + Me.Close() + End Sub + + Private Sub TreeView1_AfterSelect(sender As Object, e As TreeViewEventArgs) Handles TreeView1.AfterSelect + Try + If Me.TreeView1.SelectedNode.Tag <> "" Then + Dim splitter() + splitter = Me.TreeView1.SelectedNode.Tag.ToString.Split(";") + If splitter.Length > 1 Then + Dim i As Integer = 0 + + For Each s As String In splitter + i = i + 1 + If i = 1 Then ClsStammdaten_Bez1.KeyField_left = s + If i = 2 Then ClsStammdaten_Bez1.Keyfieldbez_left = s + If i = 3 Then ClsStammdaten_Bez1.KeyField_right = s + If i = 4 Then ClsStammdaten_Bez1.Keyfieldbez_right = s + If i = 5 Then ClsStammdaten_Bez1.Tablename_left = s + If i = 6 Then ClsStammdaten_Bez1.Tablename_right = s + If i = 7 Then ClsStammdaten_Bez1.Tablename_bottom = s + Try + Catch ex As Exception + + End Try + Next + + End If + Me.ClsStammdaten_flat1.Visible = False + Me.ClsStammdaten_Bez1.Visible = True + Me.ClsStammdaten_Bez1.Dock = DockStyle.Fill + Exit Sub + End If + Me.ClsStammdaten_Bez1.Visible = False + Me.ClsStammdaten_flat1.Visible = True + Me.ClsStammdaten_flat1.Dock = DockStyle.Fill + + If Me.TreeView1.SelectedNode.Nodes.Count = 0 Then Me.ClsStammdaten_flat1.Visible = True Else Me.ClsStammdaten_flat1.Visible = False + Me.ClsStammdaten_flat1.Tablename = Me.TreeView1.SelectedNode.Name + Me.ClsStammdaten_flat1.get_data() + + Try + + Catch + End Try + Catch + End Try + End Sub + + Private Sub frmStammdaten_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.TreeView1.ExpandAll() + End Sub + + Private Sub DentotarImportToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles DentotarImportToolStripMenuItem.Click + If MsgBox("Sind Sie sicher, dass Dentotaf neu importier werden soll?", vbYesNo + vbQuestion) = vbYes Then + If OpenFileDialog1.ShowDialog = DialogResult.OK Then + import_dentotar(OpenFileDialog1.FileName) + End If + + End If + End Sub + + Private Sub import_dentotar(ByVal Filename As String) + Try + Dim xls As New XlsFile(Filename) + Dim f As New frmprogress(1, xls.RowCount, "Dentotar einlesen") + f.Show() + Dim db As New clsDB + db.Get_Tabledata_for_Update("Dentotar", False, False) + db.daten.WriteXml(Globals.ActUser) + Dim dt As New DataTable + Dim dt_Original As New DataTable + dt = db.daten.Tables(0).Copy + dt_Original = db.daten.Tables(0).Copy + db.Exec_Prod("sp_update_dentotar") + dt.Rows.Clear() + dt.AcceptChanges() + Dim colindex1 As Integer + xls.ActiveSheet = 1 + Dim i As Integer = 0 + For row As Integer = 2 To xls.RowCount + Dim dr As DataRow = dt.NewRow + i = row + Application.DoEvents() + f.ProgressBar1.Value = row + For colIndex As Integer = 1 To 18 + + Try + dr.Item(colIndex - 1) = xls.GetCellValue(row, colIndex) + Catch + dr.Item(colIndex - 1) = System.DBNull.Value + End Try + + Next + dt.Rows.Add(dr) + Next + + + f.Init_Progressbar(1, i, "Privat-Punkte nachführen") + For Each r As DataRow In dt.Rows + f.ProgressBar1.Value = f.ProgressBar1.Value + 1 + Application.DoEvents() + If Not IsDBNull(r.Item("Leistungnrneu")) Then + Dim dv As New DataView(dt_Original, "leistungnrneu='" + r.Item("Leistungnrneu") + "'", "", DataViewRowState.CurrentRows) + Dim drv As DataRowView = dv.Item(0) + r.Item("PP_Privat") = drv.Item("PP_Privat") + End If + + 'For Each rr As DataRow In dt_Original.Rows + ' Try + ' If r.Item("LeistungNrneu") = rr.Item("Leistungnrneu") Then + ' Try + ' r.Item("PP_Privat") = rr.Item("PP_Privat") + ' Catch + ' End Try + + ' Exit For + ' End If + ' Catch + ' End Try + + 'Next + Next + f.Close() + db.daten.Tables.Clear() + db.daten.Tables.Add(dt.Copy) + db.Update_Tabeldata() + Try + IntTables.Inttables.Tables.Remove("Dentotar") + Catch + End Try + + MsgBox("Update Dentotar ist abgeschossen.", vbInformation) + Catch ex As Exception + MsgBox("Update Dentotar: Fehler: " + ex.Message) + End Try + + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) + Me.Close() + End Sub +End Class \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmSysadminTableSelector.resx b/DPM2016/Sysadmin/frmSysadminTableSelector.resx new file mode 100644 index 0000000..df31b27 --- /dev/null +++ b/DPM2016/Sysadmin/frmSysadminTableSelector.resx @@ -0,0 +1,165 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + False + + + False + + + 0, 0 + + + 152, 17 + + + False + + + False + + + 0, 0 + + + 280, 17 + + + + + AAABAAEAICAEAAAAAADoAgAAFgAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAzd3d3MzMzAAAAAAAAAAAAM3d3dzMzMwAAAAAAAAAAM3eIiIi7MzMzAAAAAAAA + ADN3iIiIuzMzMwAAAAAAAAB3u4iIiLu7MzMAAAAAAAAAd7uIiIi7uzMzAAAAAAAAAHe7iIiIu7szMwAA + AAAAAAB3u4iIiLu7MzMAAAAAAAAAd7uIiIi7uzMzAAAAAAAAAHe7iIiIu7szMwAAAAAAAAB3u4iIiLu7 + MzMAAAAAAAAAd7uIiIi7uzMzAAAAAAAAAHe7iIiIu7szMwAAAAAAAAB3u4iIiLu7MzMAAAAAAAAAd7uI + iIi7uzMzAAAAAAAAAHe7iIiIu7szMwAAAAAAAAB3u4iIiLu7MzMAAAAAAAAAd7uIiIi7uzMzAAAAAAAA + AHe7iIiIiIi7dwAAAAAAAAB3u4iIiIiIu3cAAAAAAAAAiIj//////4h3AAAAAAAAAIiI//////+IdwAA + AAAAAAAzd3d3d3d3dzMAAAAAAAAAM3d3d3d3d3czAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////AAA//wA + AP/8AAD//AAA//wAAP/8AAD//AAA//wAAP/8AAD//AAA//wAAP/8AAD//AAA//wAAP/8AAD//AAA//wA + AP/8AAD//AAA//wAAP/8AAD//AAA//wAAP/8AAD//////////////////////w== + + + \ No newline at end of file diff --git a/DPM2016/Sysadmin/frmSysadminTableSelector.vb b/DPM2016/Sysadmin/frmSysadminTableSelector.vb new file mode 100644 index 0000000..9d48a34 --- /dev/null +++ b/DPM2016/Sysadmin/frmSysadminTableSelector.vb @@ -0,0 +1,145 @@ +Imports System.IO +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Public Class frmSysadminTableSelector + Inherits System.Windows.Forms.Form + +#Region " Vom Windows Form Designer generierter Code " + + Public Sub New() + MyBase.New() + + ' Dieser Aufruf ist für den Windows Form-Designer erforderlich. + InitializeComponent() + + ' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen + + End Sub + + ' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen. + Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) + If disposing Then + If Not (components Is Nothing) Then + components.Dispose() + End If + End If + MyBase.Dispose(disposing) + End Sub + + ' Für Windows Form-Designer erforderlich + Private components As System.ComponentModel.IContainer + + 'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich + 'Sie kann mit dem Windows Form-Designer modifiziert werden. + 'Verwenden Sie nicht den Code-Editor zur Bearbeitung. + Friend WithEvents SqlDataAdapter1 As System.Data.SqlClient.SqlDataAdapter + Friend WithEvents SqlSelectCommand1 As System.Data.SqlClient.SqlCommand + Friend WithEvents SqlInsertCommand1 As System.Data.SqlClient.SqlCommand + Friend WithEvents SqlConnection1 As System.Data.SqlClient.SqlConnection + Friend WithEvents DataSet1 As System.Data.DataSet + Friend WithEvents ListBox1 As System.Windows.Forms.ListBox + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmSysadminTableSelector)) + Me.SqlDataAdapter1 = New System.Data.SqlClient.SqlDataAdapter + Me.SqlInsertCommand1 = New System.Data.SqlClient.SqlCommand + Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection + Me.SqlSelectCommand1 = New System.Data.SqlClient.SqlCommand + Me.DataSet1 = New System.Data.DataSet + Me.ListBox1 = New System.Windows.Forms.ListBox + CType(Me.DataSet1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'SqlDataAdapter1 + ' + Me.SqlDataAdapter1.InsertCommand = Me.SqlInsertCommand1 + Me.SqlDataAdapter1.SelectCommand = Me.SqlSelectCommand1 + Me.SqlDataAdapter1.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "sysobjects", New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("name", "name"), New System.Data.Common.DataColumnMapping("id", "id"), New System.Data.Common.DataColumnMapping("xtype", "xtype"), New System.Data.Common.DataColumnMapping("uid", "uid"), New System.Data.Common.DataColumnMapping("info", "info"), New System.Data.Common.DataColumnMapping("status", "status"), New System.Data.Common.DataColumnMapping("base_schema_ver", "base_schema_ver"), New System.Data.Common.DataColumnMapping("replinfo", "replinfo"), New System.Data.Common.DataColumnMapping("parent_obj", "parent_obj"), New System.Data.Common.DataColumnMapping("crdate", "crdate"), New System.Data.Common.DataColumnMapping("ftcatid", "ftcatid"), New System.Data.Common.DataColumnMapping("schema_ver", "schema_ver"), New System.Data.Common.DataColumnMapping("stats_schema_ver", "stats_schema_ver"), New System.Data.Common.DataColumnMapping("type", "type"), New System.Data.Common.DataColumnMapping("userstat", "userstat"), New System.Data.Common.DataColumnMapping("sysstat", "sysstat"), New System.Data.Common.DataColumnMapping("indexdel", "indexdel"), New System.Data.Common.DataColumnMapping("refdate", "refdate"), New System.Data.Common.DataColumnMapping("version", "version"), New System.Data.Common.DataColumnMapping("deltrig", "deltrig"), New System.Data.Common.DataColumnMapping("instrig", "instrig"), New System.Data.Common.DataColumnMapping("updtrig", "updtrig"), New System.Data.Common.DataColumnMapping("seltrig", "seltrig"), New System.Data.Common.DataColumnMapping("category", "category"), New System.Data.Common.DataColumnMapping("cache", "cache")})}) + ' + 'SqlInsertCommand1 + ' + Me.SqlInsertCommand1.CommandText = "[pv_sysobjects_insert]" + Me.SqlInsertCommand1.CommandType = System.Data.CommandType.StoredProcedure + Me.SqlInsertCommand1.Connection = Me.SqlConnection1 + Me.SqlInsertCommand1.Parameters.AddRange(New System.Data.SqlClient.SqlParameter() {New System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, False, CType(0, Byte), CType(0, Byte), "", System.Data.DataRowVersion.Current, Nothing), New System.Data.SqlClient.SqlParameter("@name", System.Data.SqlDbType.NVarChar, 128, "name"), New System.Data.SqlClient.SqlParameter("@id", System.Data.SqlDbType.Int, 4, "id"), New System.Data.SqlClient.SqlParameter("@xtype", System.Data.SqlDbType.VarChar, 2, "xtype"), New System.Data.SqlClient.SqlParameter("@uid", System.Data.SqlDbType.Int, 2, "uid"), New System.Data.SqlClient.SqlParameter("@info", System.Data.SqlDbType.Int, 2, "info"), New System.Data.SqlClient.SqlParameter("@status", System.Data.SqlDbType.Int, 4, "status"), New System.Data.SqlClient.SqlParameter("@base_schema_ver", System.Data.SqlDbType.Int, 4, "base_schema_ver"), New System.Data.SqlClient.SqlParameter("@replinfo", System.Data.SqlDbType.Int, 4, "replinfo"), New System.Data.SqlClient.SqlParameter("@parent_obj", System.Data.SqlDbType.Int, 4, "parent_obj"), New System.Data.SqlClient.SqlParameter("@crdate", System.Data.SqlDbType.DateTime, 8, "crdate"), New System.Data.SqlClient.SqlParameter("@ftcatid", System.Data.SqlDbType.Int, 2, "ftcatid")}) + ' + 'SqlConnection1 + ' + Me.SqlConnection1.ConnectionString = "data source=shu;initial catalog=edoka;persist security info=False;user id=sa;work" & _ + "station id=SHU;packet size=4096" + Me.SqlConnection1.FireInfoMessageEventOnUserErrors = False + ' + 'SqlSelectCommand1 + ' + Me.SqlSelectCommand1.CommandText = "[pv_sysobjects_select]" + Me.SqlSelectCommand1.CommandType = System.Data.CommandType.StoredProcedure + Me.SqlSelectCommand1.Connection = Me.SqlConnection1 + Me.SqlSelectCommand1.Parameters.AddRange(New System.Data.SqlClient.SqlParameter() {New System.Data.SqlClient.SqlParameter("@RETURN_VALUE", System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue, False, CType(0, Byte), CType(0, Byte), "", System.Data.DataRowVersion.Current, Nothing)}) + ' + 'DataSet1 + ' + Me.DataSet1.DataSetName = "NewDataSet" + Me.DataSet1.Locale = New System.Globalization.CultureInfo("de-CH") + ' + 'ListBox1 + ' + Me.ListBox1.Location = New System.Drawing.Point(8, 16) + Me.ListBox1.Name = "ListBox1" + Me.ListBox1.Size = New System.Drawing.Size(240, 316) + Me.ListBox1.TabIndex = 0 + ' + 'frmSysadminTableSelector + ' + Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13) + Me.ClientSize = New System.Drawing.Size(256, 349) + Me.Controls.Add(Me.ListBox1) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.Name = "frmSysadminTableSelector" + Me.Text = "Tabelle auswählen" + CType(Me.DataSet1, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + +#End Region + + Private Sub frmSysadminTableSelector_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Dim ds As New DataSet + Dim connection As New SqlConnection() + Dim da As New SqlDataAdapter("", connection) + Dim sqlcmd As New SqlCommand + + sqlcmd.CommandText = "dbo.sp_sysobjects_select" + sqlcmd.CommandType = CommandType.StoredProcedure + sqlcmd.Connection = connection + Try + connection.ConnectionString = My.Settings.ConnectionString + connection.Open() + da.SelectCommand = sqlcmd + da.Fill(ds, "Datatable1") + Catch ex As Exception + Finally + connection.Close() + da.Dispose() + sqlcmd.Dispose() + End Try + + + Dim i As Integer + For i = 0 To ds.Tables(0).Rows.Count - 1 + Me.ListBox1.Items.Add(ds.Tables(0).Rows(i)(0)) + Next + Me.SqlConnection1.Close() + End Sub + + Private Sub listbox1_dblclick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.DoubleClick + Close() + End Sub + + Public Function get_tablename() As String + get_tablename = "" + Me.ShowDialog() + Return Me.ListBox1.SelectedItem + End Function + +End Class diff --git a/DPM2016/Utils/Globals.vb b/DPM2016/Utils/Globals.vb new file mode 100644 index 0000000..c0544af --- /dev/null +++ b/DPM2016/Utils/Globals.vb @@ -0,0 +1,33 @@ +Imports System.Math +Module Globals + Public Spaltendaten As New DataTable + Public SQLStatements As New DataTable + Public ActUser As Integer = 1 + Public WithEvents EVH As New Generic_Event_Handler + Public OnLoad As Boolean = False + + Public Function Round5(ByVal inp As String) As String + Dim Rappen5 As Double + Rappen5 = CDbl(inp) + Rappen5 = Round(Rappen5 * 2, 1) / 2 + Return CStr(Rappen5.ToString("#,##0.00")) + End Function + + Public Function FindNode(ByVal _nodeCollection As DevComponents.AdvTree.NodeCollection, ByVal SearchVal As Integer, ByVal SearchString As String) As DevComponents.AdvTree.Node + Dim tmpNode As DevComponents.AdvTree.Node + For Each _child As DevComponents.AdvTree.Node In _nodeCollection + If _child.Tag = SearchVal Then + + Return _child + End If + ' If InStr(UCase(_child.Text), UCase(SearchString)) > 0 Then + ' Return _child + ' End If + tmpNode = FindNode(_child.Nodes, SearchVal, SearchString) + If Not tmpNode Is Nothing Then + Return tmpNode + End If + Next + Return Nothing + End Function +End Module diff --git a/DPM2016/Utils/clsLog.vb b/DPM2016/Utils/clsLog.vb new file mode 100644 index 0000000..7ec99e6 --- /dev/null +++ b/DPM2016/Utils/clsLog.vb @@ -0,0 +1,14 @@ +Public Class clsLog + Dim db As New clsDB + + Public Enum Logtype + Information = 0 + Wartning = 1 + ApplError = 2 + End Enum + + Public Function Writelog(ByVal entry As String, ByVal Ltype As Logtype) + If Ltype >= My.Settings.LogLevel Then db.WriteLog(entry, Ltype) + + End Function +End Class diff --git a/DPM2016/app.config b/DPM2016/app.config new file mode 100644 index 0000000..2d8c91e --- /dev/null +++ b/DPM2016/app.config @@ -0,0 +1,44 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + data source=shu00;initial catalog=dpmneu;integrated security=SSPI;persist security info=false;workstation id=;packet size=4096;user id=sa;password=*shu29 + + + 2 + + + h:\dpm + + + h:\dpm\docarchiv + + + + diff --git a/DPM2016/bin/Debug/1 b/DPM2016/bin/Debug/1 new file mode 100644 index 0000000..8f6a30b --- /dev/null +++ b/DPM2016/bin/Debug/1 @@ -0,0 +1,11692 @@ + + + + 0 + 0 + 0 + 222 Zahnarzt-Tarif +UV/MV/IV (SSO) + 222 Tarif dentaire AA/AM/AI (SSO) + 222 Tariffario odontoiatrico LAInf/AM/AI (SSO) + + + Kap + 1 + 00 + Allgemeines + Généralités + Generalità + + + Kap + 1 + 01 + Allgemeine Leistungen + Prestations générales + Prestazioni generali + + + Kap + 2 + 01.01 + Befundaufnahme + Examen + Consultazione iniziale + + + Lei + 3 + 01.01 + 4.0000 + Befundaufnahme; Zweitmeinung + Examen; deuxième avis + Consultazione iniziale; secondo parere + Beinhaltet: +• die zahnärztliche Untersuchung der Zähne auf Karies, Substanzdefekte, innere Verfärbungen, Hypoplasien (mechanisch-chemisch bedingte Defekte); +• die Inspektion der Mundhöhle, der Mundschleimhaut und der apikalen Region; +• das Anliegen des Patienten; +• die Anamnese familiär und persönlich. + +Darf pro Patient innerhalb von 12 Monaten in der gleichen Praxis nur 1 mal verrechnet werden. + Comprend: +• l'examen des dents pour le dépistage des caries, des défauts des tissus durs, des changements de teinte interne, des hypoplasies (défauts suite à des influences chimico-mécaniques); +• l'inspection de la cavité buccale, des muqueuses buccales et de la région apicale; +• les requêtes du patient; +• l'anamnèse familiale et personnelle. + +Ne peut être facturée qu'une seule fois par patient dans un délai de douze mois et dans le même cabinet. + Comprende: +• l'esame della dentatura riguardo a carie, lesioni dell'integrità fisica, colorazioni endogene, ipoplasie (danni di origine chimico-meccanica) +• l'ispezione del cavo orale, della mucosa e della regione apicale +• le aspettativa del paziente +• l'anamnesi familiare e personale. + +Nello stesso studio medico-dentistico questa cifra può essere conteggiata una sola volta per paziente nell'arco di 12 mesi. + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Lei + 3 + 01.01 + 4.0010 + Befundaufnahme beim Recallpatienten + Examen périodique (recall) + Consultazione periodica (recall) + Befundaufnahme innerhalb von 12 Monaten nach Abschluss der letzten Behandlung in der gleichen Praxis. + +Beinhaltet: +• die zahnärztliche Untersuchung der Zähne auf Karies, Substanzdefekte, innere Verfärbungen, Hypoplasien (mechanisch-chemisch bedingte Defekte); +• die Inspektion der Mundhöhle, der Mundschleimhaut und der apikalen Region; +• das Anliegen des Patienten; +• die Anamnese familiär und persönlich. + • Examen dans les douze mois qui suivent la dernière consultation dans le même cabinet + +Comprend: +• l'examen des dents pour le dépistage des caries, des défauts des tissus durs, des changements de teinte interne, des hypoplasies (défauts suite à des influences chimico-mécaniques); +• l'inspection de la cavité buccale, des muqueuses buccales et de la région apicale; +• les requêtes du patient; +• l'anamnèse familiale et personnelle. + Consultazione durante i 12 mesi dopo l'ultima cura nello stesso studio medico-dentistico. + +Comprende: +• l'esame della dentatura riguardo a carie, lesioni dell'integrità fisica, colorazioni endogene, ipoplasie (danni di origine chimico-meccanica) +• l'ispezione del cavo orale, della mucosa e della regione apicale +• le aspettative del paziente +• l'anamnesi familiare e personale. + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 01.01 + 4.0020 + Kurzbefundaufnahme beim Notfallpatienten + Examen restreint d'un patient en urgence + Consultazione d'urgenza + • Kann nicht in der gleichen Sitzung mit der Tarifziffer 4.0000, 4.0010 kumuliert werden. +• Die Untersuchung beschränkt sich auf die Schmerzregionen, sonst Tarifziffer 4.0000, 4.0010. + • N'est pas cumulable avec les positions 4.0000 ou 4.0010 durant la même séance. +• L'examen est limité aux régions douloureuses, sinon les positions 4.0000 ou 4.0010 sont applicables. + • Non è cumulabile nella stessa seduta con le cifre 4.0000, 4.0010. +• L'esame si limita alla regione dolorante, altrimenti si applicano le cifre 4.0000, 4.0010. + TP + 33.1 + 28.1 + 33.1 + 38.1 + + + Lei + 3 + 01.01 + 4.0030 + Kurzbefundaufnahme durch Zahnarzt anlässlich der Dentalhygienebehandlung + Examen restreint par le médecin-dentiste durant une séance d'hygiène dentaire + Esame breve del medico dentista in occasione di una seduta dell'igienista + • Inklusive Sauberkeitskontrolle durch den Zahnarzt +• Darf nur vom Zahnarzt verrechnet werden + • Le contrôle de l'hygiène bucco-dentaire par le médecin-dentiste est inclus. +• Ne peut être facturée que par le médecin-dentiste. + • Controllo dell'igiene da parte del medico dentista incluso. +• Può essere conteggiato unicamente dal medico dentista. + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Lei + 3 + 01.01 + 4.0040 + Befundaufnahme beim Notfallpatienten zwischen 20.00 Uhr und 07.00 Uhr + Examen du patient en urgence de 20 à 7 heures + Consultazione d'urgenza tra le 20.00 e le 07.00 + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 01.01 + 4.0050 + Befundaufnahme beim Notfallpatienten an Sonn- und Feiertagen + Examen du patient en urgence le dimanche ou un jour férié + Consultazione d'urgenza di domenica o in altro giorno festivo + Feiertage sind die am Praxisort üblichen Feiertage. Sonn- und Feiertagsarbeit gilt ab 17.00 Uhr des Vortages. + Sont considérés comme jours fériés ceux en vigueur au domicile du cabinet. Cette position s'applique le dimanche et les jours fériés y compris la veille à partir de 17 heures. + Sono giorni festivi quelli considerati tali al domicilio dello studio medico-dentistico. La domenica e il giorno festivo iniziano alle 17.00 della vigilia. + TP + 122 + 103.7 + 122 + 140.3 + + + Kap + 2 + 01.02 + Befundaufnahme im Rahmen der Schulzahnpflege + Examen effectué dans le cadre des soins dentaires scolaires + Esame nell'ambito del servizio dentario scolastico + Die Leistungen gemäss Tarifziffern 4.0060, 4.0070, 4.0090, 4.0100 werden von den Versicherern nach UV/MV/IV nicht vergütet. + Les prestations définies par les positions 4.0060, 4.0070, 4.0090 et 4.0100 ne sont pas remboursées par les assureurs AA/AM/AI. + Le prestazioni conformemente alle cifre 4.0060, 4.0070, 4.0090, 4.0100 non sono onorate dagli assicuratori AInf/AM/AI. + + + Lei + 3 + 01.02 + 4.0060 + Triage in der Schule, inkl. Dentalassistentin, pro 15 Min. + Triage/dépistage à l'école, participation de l'assistante dentaire comprise, par tranche de 15 min. + Vaglio di scolaresche a scuola, comprese le prestazioni dell'assistente dentale, ogni 15 minuti + • Wird von den Versicherern nach UV/MV/IV nicht vergütet + +• Wegentschädigung gemäss Tarifziffer 4.0350 + • N'est pas remboursée par les assureurs AA/AM/AI + +• L'indemnité de déplacement est calculée au moyen de la position 4.0350 + • Non viene onorata dagli assicuratori AInf/AM/AI. + +• Indennità di trasferta vedi cifra 4.0350 + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Kap + 2 + 01.03 + Patienteninformation + Information du patient + Informazione ai pazienti + + + Kap + 2 + 01.05 + Auswärtige Behandlung + Soins hors du cabinet + Cure esterne + + + Lei + 3 + 01.05 + 4.0190 + Wartezeit im Spital/Heim, pro 15 Min. + Temps d'attente à l'hôpital/au home, par tranche de 15 min. + Tempo di attesa in ospedale/istituto, ogni 15 minuti + Pro Operationstag maximal 2 mal verrechenbar. + Peut être facturée au maximum deux fois par jour d'intervention. + Fatturabile al massimo due volte al giorno. + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 01.02 + 4.0070 + Triage in der Praxis, inkl. Dentalassistentin, pro 15 Min. + Triage/dépistage au cabinet, participation de l'assistante dentaire comprise, par tranche de 15 min. + Vaglio di scolaresche in ambulatorio, comprese le prestazioni dell'assistente dentale, ogni 15 minuti + Wird von den Versicherern nach UV/MV/IV nicht vergütet + N'est pas remboursée par les assureurs AA/AM/AI + Non viene onorata dagli assicuratori AInf/AM/AI. + TP + 90.6 + 77 + 90.6 + 104.2 + + + Lei + 3 + 01.02 + 4.0090 + Befundaufnahme beim Schüler + Examen de l'écolier + Esame di uno scolaro + • Wird von den Versicherern nach UV/MV/IV nicht vergütet + +Klinische Karieskontrolle, Gebissstatus, Mundhygienestatus, kieferorthopädischer Grobbefund. + • N'est pas remboursée par les assureurs AA/AM/AI + +Contrôle clinique de la carie, état de la denture, appréciation de l'hygiène bucco-dentaire, bilan orthodontique sommaire. + • Non viene onorata dagli assicuratori AInf/AM/AI. + +Controllo clinico della carie, stato della dentatura, stato dell'igiene, valutazione ortodontica. + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 01.02 + 4.0100 + Kurzbefundaufnahme beim Schüler (Recall) + Examen périodique de l'écolier + Esame periodico breve di uno scolaro (recall) + • Wird von den Versicherern nach UV/MV/IV nicht vergütet + +Letzte Untersuchung vor weniger als 6 Monaten. Gilt auch für Reihen-Untersuchungen. + + + • N'est pas remboursée par les assureurs AA/AM/AI + +Lorsque le dernier examen remonte à moins de six mois. Position également applicable à l'examen collectif. + • Non viene onorata dagli assicuratori AInf/AM/AI. + +Ultimo esame meno di 6 mesi fa. Vale anche per esami collettivi. + + + TP + 33.1 + 28.1 + 33.1 + 38.1 + + + Lei + 3 + 01.03 + 4.0110 + Instruktion und Aufklärung des Patienten + Instruction et information du patient + Istruzione e informazione del paziente + • Instruktion und Aufklärung des Patienten über die Risiken und möglichen Auswirkungen von zahnärztlichen Eingriffen. +• Art und Umfang der Aufklärung ist in der Krankengeschichte festzuhalten. + + + • Instruction et information du patient sur les risques et les conséquences possibles d'une intervention dentaire. +• Le genre et l'étendue de l'information doivent être consignés dans le dossier du patient. + • Istruzione e Informazione al paziente su possibili rischi e conseguenze di interventi medico dentistici. +• Il genere e l'ampiezza delle informazioni vanno annotati nella cartella clinica. + + + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 01.03 + 4.0120 + Auskunft, Besprechung oder Telefonat mit Patient/Angehörigen + Information, discussion ou téléphone avec le patient/les parents. + Informazione, discussione o telefonata con paziente/parenti + • Beinhaltet die Orientierung des Patienten/der Angehörigen über Behandlungsart, Behandlungsverlauf, Füllungsmaterialien etc. +• Kann nicht in der gleichen Sitzung mit Tarifziffer 4.0110 kumuliert werden. +• Telefonate nur wenn länger als 5 Min. +• Darf pro 6 Monate maximal 3 mal abgerechnet werden. + • Information du patient/des parents sur le mode et le déroulement du traitement, les matériaux d'obturation utilisés, etc. +• N'est pas cumulable avec la position 4.0110 durant la même séance. +•Téléphone dont la durée excède 5 min. +• Ne peut être facturée que trois fois en 6 mois. + • Comprende l'orientamento del paziente/dei parenti sul trattamento, sul decorso e sul materiale di otturazione ecc +• Non cumulabile nella medesima seduta con cifra 4.0110. +• Telefonate solo se superiori a 5 minuti. +• Può essere conteggiato al massimo 3 volte sull'arco di 6 mesi. + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Kap + 2 + 01.04 + Versäumte Sitzung + Rendez-vous manqué + Consultazione mancata + Die Leistungen gemäss Tarifziffern 4.0130, 4.0140 und 4.0145 werden von den Versicherern nach UV/MV/IV nicht vergütet. + Les assureurs AA/AM/AI ne remboursent pas les rendez-vous manqués (positions 4.0130, 4.0140 et 4.0145). + Le prestazioni conformemente alle cifre 4.0130, 4.0140, 4.0145, non sono onorate dagli assicuratori AInf/AM/AI. + + + Lei + 3 + 01.04 + 4.0130 + Versäumte Sitzung beim Zahnarzt, pro 15 Min. + Rendez-vous manqué chez le médecin-dentiste, par tranche de 15 min. + Consultazione mancata dal medico dentista, ogni 15 minuti + Wird von den Versicherern nach UV/MV/IV nicht vergütet + N'est pas remboursée par les assureurs AA/AM/AI + Non viene onorata dagli assicuratori AInf/AM/AI. + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Lei + 3 + 01.04 + 4.0140 + Versäumte Sitzung bei Dentalhygienikerin, pro 15 Min. + Rendez-vous manqué chez l'hygiéniste dentaire, par tranche de 15 min. + Consultazione mancata dall'igienista dentale, ogni 15 minuti + Wird von den Versicherern nach UV/MV/IV nicht vergütet + N'est pas remboursée par les assureurs AA/AM/AI + Non viene onorata dagli assicuratori AInf/AM/AI. + TP + 31.4 + 26.7 + 31.4 + 36.1 + + + Lei + 3 + 01.04 + 4.0145 + Versäumte Sitzung bei Prophylaxeassistentin, pro 15 Min. + Rendez-vous manqué chez l'assistante en prophylaxie, par tranche de 15 min. + Consultazione mancata dall'assistente di profilassi, ogni 15 minuti + Wird von den Versicherern nach UV/MV/IV nicht vergütet + N'est pas remboursée par les assureurs AA/AM/AI + Non viene onorata dagli assicuratori AInf/AM/AI. + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Lei + 3 + 01.05 + 4.0150 + Zuschlag auswärts zwischen 07.00 und 20.00 Uhr + Supplément pour soins hors du cabinet de 7 à 20 heures + Supplemento per cure non in ambulatorio tra le 07.00 e le 20.00 + Zuschlag für Behandlung im Spital/Heim oder in der Wohnung des Patienten zwischen 07.00 und 20.00 Uhr + Supplément pour soins à l'hôpital/au home ou au domicile du patient de 7 à 20 heures + Supplemento per cure in ospedale/casa di cura o al domicilio del paziente fra le 07.00 e le 20.00 + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Lei + 3 + 01.05 + 4.0160 + Zuschlag auswärts nachts zwischen 20.00 und 07.00 Uhr + Supplément pour soins hors du cabinet la nuit de 20 à 7 heures + Supplemento per cure non in ambulatorio, di notte tra le 20.00 e le 07.00 + Zuschlag für Behandlung im Spital/Heim oder in der Wohnung des Patienten, die zwischen 20.00 und 07.00 Uhr verlangt und ausgeführt wird + Supplément pour soins à l'hôpital/au home ou au domicile du patient commandés et fournis de 20 à 7 heures + Supplemento per cure richieste e eseguite in ospedale/casa di cura o al domicilio del paziente fra le 20.00 e le 07.00 + TP + 33.1 + 28.1 + 33.1 + 38.1 + + + Kap + 2 + 01.06 + Honorierung nach Zeitaufwand + Rémunération en fonction du temps consacré + Remunerazione secondo il tempo impiegato + + + Lei + 3 + 01.06 + 4.0240 + Behandlung ohne Verrechnung + Prestations non facturées + Trattamento senza conteggio delle prestazioni + Kalendariumsmarker + Note pour le dossier du patient. + Calendario delle prestazioni + TP + 0 + 0 + 0 + 0 + + + Kap + 2 + 01.08 + Konsultation + Consultation + Consultazione + + + Lei + 3 + 01.11 + 4.0540 + Handröntgenaufnahme inkl. Auswertung + Radiographie du poignet, interprétation incluse + Radiografia della mano, inclusa l'interpretazione + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 01.11 + 4.0560 + Umtriebe durch Veranlassung von Röntgenkopien + Frais relatifs à la copie de radiographies + Oneri causati dall'allestimento di copie di radiogrammi + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Lei + 3 + 01.05 + 4.0170 + Zuschlag auswärts, dringliche Behandlung + Supplément pour soins en urgence hors du cabinet + Supplemento per cure urgenti non nell'ambulatorio + Zuschlag für dringliche Behandlung im Spital/Heim oder in der Wohnung des Patienten, die unerwartet und unverzüglich ausgeführt werden muss. + +• Zusätzlich zu Tarifziffer 4.0150 Anmeldung und Ausführung innerhalb einer Stunde + Supplément pour soins urgents à l'hôpital/au home ou au domicile du patient, imprévisibles et qui ne peuvent être différés. + +• Cumulable avec la position 4.0150; soins dans l'heure qui suit l'appel + Supplemento per cure urgenti non previste e da eseguire immediatamente in ospedale/casa di cura o al domicilio del paziente. + +• In aggiunta alla cifra 4.0150 quando si deve intervenire entro un'ora. + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 01.05 + 4.0180 + Zuschlag auswärts an Sonn- und Feiertagen + Supplément pour soins hors du cabinet le dimanche ou un jour férié + Supplemento per cure non in ambulatorio di domenica o in altro giorno festivo + Zuschlag für Behandlung im Spital/Heim oder in der Wohnung des Patienten an Sonn- und Feiertagen + Supplément pour soins à l'hôpital/au home ou au domicile du patient le dimanche ou un jour férié + Supplemento per cure in ospedale/casa di cura o al domicilio del paziente, di domenica o altro giorno festivo. + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 01.05 + 4.0200 + Spital-/Heimbesuch bei laufender Behandlung + Visite à l'hôpital/au home durant un traitement en cours + Visita in ospedale/istituto per cura in corso + Nicht kumulierbar mit den Tarifziffern 4.0150, 4.0160, 4.0170, 4.0180, 4.0190 + N'est pas cumulable avec les positions 4.0150, 4.0160, 4.0170, 4.0180, 4.0190 + Non cumulabile con le cifre 4.0150, 4.0160, 4.0170, 4.0180, 4.0190 + TP + 29.6 + 25.2 + 29.6 + 34 + + + Lei + 3 + 01.06 + 4.0250 + Zusätzlicher Zeitaufwand, pro 5 Min. + Temps supplémentaire consacré, par tranche de 5 min. + Maggior impiego di tempo, ogni 5 minuti + Für die Versicherer nach UV/MV/IV immer mit der Rechnung beigelegter Begründung + Justification indispensable pour les assureurs AA/AM/AI + Per gli assicuratori AInf/AM/AI sempre con motivazione aggiunta alla fattura + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 01.06 + 4.0252 + Fallbezogene Behandlungs-/Kostenplanung nur bei komplexen Fällen + Planification du traitement et des coûts, uniquement pour les cas complexes + Pianificazione della cura e dei costi nel caso specifico, solo in casi complessi + • pro 5 Min. +• maximal 60 Minuten verrechenbar +• Darf pro Fall 1 mal verrechnet werden + • Par tranche de 5 min. +• Temps max. facturable plafonné à 60 min +• Ne peut être facturée qu'une seule fois par cas + • Ogni 5 minuti +• Conteggiabili al massimo 60 minuti +• Conteggiabile una volta per caso. + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 2 + 01.07 + Konsilium und konsiliarische Beratung + Concertation entre confrères et expertise + Consulti e consulenze + Konsilium: Untersuchung des Patienten durch einen zweiten Arzt in Anwesenheit des behandelnden Zahnarztes; Beurteilung und Besprechung des Falles hinsichtlich Diagnose, Therapie und Prognose. +Konsiliarische Beratung: Untersuchung des Patienten und Beurteilung des Falles in Abwesenheit des behandelnden Zahnarztes ohne Besprechung mit dem behandelnden Zahnarzt. +Nicht als Konsilium oder konsiliarische Beratung gelten, auch bei Anwesenheit des behandelnden Zahnarztes: die erste Untersuchung eines zugewiesenen Patienten zwecks Übernahme der Behandlung oder Vornahme einer Operation; röntgenologische Untersuchungen; zusätzliche Untersuchungen zu ergänzender Abklärung durch einen Spezialarzt ohne Beurteilung des Gesamtbildes; allfällige Nachkontrollen durch den Konsiliarius. + Concertation entre confrères : +Examen du patient par un deuxième médecin en présence du médecin-dentiste traitant; évaluation et discussion du cas sous les angles du diagnostic, des soins et du pronostic. +Expertise : +Examen du patient et évaluation du cas en l'absence du médecin-dentiste traitant et sans discussion avec ce dernier. +Ne sont pas considérés comme concertation entre confrères ou comme expertise, même en présence du médecin-dentiste traitant: +• le premier examen d'un patient référé pour reprise du traitement ou réalisation d'une intervention chirurgicale +• les examens radiologiques +• les examens complémentaires effectués par un médecin spécialiste sans procéder à une évaluation d'ensemble +• les éventuels contrôles ultérieurs effectués par l'expert consulté + Consulto: esame del paziente da parte di un secondo medico in presenza del medico dentista curante; +valutazione e discussione del caso sulla diagnosi, la terapia e la prognosi. +Consulenza: esame del paziente e valutazione del caso in assenza del medico dentista curante, senza discussione col medico dentista curante. +Non sono considerati consulti o consulenze, anche in presenza del medico dentista curante: il primo esame di un paziente inviato per essere preso in cura o per essere sottoposto a operazione; esami radiologici; altri esami per accertamenti complementari da parte di un medico specialista, senza valutazione complessiva del caso;eventuali controlli successivi da parte del consulente. + + + Lei + 3 + 01.07 + 4.0260 + Honorar für den Konsiliarius + Honoraires de l'expert consulté + Onorario per il consulente + Zusätzliche Leistungen können gemäss Tarif abgerechnet werden. Dieses Honorar schliesst einen Bericht an den behandelnden Zahnarzt mit Kopie an die Versicherung ein. + Les prestations supplémentaires peuvent être facturées selon le tarif. Cette position comprend un rapport à l'attention du médecin-dentiste traitant avec copie à l'assurance. + Prestazioni supplementari possono essere conteggiate secondo tariffa. Questa cifra comprende un rapporto al medico dentista curante con copia all'assicurazione. + TP + 188.3 + 160.1 + 188.3 + 216.5 + + + Lei + 3 + 01.07 + 4.0270 + Honorar für den behandelnden Zahnarzt + Honoraires du médecin-dentiste traitant + Onorario per il medico dentista curante + • Nur bei Konsilium verrechenbar; +• Allfällige Wegentschädigung gemäss Tarifziffern 4.0350, 4.0360 + • Ne peut être facturée que lors de concertations entre confrères. +• Indemnité de déplacement éventuelle facturée au moyen des positions 4.0350 et 4.0360 + • Solo in caso di consulenza; +• Eventuale trasferta secondo le cifre 4.0350, 4.0360 + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Kap + 2 + 01.12 + Laseranwendung + Laser + Applicazione laser + + + Lei + 3 + 06.01 + 4.3020 + Sekundäre Korrektur der Weichteile bei Gaumenspalte + Correction secondaire des tissus mous en cas de fente palatine + Correzione secondaria delle parti molli in palatoschisi + TP + 944.9 + 803.2 + 944.9 + 1086.6 + + + Lei + 3 + 06.01 + 4.3030 + Restlochverschluss oder Rückverschiebungsplastik + Fermeture d'une fente résiduelle ou lambeau de recul + Chiusura di una gnato-palatoschisi residua o plastica di arretramento + TP + 550.9 + 468.3 + 550.9 + 633.5 + + + Lei + 3 + 06.01 + 4.3040 + Sekundäre Korrektur von weichem Gaumen + Correction secondaire du palais mou + Correzione secondaria del palato molle + Z.B. Widmaier-Perko + P. ex. Widmaier-Perko + P. es. secondo Widmaier-Perko + TP + 1670.1 + 1419.6 + 1670.1 + 1920.6 + + + Lei + 3 + 06.01 + 4.3050 + Pharynxplastik + Pharyngoplastie + Faringoplastica + TP + 1391.1 + 1182.4 + 1391.1 + 1599.8 + + + Lei + 3 + 01.08 + 4.0300 + Grundtaxe für Arbeitsplatzdesinfektion + Taxe de base pour la désinfection de la place de travail + Tassa di base per la disinfezione della postazione di lavoro + • 1 mal pro Sitzung als Abgeltung für den vermehrten Hygieneaufwand +• gilt nicht für Tarifziffern 4.0060 und 4.0070 + • Peut être facturée une fois par séance pour compenser les charges accrues liées à l'hygiène. +• N'est pas applicable aux positions 4.0060 et 4.0070. + • 1 volta per seduta come indennizzo per il maggiore lavoro d'igiene +• Non si applica alle cifre 4.0060 e 4.0070 + TP + 13.9 + 11.8 + 13.9 + 16 + + + Kap + 2 + 01.09 + Wegentschädigung + Indemnité de déplacement + Indennità di trasferta + + + Lei + 3 + 01.09 + 4.0350 + Wegentschädigung von 07.00 bis 20.00 Uhr pro km (ab 2. km) + Indemnité de déplacement de 7 à 20 heures, par kilomètre (à partir du 2e kilomètre) + Indennità di trasferta dalle 07.00 alle 20.00 (a partire dal secondo chilometro) + TP + 3.5 + 3 + 3.5 + 4 + + + Lei + 3 + 01.09 + 4.0360 + Wegentschädigung von 20.00 bis 07.00 Uhr pro km (ab 2. km) + Indemnité de déplacement de 20 à 7 heures, par kilomètre (à partir du 2e kilomètre) + Indennità di trasferta dalle 20.00 alle 07.00 (a partire dal secondo chilometro) + TP + 7 + 6 + 7.05 + 8.1 + + + Kap + 2 + 01.10 + Zeugnis, Bericht + Certificat, rapport + Certificato, rapporto + + + Lei + 3 + 01.10 + 4.0400 + UVG-, MVG- oder KVG-Formular + Formulaire LAA, LAM ou LAMal + Modulo LAINF, LAM o LAMal + • Gilt nur für den Sozialversicherungsbereich; +• inkl. Kostenvoranschlag; +• Umfasst die schriftliche Fixierung des Behandlungsplanes, nicht aber die eigentliche Erarbeitung desselben. Diese ist in den zuständigen Ziffern der einzelnen Leistungen integriert, mit Ausnahme der Ziffern 4.8060, 4.8070, 4.8080, 4.8090, 4.8100. + • Ne s'applique qu'aux assurances sociales. +• L'estimation d'honoraires est incluse. +• Comprend la consignation par écrit du plan de traitement, mais pas son élaboration qui fait partie intégrante des positions tarifaires appliquées, toutefois à l'exception des positions 4.8060, 4.8070, 4.8080, 4.8090, 4.8100. + • Si applica unicamente alle assicurazioni sociali; +• Include il preventivo; +• Comprende la definizione scritta del piano di cura, non però l'elaborazione dettagliata dello stesso. Essa è invece integrata nelle cifre corrispondenti alle singole prestazioni, ad eccezione delle cifre 4.8060, 4.8070, 4.8080, 4.8090, 4.8100. + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 01.10 + 4.0410 + IV-Formular 'Zahnärztliche Beurteilung' + Formulaire AI « Examen médico-dentaire » + Modulo AI 'Apprezzamento medico-dentistico' + TP + 66.2 + 56.3 + 66.199999999999989 + 76.1 + + + Lei + 3 + 01.10 + 4.0420 + IV-Formular 'Kieferorthopädische Abklärung' + Formulaire AI « Examen d'orthopédie dento-faciale » + Modulo AI 'Accertamento ortodontico' + TP + 94.1 + 80 + 94.1 + 108.2 + + + Lei + 3 + 01.10 + 4.0430 + Verlangter ausführlicher Bericht über Befund und Therapie + Rapport circonstancié demandé sur le diagnostic et le traitement + Rapporto particolareggiato sul reperto e la terapia steso su richiesta + Diese Tarifziffer kommt nur zur Anwendung wenn der Bericht ausdrücklich verlangt wird, sonst Tarifziffer 4.0440 + Cette position n'est applicable que si un tel rapport est explicitement demandé; position 4.0440 dans le cas contraire. + La cifra entra in considerazione solo se la relazione è espressamente richiesta, altrimenti cifra 4.0440. + TP + 111.6 + 94.9 + 111.60000000000001 + 128.3 + + + Lei + 3 + 01.10 + 4.0440 + Zwischenbericht, Ergänzungsbericht, Schlusszeugnis + Rapport intermédiaire, rapport complémentaire ou certificat final + Rapporto intermedio o complementare o certificato finale + Gilt nicht für Rezepte und routinemässige Überweisungsformulare. + N'est pas applicable aux ordonnances et aux formulaires de transfert + Non vale per le ricette e le lettere di accompagnamento per i pazienti inviati ad un altro medico. + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 01.10 + 4.0442 + Telefon mit Behörden, Versicherer, Labor, wenn länger als 5 Min. + Téléphone avec des autorités, assureurs, laboratoires dont la durée excède 5 min + Telefonata con autorità, assicuratori, laboratorio, se supera i 5 minuti + • pro 5 Min. +• Für die Versicherer UV/MV/IV maximal 30 Minuten verrechenbar; bei Mehraufwand immer mit einer der Rechnung beigelegten Begründung +• Darf pro 6 Monate maximal 3 mal abgerechnet werden. + • par tranche de 5 min. +• Pour les assureurs, le temps max. facturable est plafonné à 30 min; en cas de dépassement, il faut toujours en indiquer les raisons lors de la facturation. +• Ne peut être facturée que trois fois en 6 mois. + • Ogni 5 minuti +• Per gli assicuratori AInf/AM/AI sono conteggiabili al massimo 30 minuti; se il tempo è superiore, la fattura deve sempre riportare la motivazione +• Può essere conteggiata al massimo 3 volte ogni 6 mesi. + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 01.10 + 4.0450 + Rezept, Überweisungsschreiben. Kurzattest für die freiwillige Zahnpflegekostenversicherung + Ordonnance, Rapport médical. +Brève attestation à l'attention de l'assurance dentaire complémentaire + Ricetta, lettera di trasferimento. +Certificato breve per l'assicurazione di cure dentarie facoltativa + • Darf pro 6 Monate maximal 3 mal abgerechnet werden. +• Für die Versicherer UV/MV/IV gilt nur Rezept/Überweisungsschreiben + • Ne peut être facturée que 3 fois en 6 mois. +• Sont remboursés par les assureurs AA/AM/AI: Ordonnance, lettre d'accompagnement. + + • Può essere conteggiata al massimo 3 volte ogni 6 mesi. +• Per gli assicuratori AInf/AM/AI ha validità solo la prescrizione/lettera di trasferimento + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 01.10 + 4.0460 + Ausführliches Attest für die freiwillige Zahnpflegekostenversicherung + Attestation détaillée à l'attention de l'assurance dentaire complémentaire + Certificato particolareggiato per l'assicurazione di cure dentarie facoltativa + • Wird von den Versicherern nach UV/MV/IV nicht vergütet + +Ausfüllen des ausführlichen Attests für die freiwillige Zahnpflegekostenversicherung. + • N'est pas remboursée par les assureurs AA/AM/AI + +Établissement d'une attestation détaillée à l'attention de l'assurance dentaire complémentaire. + • Non è pagato dagli assicuratori AInf/AM/AI + +Compilazione del certificato particolareggiato per l'assicurazione facoltativa di cure dentarie. + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 01.10 + 4.0490 + Vertrauenszahnärztliche Tätigkeit, pro 15 Min. + Activités en qualité de médecin-dentiste-conseil, par tranche de 15 min. + Mansioni di medico di fiducia, ogni 15 minuti + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 01.11 + 4.0510 + Fernröntgenbild oder Schädelübersichtsaufnahme + Téléradiographie ou radiographie crânienne + Teleradiografia o radiografia d'insieme del cranio + Durchzeichnung siehe Tarifziffern 4.8080 und 4.8090 + Relevé et analyse: voir positions 4.8080 et 4.8090 + Tracciato vedi cifre 4.8080 e 4.8090 + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 01.11 + 4.0520 + Schädelteilaufnahme + Radiographie crânienne partielle + Radiografia parziale del cranio + Z.B. Kiefergelenk oder UK seitlich getrennt + P. ex. articulation temporo-mandibulaire, ou maxillaire inférieur latéral séparé + Ad. es. articolazione temporo-mandibolare o proiezione laterale dell'emimandibola + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 01.10 + 4.0470 + Gutachten, pro 15 Min. + Rapport d'expertise, par tranche de 15 min. + Perizia, ogni 15 minuti + • Die geistige Arbeit und das Abfassen des Gutachtens sind damit abgegolten. +• Arbeitsaufwand von 30 Minuten bis maximal 3 Stunden. +• In ausserordentlich schwierigen Fällen bleiben Spezialabmachungen mit den Versicherern vorbehalten. +• Die Befunderhebung, Röntgendiagnostik, etc. wird separat berechnet. + • Inclut le travail intellectuel et la rédaction du rapport. +• Correspond à un travail d'une durée de 30 minutes au minimum à 3 heures au maximum +• Des arrangements spéciaux avec les assureurs sont réservés pour des cas extrêmement complexes. +• L'examen, le diagnostic radiologique, etc. sont facturés à part. + • Vengono onorati il lavoro intellettuale e la stesura della perizia. +• Durata del lavoro da 30 minuti a 3 ore. +• In casi particolarmente difficili sono riservati accordi speciali con gli assicuratori. +• Reperti, radiografie ecc. vengono calcolati separatamente. + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Kap + 2 + 01.11 + Röntgen, inkl. Beurteilung + Radiographies, interprétation incluse + Radiografie, compresa la valutazione + Die UVG-Versicherer archivieren die Zahnröntgenbilder während 30 Jahren. Die Bilder sind daher in UVG-Fällen nach Abschluss der Behandlung dem Versicherer zu übergeben + Les assureurs AA archivent les radiographies dentaires durant 30 ans. Lorsque les soins sont pris en charge par la LAA, les radiographies doivent donc être transmises à l'assureur concerné à la fin du traitement. + Gli assicuratori LAINF archiviano i radiogrammi per 30 anni. In casi LAINF essi vanno perciò consegnati all'assicurazione alla fine della cura. + + + Lei + 3 + 01.11 + 4.0500 + Intraorales Röntgenbild + Radiographie intra-orale + Radiografia intra-orale + Im Verkehr mit den Versicherern ist 1 Bild in fotografischer Qualität in gedruckter Form inbegriffen. + Lorsqu'elle est destinée à un assureur, chaque radiographie inclut une copie imprimée en qualité photo. + Nella comunicazione con gli assicuratori è compresa 1 immagine stampata in qualità fotografica. + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 01.11 + 4.0530 + Orthopantomographie (Panoramaschichtaufnahme) + Orthopantomographie (radiographie panoramique) + Ortopantomografia + Im Verkehr mit den Versicherern ist 1 Bild in fotografischer Qualität in gedruckter Form inbegriffen. + Lorsqu'elle est destinée à un assureur, chaque radiographie inclut une copie imprimée en qualité photo. + Nella comunicazione con gli assicuratori è compresa 1 immagine stampata in qualità fotografica. + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 01.11 + 4.0570 + DVT Digitale Volumentomografie + Tomographie volumique numérisée à faisceau conique + CBTC Tomografia computerizzata Cone Beam + Beinhaltet die Anfertigung des Digitalen Volumentomogramms, basierend auf einer schriftlichen Fragestellung auf Grund eines 2-dimensionalen Bildes (OPT oder Zahnfilm), die schriftliche Befundung und Ausgabe auf einem lesbaren Datenträger. + +Wird von den Versicherern nach UV/MV/IV nur mit schriftlicher Begründung vergütet. + Comprend l'exécution d'une tomographie volumique numérisée à partir d'une demande écrite formulée sur la base d'une image en deux dimensions (OPT ou radiographie dentaire), un rapport radiologique écrit et la remise de la tomographie sur un support de données lisible. + +N'est remboursée qu'avec l'accord préalable des assureurs AA/AM/AI sur la base d'un rapport écrit fondé. + Comprende l'allestimento del tomogramma volumetrico in seguito a domande scritte sulla base di un'immagine bidimensionale (OTP o radiografia dentale), il referto scritto e la messa a disposizione su un supporto dati leggibile. + +Viene onorato dagli assicuratori AInf/AM/AI solo alla presenza di una motivazione scritta. + TP + 394 + 334.9 + 394 + 453.1 + + + Lei + 3 + 01.12 + 4.0600 + Lasereinsatz, pro 5 Min. + Utilisation du laser, par tranche de 5 min. + Uso del laser, ogni 5 minuti + • Wird von den Versicherern nach UV/MV/IV nicht vergütet + +• Bei zusätzlicher Behandlung in der Parodontologie Kapitel 03, Chirurgie Kapitel 05 und Endodontologie Kapitel 07. +• Maximal 20 Minuten + + • N'est pas remboursée par les assureurs AA/AM/AI + +• Supplément pour utilisation d'un laser en parodontologie (chapitre 03), en chirurgie (chapitre 05) ou en endodontie (chapitre 07). +• 20 minutes au maximum + • Non viene onorato dagli assicuratori AInf/AM/AI + +• Supplemento in caso di utilizzo durante una cura paradontologica (capitolo 03), in chirurgia (capitolo 05) e in endodonzia (capitolo 07). +• Al massimo 20 minuti + + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 2 + 01.13 + Anästhesie + Anesthésies + Anestesia + Die Honorierung der Allgemeinnarkose durch einen beigezogenen Anästhesisten in der Privatpraxis oder Klinik (siehe Tarifziffer 4.0680) erfolgt nach Rücksprache mit den Versicherern. + Les honoraires pour une anesthésie générale effectuée par un anesthésiste au cabinet dentaire ou en clinique (voir position 4.0680) sont facturés après concertation avec l'assureur. + La narcosi da parte di un anestesista esterno nell'ambulatorio dentistico o nella clinica (vedi cifra 4.0680) avviene previa autorizzazione degli assicuratori. + + + Lei + 3 + 01.14 + 4.0800 + Gesichtsbogenübertragung mit Mittelwerteinstellung + Transfert par arc facial avec valeurs moyennes + Trasferimento semplice con arco facciale con valori medi + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 59.3 + 50.4 + 59.3 + 68.2 + + + Lei + 3 + 01.14 + 4.0810 + Aufzeichnen der sagittalen Kondylenbahn + Enregistrement du trajet condylien sagittal + Registrazione del tragitto sagittale del condilo + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 01.14 + 4.0820 + Scharnierachsenlokalisation, pro 15 Min. + Localisation de l'axe charnière, par tranche de 15 min. + Localizzazione dell'asse di rotazione condilare, ogni 15 minuti + Exakte Scharnierachsenlokalisation mit Übertragung nach Zeitaufwand, 30 bis maximal 60 Minuten + +• Nur nach Rücksprache mit den Versicherern verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + Localisation exacte de l'axe charnière avec transfert, facturation de 30 minutes au minimum à 60 minutes au maximum + +• Ne peut être facturée qu'après concertation avec l'assureur +• Prestations du laboratoire de technique dentaire facturées à part + Localizzazione esatta dell'asse di rotazione condilare e trasferimento secondo impiego di tempo, 30 fino al massimo 60 minuti + +• Conteggiabile solo previa consultazione degli assicuratori +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 92.4 + 78.5 + 92.4 + 106.3 + + + Lei + 3 + 06.01 + 4.3060 + Pharynximplantat + Implant dans la paroi postérieure du pharynx + Faringoplstica con impianto + Knochen- oder Knorpelentnahme siehe Tarifziffer 4.3600 + Prélèvement osseux ou cartilagineux facturé au moyen de la position 4.3600 + Prelievo di osso o di cartilagine vedi cifra 4.3600 + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 06.01 + 4.3070 + Sekundäre Korrektur einer Lippenspalte mit Kieferspalte, einseitig + Correction secondaire d'une fente labio-maxillaire unilatérale + Correzione secondaria di una cheilo-gnatoschisi unilaterale + TP + 1502.7 + 1277.3 + 1502.6999999999998 + 1728.1 + + + Lei + 3 + 01.13 + 4.0650 + Infiltrationsanästhesie + Anesthésie par infiltration + Anestesia per infiltrazione + • Im Maximum sind 6 Anästhesien pro Sitzung verrechenbar; +• Kältespray oder Oberflächenanästhesien sind in der Injektions- bzw. Extraktions- bzw. Inzisionstaxe inbegriffen; +• allfälliges Vorspritzmittel ist inbegriffen; +• Als Leitungsanästhesie sind verrechenbar: Tuber, inkl. Foramen palatinum; Foramen infraorbitale, inkl. Foramen incisivum; Foramen mandibulare oder mentale, je beidseits; +• zusätzlich zur Leitungsanästhesie notwendige Terminalanästhesien sind inbegriffen; +• verschiedene Terminalanästhesien im gleichen Quadranten gelten als eine Anästhesie + • Facturation d'au maximum six anesthésies par séance; +• L'application d'un spray au chlorure d'éthyle ou l'anesthésie de surface sont comprises dans les prestations pour les injections, les extractions ou les incisions. +• Un éventuel préanesthésique est inclus; +• Les anesthésies tronculaires comprennent: tuber, foramen palatinum incl.; foramen infraorbitale, foramen incisivum incl.; foramen mandibulare ou mentale, des deux côtés chacun. +• Les anesthésies terminales nécessaires en complément aux anesthésies tronculaires sont incluses. +• Plusieurs anesthésies terminales dans le même quadrant sont considérées comme une seule anesthésie. + • Sono ammesse al massimo 6 anestesie per ogni seduta +• Anestesia di superficie o per frigorazione (criospray) sono compresi nell'onorario dell'iniezione risp. estrazione o incisione +• Sono comprese eventuali pre-anestesie +• Vengono onorate come anestesia tronculare: tuberosità, incluso forame palatino; forame infraorbitale incluso forame incisivo; forame mandibolare o mentale, d'ambo i lati; +• Sono comprese ulteriori anestesie terminali in addizione all'anestesia tronculare; +• Diverse anestesie terminali nello stesso quadrante valgono come un'anestesia + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 01.13 + 4.0660 + Lachgasanalgesie, pro Sitzung + Anesthésie au protoxyde d'azote, par séance + Analgesia con protossido d'azoto, per seduta + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 01.13 + 4.0680 + Zusätzlicher Zeitaufwand bei Allgemeinnarkose, pro 15 Min. + Temps supplémentaire en cas d'anesthésie générale, par tranche de 15 min. + Maggiore impiego di tempo per narcosi generale, ogni 15 minuti + Vermehrter Zeitaufwand des behandelnden Zahnarztes für administrative Umtriebe und Wartezeiten bei Allgemeinnarkose durch einen beigezogenen Anästhesisten in der Privatpraxis oder Klinik, pro 15 Minuten. +Die Honorierung der Narkose durch einen beigezogenen Anästhesisten in der Privatpraxis oder Klinik: siehe Kapitel 12.02. + + Supplément pour travaux administratifs et temps d'attente du médecin-dentiste traitant lors d'une anesthésie générale effectuée par un anesthésiste au cabinet dentaire ou en clinique, par tranche de 15 minutes. +Pour la facturation de la narcose par l'anesthésiste en cabinet ou clinique: voir chapitre 12.02 + Maggior impiego di tempo del medico dentista curante per disbrighi amministrativi e tempi di attesa in caso di narcosi da parte di un anestesista convocato in ambulatorio privato o clinica, ogni 15 minuti. +Il conteggio della narcosi da parte di un anestesista convocato nell'ambulatorio privato o in una clinica: vedi capitolo 12.02. + + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Kap + 2 + 01.14 + Bissnahme, Übertragung + Enregistrement de l'occlusion, transfert + Registrazione del morso, trasferimento + + + Lei + 3 + 01.14 + 4.0750 + Zentrikregistrat mit Wachsplatte oder Paste, pro Registrat + Enregistrement de la relation centrée avec plaque de cire ou pâte, par cas + Registrazione in occlusione centrica con morso in cera o pasta, per presa del morso + • Pro Fall können maximal 3 Registrate verrechnet werden +• Zahntechnische Laborleistung separat verrechenbar + • Facturation d'un maximum de trois enregistrements par cas +• Prestations du laboratoire de technique dentaire facturées à part + • Per ogni caso possono essere conteggiati al massimo 3 morsi +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 01.14 + 4.0760 + Registrat mit Schablone, pro Registrat + Enregistrement avec maquette d'occlusion, par enregistrement + Registrazione con placca, per ogni morso + • Entspricht der Handbissnahme +• Zahntechnische Laborleistung separat verrechenbar + • Correspond à l'enregistrement manuel de l'occlusion +• Prestations du laboratoire de technique dentaire facturées à part + • Corrisponde alla presa manuale del morso +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 101.1 + 85.9 + 101.1 + 116.3 + + + Lei + 3 + 01.14 + 4.0770 + Registrat mit Schablone, inkl. Pfeilwinkelaufzeichnung, pro Registrat + Enregistrement avec maquette d'occlusion, enregistrement de l'arc gothique par stylet scripteur inclus, par enregistrement + Registrazione con placca, dell'arco gotico, per ogni registrazione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 216.2 + 183.8 + 216.2 + 248.6 + + + Lei + 3 + 01.14 + 4.0780 + Laterotrusionsregistrat oder Protrusionsregistrat + Enregistrement de latérotrusion ou enregistrement de protrusion + Registrazione in laterotrusione o protrusione + • Pro Fall gibt es maximal 2 Latero- und 1 Protrusionsregistrat +• Zahntechnische Laborleistung separat verrechenbar + • Facturation d'un maximum de deux enregistrements de latérotrusion et d'un enregistrement de protrusion par cas +• Prestations du laboratoire de technique dentaire facturées à part + • Per ogni caso al massimo 2 morsi in laterotrusione e 1 morso in protrusione +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 15.7 + 13.3 + 15.700000000000001 + 18.1 + + + Lei + 3 + 01.14 + 4.0790 + Functionally generated path (FGP) + Functionally generated path (FGP) + Functionally generated path (FGP) + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 59.3 + 50.4 + 59.3 + 68.2 + + + Kap + 2 + 01.15 + Diverse allgemeine Leistungen + Prestations générales diverses + Prestazioni generali diverse + + + Lei + 3 + 01.15 + 4.0910 + Vitalitätsprobe 1 bis 6 Zähne + Test de vitalité, d'une à six dents + Test di vitalità da 1 a 6 denti + TP + 8.7 + 7.4 + 8.7 + 10 + + + Lei + 3 + 01.15 + 4.0920 + Vitalitätsprobe pro Kiefer, 7 und mehr Zähne + Test de vitalité par arcade, sept dents et plus + Test di vitalità per mascellare, 7 o più denti + TP + 26.1 + 22.2 + 26.1 + 30 + + + Lei + 3 + 01.15 + 4.0930 + Desensibilisierung empfindlicher Zahnhälse, pro Zahn + Désensibilisation de collets hypersensibles, par dent + Desensibilizzazione di colletti ipersensibili, per dente + TP + 12.2 + 10.4 + 12.2 + 14 + + + Lei + 3 + 01.15 + 4.0940 + Anlegen von Kofferdam, bis 3 Zähne + Pose d'une digue en caoutchouc, jusqu'à trois dents + Applicazione della diga, fino a 3 denti + TP + 22.7 + 19.3 + 22.700000000000003 + 26.1 + + + Lei + 3 + 01.15 + 4.0960 + Kleine Schliffkorrektur, inkl. allfällige Imprägnierung, pro Zahn oder pro Slice + Petites retouches par meulage, imprégnation éventuelle incluse, par dent ou par slice + Piccola molatura, inclusa eventuale impregnazione, per dente o slice + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Lei + 3 + 01.14 + 4.0830 + Remontage totale Prothesen nach Prof. Gerber + Remontage de prothèses totales selon la méthode du professeur Gerber + Rimontaggio di protesi totali secondo Gerber + • Eventuell Scharnierachsenbestimmung gemäss Tarifziffer 4.0800, 4.0810, 4.0820 +• Zahntechnische Laborleistung separat verrechenbar + • Enregistrement éventuel de l'axe charnière (position 4.0800, 4.0810 ou 4.0820) +• Prestations du laboratoire de technique dentaire facturées à part + • Eventuale localizzazione dell'asse di rotazione vedi cifre 4.0800, 4.0810, 4.0820 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 101.1 + 85.9 + 101.1 + 116.3 + + + Lei + 3 + 01.15 + 4.0890 + Abdrucknahme Dentalhygienikerin + Prise d'empreinte par l'hygiéniste dentaire + Impronta da parte dell'igienista dentale + Abformung eines Kiefers mit konfektioniertem Löffel für Studien- oder Dokumentationsmodelle durch Dentalhygienikerin + +• Zahntechnische Laborleistung separat verrechenbar + Empreinte du maxillaire au moyen d'un porte-empreinte préfabriqué, pour modèles d'étude ou de documentation, réalisée par l'hygiéniste dentaire. + +• Prestations du laboratoire de technique dentaire facturées à part + Impronta di un mascellare con portaimpronta preconfezionato per modelli di studio o di documentazione da parte dell'igienista + +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 15.7 + 13.3 + 15.700000000000001 + 18.1 + + + Lei + 3 + 01.15 + 4.0900 + Abdrucknahme Zahnarzt + Prise d'empreinte par le médecin-dentiste + Impronta da parte del medico dentista + Abformung eines Kiefers mit konfektioniertem Löffel für Studien- oder Dokumentationsmodelle durch den Zahnarzt + +• Zahntechnische Laborleistung separat verrechenbar + Empreinte du maxillaire au moyen d'un porte-empreinte préfabriqué, pour modèles d'étude ou de documentation, réalisée par le médecin-dentiste. + +• Prestations du laboratoire de technique dentaire facturées à part + Impronta di un mascellare con portaimpronta preconfezionato per modelli di studio o di documentazione da parte del medico dentista + +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 01.15 + 4.0950 + Anlegen von Kofferdam, 4 oder mehr Zähne + Pose d'une digue en caoutchouc, pour quatre dents ou plus + Applicazione della diga, 4 o più denti + Gilt auch wenn zusätzlicher Aufwand zur Abdichtung bei weniger als 4 Zähnen notwendig + Position également applicable aux cas de moins de quatre dents qui nécessitent des adaptations supplémentaires pour assurer l'étanchéité. + Vale anche se lavoro supplementare per impermeabilizzazione per meno di 4 denti + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 01.15 + 4.0970 + Extraorale oder intraorale Fotoaufnahme oder Modellaufnahme, pro Aufnahme + Photographie extraorale ou intraorale ou photographie d'un modèle, par prise de vue + Fotografia extra-orale o intra-orale o fotografia di un modello, per ripresa + • Maximal 6 Stück, inklusive 1 Ausdruck in Fotoqualität; +• Verschiedene Apparateeinstellungen für das gleiche Sujet gelten als eine Aufnahme + • Facturation d'un maximum de six photographies par documentation, inclut une copie imprimée en qualité photo pour chaque prise de vue. +• Les divers réglages de l'appareil pour la photographie du même sujet sont comptés comme photographie unique. + • Al massimo 6 riprese, compresa una stampa in qualità foto; +• I diversi regolaggi per il medesimo soggetto sono considerati una sola ripresa. + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 01.15 + 4.0980 + Einsatz des Operationsmikroskopes + Utilisation d'un microscope opératoire + Uso del microscopio chirurgico + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 69.7 + 59.2 + 69.7 + 80.2 + + + Kap + 1 + 02 + Mundhygiene, Prophylaxe + Hygiène bucco-dentaire, prophylaxie + Igiene orale, profilassi + + + Kap + 2 + 02.01 + Befundaufnahme, Mundhygiene, Tabakprävention und Motivierung + Examen, hygiène bucco-dentaire, prévention du tabagisme et motivation + Raccolta dati, igiene orale, prevenzione del tabagismo e motivazione + + + Lei + 3 + 02.01 + 4.1000 + Mundhygieneanamnese, Instruktion, Motivation, pro 5 Min. + Anamnèse de l'hygiène bucco-dentaire, instructions, motivation, par tranche de 5 min. + Anamnesi igiene orale, istruzione, motivazione, ogni 5 minuti + • Mundhygiene-, Karies-, Ernährungs- oder Fluorid-Anamnese; +• Beratung ev. Motivierung des Patienten, Demonstration und Üben von Reinigungstechniken. +• Gilt auch für Tabak-Kurzintervention + +Maximal 30 Minuten pro Sitzung; maximal 4 mal pro Jahr verrechenbar. Wenn mehr als 4 Sitzungen nötig, ist eine neue Kostengutsprache notwendig. + • Anamnèse de l'hygiène bucco-dentaire, de la carie, de l'alimentation ou de la fluoration +• Conseils en matière d'hygiène bucco-dentaire, voire motivation du patient, démonstration et exercice des techniques de nettoyage +• Position également applicable à l'intervention brève antitabac + +Temps max. facturable plafonné à 30 min par séance; au maximum 4 fois par an. Si plus de 4 séances sont nécessaires: une nouvelle demande de prise en charge doit être présentée. + • Anamnesi igiene orale, carie, alimentazione o fluoro; +• Consulenza, evtl. motivazione del paziente, dimostrazione ed esercitazione di tecniche di pulizia. +• Vale anche per intervento breve antitabacco + +Al massimo 30 minuti per seduta; fatturabile al massimo 4 volte l'anno. Se sono necessarie più di 4 sedute è necessario un nuovo benestare. + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 02.01 + 4.1010 + Plaqueanfärbung, pro Sextant + Coloration de la plaque, par sextant + Colorazione della placca, per sestante + Maximal 6 mal pro Sitzung verrechenbar. + Peut être facturée au maximum 6 fois par séance. + Fatturabile al massimo 6 volte per seduta. + TP + 7 + 6 + 7.05 + 8.1 + + + Lei + 3 + 02.01 + 4.1020 + Plaqueindex, pro Sextant + Indice de plaque, par sextant + Rilevamento dell'indice di placca, per sestante + Aufnahme eines Plaqueindexes, pro Sextant +Maximal 6 mal pro Sitzung verrechenbar. + Établissement d'un indice de plaque, par sextant. +Peut être facturée au maximum 6 fois par séance. + Rilevamento di un indice di placca, per sestante +fatturabile al massimo 6 volte per seduta. + TP + 5.2 + 4.4 + 5.2 + 6 + + + Lei + 3 + 03.03 + 4.1320 + + Jedes weitere freie Gingivatransplantat in derselben Sitzung, pro Transplantat + + chaque greffe gingivale libre supplémentaire effectuée durant la même séance, par greffe + + Ogni altro trapianto gengivale libero durante la medesima seduta, per trapianto + Inklusive Entnahme + Prélèvement inclus + Prelievo incluso + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 03.03 + 4.1350 + Rezessionsdeckung mit Entnahme, pro Zahn + Recouvrement de récession avec prélèvement, par dent + Copertura della recessione con prelievo, per dente + TP + 404.4 + 343.7 + 404.4 + 465.1 + + + Lei + 3 + 03.03 + 4.1360 + + Jede weitere Rezessionsdeckung mit Entnahme in derselben Sitzung + + chaque recouvrement de récession supplémentaire avec prélèvement, durant la même séance + + Ogni altra copertura della recessione con prelievo durante la medesima seduta + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 02.01 + 4.1030 + Gingivaindex, pro Sextant + Indice gingival, par sextant + Indice gengivale, per sestante + Quantitative Erfassung der gingivalen Entzündung, Kurzindex (z.B. PBI), pro Sextant. +Maximal 6 mal pro Sitzung verrechenbar. + + Évaluation quantitative de l'inflammation gingivale (p. ex., indice du saignement des papilles), par sextant. +Peut être facturée au maximum 6 fois par séance. + Rilevamento quantitativo dell'infiammazione gengivale, indice semplice (p. es. PBI), per sestante. +Fatturabile al massimo 6 volte per seduta. + + TP + 7 + 6 + 7.05 + 8.1 + + + Lei + 3 + 02.01 + 4.1040 + Gingivalindex ausführlich, pro Sextant + Indice gingival détaillé, par sextant + Indice gengivale dettagliato, per sestante + Maximal 6 mal pro Sitzung verrechenbar. + Peut être facturée au maximum 6 fois par séance. + Fatturabile al massimo 6 volte per seduta. + TP + 12.2 + 10.4 + 12.2 + 14 + + + Lei + 3 + 02.01 + 4.1050 + Mikrobiologie, pro 5 Min. + Microbiologie, par tranche de 5 min. + Microbiologia, ogni 5 minuti + Mikrobiologischer Test; Speicheltest; genetischer Test; diverse Tests, pro 5 Minuten + +• Laborkosten gemäss Eidg. Analysenliste; +• Nur nach Rücksprache mit den Versicherern verrechenbar + Test microbiologique, test salivaire, test génétique, tests divers, par tranche de 5 min. + +• Frais de laboratoire conformément à la liste fédérale des analyses +• Ces prestations ne peuvent être facturées qu'après concertation avec l'assureur. + Test microbiologici; tasso del flusso salivare; test genetico; altri test, ogni 5 minuti + +• Costi di laboratorio conformemente elenco federale delle analisi; +• Conteggiabile solo previa consultazione degli assicuratori + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 2 + 02.02 + Fluorprophylaxe + Prophylaxie par fluoration + Fluoroprofilassi + + + Lei + 3 + 02.02 + 4.1070 + Fluorgelee oder Fluorlösung, pro Gebiss + Gelée fluorée ou solution fluorée à 1 %, pour les deux arcades + Gelatina o soluzione fluorata, per dentatura + Auftragen von Fluor-Gelee oder Fluor-Lösung, pro Gebiss + Application de gelée fluorée ou de solution fluorée, pour les deux arcades + Applicazione di soluzione o gelatina al fluoro, per dentatura + TP + 10.5 + 8.9 + 10.5 + 12.1 + + + Lei + 3 + 02.02 + 4.1080 + Fluorlack bis 4 Zähne + Vernis fluoré, jusqu'à quatre dents + Lacca fluorata, fino a 4 denti + Inklusive Plaque-Entfernung. + Élimination de la plaque incluse + Rimozione della placca inclusa + TP + 26.1 + 22.2 + 26.1 + 30 + + + Lei + 3 + 02.02 + 4.1090 + Fluorlack, mehr als 4 Zähne + Vernis fluoré, plus de quatre dents + Lacca fluorata, più di 4 denti + Inklusive Plaque-Entfernung. + Élimination de la plaque incluse + Rimozione della placca inclusa + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Kap + 2 + 02.03 + Behandlung durch Dentalhygienikerin/ Prophylaxeassistentin + Traitement par l'hygiéniste dentaire/l'assistante en prophylaxie + Cura dell'igienista dentale / assistente di prevenzione dentale + Alle Leistungen, mit Ausnahme der Röntgenaufnahmen Kapitel 01.11 und der Tarifziffer 4.0890 sowie Kapitel Physio- und physikalische Therapie 04.04 werden nach dem Zeittarif abgerechnet. + Toutes les prestations sont facturées au temps consacré, à l'exception des positions du chapitre 01.11 (radiographies), de la position 4.0890 et des positions du chapitre 04.04 (physiothérapie et thérapie fonctionnelle). + Tutte le prestazioni, ad eccezione delle radiografie capitolo 01.11 e della cifra 4.0890 nonché del capitolo fisioterapia e terapia fisica 04.04 sono conteggiate sulla base del tempo impiegato. + + + Lei + 3 + 02.03 + 4.1100 + Behandlung durch Praktikantin Dentalhygienikerin, pro 5 Min. + Traitement par l'hygiéniste dentaire stagiaire, par tranche de 5 min. + Cura eseguita dalla praticante igienista dentale, ogni 5 minuti + TP + 13.9 + 11.8 + 13.9 + 16 + + + Lei + 3 + 02.03 + 4.1105 + Behandlung durch Praktikantin Prophylaxeassistentin, pro 5 Min. + Traitement par l'assistante en prophylaxie stagiaire, par tranche de 5 min. + Cura eseguita dalla praticante assistente di prevenzione dentale, ogni 5 minuti + TP + 10.5 + 8.9 + 10.5 + 12.1 + + + Lei + 3 + 02.03 + 4.1110 + Behandlung durch Dentalhygienikerin, pro 5 Min. + Traitement par l'hygiéniste dentaire, par tranche de 5 min. + Cura eseguita dall'igienista dentale, ogni 5 minuti + TP + 15.7 + 13.3 + 15.700000000000001 + 18.1 + + + Lei + 3 + 02.03 + 4.1120 + Behandlung durch Prophylaxeassistentin, pro 5 Min. + Traitement par l'assistante en prophylaxie, par tranche de 5 min. + Cura eseguita dall'assistente di prevenzione dentale, ogni 5 minuti + TP + 12.2 + 10.4 + 12.2 + 14 + + + Kap + 2 + 02.04 + Gruppenprophylaxe + Prophylaxie de groupe + Profilassi collettiva + Gruppenprophylaxe in der Schule/Heim/Praxis + Prophylaxie de groupe à l'école/dans un home/au cabinet + Profilassi collettiva a scuola, in istituto o in ambulatorio + + + Lei + 3 + 02.04 + 4.1130 + Gruppenprophylaxe durch den Zahnarzt, pro 15 Min. + Prophylaxie de groupe par le médecin-dentiste, par tranche de 15 min. + Profilassi collettiva da parte del medico dentista, ogni 15 minuti + • Wird von den Versicherern nicht vergütet + +Gruppenprophylaxe in der Schule/Heim/Praxis durch den Zahnarzt, pro 15 Minuten. + • N'est pas remboursée par les assureurs + +Prophylaxie de groupe à l'école/dans un home/au cabinet par le médecin-dentiste, par tranche de 15 minutes + • Non è pagato dagli assicuratori + +Profilassi collettiva a scuola, in istituto o in ambulatorio da parte del medico dentista, ogni 15 minuti + TP + 90.6 + 77 + 90.6 + 104.2 + + + Lei + 3 + 02.04 + 4.1140 + Gruppenprophylaxe durch Dentalhygienikerin, pro 15 Min. + Prophylaxie de groupe par l'hygiéniste dentaire, par 15 min. + Profilassi collettiva da parte dell'igienista dentale, ogni 15 minuti + • Wird von den Versicherern nicht vergütet + +Gruppenprophylaxe in der Schule/Heim/Praxis durch Dentalhygienikerin, pro 15 Minuten. + • N'est pas remboursée par les assureurs + +Prophylaxie de groupe à l'école/dans un home/au cabinet par l'hygiéniste dentaire, par tranche de 15 minutes + • Non è onorato dagli assicuratori + +Profilassi collettiva a scuola, in istituto o in ambulatorio da parte dell'igienista, ogni 15 minuti + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Kap + 1 + 03 + Parodontologie + Parodontologie + Parodontologia + + + Kap + 2 + 03.02 + Konservative Parodontaltherapie + Traitement parodontal conservateur + Terapia parodontale conservativa + + + Lei + 3 + 03.03 + 4.1290 + Gingivektomie, Einzelzahn + Gingivectomie, une seule dent + Gengivectomia, dente singolo + Darf nicht für die Abdrucknahme verrechnet werden + Ne peut pas être facturée dans le cadre d'une prise d'empreinte + Non può essere fatturato per l'impronta + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 03.03 + 4.1300 + Gingivektomie, pro Sextant + Gingivectomie, par sextant + Gengivectomia, per sestante + TP + 282.4 + 240 + 282.4 + 324.8 + + + Lei + 3 + 03.03 + 4.1310 + Freies Gingivatransplantat, pro Transplantat + Greffe gingivale libre, par greffe + Trapianto gengivale libero, per trapianto + Inklusive Entnahme + Prélèvement inclus + Prelievo incluso + TP + 383.5 + 326 + 383.5 + 441 + + + Lei + 3 + 02.04 + 4.1150 + Gruppenprophylaxe übrige, pro 15 Min. + + Prophylaxie de groupe par d'autres catégories de professionnels, par tranche de 15 min. + Profilassi collettiva, altri, ogni 15 minuti + + • Wird von den Versicherern nicht vergütet + +Gruppenprophylaxe in der Schule/Heim/Praxis durch Schulzahnpflegeinstruktorin/Dentalassistentin, pro 15 Minuten. + • N'est pas remboursée par les assureurs + +Prophylaxie de groupe à l'école/dans un home/au cabinet par la monitrice dentaire scolaire/l'assistante dentaire, par tranche de 15 minutes + • Non è onorato dagli assicuratori + +Profilassi collettiva a scuola, in istituto o in ambulatorio da parte dell'operatrice di prevenzione dentale, dell'assistente di prevenzione dentale, ogni 15 minuti + TP + 22.7 + 19.3 + 22.700000000000003 + 26.1 + + + Lei + 3 + 02.04 + 4.1160 + Prophylaxevortrag durch den Zahnarzt, pro 15 Min. + Exposé de prophylaxie par le médecin-dentiste, par tranche de 15 min. + Conferenza sulla profilassi da parte del medico dentista, ogni 15 minuti + • Wird von den Versicherern nicht vergütet + +Prophylaxevortrag, inkl. Vorbereitung und Material durch den Zahnarzt, pro 15 Minuten. + + • N'est pas remboursée par les assureurs + +Exposé de prophylaxie par le médecin-dentiste, préparation et matériel inclus, par tranche de 15 minutes + • Non è onorato dagli assicuratori + +Conferenza sulla prevenzione, compresa la preparazione e il materiale, da parte del medico dentista, ogni 15 minuti + + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 02.04 + 4.1170 + Prophylaxevortrag durch Dentalhygienikerin, pro 15 Min. + Exposé de prophylaxie par l'hygiéniste dentaire, par tranche de 15 min. + Conferenza sulla profilassi da parte dell'igienista dentale, ogni 15 minuti + • Wird von den Versicherern nicht vergütet + +Prophylaxevortrag, inkl. Vorbereitung und Material durch Dentalhygienikerin, pro 15 Minuten. + + • N'est pas remboursée par les assureurs + +Exposé de prophylaxie par l'hygiéniste dentaire, préparation et matériel inclus, par tranche de 15 minutes + • Non è onorato dagli assicuratori + +Conferenza sulla prevenzione, compresa la preparazione e il materiale, da parte dell'igienista, ogni 15 minuti + + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 02.04 + 4.1180 + Prophylaxevortrag übrige, pro 15 Min. + Exposé de prophylaxie par d'autres catégories de professionnels, par tranche de 15 min. + Conferenza sulla profilassi, altri, ogni 15 minuti + • Wird von den Versicherern nicht vergütet + +Prophylaxevortrag, inkl. Vorbereitung und Material durch Schulzahnpflegeinstruktorin/Dentalassistentin, pro 15 Minuten. + • N'est pas remboursée par les assureurs + +Exposé de prophylaxie par la monitrice dentaire scolaire/l'assistante dentaire, préparation et matériel inclus, par tranche de 15 minutes + • Non è onorato dagli assicuratori + +Conferenza sulla prevenzione, compresa la preparazione e il materiale, da parte dell'operatrice di prevenzione dentale, dell'assistente di prevenzione dentale, ogni 15 minuti + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Kap + 2 + 03.01 + Parodontale Befundaufnahme + Examen parodontal + Reperto parodontale + • Vollständiges Ausfüllen eines Befundblattes mit Messung der Sondierungstiefen (6 Messstellen/Zahn), +• Beurteilung der Zahnbeweglichkeit, +• Furkationsbeurteilung, +• Beurteilung der Taschensekretion, +• Beurteilung der Weichgewebe (gingivale Morphologie, Breite der keratinisierten Gingiva, Lippen- und Wangenbänder) +• Feststellen von Überschüssen. + +Funktionelle Beurteilung siehe Tarifziffern 4.1610, 4.1620, 4.1630, 4.1640, 4.1650, 4.1660, 4.1670, 4.1680, 4.1690 + • Rédaction complète d'une fiche d'examen avec mesure des profondeurs des poches (six mesures par dent) +• Évaluation de la mobilité dentaire +• Évaluation des furcations +• Évaluation des sécrétions des poches +• Examen des tissus mous (morphologie gingivale, hauteur de la gencive kératinisée, freins labiaux et jugaux) +• Mise en évidence de débordements d'obturations + +Analyse fonctionnelle: voir positions 4.1610, 4.1620, 4.1630, 4.1640, 4.1650, 4.1660, 4.1670, 4.1680 et 4.1690 + • Compilazione completa di una scheda di reperto con misurazione della profondità di sondaggio (6 punti per dente) +• Valutazione della mobilità +• Valutazione delle forcazioni +• Valutazione della secrezione delle tasche +• Esame dei tessuti molli (morfologia gengivale, estensione della gengiva cheratinizzata, frenuli delle guance e delle labbra) +• Ricerca di irritanti marginali. + +Analisi funzionale vedi cifre 4.1610, 4.1620, 4.1630, 4.1640, 4.1650, 4.1660, 4.1670, 4.1680, 4.1690 + + + Lei + 3 + 03.01 + 4.1200 + Parodontale Kurzbefundaufnahme, pro Gebiss + Bref examen parodontal, pour les deux arcades + Esame parodontale breve, per dentatura + Diese Leistung ist bei den Tarifziffern 4.0000, 4.0010 zusätzlich, aber nicht gewohnheits-/routinemässig verrechenbar und auch nicht generell bei jedem Notfallpatienten (siehe Ziffer 4.0020) + Cette prestation peut être cumulée avec les positions 4.000 et 4.0010, mais pas systématiquement ni d'une manière générale pour chaque patient en urgence (position 4.0020) + Questa prestazione è cumulabile con le cifre 4.0000, 4.0010, ma non in generale per ogni paziente; e non in generale per ogni paziente in urgenza (vedi cifra 4.0020) + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Lei + 3 + 03.01 + 4.1210 + Parodontale Befundaufnahme, einfacher Fall + Examen parodontal, cas simple + Esame parodontale, caso semplice + Reine Gingivitis oder marginale Parodontitis mit Sondierungstiefen bis ca. 4 mm, kein Furkationsbefall, funktionell unwesentliche Probleme + Gingivite simple ou parodontite marginale avec mesures de profondeur de poches jusqu'à 4 mm, pas d'atteinte de la zone de furcation, troubles fonctionnels mineurs + Gengivite o parodontite marginale con tasche fino a 4 mm, nessuna forcazione coinvolta, nessuna complicazione funzionale + TP + 177.8 + 151.1 + 177.8 + 204.5 + + + Lei + 3 + 03.01 + 4.1220 + Parodontale Befundaufnahme, mittelschwerer Fall + Examen parodontal, cas de complexité moyenne + Esame parodontale, caso medio + Parodontitis mit multiplen Sondierungstiefen bis 6 mm, kein oder vereinzelter Furkationsbefall, funktionell relevante Probleme + Parodontite nécessitant de nombreuses mesures de profondeur de poches jusqu'à 6 mm, avec ou sans atteintes isolées au niveau de la furcation, présence de troubles fonctionnels notables + Parodontite con tasche multiple fino a 6 mm, forcazioni solo occasionalmente coinvolte, complicazioni funzionali rilevanti + TP + 268.5 + 228.2 + 268.5 + 308.8 + + + Lei + 3 + 06.01 + 4.3080 + Sekundäre Korrektur einer Lippenspalte, einseitig + Correction secondaire d'une fente labiale unilatérale + Correzione secondaria di una cheiloschisi unilaterale + TP + 1331.9 + 1132.1 + 1331.9 + 1531.7 + + + Lei + 3 + 06.01 + 4.3090 + Zweizeitige Stiellappenplastik der Lippen oder des Gaumens, erster Eingriff + Plastie par lambeau pédiculé en deux temps, des lèvres ou du palais, première intervention + Plastica con lembo peduncolato del labbro o del palato in due tempi, primo intervento + TP + 1157.5 + 983.9 + 1157.5 + 1331.1 + + + Lei + 3 + 06.01 + 4.3100 + Zweizeitige Stiellappenplastik der Lippen oder des Gaumens, zweiter Eingriff + Plastie par lambeau pédiculé en deux temps, des lèvres ou du palais, seconde intervention + Plastica con lembo peduncolato del labbro o del palato in due tempi, secondo intervento + TP + 578.8 + 492 + 578.8 + 665.6 + + + Lei + 3 + 06.01 + 4.3130 + Nasenstegverlängerung + Allongement de la columelle du nez + Allungamento della columella nasale + TP + 578.8 + 492 + 578.8 + 665.6 + + + Lei + 3 + 03.01 + 4.1230 + Parodontale Befundaufnahme, schwerer Fall + Examen parodontal, cas complexe + Esame parodontale, caso difficile + Fortgeschrittene Parodontitis mit multiplen Sondierungstiefen über 6 mm, generalisierter Furkationsbefall, funktionell gravierende Probleme + Parodontite avancée nécessitant de nombreuses mesures de profondeur de poches de plus de 6 mm, atteintes généralisées au niveau de la furcation, présence de troubles fonctionnels graves + Parodontite avanzata con tasche di oltre 6 mm, forcazioni coinvolte in modo generale, gravi problemi funzionali + TP + 369.6 + 314.2 + 369.6 + 425 + + + Lei + 3 + 03.01 + 4.1240 + Messung und Aufzeichnung des Attachment-Niveaus, pro Gebiss + Mesure et enregistrement du niveau d'attache, pour les deux arcades + Misurazione e notazione del livello di attacco parodontale, per dentatura + Darf pro Fall 1 mal verrechnet werden + Ne peut pas être facturée qu'une fois par cas. + Può essere conteggiato 1 volta per caso + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 03.02 + 4.1250 + Zahnreinigung durch den Zahnarzt, pro 5 Min. + Nettoyage des dents par le médecin-dentiste, par tranche de 5 min. + Pulizia denti da parte del medico dentista, ogni 5 minuti + Entfernung von Plaque und Verfärbungen, supragingivale und subgingivale Zahnsteinentfernung, maschinell oder manuell, pro 5 Minuten + Elimination de la plaque et des colorations dentaires et détartrage supra- et sous-gingival, mécanique ou manuel, par tranche de 5 minutes + Rimozione della placca e delle colorazioni, detartrasi sopra e sotto gengivale, a mano o meccanicamente, ogni 5 minuti + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 03.02 + 4.1260 + Zahnsteinentfernung durch den Zahnarzt, pro 5 Min. + Élimination du tartre par le médecin-dentiste, par tranche de 5 min. + Detartrasi da parte del medico dentista, ogni 5 minuti + Systematische subgingivale Zahnsteinentfernung und Wurzelglättung (Deepscaling), pro 5 Minuten + Elimination systématique du tartre sous-gingival et surfaçage radiculaire (deepscaling), par tranche de 5 minutes + Detartrasi sotto gengivale sistematica con levigatura radicolare (deepscaling), ogni 5 minuti + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 03.02 + 4.1270 + Überschussentfernung Füllung + Élimination de débordements d'obturations + Rimozione eccedenza otturazione + Entfernung marginaler Reize bei direkten Füllungen, pro Zahnfläche + Elimination d'irritations marginales dues à des obturations posées en technique directe, par face + Rimozione di irritanti marginali di otturazioni dirette, per parete dentale + TP + 22.7 + 19.3 + 22.700000000000003 + 26.1 + + + Lei + 3 + 03.02 + 4.1280 + Überschussentfernung Krone + Élimination de débordements de couronnes + Rimozione eccedenza corona + Entfernung marginaler Reize bei Gussfüllungen und Kronen, pro Zahnfläche + Elimination d'irritations marginales dues à des obturations posées en technique indirecte (inlays, onlays, couronnes), par face + Rimozione di irritanti marginali di otturazioni fuse e corone, per parete dentale + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Kap + 2 + 03.03 + Chirurgische Parodontaltherapie + Traitement parodontal chirurgical + Terapia parodontale chirurgica + Zusätzlich verrechenbar sind: +- Anästhesie +- Maximal 4 Nähte (Nahtmaterial inbegriffen) + Sont facturables en supplément: +- Anesthésie +- 4 sutures au maximum (matériel de suture inclus) + Sono fatturabili in aggiunta: +- anestesia +- al massimo 4 suture (materiale di sutura compreso) + + + Lei + 3 + 03.03 + 4.1330 + Bindegewebstransplantat, pro Zahn/Implantat + Greffe de tissu conjonctif, par dent/implant + Trapianto di tessuto connettivo, per dente/impianto + Inklusive Entnahme und Wundversorgung der Entnahmestelle; als alleiniger Eingriff + Prélèvement et traitement de la plaie du site de prélèvement inclus; en tant qu'intervention distincte + Prelievo e cura del punto di prelievo compresi; come intervento a sé stante + TP + 453.2 + 385.2 + 453.20000000000005 + 521.2 + + + Lei + 3 + 03.03 + 4.1340 + + Jedes weitere Bindegewebstransplantat in derselben Sitzung, pro Zahn/Implantat, + + chaque greffe de tissu conjonctif supplémentaire durant la même séance, par dent/implant + + Ogni altro trapianto di tessuto connettivo durante la medesima seduta, per dente/impianto + • Inklusive Entnahme und Wundversorgung der Entnahmestelle; +• gilt auch für Bindegewebstransplantat in Kombination mit einem weiteren chirurgischen Eingriff in derselben Sitzung + • Prélèvement et traitement de la plaie du site de prélèvement inclus +• Position également applicable à une greffe de tissu conjonctif associée à une autre intervention chirurgicale, durant la même séance + • Prelievo e cura del punto di prelievo compresi; +• Vale anche per il trapianto mucosale in abbinamento con un altro intervento chirurgico durante la medesima seduta + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 03.03 + 4.1370 + Dreieckslappenoperation, pro Zahn + Intervention avec lambeau triangulaire, par dent + Operazione parodontale a lembo triangolare, per dente + Dreieckslappenoperation/Kronenverlängerung, pro Zahn; Rezessionsdeckung ohne Entnahme, pro Zahn + Intervention avec lambeau triangulaire/allongement de la couronne, par dent; recouvrement de récession sans prélèvement, par dent + Operazione parodontale a lembo triangolare/ allungamento della corona clinica, per dente; Copertura delle recessioni senza prelievo, per dente + TP + 240.6 + 204.5 + 240.6 + 276.7 + + + Lei + 3 + 03.03 + 4.1380 + + Jede weitere Dreieckslappenoperation in derselben Sitzung, pro Zahn + + chaque intervention avec lambeau triangulaire supplémentaire durant la même séance, par dent + + Ogni altra operazione parodontale a lembo triangolare durante la medesima seduta, per dente + Jede weitere Dreieckslappenoperation/Kronenverlängerung in der selben Sitzung, pro Zahn; jede weitere Rezessionsdeckung ohne Entnahme in derselben Sitzung, pro Zahn + Chaque intervention avec lambeau triangulaire/allongement de la couronne supplémentaire durant la même séance, par dent; recouvrement de récession durant la même séance, sans prélèvement et par dent + Ogni altra operazione parodontale a lembo triangolare/ allungamento della corona clinica durante la medesima seduta, per dente; ogni altra copertura delle recessioni senza prelievo durante la medesima seduta, per dente + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 06.01 + 4.3140 + Naseneingangskorrektur + Correction d'un orifice narinaire + Correzione delle narici + TP + 289.4 + 246 + 289.4 + 332.8 + + + Kap + 2 + 06.02 + Kieferorthopädische Chirurgie + Chirurgie orthopédique des maxillaires + Chirurgia ortopedico-mascellare + + + Lei + 3 + 06.02 + 4.3210 + Alveolarfortsatzosteotomie vertikal, pro Stelle + Ostéotomie verticale du procès alvéolaire, par site d'intervention + Osteotomia verticale del processo alveolare, per sito + Zusätzlich zu Tarifziffer 4.3200 + En cas de cumul avec la position 4.3200 + In aggiunta alla cifra 4.3200 + TP + 435.8 + 370.4 + 435.79999999999995 + 501.2 + + + Lei + 3 + 06.02 + 4.3220 + Alveolarfortsatzosteotomie vertikal, als selbstständiger Eingriff + Ostéotomie verticale du procès alvéolaire en tant qu'intervention distincte + Osteotomia verticale del processo alveolare, come intervento singolo + TP + 523 + 444.6 + 523.05 + 601.5 + + + Lei + 3 + 06.02 + 4.3230 + Sagittale oder andere, den Unterkiefer völlig durchtrennende Osteotomie, pro Stelle + Ostéotomie sagittale ou autre ostéotomie interruptrice de la mandibule, par interruption + Osteotomia sagittale o altra con soluzione completa della continuità mandibolare, per sito + TP + 1272.6 + 1081.7 + 1272.6 + 1463.5 + + + Lei + 3 + 03.03 + 4.1400 + Lappenoperation, mittelschwerer Fall, pro Sextant + Intervention avec lambeau, cas de complexité moyenne, par sextant + Operazione a lembo, caso medio, per sestante + • Inklusive interne Gingivektomie; +• Mehraufwand für Wurzelamputation und Hemisektion siehe Kapitel 05.01, Tarifziffer 4.2050 + • Gingivectomie interne incluse +• Supplément pour amputation radiculaire et hémisection: voir chapitre 05.01, position 4.2050 + • Gengivectomia interna inclusa +• Supplemento per rizotomia e emisezione vedi capitolo 05.01, cifra 4.2050 + TP + 557.8 + 474.1 + 557.8 + 641.5 + + + Lei + 3 + 03.03 + 4.1410 + Lappenoperation, schwerer Fall, pro Sextant + Intervention avec lambeau, cas complexe, par sextant + Operazione a lembo, caso difficile, per sestante + • Inklusive interne Gingivektomie; +• Mehraufwand für Wurzelamputation und Hemisektion siehe Kapitel 05.01, Tarifziffer 4.2050 + • Gingivectomie interne incluse +• Supplément pour amputation radiculaire et hémisection: voir chapitre 05.01, position 4.2050 + • Gengivectomia interna inclusa +• Supplemento per rizotomia e emisezione vedi capitolo 05.01, cifra 4.2050 + TP + 648.5 + 551.2 + 648.5 + 745.8 + + + Lei + 3 + 03.03 + 4.1420 + Parodontaloperation Einzelzahn + Intervention parodontale sur une seule dent + Operazione parodontale su un solo dente + Parodontaloperation Einzelzahn oder Lappenoperation, distal des letzten Zahnes + Intervention parodontale sur une seule dent ou intervention avec lambeau distal de la dernière dent + Operazione a lembo dente singolo oppure operazione a lembo, distalmente dall'ultimo dente + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 03.03 + 4.1430 + Lappenoperation, Kombination + Intervention avec lambeau, en association + Operazione a lembo combinata + Lappenoperation, distal des letzten Molaren, in Kombination mit Lappenoperation gemäss Tarifziffer 4.1400 oder 4.1410 + +Inklusive interne Gingivektomie + Intervention avec lambeau distal de la dernière molaire, en association à une intervention avec lambeau selon positions 4.1400 ou 4.1410 + +Gingivectomie interne incluse + Operazione a lembo, distalmente dall'ultimo molare, in abbinamento con operazione a lembo conformemente alla cifra 4.1400 o 4.1410 + +Gengivectomia interna inclusa + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 03.03 + 4.1440 + Massnahmen für Attachment + Mesures visant à réaliser une nouvelle attache + Misure per l'ottenimento di un attacco + Zusätzliche Massnahmen zur Erlangung von neuem Attachment + +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar +• Nur nach Rücksprache mit den Versicherern verrechenbar + Mesures supplémentaires visant à réaliser une nouvelle attache + +• Matériel facturer à part, avec position cluster (voir chapitre 20) +• Ne peut être facturée qu'après concertation avec l'assureur + Misura complementare per l'ottenimento di nuovo attacco + +• Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente +• Solo previa autorizzazione degli assicuratori + TP + 109.8 + 93.3 + 109.8 + 126.3 + + + Lei + 3 + 03.03 + 4.1460 + Parodontalabszess + Abcès parodontal + Ascesso parodontale + Behandlung eines Parodontalabszesses durch Kürettage + +• Inklusive Medikament, Wundspülung und Drain; +• Einfache Abszessinzision siehe Tarifziffer 4.2270 + Traitement d'un abcès parodontal par curetage + +• Médicament, rinçage de la plaie et drain inclus +• Simple incision d'un abcès: voir position 4.2270 + Cura di un ascesso parodontale con curetage + +• Inclusi medicamento, lavaggio della ferita e drenaggio +• Semplice sbrigliamento di un ascesso vedi cifra 4.2270 + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 03.03 + 4.1470 + Nachbehandlung nach Parodontaloperation + Soins postopératoires à la suite d'une intervention parodontale + Cure postoperatorie dopo intervento parodontale + • Inklusive Nahtentfernung, Wundbehandlung, Reinigung der beteiligten Zähne und evtl. Legen eines Wundverbandes; +• für ausschliessliche Nahtentfernungen und/oder Wundbehandlungen: Tarifziffern 4.2900 bzw. 4.2910 + • Ablation des sutures, traitement de la plaie, nettoyage des dents touchées et pose d'un pansement inclus +• Ablation des sutures et/ou traitement de la plaie en tant qu'interventions distinctes: voir positions 4.2900 et 4.2910 + • Inclusi rimozione dei punti di sutura, cura della ferita, pulizia dei denti interessati e posa di un impacco +• Per esclusiva rimozione dei punti di sutura e/o cura della ferita: cifra 4.2900 risp. 4.2910 + TP + 111.6 + 94.9 + 111.60000000000001 + 128.3 + + + Kap + 2 + 03.04 + Parodontale Schienung + Attelles parodontales + Fissaggio parodontale + Unfallschienungen siehe Kapitel 05.07 + Attelles d'accident: voir chapitre 05.07 + Fissaggi in seguito ad infortunio vedi capitolo 05.07 + + + Lei + 3 + 03.04 + 4.1500 + Parodontale Schienung, erster Interdentalraum + Attelle parodontale, premier espace interdentaire + Fissaggio parodontale, primo spazio interdentale + Schienung mittels Säure-Ätz-Technik, erster Interdentalraum +Inklusive Ätzung + Fixation par technique de mordançage, premier espace interdentaire. +Mordançage inclus + Fissaggio in composito con mordenzatura, primo spazio interdentale +Mordenzatura inclusa + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 03.04 + 4.1510 + + Parodontale Schienung, jeder weitere Interdentalraum, in derselben Sitzung + + chaque espace interdentaire supplémentaire dans la même attelle + + Fissaggio parodontale, ogni altro spazio interdentale, durante la medesima seduta + + Schienung mittels Säure-Ätz-Technik, jeder weitere Interdentalraum +Inklusive Ätzung + + fixation par technique de mordançage pour chaque espace interdentaire supplémentaire +Mordançage inclus + + Fissaggio in composito con mordenzatura, ogni altro spazio interdentale +Mordenzatura inclusa + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 3 + 03.04 + 4.1520 + Einbau von Hilfsteilen in Kunststoffschiene, erster Interdentalraum + Insertion d'éléments auxiliaires dans une attelle en résine acrylique, premier espace interdentaire + Inserimento di rinforzi ausiliari nella ferula in resina acrilica, primo spazio interdentale + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 03.04 + 4.1540 + Entfernung einer interdental geklebten Schiene, pro Interdentalraum + Ablation d'une attelle interdentaire collée, par espace interdentaire + Rimozione di un fissaggio interdentale incollato, per ogni spazio interdentale + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Kap + 2 + 03.05 + Zahnfleischepithese + Épithèse gingivale + Epitesi gengivale + + + Kap + 1 + 04 + Dysfunktionen und Myoarthropathien (MAP) + Dysfonctions et myoarthropathies (MAP) + Disfunzioni e mioartropatie (MAP) + + + Kap + 2 + 04.01 + Befund + Examen + Reperto + + + Lei + 3 + 04.01 + 4.1630 + Provokationstest + Test de provocation + Test di provocazione + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 04.01 + 4.1640 + Resilienztest + Test de résilience + Test di resilienza + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 04.01 + 4.1650 + Erhebung des Muskelbefundes + Examen musculaire + Esame della muscolatura + Beinhaltet die Palpation der gesamten Kaumuskulatur + Comprend la palpation de l'ensemble de la musculature de l'appareil de la mastication + Comprende la palpazione di tutti i muscoli della masticazione + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 03.04 + 4.1530 + + Einbau von Hilfsteilen in Kunststoffschiene, jeder weitere Interdentalraum, in derselben Sitzung + + chaque espace interdentaire supplémentaire dans la même attelle + + Inserimento di rinforzi ausiliari nella ferula in resina acrilica, ogni altro spazio interdentale, durante la medesima seduta + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Lei + 3 + 03.05 + 4.1550 + Zahnfleischepithese + Épithèse gingivale + Epitesi gengivale + • Inklusive Abdrücke, Abgabe und Instruktion +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreintes, mise en bouche et instruction incluses +• Prestations du laboratoire de technique dentaire facturées à part + • Impronte, consegna e istruzioni incluse +• Prestazioni del laboratorio odontotecnico fatturabili separatamente + TP + 366.1 + 311.2 + 366.1 + 421 + + + Lei + 3 + 04.01 + 4.1600 + MAP-Anamnese, pro 5 Min. + Anamnèse des MAP, par tranche de 5 min.. + Anamnesi MAP, ogni 5 minuti + Anamnese und Aufklärung MAP-Patient, Auswertung psychosozialer Fragebögen, pro 5 Minuten. +Werden zusätzliche Befunde erhoben, so sind diese mit den entsprechenden Tarifziffern zu verrechnen. + Anamnèse et information du patient souffrant de MAP, évaluation de questionnaires psychosociaux, par tranche de 5 minutes. +Lorsque d'autres examens sont effectués, ils sont facturés conformément aux positions correspondantes. + Anamnesi specifica e orientamento del paziente MAP, analisi questionari psicosociali, ogni 5 minuti. +Ulteriori reperti vengono onorati secondo le corrispondenti cifre. + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 04.01 + 4.1610 + MAP-Befundaufnahme Recall, pro 5 Min. + Examen périodique du patient souffrant de MAP (recall), par tranche de 5 min. + Consultazione periodica MAP, ogni 5 minuti + Befundaufnahme beim MAP-Recall-Patienten, letzte Untersuchung vor weniger als 12 Monaten in der gleichen Praxis, pro 5 Minuten + Examen du patient souffrant de MAP dans les douze mois qui suivent la dernière consultation dans le même cabinet, par tranche de 5 minutes + Consultazione periodica specifica per pazienti MAP, ultimo controllo durante i 12 mesi precedenti nel medesimo studio medico dentistico, ogni 5 minuti + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 04.01 + 4.1620 + Funktionsbefund + Examen fonctionnel + Esame funzionale + Erhebung des Funktionsbefundes, ohne Anfärbung + +Beinhaltet: +• Seitbiss-Vorbiss-Rückbissmöglichkeit +• Öffnungs- und Schlussbissbewegung mit Abweichung in der Frontalebene +• Messung des Inzisalkantenabstandes bei maximaler Öffnung + Évaluation clinique du status fonctionnel, sans marquage par coloration + +Comprend: +• Mesure de la liberté de mouvement (latérale, protrusion et rétrusion) +• Mesure du mouvement d'ouverture et de fermeture avec déviation dans le plan frontal +• Mesure de la distance interincisive lors de l'ouverture maximale + Esame funzionale senza marcare i contatti + +Comprende: +• accertamento della capacità di retrusione, protrusione, laterotrusione +• deviazione sul piano frontale durante l'apertura e la chiusura +• misurazione della distanza tra gli spigoli incisivi in apertura massimale + TP + 45.3 + 38.5 + 45.3 + 52.1 + + + Lei + 3 + 04.01 + 4.1660 + Feststellung der Kieferrelation + Détermination de la relation intermaxillaire + Rilevamento della relazione intermascellare + Feststellung der Kieferrelation (sagittal, transversal, vertikal) und des Okklusionskonzeptes, mit Anfärbung + Détermination de la relation intermaxillaire (sagittale, transversale, verticale) et du schéma occlusal, avec maquage par coloration + Rilevamento della relazione intermascellare (sagittale, trasversale, verticale) e analisi dell'occlusione marcando i contatti + TP + 115.1 + 97.8 + 115.1 + 132.4 + + + Lei + 3 + 04.01 + 4.1670 + Anfärbung vorzeitiger Kontakte + Marquage par coloration des points de contact prématurés + Marcatura dei contatti prematuri + Feststellung und Anfärbung vorzeitiger Kontakte RKP/IKP bzw. von Gleithindernissen + Détermination et marquage par coloration des points de contact prématurés en RC/IM et des obstacles au glissement + Accertamento e marcatura dei contatti prematuri in centrica risp. in laterotrusione e protrusione + TP + 45.3 + 38.5 + 45.3 + 52.1 + + + Lei + 3 + 04.01 + 4.1680 + Feststellen orofacialer Parafunktionen + Diagnostic des parafonctions oro-faciales + Rilevamento delle parafunzioni oro-facciali + Aufsuchen von Schliff-Facetten und Bestimmung der Bruxofacetteneinstellung oder Erfassung von orofacialen Parafunktionen, mit Anfärbung + Localisation des facettes d'usure et des facettes de bruxomanie ou diagnostic des parafonctions oro-faciales, avec marquage par coloration + Ricerca ed esame delle faccette d'usura e da bruxismo con marcatura dei contatti e rilevamento delle parafunzioni oro-facciali, marcando i contatti + TP + 33.1 + 28.1 + 33.1 + 38.1 + + + Lei + 3 + 04.01 + 4.1690 + Palpation der Kiefergelenke + Palpation des articulations temporo-mandibulaire + Palpazione delle articolazioni temporo-mandibolari + Beinhaltet: +• Palpation über dem Gelenk wie im Meatus acusticus externus +• Auskultation der Gelenkgeräusche +• Bestimmung der Kondylenposition + Comprend: +• la palpation sur l'articulation et dans le conduit auditif externe +• l'auscultation des bruits articulaires +• la détermination de la position des condyles + Comprende: +• palpazione sull'articolazione come pure nel canale acustico esterno +• auscultazione di eventuali rumori articolari +• determinazione della posizione dei condili + TP + 17.4 + 14.8 + 17.4 + 20 + + + Kap + 2 + 04.02 + Einschleiftherapie + Traitement par meulage sélectif + Molaggio occlusale + + + Lei + 3 + 04.02 + 4.1700 + Okklusionsanalyse + Analyse de l'occlusion + Analisi occlusale + Okklusionsanalyse im Artikulator durch den Zahnarzt + +• Registrieren siehe Tarifziffern 4.0750, 4.0760, 4.0770, 4.0780 +• Kiefermodelle siehe Tarifziffer 4.0900 + Analyse de l'occlusion en articulateur, par le médecin-dentiste + +• Enregistrement: voir positions 4.0750, 4.0760, 4.0770 et 4.0780 +• Modèles: voir position 4.0900 + Analisi dell'occlusione in articolatore da parte del medico dentista + +• Registrazione vedi cifre 4.0750, 4.0760, 4.0770, 4.0780 +• Modelli vedi cifra 4.0900 + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Kap + 2 + 05.01 + Zahnentfernungen + Extractions + Estrazioni + Zusätzlich verrechenbar sind maximal 4 Nähte (Nahtmaterial inbegriffen) + Sont facturables en supplément: 4 sutures au maximum (matériel de suture inclus) + Fatturabili in aggiunta al massimo 4 suture (materiale di sutura compreso) + + + Lei + 3 + 05.01 + 4.2000 + Zahnextraktion, einfach + Extraction simple + Estrazione di un dente, semplice + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 05.01 + 4.2010 + Zahnextraktion, aufwändig + Extraction complexe + Estrazione di un dente, laboriosa + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 05.01 + 4.2020 + Zahnextraktion mit Separieren + Extraction avec séparation radiculaire + Estrazione di un dente con sezione + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 136 + 115.6 + 136 + 156.4 + + + Lei + 3 + 04.02 + 4.1710 + Einschleifplan + Plan de meulage + Piano di molaggio occlusale + Erstellen eines Einschleifplanes anhand einartikulierter Modelle durch den Zahnarzt + Établissement, par le médecin-dentiste, d'un plan de meulage à partir de modèles en articulateur + Progettazione di un piano di molaggio da parte del medico dentista in base a modelli montati in articolatore + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 04.02 + 4.1720 + Einschleifen, pro 5 Min. + Meulage, par tranche de 5 min. + Molaggio, ogni 5 minuti + • Inklusive Politur und Fluoridierung der beschliffenen Zähne; +• Pro Sitzung maximal 3 mal verrechenbar + • Polissage et fluoration des dents polies inclus +• Peut être facturée au maximum trois fois par séance. + • Compresa lucidatura e fluorazione dei denti molati: +• Fatturabile al massimo 3 volte per seduta + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 2 + 04.03 + Schienentherapie + Traitement par gouttières occlusales + Ferule + Ohne allfällige Bissnahme, inklusive Abdruck, Eingliederung und Instruktion. + Sans enregistrement de l'occlusion, mais prise d'empreintes, mise en bouche et instructions incluses + Registrazione del morso esclusa, impronte, posa e istruzioni incluse + + + Lei + 3 + 04.03 + 4.1750 + Tiefziehschiene, pro Kiefer + Gouttière thermoformée, par arcade + Ferula termoplastica, per mascella + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 04.03 + 4.1760 + Kunststoffschiene + Gouttière en résine + Ferula in resina + Kunststoffschienen wie Stabilisierungsschiene, Repositionsschiene und dergleichen (Herstellung im Artikulator) und Einschleifen der Schiene im Mund + +Zahntechnische Laborleistung separat verrechenbar + Gouttières en résine telles que gouttières de fixation, gouttière de repositionnement et autres gouttières assimilables (confectionnées en articulateur) et adaptation par meulage en bouche + +Prestations du laboratoire de technique dentaire facturées à part + Ferula in resina (di stabilizzazione, di riposizionamento e simili) confezionata in articolatore, equilibrata in bocca + +Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 275.4 + 234.1 + 275.4 + 316.7 + + + Lei + 3 + 04.03 + 4.1770 + Michiganschiene + Gouttière Michigan + Ferula Michigan + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 303.3 + 257.8 + 303.3 + 348.8 + + + Lei + 3 + 04.03 + 4.1780 + Semipermanente Schiene Metall + Gouttière semi-permanente en métal + Ferula semipermanente in metallo + • Inklusive individuellem Löffel +• Zahntechnische Laborleistung separat verrechenbar + • Porte-empreinte individuel inclus +• Prestations du laboratoire de technique dentaire facturées à part + • Incluso portaimpronta individuale +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 477.7 + 406 + 477.7 + 549.4 + + + Lei + 3 + 04.03 + 4.1790 + Pivotierungsschiene + Gouttière de décompression avec butée postérieure + + Ferula a pivot + • Herstellung im Artikulator +• Zahntechnische Laborleistung separat verrechenbar + • Confection en articulateur +• Prestations du laboratoire de technique dentaire facturées à part + • Confezione nell'articolatore +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 04.03 + 4.1800 + Herstellung eines Frontzahn-Jigs im Mund + Confection d'un jig incisif, direct + Confezione di un jig frontale direttamente in bocca + TP + 125.5 + 106.7 + 125.5 + 144.3 + + + Lei + 3 + 04.03 + 4.1810 + Abänderung/Reparatur einer bestehenden Schiene im Mund, einfach + Petite modification/réparation en bouche d'une gouttière existante + Modifica/riparazione di una ferula esistente direttamente in bocca, semplice + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Lei + 3 + 04.03 + 4.1820 + Abänderung/Reparatur einer bestehenden Schiene, aufwändig, mit Abdruck + Importante modification/réparation d'une gouttière existante, avec prise d'empreintes + Modifica/riparazione di una ferula esistente, laboriosa, con impronta + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Lei + 3 + 04.03 + 4.1830 + NTI-tss (Nociceptive Trigeminale Inhibition-tension supression system) + NTI-tss (Nociceptive Trigeminal Inhibition-Tension Supression System) + NTI-tss (Nociceptive Trigeminale Inhibition-tension supression system) + Inklusive Material + Matériel inclus + Materiale incluso + TP + 345.2 + 293.4 + 345.2 + 397 + + + Kap + 2 + 04.04 + Physio- und physikalische Therapie + Physiothérapie et thérapie fonctionnelle + Fisioterapia e terapia fisica + + + Lei + 3 + 04.04 + 4.1850 + Instruktion Physikalische Therapie + Instructions de thérapie physique + Istruzione terapia fisica + Instruktion von Wärme- und Kältetherapie; Massage + Instructions relatives au traitement par la chaleur et par le froid, massage + Istruzione della termo- e crioterapia; massaggio + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 04.04 + 4.1860 + Instruktion Physiotherapie + Instructions de physiothérapie + Istruzione fisioterapia + Kann bei ungelenken Patienten ausnahmsweise mehr als 1 mal verrechnet werden + À titre exceptionnel, peut être facturée plus d'une fois pour les patients maladroits. + Questa cifra viene onorata generalmente una sola volta, tranne nel caso di pazienti maldestri + TP + 94.1 + 80 + 94.1 + 108.2 + + + Lei + 3 + 04.04 + 4.1870 + Behandlung mit Ultraschall/Sollux/Mikro- oder Kurzwellen/UV + Traitement par ultrasons/Sollux/micro-ondes ou ondes courtes/UV + Trattamento con ultrasuoni, sollux, microonde o onde corte/ultraviolette + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 04.04 + 4.1880 + Myofunktionelle Therapie, pro 5 Min. + Traitement myofonctionnel, par tranche de 5 min. + Terapia miofunzionale, ogni 5 minuti + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 2 + 04.05 + Nachkontrolle + Suivi + Controllo successivo + + + Lei + 3 + 04.05 + 4.1900 + MAP Nachkontrolle + Contrôle de suivi des MAP + Controllo successivo MAP + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 04.05 + 4.1910 + Nacheinschleifen einer Schiene, pro 5 Min. + Meulage correctif d'une gouttière, par tranche de 5 min. + Molaggio correttivo di una ferula, ogni 5 minuti + Kann pro Sitzung maximal 3 mal verrechnet werden. + Peut être facturée au maximum trois fois par séance. + Fatturabile al massimo 3 volte per seduta. + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Kap + 1 + 05 + Zahnärztliche Chirurgie, Oralchirurgie + Chirurgie dentaire, chirurgie orale + Chirurgia dentale, chirurgia orale + + + Lei + 3 + 05.01 + 4.2030 + Zahnextraktion unter Aufklappung + Extraction avec volet + Estrazione di un dente con sollevamento di un lembo + • Gilt auch für Milchzähne; +• jede weitere Extraktion in der gleichen Aufklappung: Tarifziffern 4.2000, 4.2010, 4.2020 + • Position également applicable aux dents de lait +• Chaque extraction supplémentaire dans une même ouverture est facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 + • Vale anche per i denti decidui +• Ogni ulteriore estrazione con il medesimo sollevamento di un lembo: cifre 4.2000, 4.2010, 4.2020 + TP + 226.6 + 192.6 + 226.60000000000002 + 260.6 + + + Lei + 3 + 05.01 + 4.2040 + Zahnextraktion unter Aufklappung mit Separieren + Extraction avec volet et séparation radiculaire + Estrazione di un dente con sollevamento di un lembo con sezione + • Gilt auch für Milchzähne; +• jede weitere Extraktion in der gleichen Aufklappung: Tarifziffern 4.2000, 4.2010, 4.2020 + • Position également applicable aux dents de lait +• Chaque extraction supplémentaire dans une même ouverture est facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 + • Vale anche per i denti decidui +• Ogni ulteriore estrazione con il medesimo sollevamento di un lembo: cifre 4.2000, 4.2010, 4.2020 + TP + 313.8 + 266.7 + 313.79999999999995 + 360.9 + + + Lei + 3 + 05.01 + 4.2050 + Hemisektion oder Wurzelamputation + Hémisection ou amputation radiculaire + Emisezione o rizotomia + Lappen gemäss Tarifziffern 4.1370, 4.1400, 4.1410 bzw. 4.2030 + Ouverture du volet facturée au moyen de la position 4.1370, 4.1400, 4.1410 ou 4.2030 + Lembo secondo cifre 4.1370, 4.1400, 4.1410 risp. 4.2030 + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 05.01 + 4.2060 + Operative Entfernung eines retinierten Zahnes, einfacher Fall + Extraction chirurgicale d'une dent incluse, cas simple + Estrazione chirurgica di un dente incluso, caso semplice + Operative Entfernung eines retinierten/impaktierten Zahnes ohne Durchtrennung des Zahnes + Extraction chirurgicale d'une dent incluse/enclavée sans fractionnement + Estrazione chirurgica di un dente ritenuto o incluso senza frammentazione del dente + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 05.01 + 4.2070 + Operative Entfernung eines retinierten Zahnes, schwerer Fall + Extraction chirurgicale d'une dent incluse, cas complexe + Estrazione chirurgica di un dente incluso, caso complesso + Operative Entfernung eines retinierten/impaktierten Zahnes mit Durchtrennung des Zahnes + Extraction chirurgicale d'une dent incluse/enclavée avec fractionnement + Estrazione chirurgica di un dente ritenuto o incluso con frammentazione del dente + TP + 404.4 + 343.7 + 404.4 + 465.1 + + + Lei + 3 + 05.01 + 4.2080 + Zahnkeimentfernung zur Transplantation + Prélèvement d'un germe dentaire pour transplantation + Estrazione chirurgica di un germe dentario per trapianto + TP + 404.4 + 343.7 + 404.4 + 465.1 + + + Lei + 3 + 05.01 + 4.2090 + Aufwändige Massnahmen zur Kammerhaltung + Mesures spécifiques pour la préservation de l'os alvéolaire + Misura complessa per la conservazione dell'osso alveolare + • Inklusive Auffüllen. Gilt nicht für Gelatineschwamm. +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + • Comblement inclus, ne s'applique pas aux éponges de mousse de gélatine +• Matériel facturer à part, avec position cluster (voir chapitre 20) + • Riempimento compreso. Non si applica alla spugna di gelatina. +• Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 109.8 + 93.3 + 109.8 + 126.3 + + + Kap + 2 + 05.02 + Chirurgische Eingriffe an Weichteilen + Interventions chirurgicales sur les tissus mous + Interventi chirurgici sui tessuti molli + Zusätzlich verrechenbar sind maximal 4 Nähte (Nahtmaterial inbegriffen) + Sont facturables en supplément: 4 sutures au maximum (matériel de suture inclus) + Fatturabili in aggiunta al massimo 4 suture (materiale di sutura compreso) + + + Lei + 3 + 05.02 + 4.2100 + Kleine Exzision + Petite excision + Piccola escissione + Schleimhautkappenexzision, Papillenexzision oder andere kleine Exzisionen. +Anwendung auch für Kürettage von Granulationsgewebe bei Extraktionen. + Excision d'un capuchon muqueux, de papilles ou autres petites excisions. +Position à appliquer également au curetage du tissu de granulation lors de l'extraction. + Escissioni di cappucci mucosi, di papille o altre piccole escissioni. +Questa posizione si applica anche per curetage di tessuto di granulazione in caso di estrazioni. + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 05.02 + 4.2120 + Mundschleimhautbehandlung + Traitement de la muqueuse + Cura della mucosa orale + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 05.02 + 4.2130 + Probeexzision + Excision d'echantillonnage + Biopsia + Probeexzision; Exzision eines Reizfibroms, Papilloms oder einer Mukozele + Prélèvement d'échantillons; Excision d'un fibrome, d'un papillome ou d'un mucocèle + Biopsia; escissione di un fibroma, di un papilloma o di una mucocele + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 05.02 + 4.2140 + Exzision + Excision + Escissione + Exzision einer Epulis, eines peripheren Riesenzellgranuloms oder einer papillären Hyperplasie + Excision d'un épulis, d'un granulome périphérique à cellules géantes ou d'une hyperplasie papillaire + Escissione di una epulide, di un granuloma gigantocellulare o di una iperplasia papillare + TP + 212.7 + 180.8 + 212.7 + 244.6 + + + Lei + 3 + 05.02 + 4.2150 + Operation einer Ranula + Opération d'une grenouillette + Operazione di una ranula + TP + 320.8 + 272.7 + 320.79999999999995 + 368.9 + + + Lei + 3 + 05.02 + 4.2160 + Speichelsteinentfernung, im Mündungsbereich + Ablation d'un calcul salivaire à l'orifice du canal salivaire + Rimozione di calcoli salivari vicini allo sbocco + TP + 174.3 + 148.2 + 174.3 + 200.4 + + + Lei + 3 + 05.02 + 4.2170 + Fremdkörperenetfernung aus Weichteilen + Ablation d'un corps étranger dans les tissus mous + Rimozione di un corpo estraneo dai tessuti molli + TP + 258 + 219.3 + 258 + 296.7 + + + Lei + 3 + 05.02 + 4.2180 + Korrektur Lippenband, Zungenband oder Wangenband + Excision/correction de freins labiaux, linguaux ou jugaux + Correzione dei frenuli della lingua, della guancia o delle labbra + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 05.02 + 4.2190 + Schlotterkammexzision, pro Quadrant + Excision de la crête flottante, par quadrant + Escissione di una cresta fibromatosa, per quadrante + Keilförmige Schlotterkammexzision, pro Quadrant + Excision cunéiforme de la crête flottante, par quadrant + Escissione cuneiforme di una cresta fibromatosa mobile, per quadrante + TP + 251 + 213.4 + 251.05 + 288.7 + + + Lei + 3 + 05.02 + 4.2200 + Vestibulumplastik, pro Kiefer + Vestibuloplastie, par arcade + Plastica vestibolare, per mascella + Exklusive Transplantat + Greffon non inclus + Trapianto escluso + TP + 435.8 + 370.4 + 435.79999999999995 + 501.2 + + + Lei + 3 + 05.02 + 4.2220 + Explorative Aufklappung + Ouverture d'un volet d'exploration + Sollevamento esplorativo di un lembo + Intraoperative Diagnose zwingt zum Umplanen. + Le diagnostic périopétaroire peut nécessiter une adaptation du plan de traitement. + Diagnosi intraoperatoria rende necessaria la ripianificazione. + TP + 177.8 + 151.1 + 177.8 + 204.5 + + + Lei + 3 + 05.02 + 4.2250 + Unterfüttern einer Platte + Rebasage d'une plaque + Ribasamento di una placca + Unterfüttern einer Platte mit thermoplastischem Material + Rebasage d'une plaque avec un matériau thermoplastique + Ribasamento di una placca con materiale termoplastico + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 05.02 + 4.2210 + Mundbodenplastik + Plastie du plancher buccal + Plastica del pavimento orale + Mundbodenplastik ohne Durchtrennung des Musculus mylohyoideus. + +Exklusive Transplantat + Plastie du plancher buccal sans séparation du muscle mylo-hyoïdien. + +Greffon non inclus + Plastica del pavimento orale senza scissione del muscolo miloioideo. + +Trapianto escluso + TP + 505.5 + 429.7 + 505.5 + 581.3 + + + Lei + 3 + 05.02 + 4.2230 + Schleimhautentnahme aus Gaumen zur Transplantation + Prélèvement d'un greffon de muqueuse palatine + Prelievo di mucosa dal palato per trapianto + Grossflächige Schleimhautentnahme aus Gaumen zur Transplantation. +Inklusive Verband; inklusive Transplantation und Befestigung der Platte mit 3 Aufhängungen; zusätzlich verrechenbar sind maximal 4 Nähte (Nahtmaterial inbegriffen) + Prélèvement d'un greffon de muqueuse palatine important. +Sont inclus: pansement, greffe, fixation de la plaque par trois points. +Sont facturables en supplément: 4 sutures au maximum (matériel de suture inclus). + Prelievo esteso di mucosa dal palato per trapianto. +Bendaggio incluso; Incluso trapianto e fissaggio della placca con 3 punti di fissaggio;Fatturabili in aggiunta al massimo 4 suture (materiale di sutura compreso) + TP + 383.5 + 326 + 383.5 + 441 + + + Lei + 3 + 05.02 + 4.2240 + Schleimhautentnahme aus Wange zur Transplantation + Prélèvement d'un greffon de muqueuse jugale + Prelievo di mucosa dalla guancia per trapianto + Inklusive Transplantation und Befestigung der Platte mit 3 Aufhängungen; zusätzlich verrechenbar sind maximal 4 Nähte (Nahtmaterial inbegriffen) + Sont inclcus: greffe, fixation de la plaque avec trois suspensions. +Sont facturables en supplément: 4 sutures au maximum (matériel de suture inclus). + Incluso trapianto e fissaggio della placca con 3 punti di fissaggio;Fatturabili in aggiunta al massimo 4 suture (materiale di sutura compreso) + TP + 313.8 + 266.7 + 313.79999999999995 + 360.9 + + + Lei + 3 + 05.02 + 4.2260 + Einfache Bindegewebs-Entnahme + Prélèvement simple de tissu conjonctif + Prelievo semplice di tessuto connettivo + Einfache Bindegewebs-Entnahme, kombiniert mit weiterem chirurgischen Eingriff + Prélèvement simple de tissu conjonctif, associé à d'autres interventions chirurgicales + Prelievo semplice di tessuto connettivo, abbinato ad altro intervento chirurgico + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 05.02 + 4.2270 + Abszesseröffnung + Incision d'un abcès + Sbrigliamento di un ascesso + Inklusive Drainage + Drainage inclus + Drenaggio compreso + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Lei + 3 + 05.02 + 4.2280 + Eröffnung Logenabszess + Incision d'un abcès en loge + Sbrigliamento di un ascesso di loggia + Intraorale Eröffnung eines Logenabszesses +Inklusive Drainage + Incision intraorale d'un abcès de loge + +Drainage inclus + Incisione intraorale di un ascesso di loggia +Drenaggio compreso + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Kap + 2 + 05.03 + Chirurgische Eingriffe am Knochen + Interventions chirurgicales sur l'os + Interventi chirurgici sull'osso + Zusätzlich verrechenbar sind maximal 4 Nähte (Nahtmaterial inbegriffen) + Sont facturables en supplément: 4 sutures au maximum (matériel de suture inclus). + Fatturabili in aggiunta al massimo 4 suture (materiale di sutura compreso) + + + Lei + 3 + 05.03 + 4.2310 + Wurzelspitzenresektion, pro Wurzel + Résection apicale, par racine + Resezione apicale, per radice + Inklusive apikale Kürettage + Curetage périapical inclus + Curetage apicale compresa + TP + 296.4 + 251.9 + 296.4 + 340.9 + + + Lei + 3 + 05.03 + 4.2320 + + Jede weitere Wurzelspitzenresektion in der gleichen Aufklappung, pro Wurzel + + chaque résection apicale supplémentaire dans la même ouverture, par racine + + Ogni altra resezione apicale durante il medesimo sollevamento di un lembo, per radice + Inklusive apikale Kürettage + Curetage périapical inclus + Curetage apicale compresa + TP + 216.2 + 183.8 + 216.2 + 248.6 + + + Lei + 3 + 05.03 + 4.2330 + Wurzelspitzenresektion mit retrogradem Verschluss, pro Wurzel + Résection apicale avec obturation rétrograde, par racine + Resezione apicale con otturazione retrograda, per radice + • Inklusive apikale Kürettage +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + • Curetage périapical inclus +• Matériel facturer à part, avec position cluster (voir chapitre 20) + • Curetage apicale compresa +• Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 505.5 + 429.7 + 505.5 + 581.3 + + + Lei + 3 + 05.03 + 4.2340 + + Jede weitere Wurzelspitzenresektion mit retrogradem Verschluss in gleicher Aufklappung, pro Wurzel + + chaque résection apicale avec obturation rétrograde supplémentaire dans la même ouverture, par racine + + Ogni altra resezione apicale con otturazione retrograda durante il medesimo sollevamento di un lembo, per radice + • Inklusive apikale Kürettage +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + • Curetage périapical inclus +• Matériel facturer à part, avec position cluster (voir chapitre 20) + • Curetage apicale compresa +• Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 369.6 + 314.2 + 369.6 + 425 + + + Lei + 3 + 05.03 + 4.2350 + Zystenoperation, ohne Auffüllen des Knochenhohlraumes + Opération d'un kyste sans remplissage de la cavité osseuse + Operazione di una ciste senza riempimento della cavità ossea + Gleichzeitiges Entfernen des beteiligten Zahnes gemäss Tarifziffern 4.2000, 4.2010, 4.2020 + Extraction simultanée de la dent impliquée facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 + Contemporanea estrazione del dente interessato secondo cifre 4.2000, 4.2010, 4.2020 + TP + 345.2 + 293.4 + 345.2 + 397 + + + Lei + 3 + 05.03 + 4.2360 + Zystenoperation, mit Auffüllen des Knochenhohlraumes + Opération d'un kyste avec remplissage de la cavité osseuse + Operazione di una ciste con riempimento della cavità ossea + • Durchmesser grösser als 1 cm; +• gleichzeitiges Entfernen des beteiligten Zahnes gemäss Tarifziffern 4.2000, 4.2010, 4.2020; +• gleichzeitiges Entfernen des verlagerten Zahnes gemäss Tarifziffern 4.2060, 4.2070 + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Diamètre supérieur à 1 cm +• Extraction simultanée de la dent impliquée facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 +• Extraction simultanée de la dent malpositionnée au moyen de la position 4.2060 ou 4.2070 + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Diametro superiore ad 1 cm +• Contemporanea estrazione del dente interessato secondo cifre 4.2000, 4.2010, 4.2020 +• Contemporanea estrazione del dente dislocato secondo cifre 4.2060, 4.2070 + +• Costi dil materiali di riempimento con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 401 + 340.9 + 401.04999999999995 + 461.2 + + + Kap + 1 + 06 + Kieferchirurgie + Chirurgie maxillo-faciale + Chirurgia mascellare + + + Lei + 3 + 06.01 + 4.3000 + Sekundäre Korrrektur des Knochens bei Gaumenspalte, mit ein- oder beidseitiger Kieferspalte + Correction secondaire de l'os en cas de fente palatine, avec fente maxillaire uni- ou bilatérale + Correzione secondaria dell'osso in gnato-palatoschisi uni- o bilaterale + TP + 1736.3 + 1475.9 + 1736.3000000000002 + 1996.7 + + + Lei + 3 + 06.01 + 4.3010 + Osteoplastik + Plastie osseuse + Osteoplastica + Knochenentnahme siehe Tarifziffer 4.3600 + Prélèvement osseux facturé au moyen de la position 4.3600 + Prelievo di osso vedi cifra 4.3600 + TP + 1000.6 + 850.5 + 1000.6 + 1150.7 + + + Lei + 3 + 05.03 + 4.2370 + Zystenoperation zur Mundhöhle + Opération d'un kyste en direction de la cavité buccale + Operazione di una ciste con apertura nella cavità orale + Gleichzeitiges Entfernen des beteiligten Zahnes gemäss Tarifziffern 4.2000, 4.2010, 4.2020 + Extraction simultanée de la dent impliquée facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 + Contemporanea estrazione del dente interessato secondo cifre 4.2000, 4.2010, 4.2020 + TP + 383.5 + 326 + 383.5 + 441 + + + Lei + 3 + 05.03 + 4.2380 + Zystenoperation zur Nasen- oder Kieferhöhle + Opération d'un kyste en direction de la cavité nasale ou du sinus maxillaire + Operazione di una ciste con apertura nella cavità nasale o nel seno mascellare + Zystenoperation zur Nasen- oder Kieferhöhle oder ausgedehnte Unterkieferzyste, mit Übergreifen auf Ramus ascendens oder Corpus mandibulae. + +Gleichzeitiges Entfernen des beteiligten Zahnes gemäss Tarifziffern 4.2000, 4.2010, 4.2020 + Opération d'un kyste en direction de la cavité nasale ou du sinus maxillaire ou d'un kyste étendu de la mandibule empiétant sur le ramus ascendens ou le corpus mandibulae. + +Extraction simultanée de la dent impliquée facturée au moyen de la position 4.2000, 4.2010 ou 4.2020 + Cistostomia con apertura nella cavità nasale o nel seno mascellare, oppure di ciste estesa nella mandibola, coinvolgente il ramo ascendente o il corpo della mandibula. + +Contemporanea estrazione del dente interessato secondo cifre 4.2000, 4.2010, 4.2020 + TP + 505.5 + 429.7 + 505.5 + 581.3 + + + Lei + 3 + 05.03 + 4.2390 + Eingliedern eines Obturators + Insertion d'un obturateur + + + Confezione di un otturatore + + + • Inklusive Abformung +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreinte incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Impronta compresa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Lei + 3 + 05.03 + 4.2400 + Kontinuierliche Anpassung des Obturators + Ajustage de l'obturateur + Adattamento ripetuto di un otturatore + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 05.03 + 4.2410 + Revision am Alveolarfortsatz + Révision du procès alvéolaire + Revisione della cresta alveolare + Revision am Alveolarfortsatz; Entfernung von ostitischen Herden oder Knochensplittern, als alleiniger Eingriff, pro Sextant + Révision du procès alvéolaire; ablation de foyers d'ostéite ou ablation d'esquilles osseuses, en tant qu'intervention distincte par sextant + Revisione della cresta alveolare: rimozione di focolai osteolitici o di schegge d'osso, come intervento separato, per ogni sestante + TP + 191.8 + 163 + 191.8 + 220.6 + + + Lei + 3 + 05.03 + 4.2420 + Fremdkörperentfernung + Ablation d'un corps étranger + Rimozione di un corpo estraneo + Entfernung eines Fremdkörpers aus Knochen oder Sequestrotomie, als alleiniger Eingriff + Ablation d'un corps étranger dans l'os ou séquestrotomie en tant qu'intervention distincte + Rimozione di un corpo estraneo o di un sequestro osseo, come intervento separato + TP + 275.4 + 234.1 + 275.4 + 316.7 + + + Lei + 3 + 05.03 + 4.2430 + Abtragen von Spina nasalis + Correction de l'épine nasale + Ablazione della spina nasale + Abtragen von Spina nasalis, Linea mylohyoidea oder Eindrücken der Wangenleiste + Correction de l'épine nasale, de la ligne mylo-hyoïdienne ou du cintre malaire + Ablazione della spina nasale, della linea miloioidea o sfondamento della cornice zigomatica + TP + 320.8 + 272.7 + 320.79999999999995 + 368.9 + + + Lei + 3 + 05.03 + 4.2440 + Osteotomie am Alveolarfortsatz, pro Sextant + Ostéotomie du procès alvéolaire, par sextant + Osteotomia della cresta alveolare, per sestante + Nicht kombinierbar mit Zahnextraktion. + N'est pas cumulable avec une extraction dentaire + Non combinabile con estrazioni. + TP + 352.1 + 299.3 + 352.1 + 404.9 + + + Lei + 3 + 05.03 + 4.2450 + Entfernung eines gutartigen Tumors + Ablation d'une tumeur bénigne + Asportazione di un tumore benigno + Entfernung eines gutartigen Tumors im Alveolarfortsatzbereich, bis 1 cm im Durchmesser + Ablation d'une tumeur bénigne, d'un diamètre jusqu'à 1 cm, dans la région du procès alvéolaire + Asportazione di un tumore benigno nella regione del processo alveolare, fino a ca. 1 cm di diametro + TP + 373.1 + 317.1 + 373.1 + 429.1 + + + Lei + 3 + 05.03 + 4.2460 + Transplantation eines Zahnkeims + Greffe d'un germe dentaire + Trapianto di un germe dentario + Entnahme des Zahnkeims gemäss Tarifziffer 4.2080 + Prélèvement du germe dentaire facturé au moyen de la position 4.2080 + Prelievo di un germe dentario secondo cifra 4.2080 + TP + 331.2 + 281.5 + 331.2 + 380.9 + + + Lei + 3 + 05.03 + 4.2470 + Retrograder Verschluss einer Wurzel bei gleichzeitiger Zystenoperation + Obturatrion rétrograde d'une racine lors de l'opération d'un kyste + Otturazione retrograda di una radice con simultanea operazione di una ciste + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 108.1 + 91.9 + 108.1 + 124.3 + + + Lei + 3 + 05.03 + 4.2480 + Resektion bei gleichzeitiger Zystenoperation + Résection apicale lors de l'opération d'un kyste + Resezione con simultanea operazione di una ciste + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Lei + 3 + 05.04 + 4.2500 + Erstbeurteilung und Aufklärung Patient, pro Behandlungsfall + Première évaluation et information du patient, par cas + Prima valutazione e informazione del paziente, per ogni caso + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 05.04 + 4.2510 + Sinusbodenelevation bei gleichzeitiger Implantation (lateraler Zugang) + Élévation du plancher sinusien avec pose d'implant (accès latéral) + Sollevamento del pavimento sinusale con simultaneo impianto (accesso laterale) + • Nur nach Rücksprache mit den Versicherern verrechenbar +• Inklusive Legen und Fixieren einer Membran +• Allfällige Knochenentnahme gemäss Tarifziffer 4.3600 +• Keine Nähte verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur +• Pose et fixation d'une membrane incluses +• Prélèvement osseux éventuel facturé au moyen de la position 4.3600 +• Sutures incluses + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori +• Posa e fissaggio di una membrana inclusi +• Eventuale prelievo di osso secondo cifra 4.3600 +• Suture non fatturabili + +Materiale con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 324.2 + 275.6 + 324.20000000000005 + 372.8 + + + Lei + 3 + 05.04 + 4.2555 + Erste Nachbehandlung nach Implantation + Premiers soins postopératoires après pose d'implants + Prima cura successiva dopo impianto + Jede weitere Nachbehandlung Tarifziffer 4.2900 + Soins postopératoires ultérieurs facturés au moyen de la position 4.2900 + Ogni ulteriore cura successiva cifra 4.2900 + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 3 + 05.04 + 4.2570 + Wiedereröffnungsoperation + Réouverture + Scappucciamento + Wiedereröffnung bei 2-phasigen Implantaten, bzw. Distanzoperation + Réouverture lors de la pose d'implants en deux temps + Scappucciamento di impianti sommersi risp, operazione di seconda fase + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Kap + 2 + 05.04 + Implantation + Implantologie + Impianto + Orthoimplantate siehe Kapitel 11 Kieferorthopädie, Tarifziffer 4.8950, 4.8960, 4.8970 + +Nur nach Rücksprache mit den Versicherern verrechenbar. + +Material: +Die Grundausrüstung an allgemeinchirurgischen und speziellen Implantationsinstrumenten Rätschen, spezielle Winkelstücke etc. ist in der Grundausrüstung der Praxis enthalten und kann nicht separat verrechnet werden. + +Für Implantate, festmontierte Hilfsteile, Einweginstrumente und Einweghilfsteile werden gemäss Preisliste des Herstellers zusätzlich 20% vergütet. Damit ist sowohl die Lagerhaltung als auch die erhöhte Beanspruchung der Spezialinstrumente abgegolten. + Implants pour ancrages orthodontiques voir chapitre 11 Orthopédie dento-faciale, positions 4.8950, 4.8960 et 4.8970 + +Ces prestations ne peuvent être facturées qu'après concertation avec l'assureur. + +Matériel : +Les instruments pour la chirurgie de base et la pose d'implants (clés à cliquet, contre-angles spéciaux, etc.) font partie de l'inventaire du cabinet et ne peuvent être facturés à part. + +Les implants, les éléments auxiliaires conjoints, le matériel à usage unique (instruments et éléments auxiliaires) sont facturés au prix indiqué par le fabricant avec une majoration de 20 % afin de tenir compte de leur stockage et de l'usure des instruments spéciaux. + Impianti ortopedici vedi capitolo 11 Ortognatodonzia, cifre 4.8950, 4.8960, 4.8970 + +Fatturabile solo previa consultazione degli assicuratori. + +Materiale: +L'investimento nell'equipaggiamento di chirurgia orale e implantare (cricchettini, manipoli speciali ecc.) è compreso nell'equipaggiamento di base dell'ambulatorio e non può essere fatturato separatamente. + +Per impianti, parti montate stabilmente al paziente, strumenti monouso e parti ausiliari monouso vanno fatturati i prezzi del fabbricante con un supplemento del 20%. Con ciò si indennizza lo stoccaggio e il deperimento degli strumenti speciali. + + + Lei + 3 + 05.04 + 4.2520 + Sinusbodenelevation alleiniger Eingriff (lateraler Zugang) + Élévation du plancher sinusien en tant qu'intervention distincte (accès latéral) + Sollevamento del pavimento sinusale come intervento a sé stante (accesso laterale) + • Nur nach Rücksprache mit den Versicherern verrechenbar +• Inklusive Legen und Fixieren einer Membran +• Allfällige Knochenentnahme gemäss Tarifziffer 4.3600 +• Maximal 4 Nähte verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur +• Pose et fixation d'une membrane incluses +• Prélèvement osseux éventuel facturé au moyen de la position 4.3600 +• Jusqu'à quatre sutures peuvent être facturées à part + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori +• Posa e fissaggio di una membrana inclusi +• Eventuale prelievo di osso secondo cifra 4.3600 +• Fatturabili 4 suture al massimo + +Materiale con plurime tipizzazioni (Cap. 19) fatturabile separatamente + TP + 659 + 560.2 + 659.05 + 757.9 + + + Lei + 3 + 05.04 + 4.2530 + Erste Implantation + Pose du premier implant + Posizionamento del primo impianto + • Nur nach Rücksprache mit den Versicherern verrechenbar. +• Inklusive Lappenbildung, Aufbereitung des Implantatbettes, Montage des Platzhalters und Wundverschluss; +• Maximal 4 Nähte verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur +• Soulèvement d'un lambeau, préparation du lit de l'implant, pose d'une vis de fermeture ou d'une coiffe de cicatrisation et fermeture de la plaie inclus +• Jusqu'à quatre sutures peuvent être facturées à part + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori +• Inclusi sollevamento del lembo, preparazione della sede dell'impianto, montaggio di un mantenitore di spazio e sutura +• Fatturabili al massimo 4 suture + +Materiali con plurime tipizzazioni (Cap. 19) fatturabile separatamente + TP + 669.4 + 569 + 669.4 + 769.8 + + + Lei + 3 + 05.04 + 4.2540 + + Jedes weitere Implantat, bei gleicher Aufklappung + + chaque implant supplémentaire dans la même ouverture + + Posizionamento di ogni altro impianto durante il medesimo sollevamento di un lembo + • Nur nach Rücksprache mit den Versicherern verrechenbar +• Inklusive Lappenbildung, Aufbereitung des Implantatbettes und Montage des Platzhalters; +• Keine Nähte verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur +• Soulèvement d'un lambeau, préparation du lit de l'implant et pose d'une vis de fermeture ou d'une coiffe de cicatrisation inclus +• Sutures incluses dans la pose du premier implant + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori +• Inclusi sollevamento del lembo, preparazione della sede dell'impianto, montaggio di una vite di chiusura o di una cappa di guarigione; +• Suture non fatturabili + +Materiali con plurime tipizzazioni (Cap. 19) fatturabile separatamente + TP + 401 + 340.9 + 401.04999999999995 + 461.2 + + + Lei + 3 + 05.04 + 4.2545 + Erstes Mini-Implantat + Pose du premier mini-implant + Posizionamento del primo mini-impianto + • Nur nach Rücksprache mit den Versicherern verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori + +Materiali con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 334.7 + 284.5 + 334.7 + 384.9 + + + Lei + 3 + 05.04 + 4.2550 + + Jedes weitere Mini-Implantat, bei gleicher Aufklappung + + chaque mini-implant supplémentaire dans la même ouverture + + Posizionamento di ogni altro mini-impianto durante il medesimo sollevamento di un lembo + • Nur nach Rücksprache mit den Versicherern verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Ne peut être facturée qu'après concertation avec l'assureur + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Conteggiabile solo previa consultazione degli assicuratori + +Materiali con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 209.2 + 177.8 + 209.2 + 240.6 + + + Lei + 3 + 06.02 + 4.3240 + Kinn- oder Korpusosteotomie, mit unvollständiger Durchtrennung des Unterkiefers + Ostéotomie du menton ou du corps de la mandibule, sans interruption de la continuité de l'arcade + Osteotomia del mento o del corpo mandibolare senza soluzione della continuità mandibolare + TP + 1101.7 + 936.4 + 1101.7 + 1267 + + + Lei + 3 + 06.02 + 4.3250 + Zungenreduktionsplastik + Plastie de réduction de la langue + Riduzione chirurgica del volume della lingua + TP + 693.8 + 589.7 + 693.8 + 797.9 + + + Lei + 3 + 06.02 + 4.3260 + Operationsplanung an Modellen + Planification d'une intervention sur modèles + Pianificazione dell'operazione su modelli + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 05.04 + 4.2575 + + Jede weitere Wiedereröffnungsoperation, in der gleichen Sitzung + + chaque réouverture supplémentaire durant la même séance + + Ogni altro scappucciamento durante la medesima seduta + + Jede weitere Wiedereröffnung bei 2-phasigen Implantaten, in der gleichen Sitzung + + chaque réouverture supplémentaire effectuée durant la même séance lors de la pose d'implants en deux temps + + ogni ulteriore scappucciamento di impianti sommersi, durante la medesima seduta + TP + 69.7 + 59.2 + 69.7 + 80.2 + + + Lei + 3 + 05.04 + 4.2580 + Montage und Demontage von Hilfsteilen + Montage et démontage d'éléments auxiliaires + Montaggio e smontaggio di parti ausiliari + • Abdeckkappen- oder -schrauben, vorfabrizierte Aufbauten +• Kann pro Implantat 1 mal verrechnet werden +• Materialkosten mit Typisierung 4.2580.C.n (Kapitel 19) separat verrechenbar + • Vis de fermeture, coiffes de cicatrisation, piliers préfabriqués. +• Peut être facturée une fois par implant +• Décompte séparé des frais de matériel possible au moyen de la position standard 4.2580.C.n (chapitre 19). + • Viti di chiusura, cappe di guarigione, monconi prefabbricati +• Fatturabile 1 sola volta per impianto +• Materiale con tipizzazione 4.2580.C.n (Cap. 19) fatturabile separatamente + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 05.04 + 4.2590 + Entfernung von eingeheilten Implantaten + Ablation d'un implant ostéointégré + Rimozione di impianti già integrati + Maximal 4 Nähte verrechenbar + Facturation de quatre sutures au maximum + Fatturabili al massimo 4 suture + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 05.04 + 4.2600 + Entfernung von nicht eingeheilten, gelockerten Implantaten + Ablation d'un implant non ostéointégré, instable + Rimozione di impianti non integrati, mobili + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 05.04 + 4.2610 + Augmentation bei Implantation + Augmentation osseuse simultanée à la pose d'un implant + Intervento di rigenerazione ossea per impianti + • Insertion des Implantates siehe Tarifziffern 4.2530, 4.2540 +• Inklusive Legen und Fixieren einer Membran; +• Allfällige Knochenentnahme gemäss Tarifziffer 4.3600 + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Pose de l'implant: positions 4.2530 et 4.2540 +• Pose et fixation d'une membrane incluses +• Prélèvement osseux éventuel facturé au moyen de la position 4.3600 + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Posizionamento dell'impianto vedi cifre 4.2530, 4.2540 +• Inclusi posa e fissaggio di una membrana +• Eventuale prelievo di osso secondo cifra 4.3600 + +Materiale con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 05.04 + 4.2615 + + Jede weitere Augmentation bei Implantation, bei gleicher Aufklappung, pro Implantat + + chaque augmentation osseuse supplémentaire simultanée à la pose d'un implant, dans une même ouverture, par implant + + Ogni altra rigenerazione ossea per impianti durante il medesimo sollevamento di un lembo, per impianto + Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + Materiale con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 109.8 + 93.3 + 109.8 + 126.3 + + + Lei + 3 + 05.04 + 4.2620 + Knochenaugmentation, als selbstständiger Eingriff + Augmentation osseuse en tant qu'intervention distincte + Rigenerazione ossea, quale intervento indipendente + • Inklusive Legen und Fixieren einer Membran; +• Allfällige Knochenentnahme gemäss Tarifziffer 4.3600 +• Maximal 4 Nähte verrechenbar + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + • Pose et fixation d'une membrane incluses +• Prélèvement osseux éventuel facturé au moyen de la position 4.3600 +• Jusqu'à quatre sutures peuvent être facturées à part + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Inclusi posa e fissazione di una membrana +• Eventuale prelievo di osso secondo cifra 4.3600 +• Fatturabili al massimo 4 suture + +Materiale con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 578.8 + 492 + 578.8 + 665.6 + + + Lei + 3 + 05.04 + 4.2630 + Entfernung der Membran + Ablation d'une membrane + Rimozione di una membrana + Maximal 4 Nähte verrechenbar + Jusqu'à quatre sutures peuvent être facturées à part + Fatturabili al massimo 4 suture + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 3 + 05.04 + 4.2640 + Indirekte Sinusbodenelevation + Élévation indirecte du plancher sinusien + Sollevamento indiretto del pavimento sinusale + • Z. B. nach Summers + +Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + + • P. ex. technique de Summers + +Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + • Ad es. secondo Summers + +Materiale con plurime tipizzazioni (Cap. 19) sono fatturabili separatamente + TP + 94.1 + 80 + 94.1 + 108.2 + + + Kap + 2 + 05.05 + Behandlung der Kieferhöhle + Traitement du sinus maxillaire + Trattamento del seno mascellare + Siehe auch Tarifziffern 4.2510, 4.2520, 4.2640 + Voir également les positions 4.2510, 4.2520 et 4.2640 + Vedi anche cifre 4.2510, 4.2520, 4.2640 + + + Lei + 3 + 05.05 + 4.2650 + Spülung der Kieferhöhle durch die Alveole + Rinçage du sinus maxillaire par l'alvéole + Lavaggio del seno mascellare attraverso gli alveoli + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 05.05 + 4.2660 + Spülung der Kieferhöhle durch die Fossa canina + Rinçage du sinus maxillaire par la fosse canine + Lavaggio del seno mascellare attraverso la fossa canina + TP + 101.1 + 85.9 + 101.1 + 116.3 + + + Lei + 3 + 05.05 + 4.2670 + Verschluss einer Mund-Antrum-Verbindung + Fermeture d'une communication buccosinusienne + Chiusura di una fistola oro-antrale + Plastischer Verschluss einer Mund-Antrum-Verbindung mit vestibulärem oder palatinalem Lappen, als alleiniger Eingriff + Fermeture d'une communication buccosinusienne par plastie au moyen d'un lambeau vestibulaire ou palatin, en tant qu'intervention distincte + Chiusura di fistola oro-antrale con lembo vestibolare o lembo palatino, come intervento separato + TP + 470.7 + 400.1 + 470.7 + 541.3 + + + Lei + 3 + 05.05 + 4.2680 + Verschluss einer Mund-Antrum-Verbindung, nach akzidenteller Eröffnung + Fermeture d'une communication buccosinunienne, après ouverture accidentelle + Chiusura di una fistola oro-antrale, dopo apertura accidentale + TP + 209.2 + 177.8 + 209.2 + 240.6 + + + Lei + 3 + 05.05 + 4.2690 + Fremdkörperentfernung aus der Kieferhöhle + Ablation d'un corps étranger du sinus maxillaire + Rimozione di corpi estranei dal seno mascellare + Ohne Verschluss + Sans fermeture + Senza chiusura + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Kap + 2 + 05.06 + Traumatologie + Traumatologie + Traumatologia + Versorgung unfallverletzter Mukosa analog Tarifziffer 4.2170 + Traitement de la muqueuse lésée par accident par analogie avec la position 4.2170 + Cura di mucosa lesa da infortunio in analogia alla cifra 4.2170 + + + Lei + 3 + 05.06 + 4.2700 + Replantation oder Reposition eines Zahnes + Réimplantation ou repositionnement d'une dent + Reimpianto o riposizionamento di un dente + • Exklusive Wurzelbehandlung +• Exklusive Schienung + • Traitement radiculaire non inclus +• Pose d'attelle non incluse + • Cura endodotica esclusa +• Fissaggio escluso + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 05.06 + 4.2710 + Reposition von geschlossenen Alveolarfortsatzfrakturen, bei Dislokation mit Stufenbildung, leicht reponierbar + Réduction d'une fracture fermée du procès alvéolaire avec déplacement en escalier, facile à réduire + Riduzione di una frattura chiusa del processo alveolare in caso di dislocazione con formazione di scalino, riduzione semplice + Exklusive Schienung + Pose d'attelle non incluse + Fissaggio escluso + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 05.06 + 4.2720 + Reposition von geschlossenen Alveolarfortsatzfrakturen, bei Dislokation mit Stufenbildung und Verkeilung der Fragmente + Réduction d'une fracture fermée du procès alvéolaire avec déplacement en escalier et fragments embarrés + Riduzione di una frattura chiusa del processo alveolare in caso di dislocazione con formazione di scalino e incastro dei frammenti + Exklusive Schienung + Pose d'attelle non incluse + Fissaggio escluso + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Kap + 2 + 05.07 + Schienungen + Attelles + Fissaggi + Parodontale Schienungen siehe Kapitel 03.04 + Attelles parodontales: voir chapitre 03.04 + Fissaggio parodontale vedi capitolo 03.04 + + + Lei + 3 + 05.07 + 4.2750 + Fortlaufende Drahtligaturen, pro Quadrant + Ligatures métalliques par fil continu, par quadrant + Legatura in filo metallico ininterrotta, per quadrante + Weitere Ligaturen pro angefangenen Quadranten gemäss Tarifziffer 4.2790 + Ligatures supplémentaires par quadrant commencé facturées au moyen de la position 4.2790 + Ulteriori legature per quadrante secondo cifra 4.2790 + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Lei + 3 + 05.07 + 4.2760 + Drahtschienenverband, am Patienten hergestellt, pro Quadrant + Attelle métallique, directe, fixée par ligatures métalliques, par quadrant + Ferula in filo metallico, confezionata direttamente sul paziente, per quadrante + • Inklusive 3 Ligaturen; +• Weitere Ligaturen gemäss Tarifziffer 4.2790 + • Trois ligatures incluses +• Ligatures supplémentaires facturées au moyen de la position 4.2790 + • Incluse 3 legature +• Ulteriori legature secondo cifra 4.2790 + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 05.07 + 4.2770 + Drahtschienenverband im Labor hergestellt, pro Quadrant + Attelle métallique, indirecte, fixée par ligatures métalliques, par quadrant + Ferula in filo metallico, confezionata in laboratorio, per quadrante + • Inklusive 3 Ligaturen; +• Weitere Ligaturen gemäss Tarifziffer 4.2790 +• Zahntechnische Laborleistung separat verrechenbar + • Trois ligatures incluses +• Ligatures supplémentaires facturées au moyen de la position 4.2790 +• Prestations du laboratoire de technique dentaire facturées à part + • Incluse 3 legature +• Ulteriori legature secondo cifra 4.2790 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 05.07 + 4.2780 + Drahtkunststoffschienen-Verband mit Drahtligaturen, pro Quadrant + Attelle en métal et résine, indirecte, fixée par ligatures métalliques, par quadrant + Ferula armata con legatura in filo metallico, per quadrante + • Inklusive 3 Ligaturen; +• Weitere Ligaturen gemäss Tarifziffer 4.2790 +• Zahntechnische Laborleistung separat verrechenbar + • Trois ligatures incluses +• Ligatures supplémentaires facturées au moyen de la position 4.2790 +• Prestations du laboratoire de technique dentaire facturées à part + • Incluse 3 legature +• Ulteriori legature secondo cifra 4.2790 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 05.07 + 4.2790 + + Jede weitere Ligatur in der gleichen Sitzung + + Chaque ligature supplémentaire + + Ogni altra legatura durante la medesima seduta + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 05.07 + 4.2800 + Überzug einer Drahtschiene mit Autopolymerisat + Recouvrement d'une attelle métallique avec une résine + Rivestimento di una ferula in filo metallico con autopolimerizzante + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 05.07 + 4.2810 + Kunststoffschiene autopolymerisiert im Munde, pro Quadrant + Attelle en résine, directe, par quadrant + Ferula in resina autopolimerizzante confezionata in bocca, per quadrante + TP + 149.9 + 127.4 + 149.9 + 172.4 + + + Lei + 3 + 05.07 + 4.2820 + Kunststoffschiene oder gegossene Schiene, einzementiert + Attelle en résine ou attelle coulée, indirecte, scellée + Ferula in resina o colata, cementata + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 352.1 + 299.3 + 352.1 + 404.9 + + + Lei + 3 + 05.07 + 4.2830 + Entfernung einer einzementierten Schiene + Ablation d'une attelle scellée + Rimozione di una ferula cementata + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 05.07 + 4.2840 + Entfernung einer einligierten Schiene + Ablation d'une attelle fixée par ligatures + Rimozione di una ferula legata + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Lei + 3 + 05.07 + 4.2850 + Wiedereinzementierung einer Schiene + Rescellement d'une attelle + Ricementazione di una ferula + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Lei + 3 + 05.07 + 4.2860 + Erneute Fixation einer Drahtschiene mit Ligaturen, pro Ligatur + Remise en place d'une attelle fixée par ligatures, par ligature + Riapplicazione di una ferula in filo metallico con legature, per legatura + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 05.07 + 4.2870 + Kinnkappenverband + Fronde mentonnière + Fionda mentoniera + • Inklusive individuellem Abdruck +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreinte individuelle incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Inclusa impronta individuale +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 05.07 + 4.2880 + Anlegen von intermaxillären Zügen zur elastischen oder starren Immobilisation + Pose de tractions intermaxillaires pour l'immobilisation élastique ou rigide + Applicazione di trazioni intermascellari per l'immobilizzazione elastica o rigida + TP + 125.5 + 106.7 + 125.5 + 144.3 + + + Kap + 2 + 05.08 + Diverse Leistungen + Prestations diverses + Altre prestazioni + + + Lei + 3 + 05.08 + 4.2950 + Naht, pro Naht + Sutures, par suture + Sutura, per ogni punto + Maximal 4 Nähte pro Eingriff verrechenbar + Facturation de quatre sutures au maximum par intervention + Fatturabili al massimo 4 suture + TP + 13.9 + 11.8 + 13.9 + 16 + + + Lei + 3 + 05.08 + 4.2970 + Wundverband + Pansement + Medicazione + TP + 22.7 + 19.3 + 22.700000000000003 + 26.1 + + + Lei + 3 + 05.08 + 4.2980 + Verbandplatte + Plaque de pansement + Placca di compressione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 118.5 + 100.7 + 118.5 + 136.3 + + + Lei + 3 + 05.08 + 4.2990 + Injektion ins Kiefergelenk + Injection dans l'articulation temporo-mandibulaire + Iniezione nell'articolazione temporo-mandibolare + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 05.07 + 4.2890 + TTS-Schiene + Attelle TTS + Ferula TTS + • Pro Klebestelle zusätzlich Tarifziffer 4.8720 +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + • Chaque point de collage facturé au moyen de la position 4.8720 +• Matériel facturer à part, avec position cluster (voir chapitre 20) + • Per punto d'incollatura in aggiunta alla cifra 4.8720 +• Costi del materiale con posizione Cluster (Cap. 20) sono fatturabili separatamente + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 05.08 + 4.2900 + Wundkontrolle oder Nachkontrolle von Unfallzähnen + Contrôle de la plaie ou contrôle ultérieur de dents accidentées + Controllo della ferita o controllo successivo di denti lesi da infortunio + Inklusive allfälliger Nahtentfernung + Ablation d'éventuelles sutures incluse + Inclusa eventuale rimozione dei punti di sutura + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 05.08 + 4.2910 + Wundbehandlung + Traitement de la plaie + Cura della ferita + • Inklusive allfälliger Nahtentfernung +• Gilt nur für Drainwechsel, Spülung von Alveolen + • Ablation d'éventuelles sutures incluse +• Position applicable uniquement au changement de drain et au rinçage d'alvéoles + • Inclusa eventuale rimozione dei punti di sutura +• Si applica unicamente alla sostituzione del drenaggio e al risciacquo degli alveoli + TP + 62.8 + 53.4 + 62.8 + 72.2 + + + Lei + 3 + 05.08 + 4.2930 + Behandlung einer Nachblutung + Traitement d'une hémorragie secondaire + Cura di emorragia postoperatoria + • Kann pro Sitzung nur 1 mal verrechnet werden +• Beinhaltet: 2 Nähte und das Einlegen eines Drains oder Tampons + +Primäre Anwendung dieser Tarifziffer beim antikoagulierten Patienten. + • Peut être facturée au maximum une fois par séance +• Deux sutures et pose d'un drain ou d'un tampon incluses + +Patient sous anticoagulants: le cas échéant, appliquer cette position avant de recourir à la position 4.2940 + • Fatturabile al massimo una volta per seduta +• Comprende: 2 punti di sutura come pure la posa di un drenaggio o di un tampone + +Applicazione primaria di questa cifra per pazienti in terapia anticoagulante. + TP + 97.6 + 83 + 97.6 + 112.2 + + + Lei + 3 + 05.08 + 4.2940 + Zusätzliche Massnahmen für Patienten mit Gerinnungsstörungen + Mesures supplémentaires pour patient sous anticoagulants + Misure complementari per pazienti con disturbi della coagulazione + Nur verrechenbar im Zusammenhang mit einem chirurgischen Eingriff + Ne peuvent être facturées qu'en relation avec une intervention chirurgicale + Fatturabile solo in relazione ad un intervento chirurgico + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Kap + 2 + 06.01 + Sekundäre Spaltchirurgie + Chirurgie secondaire des fentes + Chirurgia secondaria delle cheilo-gnato-palatoschisi + Primäre Spaltchirurgie siehe Arzttarif. + +Werden Spalten in einer Sitzung beidseitig operiert, erfährt die Taxe für die zweite Seite eine Reduktion um 25%. + Chirurgie primaire des fentes: voir tarif médical. + +Lorsque les deux côtés d'une fente bilatérale sont opérés durant la même séance, le nombre de points facturés pour le second côté est réduit de 25 %. + Chirurgia primaria della cheilo-gnato-palatoschisi vedi tariffa medica. + +Per operazioni bilaterali in un'unica seduta, la tariffa per il secondo intervento viene ridotta del 25%. + + + Lei + 3 + 06.01 + 4.3110 + Kleine Korrekturoperation Lippen + Petite opération de correction des lèvres + Piccolo intervento correttivo labbra + Kleine Korrekturoperation wie Lippenvorumschneidung, Lippenverdünnung, Lippenrotkorrektur + Petite intervention telle que correction d'un dédoublement de lèvre, amincissement des lèvres ou correction du rouge des lèvres + Piccolo intervento correttivo: incisione preliminare di un lembo, assottigliamento del labbro, correzione del vermiglio + TP + 202.2 + 171.9 + 202.2 + 232.5 + + + Lei + 3 + 06.01 + 4.3120 + Whistling deformity-Korrektur; Lippenrotverdickung; Lippenweissverlängerung; Amorbogenbildung + Correction d'une « whistling deformity », épaississement du rouge des lèvres, allongement de la partie blanche des lèvres, formation d'un arc de Cupidon + Correzione della whistling deformity; ispessimento del vermiglio, allungamento del labbro bianco, modellamento di un arco di cupido + TP + 435.8 + 370.4 + 435.79999999999995 + 501.2 + + + Lei + 3 + 06.02 + 4.3200 + Alveolarfortsatzosteotomie horizontal, pro Segment + Ostéotomie horizontale du procès alvéolaire, par segment + Osteotomia orizzontale del processo alveolare, per segmento + Im Front- oder Seitenzahnbereich von Ober- oder Unterkiefer + Région antérieure ou latérale de l'arcade supérieure ou inférieure + Nella regione anteriore o posteriore del mascellare superiore o inferiore + TP + 1506.2 + 1280.3 + 1506.1999999999998 + 1732.1 + + + Lei + 3 + 06.02 + 4.3270 + Diagnostisches Set-Up + Set-up diagnostique + Set up diagnostico + • Set-up der skelettalen und dentalen Strukturen anhand von vermessbaren Röntgenaufnahmen und Modellen im Hinblick auf mehrteilige Osteotomien. +• Gilt auch für Navigationsplanung oder 3D-Simulation. +• Zahntechnische Laborleistung separat verrechenbar + • Set-up des structures osseuses et dentaires à partir de radiographies et de modèles aux dimensions mesurables, en préparation d'ostéotomies segmentaires. +• Position également applicable à la planification d'une chirurgie naviguée et à la simulation en 3D +• Prestations du laboratoire de technique dentaire facturées à part + • Set up delle strutture scheletriche e dentali sulla base di radiografie misurabili e su modelli in vista di osteotomie plurime +• Vale anche per la pianificazione della navigazione o simulazione 3D +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 435.8 + 370.4 + 435.79999999999995 + 501.2 + + + Lei + 3 + 06.02 + 4.3280 + Prediction planning und/oder Simulografie + Prediction planning et/ou simulografie + Prediction planning e/o simulografia + • Nur 1 mal verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + • Peut être facturée au maximum une fois par cas +• Prestations du laboratoire de technique dentaire facturées à part + • Fatturabile 1 sola volta +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 240.6 + 204.5 + 240.6 + 276.7 + + + Kap + 2 + 06.03 + Frakturbehandlung + Traitement des fractures + Terapia delle fratture + + + Kap + 3 + 06.03.01 + Geschlossene Frakturbehandlung + Traitement des fractures fermées + Terapia conservativa delle fratture + Versorgung unfallverletzter Mukosa analog Tarifziffer 4.2170 + Facturation du traitement d'une blessure de la muqueuse par analogie avec la position 4.2170 + Cura di mucosa lesa da infortunio in analogia alla cifra 4.2170 + + + Kap + 4 + 06.03.01.01 + Jochbein, laterales Mittelgesicht + Os malaire, région latérale de l'étage moyen du visage + Zigomo, massiccio laterale + + + Lei + 5 + 06.03.01.01 + 4.3300 + Reposition Jochbein, Jochbogen, laterale Mittelgesichtsfraktur + Réduction de l'os malaire, de l'arcade zygomatique, d'une fracture latérale de l'étage moyen du visage + Riduzione dello zigomo, dell'arco zigomatico, del complesso laterale del massiccio facciale + TP + 289.4 + 246 + 289.4 + 332.8 + + + Kap + 4 + 06.03.01.02 + Mittelgesicht zentral oder zentrolateral, Ober- und Unterkiefer + Région centrale ou centrolatérale de l'étage moyen du visage, maxillaire et mandibule + Massiccio facciale centrale o centro-laterale, mascellare superiore e mandibola + + + Lei + 5 + 06.03.01.02 + 4.3310 + Disimpaction Mittelgesicht + Désimpaction de l'étage moyen du visage + Riduzione strumentale del massiccio centrale incastrato + TP + 578.8 + 492 + 578.8 + 665.6 + + + Lei + 5 + 06.03.01.02 + 4.3320 + Reposition bei Distraktion oder Stufenbildung + Réduction d'un déplacement ou d'un escalier osseux + Riduzione in caso di distrazione o di presenza di scalino + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 5 + 06.03.01.02 + 4.3330 + Reposition bei Stufenbildung und Verkeilung der Fragmente + Réduction d'un escalier osseux d'une fracture embarrée + Riduzione in caso di distrazione e incastro di frammenti + TP + 174.3 + 148.2 + 174.3 + 200.4 + + + Lei + 5 + 06.03.01.02 + 4.3340 + Reposition bei starker Dislokation, Stück- oder Trümmerfraktur + Réduction d'un déplacement important ou d'une fracture comminutive + Riduzione in caso di massiccia dislocazione, in frattura pluriframmentaria + TP + 289.4 + 246 + 289.4 + 332.8 + + + Kap + 3 + 06.03.02 + Offene Frakturbehandlung + Traitement de fractures ouvertes + Terapia cruenta delle fratture + + + Kap + 4 + 06.03.02.01 + Mittelgesicht, Jochbein + Étage moyen du visage, os malaire + Massiccio centrale, zigomo + + + Lei + 5 + 06.03.02.01 + 4.3350 + Zuschlag für Zugang pro Etage und Seite + Supplément pour accès, par étage et par côté + Supplemento per approccio per ogni singolo livello e per lato + Zuschlag für Zugang pro Etage (extra/intraoral) und Seite (bicoronal = 2 Seiten). +Maximal 4 mal pro Sitzung verrechenbar. + Supplément pour accès par étage (extra/intraoral) et par côté (bicoronal = des deux côtés). +Peut être facturée au maximum 4 fois par séance + Supplemento per approccio per ogni singolo livello ((extra-/intraorale) e per lato (bicoronale = 2 lati). +Fatturabile al massimo 4 volte per seduta. + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 5 + 06.03.02.01 + 4.3360 + Zuschlag für transkonjunktivalen Zugang + Supplément pour accès par voie transconjonctivale + Supplemento per approccio transcongiuntivale + Maximal 2 mal pro Sitzung verrechenbar. + Peut être facturée au maximum 2 fois par séance + Fatturabile al massimo 2 volte per seduta. + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Kap + 4 + 06.03.02.02 + Unterkiefer + Mandibule + Mandibola + + + Lei + 5 + 06.03.02.02 + 4.3370 + Zuschlag für Zugang pro Seite + Supplément pour accès, par côté + Supplemento per approccio per ogni lato + Maximal 2 mal pro Sitzung verrechenbar. + Peut être facturée au maximum 2 fois par séance + Fatturabile al massimo 2 volte per seduta. + TP + 669.4 + 569 + 669.4 + 769.8 + + + Kap + 2 + 06.04 + Zusätzliche Massnahmen + Mesures complémentaires + Misure supplementari + + + Lei + 3 + 06.04 + 4.3400 + Dekompression der Orbita + Décomposition de l'orbite + Decompressione dell'orbita + TP + 669.4 + 569 + 669.4 + 769.8 + + + Lei + 3 + 06.04 + 4.3410 + Dekompression des Nervus opticus + Décompression du nerf optique + Decompressione del nervo ottico + TP + 1670.1 + 1419.6 + 1670.1 + 1920.6 + + + Lei + 3 + 06.04 + 4.3420 + Fixation kanthales Ligament + Amarrage du ligament canthal + Fissazione del legamento cantale + TP + 753.1 + 640.1 + 753.1 + 866.1 + + + Lei + 3 + 06.04 + 4.3430 + Drainage des Sinus maxillaris transnasal + Drainage du sinus maxillaire par voie transnasale + Drenaggio del seno mascellare per via transnasale + TP + 390.5 + 331.9 + 390.5 + 449.1 + + + Lei + 3 + 06.04 + 4.3440 + Tamponade des Sinus maxillaris, transantrale Blutstillung der Arteria maxillaris + Tamponnement du sinus maxillaire, hémostase transsinusienne de l'artère maxillaire + Tamponamento del seno mascellare, emostasi dell'arteria mascellare per via transsinusale + TP + 669.4 + 569 + 669.4 + 769.8 + + + Lei + 3 + 06.04 + 4.3450 + Operative Revision zur Stillung einer Nachblutung + Révision chirurgicale et hémostase pour hémorragie secondaire + Revisione chirurgica con emostasi di un'emorragia postoperatoria + TP + 557.8 + 474.1 + 557.8 + 641.5 + + + Lei + 3 + 06.05 + 4.3500 + Perimandibuläre oder transmaxilläre Drahtung, pro Stelle + Cerclage périmandibulaire ou transmaxillaire, par fracture + Cerchiaggio o fissazione con filo transmascellare o perimandibolare, per sito + TP + 115.1 + 97.8 + 115.1 + 132.4 + + + Lei + 3 + 06.05 + 4.3510 + Interskelettale Drahtaufhängung + Suspension de la face au crâne par fils d'acier + Legatura di sospensione interscheletrica + TP + 812.4 + 690.5 + 812.4 + 934.3 + + + Lei + 3 + 06.05 + 4.3520 + Drahtosteosynthese + Ostéosynthèse au fil d'acier + Osteosintesi con filo metallico + TP + 927.4 + 788.3 + 927.4 + 1066.5 + + + Lei + 3 + 06.05 + 4.3530 + Platten, Zugschrauben + Plaques, vis de traction + Osteosintesi a placca o con viti di richiamo + TP + 1157.5 + 983.9 + 1157.5 + 1331.1 + + + Lei + 3 + 06.05 + 4.3540 + Fixateur externe oder Craniofixateur externe + Fixateur externe ou crânio-fixateur externe + Fissatore esterno o craniofissatore esterno + TP + 418.4 + 355.6 + 418.4 + 481.2 + + + Lei + 3 + 06.05 + 4.3550 + Operative Behandlung einer Pseudoarthrose durch Osteosynthese + Traitement chirurgical d'une pseudo-arthrose par ostéosynthèse + Trattamento chirurgico di una pseudartrosi tramite osteosintesi + TP + 1272.6 + 1081.7 + 1272.6 + 1463.5 + + + Lei + 3 + 06.05 + 4.3560 + Operationsplanung an Modellen bei veralteten Frakturen + Planification d'une intervention sur modèles pour une ancienne fracture + Piano operatorio su modelli per vecchie fratture guarite in posizione errata + Maximal 1 mal pro Sitzung verrechenbar. + +Zahntechnische Laborleistung separat verrechenbar + Peut être facturée au maximum une fois par séance. + +Prestations du laboratoire de technique dentaire facturées à part + Fatturabile al massimo 1 volte per seduta. + +Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 06.05 + 4.3570 + Rekonstruktion bei durchgehendem Unterkieferdefekt + Reconstruction de la mandibule pour interruption de continuité + Ricostruzione della mandibola in caso di perdita della continuità + TP + 2318.5 + 1970.7 + 2318.5 + 2666.3 + + + Lei + 3 + 06.05 + 4.3580 + Entfernung von Osteosynthesematerial, pro Operationsstelle + Ablation du matériel d'ostéosynthèse, par site d'intervention + Rimozione del materiale di osteosintesi, per zona di intervento + TP + 289.4 + 246 + 289.4 + 332.8 + + + Kap + 2 + 06.06 + Transplantate + Transplantation + Trapianti + + + Kap + 3 + 06.06.01 + Knochen und Knorpel + Os et cartilage + Ossa e cartilagine + + + Lei + 4 + 06.06.01 + 4.3610 + Konturaufbau inkl. Formung des Knochenlagers und des Transplantates + Reconstruction des contours osseux, préparation du lit osseux et modelage du greffon inclus + Ricostruzione dei contorni, compresa la modellazione della loggia e dell'innesto + TP + 983.2 + 835.7 + 983.2 + 1130.7 + + + Kap + 2 + 06.07 + Kiefergelenk + Articulation temporo-mandibulaire + Articolazione temporo-mandibolare + + + Kap + 2 + 06.05 + Osteosynthese + Ostéosynthèse + Osteosintesi + • Pro okklusionsbezogene Osteosynthesestelle, anlässlich einer Frakturbehandlung für Reposition und Osteosynthese, anlässlich einer Osteotomie für erweiterten Zugang, Mobilisation und Verschiebung gemäss Operationsplanung, Reposition gemäss Messung, provisorische Fixation und Osteosynthese; +• Pro okklusionsbezogene Osteosynthesestelle können die Leistungspositionen von Kapitel 06.03 'Frakturbehandlung' und Kapitel 06.05 'Osteosynthese' nicht kombiniert werden. + • Par site d'ostéosynthèse requise pour préserver l'occlusion: pour le repositionnement et l'ostéosynthèse lors du traitement d'une fracture, pour l'ostéotomie lors de l'élargissement de l'accès, pour la mobilisation et les déplacements selon la planification de l'intervention, pour le repositionnement en fonction des mesures, pour les contentions provisoires et l'ostéosynthèse. +• Les prestations du chapitre 06.03 Traitement des fractures et du chapitre 06.05 Ostéosynthèse ne peuvent être combinées pour le traitement d'une même fracture. + • Per sito di osteosintesi rispetto all'occlusione. nell'ambito delle terapie delle fratture per la riduzione e l'osteosintesi. Nell'ambito di osteotomie per un approccio allargato, la mobilizzazione e lo spostamento dei frammenti secondo il piano operatorio, la riduzione secondo le misurazioni, la fissazione provvisoria e l'osteosintesi. +• Per sito di osteosintesi rispetto all'occlusione non possono essere combinate le cifre del capitolo 06.03 'Terapia delle fratture' e del capitolo 06.05 'Osteosintesi'. + + + Lei + 4 + 06.06.01 + 4.3600 + Knochen- und Knorpelentnahme zur Transplantation + Prélèvement d'os ou de cartilage + Prelievo di osso e di cartilagine per il trapianto + Für allogenes Transplantat, Xenotransplantat und alloplastisches Material wird der Einstandspreis plus 20% mit Typisierung 4.3600.F.n (Kapitel 19) separat vergütet. + Les assureurs remboursent le greffon allogène, xénogène et le matériel alloplastique à son prix d'achat majoré de 20 % au moyen de la position standard 4.3600.F.n (chapitre 19). + Per trapianto allogeno, xenotrapianto e materiale alloplastico viene rimborsato il costo di acquisto + 20% con tipizzazione 4.3600.F. (Cap. 19) + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 06.07 + 4.3630 + Reposition einer Luxation + Réduction d'une luxation + Riduzione di una lussazione + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 06.07 + 4.3640 + Diskus- und/oder Köpfchenexstirpation; modellierende Arthroplastik, pro Seite + Méniscectomie et/ou condylectomie, arthroplastie modelante, par côté + Estirpazione disco e/o del capitello; artroplastica modellante, per lato + TP + 983.2 + 835.7 + 983.2 + 1130.7 + + + Lei + 3 + 06.07 + 4.3650 + Resektion des Processus muscularis, pro Seite + Coronoïdectomie, par côté + Resezione del processo muscolare, per lato + TP + 753.1 + 640.1 + 753.1 + 866.1 + + + Lei + 3 + 06.07 + 4.3660 + Operation einer Ankylose inkl. Köpfchenexstirpation oder Bandplastik oder Verriegelungsplastik, pro Seite + Opération d'une ankylose, condylectomie, plastie ligamentaire ou butée précondylienne incluses, par côté + Operazione di un'anchilosi compresa l'estirpazione del capitello o plastica legamentare o operazione per lussazione abituale, per lato + • Knochenentnahme siehe Tarifziffer 4.3600 +• Modellierung des Transplantates siehe Tarifziffer 4.3610 + • Prélèvement du greffon osseux: voir position 4.3600 +• Modelage du greffon: voir position 4.3610 + • Prelievo di osso vedi cifra 4.3600 +• Modellamento del trapianto vedi cifra 4.3610 + TP + 1446.9 + 1229.9 + 1446.9 + 1663.9 + + + Lei + 3 + 06.07 + 4.3670 + Diagnostische Arthroskopie + Arthroscopie diagnostique + Artroscopia diagnostica + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 06.07 + 4.3680 + Therapeutische Arthroskopie + Arthroscopie thérapeutique + Artroscopia terapeutica + TP + 446.3 + 379.4 + 446.3 + 513.2 + + + Kap + 2 + 06.08 + Infekt, Fremdkörper + Infections, corps étrangers + Infezione, corpi estranei + + + Kap + 3 + 06.08.01 + Knochen + Os + Ossa + + + Lei + 4 + 06.08.01 + 4.3700 + Kürettage eines osteomyelitischen Herdes + Curetage d'un foyer d'ostéomyélite + Curettaggio di un focolaio osteomielitico + TP + 348.7 + 296.4 + 348.7 + 401 + + + Lei + 4 + 06.08.01 + 4.3710 + Dekortikation bei Osteomyelitis oder Radioosteomyelitis + Décortication lors d'ostéomyélite ou de radio-ostéomyélite + Decorticazione in casi di osteomielite o radioosteomielite + TP + 1272.6 + 1081.7 + 1272.6 + 1463.5 + + + Kap + 3 + 06.08.02 + Weichteile + Tissus mous + Parti molli + + + Lei + 4 + 06.08.02 + 4.3750 + Inzision und Drainage bei dentogenen Logenabszessen, Zugang von extraoral + Incision et drainage d'un abcès dentaire en loge, accès extraoral + Incisione e drenaggio in ascessi di loggia odontogeni con accesso extraorale + TP + 390.5 + 331.9 + 390.5 + 449.1 + + + Lei + 4 + 06.08.02 + 4.3760 + Operative Revision bei ausgedehnter dentogener Gesichts- und Halsphlegmone, die über die Logen hinausgeht + Révision chirurgicale d'un phlegmon dentogène de la face ou du cou qui dépasse les loges + Revisione chirurgica in estesi flemmoni del viso e del collo di origine dentigera che si estendono oltre la loggia + TP + 836.8 + 711.3 + 836.8 + 962.3 + + + Kap + 2 + 06.09 + Tumoren der Mundhöhle und Kiefer + Tumeurs de la cavité buccale et des maxillaires + Tumori del cavo orale e dei mascellari + + + Kap + 3 + 06.09.01 + Benigne Tumoren + Tumeurs bénignes + Tumori benigni + + + Lei + 4 + 06.09.01 + 4.3800 + Operative Entfernung gutartiger Mund- und Kiefertumoren, Durchmesser grösser als 1 cm + Ablation chirurgicale d'une tumeur buccale ou maxillaire bénigne d'un diamètre supérieur à 1 cm + Asportazione chirurgica di tumori benigni del cavo orale e/o dei mascellari con diametro superiore a 1 cm + TP + 697.3 + 592.7 + 697.3 + 801.9 + + + Kap + 3 + 06.09.02 + Maligne Tumoren + Tumeurs malignes + Tumori maligni + + + Lei + 4 + 06.09.02 + 4.3810 + Operative Entfernung maligner Mund- und Kiefertumoren, T1 bis T3 + Ablation chirurgicale d'une tumeur buccale ou maxillaire maligne, T1 à T3 + Asportazione chirurgica di tumori maligni del cavo orale e/o dei mascellari degli stadi T1 fino a T3 + TP + 1391.1 + 1182.4 + 1391.1 + 1599.8 + + + Kap + 3 + 07.02.03 + Wurzelkanalfüllung + Obturation du canal radiculaire + Otturazione canalare + + + Lei + 4 + 07.02.03 + 4.4550 + Wurzelkanalfüllung, neue Endometriedatenbestimmung, 1 Kanal + Obturation d'un canal radiculaire avec nouvelle mesure endométrique, un canal + Otturazione canalare, rilevamento nuovi dati endometrici, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 181.3 + 154.1 + 181.3 + 208.5 + + + Lei + 4 + 07.02.03 + 4.4555 + Wurzelkanalfüllung, bei vorhandenen Endometriedaten, 1 Kanal + Obturation d'un canal radiculaire avec mesure endométrique existante, un canal + Otturazione canalare, con dati endometrici esistenti, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 160.4 + 136.3 + 160.4 + 184.5 + + + Lei + 4 + 06.09.02 + 4.3820 + Operative Entfernung maligner Mund- und Kiefertumoren, mit Infiltration der Nachbarstrukturen, T4 + Ablation chirurgicale d'une tumeur buccale ou maxillaire maligne avec infiltration des tissus avoisinants, T4 + Asportazione chirurgica di tumori maligni del cavo orale e/o dei mascellari con infiltrazione delle strutture adiacenti, stadio T4 + TP + 1670.1 + 1419.6 + 1670.1 + 1920.6 + + + Lei + 4 + 06.09.02 + 4.3830 + Operative Entfernung maligner Mund- und Kiefertumoren, bei gleichzeitiger Kieferresektion + Ablation chirurgicale d'une tumeur buccale ou maxillaire maligne avec résection maxillaire simultanée + Asportazione chirurgica di tumori maligni del cavo orale e/o dei mascellari con contemporanea resezione del mascellare + TP + 2227.9 + 1893.7 + 2227.9 + 2562.1 + + + Lei + 4 + 06.09.02 + 4.3840 + Unterkieferrekonstruktion, nach durchgehender Unterkieferresektion + Reconstruction de la mandibule après résection complète + Ricostruzione della mandibola in caso di resezione con soluzione della continuità + Knochenentnahme und Formung siehe Tarifziffer 4.3600, 4.3610 + Prélèvement et modelage du greffon osseux: voir positions 4.3600 et 4.3610 + Prelievo di osso e modellamento vedi cifre 4.3600, 4.3610 + TP + 2318.5 + 1970.7 + 2318.5 + 2666.3 + + + Lei + 4 + 06.09.02 + 4.3850 + Resektionskloss, Abformung mit Eingliederung + Remplissage de la cavité de résection, prise d'empreinte et mise en bouche + Otturazione protesica dopo resezione, presa dell'impronta e posa + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Kap + 2 + 06.10 + Präprothetische Chirurgie + Chirurgie préprothétique + Chirurgia preprotesica + + + Lei + 3 + 06.10 + 4.3870 + Mundbodenplastik mit Durchtrennung des Musculus mylohyoideus + Plastie du plancher buccal avec désinsertion du muscle mylo-hyoïdien + Plastica del pavimento orale con scissione del muscolo miloioideo + • Inklusive Nähte +• Exklusive Transplantate + +Materialkosten mit Typisierung 4.3870.F.n (Kapitel 19) separat verrechenbar. + • Sutures incluses +• Greffes non incluses + +Décompte séparé des frais de matériel possible au moyen de la position standard 4.3870.F.n (chapitre 19). + • Suture incluse +• Trapianti esclusi + +Materiale con tipizzazione 4.3870.F.n (Cap. 19) fatturabile separatamente + TP + 753.1 + 640.1 + 753.1 + 866.1 + + + Lei + 3 + 06.10 + 4.3880 + Tuberplastik mit Abtragung des Processus pterygoideus, pro Seite + Plastie de la tubérosité avec résection de l'apophyse ptérygoïde, par côté + Tuberoplastica con rimozione del processo pterigoideo, per lato + TP + 317.3 + 269.7 + 317.29999999999995 + 364.9 + + + Lei + 3 + 06.10 + 4.3890 + Aufbauende Kammplastik, durch Transplantation von Knochen und Fremdmaterial + Plastie d'augmentation du procès alvéolaire par greffe osseuse ou alloplastique + Augmentoplastica della cresta alveolare con trapianto di osso e materiale alloplastico + Knochenentnahme und Formung siehe Tarifziffer 4.3600, 4.3610 + Prélèvement et modelage du greffon osseux: voir positions 4.3600 et 4.3610 + Prelievo di osso e modellamento vedi cifre 4.3600, 4.3610 + TP + 578.8 + 492 + 578.8 + 665.6 + + + Lei + 3 + 06.10 + 4.3900 + Zuschlag für Hauttransplantation + Supplément pour greffe cutanée + Supplemento per trapianto cutaneo + Inklusive Transplantatentnahme und inklusive Befestigung der Platte mit 3 Aufhängungen. + Prélèvement du greffon et fixation de la plaque avec trois suspensions inclus + Incluso trapianto e fissaggio della placca con 3 punti di fissaggio + TP + 463.7 + 394.1 + 463.7 + 533.3 + + + Kap + 2 + 06.11 + Kieferhöhle + Sinus maxillaires + Seni mascellari + + + Lei + 3 + 06.11 + 4.3930 + Plastische Deckung einer dentogenen oroantralen Fistel + Fermeture plastique d'une fistule buccosinusienne d'origine dentaire + Chiusura di una fistola oro-antrale di origine dentigera + Als Sekundäreingriff nicht gleichzeitig mit der operativen Entfernung des Zahnes anwendbar + Applicable en tant qu'intervention secondaire, différée par rapport à l'extraction chirurgicale de la dent + Applicabile come intervento secondario senza contemporanea estrazione chirurgia del dente + TP + 836.8 + 711.3 + 836.8 + 962.3 + + + Kap + 2 + 06.12 + Speicheldrüsen + Glandes salivaires + Ghiandole saliari + + + Lei + 3 + 06.12 + 4.3940 + Operative Entfernung eines Speichelsteins von der Mundhöhle aus + Ablation d'un calcul salivaire par voie buccale + Asportazione chirurgica di un calcolo salivare per via endorale + TP + 446.3 + 379.4 + 446.3 + 513.2 + + + Kap + 1 + 07 + Endodontologie + Endodontie + Endodonzia + Maximale Beschränkung auf 5 vollständig gefüllte Kanäle. Erste Wurzelbehandlung immer mit Endometrie. Weitere beruhen in der Regel auf vorhandenen Endometriedaten. + Par traitement radiculaire: cinq canaux intégralement obturés au maximum par dent; premier traitement radiculaire toujours avec endométrie, traitements radiculaires suivantes en règle générale à partir des mesures endométriques existantes. + Vale limitatamente per al massimo 5 canali completamente otturati. Prima cura endodontica sempre con endometria. Altre cure si basano di regola sui dati esistenti dell'endometria. + + + Kap + 2 + 07.01 + Überkappung und Amputation, exkl. Verschluss + Coiffage et amputation, obturation dentaire non incluse + Incappucciamento e pulpotomia, otturazione esclusa + + + Lei + 3 + 07.01 + 4.4000 + Indirekte Überkappung + Coiffage indirect + Incappucciamento indiretto + TP + 26.1 + 22.2 + 26.1 + 30 + + + Lei + 3 + 07.01 + 4.4010 + Direkte Überkappung + Coiffage direct + Incappucciamento diretto + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Lei + 3 + 07.01 + 4.4020 + Vitalamputation; notfallmässige Trepanation und Einlage ins Pulpakavum + Amputation vitale; trépanation en urgence et pansement dans la chambre pulpaire + Pulpotomia; trapanazione d'urgenza e medicazione nella cavità pulpare + Gilt auch für notfallmässige Pulpaexstirpation ohne Endometrie. + Position également applicable à l'extirpation pulpaire sans endométrie. + Vale anche per pulpotomia d'urgenza senza endometria. + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Kap + 3 + 07.02.01 + Pulpaexstirpation und erste Kanalaufbereitung, inkl. Einlage + Extirpation pulpaire et première préparation du canal, avec endométrie, pansement canalaire inclus + Estirpazione della polpa e prima preparazione canalare, medicazione compresa + + + Lei + 4 + 07.02.01 + 4.4400 + Pulpaexstirpation, erste Wurzelkanal-Aufbereitung und -Einlage, 1 Kanal + Extirpation pulpaire, première préparation du canal et pansement, un canal + Estirpazione della polpa, prima preparazione del canale e medicazione, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 181.3 + 154.1 + 181.3 + 208.5 + + + Kap + 3 + 07.02.02 + Wurzelkanal-Aufbereitung inkl. -Einlage + Prépartation du canal radiculaire, pansement canalaire inclus + Medicazione canalare, preparazione compresa + + + Kap + 2 + 07.02 + Wurzelbehandlung in mehreren Sitzungen, mit Endometrie, exkl. Verschluss + Traitement radiculaire en plusieurs séances, avec endométrie, obturation dentaire non incluse + Cura endodotica in più sedute, con endometria, otturazione esclusa + Unter Endometrie fallen alle Methoden, welche eine reproduzierbare, exakte Längeneinstellung der Wurzelkanalinstrumente ermöglichen; sei dies mit Unterstützung von elektrischen Messgeräten oder metrischen Hilfsmitteln + Relève de l'endométrie toute méthode permettant l'ajustement exact et reproductible de la longueur des instruments canalaires, soit à l'aide d'appareils de mesure électriques, soit à l'aide de moyens auxiliaires métriques. + Per endometria si intendono tutti i metodi che permettono una misura esatta e riproducibile della lunghezza degli strumenti endodontici nei canali, sia per mezzo di apparecchi elettrici o di accessori metrici + + + Lei + 4 + 07.02.01 + 4.4410 + Pulpaexstirpation, erste Wurzelkanal-Aufbereitung und -Einlage, 2 Kanäle + Extirpation pulpaire, première préparation des canaux et pansements, deux canaux + Estirpazione della polpa, prima preparazione del canale e medicazione, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 233.6 + 198.6 + 233.60000000000002 + 268.6 + + + Lei + 4 + 07.02.01 + 4.4420 + Pulpaexstirpation, erste Wurzelkanal-Aufbereitung und -Einlage, 3 Kanäle + Extirpation pulpaire, première préparation des canaux et pansements, trois canaux + Estirpazione della polpa, prima preparazione del canale e medicazione, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 4 + 07.02.01 + 4.4430 + + Pulpaexstirpation, erste Wurzelkanal-Aufbereitung und -Einlage, jeder weitere Kanal + + Extirpation pulpaire, première préparation du canal et pansement, par canal supplémentaire + + Estirpazione della polpa, prima preparazione del canale e medicazione, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 4 + 07.02.02 + 4.4500 + Wurzelkanal-Aufbereitung und -Einlage, neue Endometriedatenbestimmung, 1 Kanal + Préparation d'un canal radiculaire avec nouvelle mesure endométrique, pansement inclus, un canal + Preparazione del canale e medicazione, rilevamento nuovi dati endometrici, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 136 + 115.6 + 136 + 156.4 + + + Lei + 4 + 07.02.02 + 4.4505 + Wurzelkanal-Aufbereitung und -Einlage, bei vorhandenen Endometriedaten, 1 Kanal + Préparation d'un canal radiculaire avec mesure endométrique existante, pansement inclus, un canal + Preparazione del canale e medicazione, con dati endometrici esistenti, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 115.1 + 97.8 + 115.1 + 132.4 + + + Lei + 4 + 07.02.02 + 4.4510 + Wurzelkanal-Aufbereitung und -Einlage, neue Endometriedatenbestimmung, 2 Kanäle + Préparation des canaux radiculaires avec nouvelles mesures endométriques, pansements inclus, deux canaux + Preparazione del canale e medicazione, rilevamento nuovi dati endometrici, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 167.4 + 142.3 + 167.4 + 192.5 + + + Lei + 4 + 07.02.02 + 4.4515 + Wurzelkanal-Aufbereitung und -Einlage, bei vorhandenen Endometriedaten, 2 Kanäle + Préparation des canaux radiculaires avec mesures endométriques existantes, pansements inclus, deux canaux + Preparazione del canale e medicazione, con dati endometrici esistenti, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 4 + 07.02.02 + 4.4520 + Wurzelkanal-Aufbereitung und -Einlage, neue Endometriedatenbestimmung, 3 Kanäle + Préparation des canaux radiculaires avec nouvelles mesures endométriques, pansements inclus, trois canaux + Preparazione del canale e medicazione, rilevamento nuovi dati endometrici, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 205.7 + 174.8 + 205.7 + 236.6 + + + Lei + 4 + 07.02.02 + 4.4525 + Wurzelkanal-Aufbereitung und -Einlage, bei vorhandenen Endometriedaten, 3 Kanäle + Préparation des canaux radiculaires avec mesures endométriques existantes, pansements inclus, trois canaux + Preparazione del canale e medicazione, con dati endometrici esistenti, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 174.3 + 148.2 + 174.3 + 200.4 + + + Lei + 4 + 07.02.02 + 4.4530 + + Wurzelkanal-Aufbereitung und -Einlage, neue Endometriedatenbestimmung, jeder weitere Kanal + + préparation d'un canal radiculaire avec nouvelle mesure endométrique, pansement inclus, par canal supplémentaire + + Preparazione del canale e medicazione, rilevamento nuovi dati endometrici, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 4 + 07.02.02 + 4.4535 + + Wurzelkanal-Aufbereitung und -Einlage, bei vorhandenen Endometriedaten, jeder weitere Kanal + + préparation d'un canal radiculaire avec mesure endométrique existante, pansement inclus, par canal supplémentaire + + Preparazione del canale e con dati endometrici esistenti, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 4 + 07.02.03 + 4.4560 + Wurzelkanalfüllung, neue Endometriedatenbestimmung, 2 Kanäle + Obturation des canaux radiculaires avec nouvelles mesures endométriques, deux canaux + Otturazione canalare, rilevamento nuovi dati endometrici, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 223.1 + 189.6 + 223.10000000000002 + 256.6 + + + Lei + 4 + 07.02.03 + 4.4565 + Wurzelkanalfüllung, bei vorhandenen Endometriedaten, 2 Kanäle + Obturation des canaux radiculaires avec mesures endométriques existantes, deux canaux + Otturazione canalare, con dati endometrici esistenti, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 198.7 + 168.9 + 198.7 + 228.5 + + + Lei + 4 + 07.02.03 + 4.4570 + Wurzelkanalfüllung, neue Endometriedatenbestimmung, 3 Kanäle + Obturation des canaux radiculaires avec nouvelles mesures endométriques, trois canaux + Otturazione canalare, rilevamento nuovi dati endometrici, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 4 + 07.02.03 + 4.4575 + Wurzelkanalfüllung, bei vorhandenen Endometriedaten, 3 Kanäle + Obturation des canaux radiculaires avec mesures endométriques existantes, trois canaux + Otturazione canalare, con dati endometrici esistenti, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 247.5 + 210.4 + 247.5 + 284.6 + + + Kap + 2 + 08.07 + Schalenverblendungen, exkl. Bonding + Facettes dentaires; bonding non inclus + Faccette vestibolari, adesivo escluso + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peuvent être facturées qu'après concertation avec l'assureur. + Conteggiabile solo previa consultazione degli assicuratori + + + Lei + 4 + 07.02.03 + 4.4580 + + Wurzelkanalfüllung, neue Endometriedatenbestimmung, jeder weitere Kanal + + obturation d'un canal radiculaire, avec nouvelle mesure endométrique, par canal supplémentaire + + Otturazione canalare, rilevamento nuovi dati endometrici, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 4 + 07.02.03 + 4.4585 + + Wurzelkanalfüllung bei vorhandenen Endometriedaten, jeder weitere Kanal + + obturation d'un canal radiculaire avec mesure endométrique existante, par canal supplémentaire + + Otturazione canalare, con dati endometrici esistenti, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Kap + 2 + 07.03 + Wurzelbehandlung in einer Sitzung, mit Endometrie, exkl. Verschluss + Traitement radiculaire en une séance, endométrie incluse, obturation dentaire non incluse + Cura endodotica in una seduta, con endometria, otturazione esclusa + + + Lei + 3 + 07.03 + 4.4600 + Wurzelbehandlung in einer Sitzung, mit Endometrie, 1 Kanal + Traitement radiculaire en une séance, endométrie incluse, un canal + Cura endodontica in una seduta, con endometria, 1 canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 265 + 225.3 + 265.05 + 304.8 + + + Lei + 3 + 07.03 + 4.4610 + Wurzelbehandlung in einer Sitzung, mit Endometrie, 2 Kanäle + Traitement radiculaire en une séance, deux canaux + Cura endodontica in una seduta, con endometria, 2 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 352.1 + 299.3 + 352.1 + 404.9 + + + Lei + 3 + 07.03 + 4.4620 + Wurzelbehandlung in einer Sitzung, mit Endometrie, 3 Kanäle + Traitement radiculaire en une séance, trois canaux + Cura endodontica in una seduta, con endometria, 3 canali + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 481.1 + 408.9 + 481.09999999999997 + 553.3 + + + Lei + 3 + 07.03 + 4.4630 + + Wurzelbehandlung in einer Sitzung, mit Endometrie, jeder weitere Kanal + + traitement radiculaire en une séance, par canal supplémentaire + + Cura endodontica in una seduta, con endometria, ogni ulteriore canale + Exklusive Verschluss + Obturation dentaire non incluse + Otturazione esclusa + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Kap + 2 + 07.04 + Revision + Révision + Revisioni + + + Lei + 3 + 07.04 + 4.4650 + Aufwändige Revision und Entfernung von Fremdkörpern aus Wurzelkanälen, pro 5 Min. + Révision complexe et élimination de corps étrangers du canal radiculaire, par tranche de 5 min + Revisione laboriosa e rimozione di corpi estranei dai canali radicolari, ogni 5 minuti + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 07.04 + 4.4660 + Apexifikation oder Perforationsverschluss + Apexification ou obturation de perforations + Apecificazione o otturazione di perforazioni + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Kap + 2 + 07.05 + Bleichen von Zähnen + Blanchiment des dents + Sbiancamento dei denti + + + Lei + 3 + 07.05 + 4.4700 + Bleichen von devitalen Zähnen + Blanchiment de dents dévitalisées + Sbiancamento di denti devitali + • Inklusive provisorischer Füllung, Aufbereitung und Einlage; +• Exklusive Kofferdam +• pro Zahn und Sitzung +• Maximal 3 Sitzungen pro Zahn verrechenbar + • Obturation provisoire, préparation et pansement inclus +• Pose d'une digue non incluse +• Par dent et par séance +• Facturation d'un maximum de trois séances par dent + • Otturazione provvisoria, preparazione e medicazione incluse +• Diga esclusa +• Per ogni dente e seduta +• Fatturabili al massimo 3 sedute per dente + TP + 111.6 + 94.9 + 111.60000000000001 + 128.3 + + + Lei + 3 + 07.05 + 4.4710 + Bleichen von vitalen Zähnen (Homebleaching), pro Kiefer + Blanchiment de dents (à domicile), par arcade + Sbiancamento di denti vitali a domicilio (homebleaching), per mascella + • Inklusive Tiefziehschiene und Instruktion +• Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + • Gouttière thermoformée et instructions incluses +• Matériel facturer à part, avec position cluster (voir chapitre 20) +• Prestations du laboratoire de technique dentaire facturées à part + • Ferula termoplastica e istruzioni incluse +• Materiale con posizione cluster (Cap. 20) fatturabile separatamente +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 07.05 + 4.4720 + Bleichen von Zähnen (in office bleaching), pro 5 Min. effektive Einwirkzeit + Blanchiment de dents (au cabinet), par tranche de 5 min d'application/activation effective + Sbiancamento di denti nello studio (in office bleaching), ogni 5 minuti di tempo effettivo di attivazione + • Exklusive Kofferdam +• Zeitaufwand für effektive Einwirkzeit pro 5 Minuten + • Pose d'une digue non incluse +• Temps d'application/activation effectif, par tranche de 5 min + • Diga esclusa +• Dispendio di tempo effettivo d'impiego dell'agente, ogni 5 minuti + TP + 36.6 + 31.1 + 36.6 + 42.1 + + + Lei + 3 + 07.05 + 4.4730 + Nachkontrolle von gebleichten Zähnen + Contrôle après blanchiment + Controllo successivo di denti sbiancati + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Kap + 1 + 08 + Konservierende Zahnheilkunde + Soins conservateurs + Odontoiatria conservativa + + + Kap + 2 + 08.01 + Provisorische Füllung + Obturations provisoires + Otturazioni provvisorie + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + + + Lei + 3 + 08.01 + 4.5000 + Provisorische Füllung (Schnellverschluss) + Obturation provisoire (obturation rapide) + Otturazione provvisoria (otturazione rapida) + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 08.01 + 4.5010 + Glasionomerzement, einflächig + Obturation au ciment de verre ionomère, une face + Cemento vetroionomerico, a una superficie + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 08.01 + 4.5020 + Glasionomerzement, zweiflächig + Obturation au ciment de verre ionomère, deux faces + Cemento vetroionomerico, a due superfici + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Kap + 2 + 08.03 + Polieren von Amalgamfüllungen + Polissage d'obturations à l'amalgame + Lucidatura di otturazioni in amalgama + + + Lei + 3 + 08.03 + 4.5300 + Politur Amalgamfüllung, ein- oder zweiflächig + Polissage d'une obturation à l'amalgame à une ou à deux faces + Lucidatura di otturazione in amalgama, a 1 o 2 superfici + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Lei + 3 + 08.01 + 4.5030 + Glasionomerzement, dreiflächig + Obturation au ciment de verre ionomère, trois faces + Cemento vetroionomerico, a tre superfici + • Gilt auch für Milchzähne. +• Für die Versicherer nach UV/MV/IV nur mit Begründung verrechenbar. + • Position également applicable aux dents de lait +• Justification indispensable pour les assureurs AA/AM/AI + • Vale anche per i denti decidui +• Fatturabile per gli assicuratori AInf/AM/AI solo con motivazione + TP + 122 + 103.7 + 122 + 140.3 + + + Kap + 2 + 08.02 + Amalgamfüllungen, exklusive Unterfüllung und Politur + Obturations à l'amalgame, fond de cavité et polissage non inclus + Otturazioni in amalgama, sottofondo e lucidatura esclusi + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + + + Lei + 3 + 08.02 + 4.5050 + Amalgamfüllung, einflächig + Obturation à l'amalgame, à une face + Otturazione in amalgama, a una superficie + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 08.02 + 4.5060 + + Amalgamfüllung, einflächig, jede weitere in der gleichen Sitzung und im gleichen Quadrant + + chaque obturation à l'amalgame supplémentaire, à une face, dans le même quadrant et durant la même séance + + Otturazione in amalgama, a una superficie, ogni ulteriore nella medesima seduta e nel medesimo quadrante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 08.02 + 4.5090 + Amalgamfüllung, zweiflächig + Obturation à l'amalgame, à deux faces + Otturazione in amalgama, a due superfici + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 136 + 115.6 + 136 + 156.4 + + + Lei + 3 + 08.02 + 4.5100 + + Amalgamfüllung, zweiflächig, jede weitere in der gleichen Sitzung und im gleichen Quadrant + + chaque obturation à l'amalgame supplémentaire, à deux faces, dans le même quadrant et durant la même séance + + Otturazione in amalgama, a due superfici, ogni ulteriore nella medesima seduta e nel medesimo quadrante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 90.6 + 77 + 90.6 + 104.2 + + + Lei + 3 + 08.02 + 4.5130 + Amalgamfüllung, dreiflächig + Obturation à l'amalgame, à trois faces + Otturazione in amalgama, a tre superfici + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 184.8 + 157.1 + 184.8 + 212.5 + + + Lei + 3 + 08.02 + 4.5140 + + Amalgamfüllung, dreiflächig, jede weitere in der gleichen Sitzung und im gleichen Quadrant + + chaque obturation à l'amalgame supplémentaire, à trois faces, dans le même quadrant et durant la même séance + + Otturazione in amalgama, a tre superfici, ogni ulteriore nella medesima seduta e nel medesimo quadrante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 08.02 + 4.5210 + Amalgamhöckeraufbau + Reconstitution à l'amalgame de cuspides + Ricostruzione in amalgama di cuspidi + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 282.4 + 240 + 282.4 + 324.8 + + + Lei + 3 + 08.02 + 4.5220 + + Amalgamhöckeraufbau, jeder weitere in der gleichen Sitzung und im gleichen Quadrant + + chaque reconstitution à l'amalgame de cuspides supplémentaire, dans le même quadrant et durant la même séance + + Ricostruzione in amalgama di cuspidi, ogni ulteriore nella medesima seduta e nel medesimo quadrante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 08.03 + 4.5310 + Politur Amalgamfüllung, drei- oder mehrflächig + Polissage d'une obturation à l'amalgame à plus de deux faces + Lucidatura di otturazioni in amalgama, a 3 o più superfici + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 08.03 + 4.5320 + Aufpolieren und Rekonturieren einer alten Amalgamfüllung, pro Füllung + Polissage et recontourage d'une obturation à l'amalgame existante par obturation + Lucidatura e rimodellazione di una vecchia otturazione in amalgama, per otturazione + TP + 13.9 + 11.8 + 13.9 + 16 + + + Kap + 2 + 08.04 + Komposit-Füllungen, exkl. Bonding, exkl. Unterfüllung, inkl. Politur + Obturations en composite, bonding et fond de cavité non inclus, polissage inclus + Otturazioni in composito, adesivo escluso, sottofondo escluso, lucidatura compresa + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + + + Lei + 3 + 08.06 + 4.5742 + Kunststoff-Inlay, direkt, zweiflächig + Inlay en résine, direct, à deux faces + Intarsio in composito, diretto, due superfici + Wird von den Versicherern nicht vergütet + N'est pas remboursée par les assureurs + + Non è pagato dagli assicuratori + TP + 505.5 + 429.7 + 505.5 + 581.3 + + + Lei + 3 + 08.06 + 4.5744 + Kunststoff-Inlay, direkt, dreiflächig + Inlay en résine, direct, à trois faces + Intarsio in composito, diretto, tre superfici + Wird von den Versicherern nicht vergütet + N'est pas remboursée par les assureurs + + Non è pagato dagli assicuratori + TP + 610.1 + 518.6 + 610.1 + 701.6 + + + Lei + 3 + 08.04 + 4.5350 + Kompositfüllung, einflächig + Obturation en composite, à une face + Otturazione in composito, a 1 superficie + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 08.04 + 4.5360 + + Komposit-Füllung, einflächig, jede weitere in der gleichen Sitzung und im gleichen Sextant + + chaque obturation en composite supplémentaire, à une face, dans le même sextant et durant la même séance + + Otturazione in composito, a una superficie, ogni ulteriore nella medesima seduta e nel medesimo sestante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 08.04 + 4.5370 + Kompositfüllung, interdental Front + Obturation interdentaire en composite, dent antérieure + Otturazione in composito interdentale anteriore + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 142.9 + 121.5 + 142.9 + 164.3 + + + Lei + 3 + 08.04 + 4.5380 + + Kompositfüllung, interdental Front, jede weitere in der gleichen Sitzung und im gleichen Sextant + + chaque obturation interdentaire en composite d'une dent antérieure supplémentaire, dans le même sextant et durant la même séance + + Otturazione in composito, interdentale anteriore, ogni ulteriore nella medesima seduta e nel medesimo sestante + Gilt auch für Milchzähne + Position également applicable aux dents de lait + Vale anche per i denti decidui + TP + 97.6 + 83 + 97.6 + 112.2 + + + Lei + 3 + 08.04 + 4.5390 + Kompositeckenaufbau; -Inzisalkantenrekonstruktion + Reconstitution en composite d'un angle ou d'un bord incisif + Ricostruzione in composito di un angolo; ricostruzione di spigolo incisivo + Gilt auch für Milchzähne + +Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Position également applicable aux dents de lait + +Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + Vale anche per i denti decidui + +In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 170.8 + 145.2 + 170.8 + 196.4 + + + Lei + 3 + 08.04 + 4.5400 + + Kompositeckenaufbau; -Inzisalkantenrekonstruktion, jede(r) weitere in der gleichen Sitzung und im gleichen Sextant + + chaque reconstitution en composite d'un angle ou d'un bord incisif supplémentaire, dans le même sextant et durant la même séance + + Ricostruzione in composito di un angolo; ricostruzione di spigolo incisivo, ogni altra nella medesima seduta e nel medesimo sestante + • Bei Kronenrekonstruktionen 2 mal Tarifziffer 4.5390 +• in begründeten Fällen zusätzlich Tarifziffer 4.7700 + • Reconstruction d'une couronne: facturer deux fois la position tarifaire 4.5390 +• Dans les cas justifiés, la position tarifaire 4.7700 peut être facturée en sus + • In caso di ricostruzione di una corona si fattura 2 volte la cifra 4.5390 +• In casi giustificati in aggiunta la cifra 4.7700 + TP + 125.5 + 106.7 + 125.5 + 144.3 + + + Lei + 3 + 08.04 + 4.5410 + Kompositfüllung Prämolar/Milchmolar, zweiflächig + Obturation en composite d'une prémolaire ou d'une molaire de lait, à deux faces + Otturazione in composito su premolare/molare deciduo, a due superfici + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 142.9 + 121.5 + 142.9 + 164.3 + + + Lei + 3 + 08.04 + 4.5420 + + Kompositfüllung Prämolar/Milchmolar, zweiflächig, jede weitere in der gleichen Sitzung und im gleichen Sextant + + chaque obturation en composite d'une prémolaire ou d'une molaire de lait supplémentaire, à deux faces, dans le même sextant et durant la même séance + + Otturazione in composito, premolare/molare deciduo, a due superfici, ogni ulteriore nella medesima seduta e nel medesimo sestante + TP + 97.6 + 83 + 97.6 + 112.2 + + + Lei + 3 + 08.04 + 4.5430 + Komposit-Füllung, Molar, zweiflächig + Obturataion en composite d'une molaire, à deux faces + Otturazione in composito, molare, a due superfici + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 181.3 + 154.1 + 181.3 + 208.5 + + + Lei + 3 + 08.04 + 4.5440 + + Komposit-Füllung, Molar, zweiflächig, jede weitere in der gleichen Sitzung + + chaque obturation en composite d'une molaire supplémentaire, à deux faces et durant la même séance + + Otturazione in composito, molare, a due superfici, ogni altra nella medesima seduta + TP + 136 + 115.6 + 136 + 156.4 + + + Lei + 3 + 08.04 + 4.5450 + Kompositfüllung Prämolar/Milchmolar, dreiflächig + Obturation en composite d'une prémolaire ou d'une molaire de lait, à trois faces + Otturazione in composito su premolare/molare deciduo, a tre superfici + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 216.2 + 183.8 + 216.2 + 248.6 + + + Kap + 2 + 08.06 + Keramik- und Kunststoff-Inlay, direkt, exkl. Bonding + Inlay en céramique ou en résine, direct; bonding non inclus + Intarsi diretti in ceramica o composito, adesivo escluso + + + Lei + 3 + 08.06 + 4.5700 + Cerec, einflächig + Inlay CEREC, à une face + Intarsio Cerec, a una superficie + TP + 526.5 + 447.5 + 526.5 + 605.5 + + + Lei + 3 + 08.06 + 4.5710 + Cerec, zweiflächig + Inlay CEREC, à deux faces + Intarsio Cerec, a due superfici + TP + 610.1 + 518.6 + 610.1 + 701.6 + + + Lei + 3 + 08.06 + 4.5720 + Cerec, dreiflächig + Inlay CEREC, à trois faces + Intarsio Cerec, a tre superfici + TP + 711.3 + 604.6 + 711.3 + 818 + + + Lei + 3 + 08.06 + 4.5730 + Cerec, Overlay + Onlay CEREC + Overlay Cerec + TP + 767 + 652 + 767.05 + 882.1 + + + Lei + 3 + 08.06 + 4.5740 + Kunststoff-Inlay, direkt, einflächig + Inlay en résine, direct, à une face + Intarsio in composito, diretto, una superficie + Wird von den Versicherern nicht vergütet + N'est pas remboursée par les assureurs + + Non è pagato dagli assicuratori + TP + 366.1 + 311.2 + 366.1 + 421 + + + Lei + 3 + 08.04 + 4.5460 + + Kompositfüllung Prämolar/Milchmolar, dreiflächig, jede weitere in der gleichen Sitzung und im gleichen Sextant + + chaque obturation en composite d'une prémolaire ou d'une molaire de lait supplémentaire, à trois faces, dans le même sextant et durant la même séance + + Otturazione in composito, premolare/molare deciduo, a tre superfici, ogni ulteriore nella medesima seduta e nel medesimo sestante + TP + 170.8 + 145.2 + 170.8 + 196.4 + + + Lei + 3 + 08.04 + 4.5470 + Komposit-Füllung, Molar, dreiflächig, + Obturataion en composite d'une molaire, à trois faces + Otturazione in composito, molare, a tre superfici + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 233.6 + 198.6 + 233.60000000000002 + 268.6 + + + Lei + 3 + 08.04 + 4.5480 + + Komposit-Füllung, Molar, dreiflächig, jede weitere in der gleichen Sitzung und im gleichen Sextant + + chaque obturation en composite d'une molaire supplémentaire, à trois faces, dans le même sextant et durant la même séance + + Otturazione in composito, a tre superfici, ogni ulteriore nella medesima seduta e nel medesimo sestante + TP + 188.3 + 160.1 + 188.3 + 216.5 + + + Lei + 3 + 08.04 + 4.5510 + Kompositaufbau Prämolar/Milchmolar + Reconstitution en composite de cuspides d'une prémolaire ou d'une molaire de lait + Ricostruzione in composito di cuspidi premolare/molare deciduo + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 240.6 + 204.5 + 240.6 + 276.7 + + + Lei + 3 + 08.04 + 4.5520 + + Kompositaufbau Prämolar/Milchmolar, jeder weitere in der gleichen Sitzung und im gleichen Sextant + + chaque reconstitution en composite de cuspides d'une prémolaire ou d'une molaire de lait supplémentaire, dans le même sextant et durant la même séance + + Ricostruzione in composito di cuspidi premolare/molare deciduo, ogni ulteriore nella medesima seduta e nel medesimo sestante + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Lei + 3 + 08.04 + 4.5530 + Kompositaufbau, Molar, 1 und 2 Höcker + Reconstitution en composite d'une molaire, une ou deux cuspides + Ricostruzione in composito di 1 o 2 cuspidi, molare + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 258 + 219.3 + 258 + 296.7 + + + Lei + 3 + 08.04 + 4.5540 + + Kompositaufbau, Molar, 1 und 2 Höcker, jeder weitere in der gleichen Sitzung und im gleichen Sextant + + chaque reconstitution en composite d'une molaire supplémentaire, une ou deux cuspides, dans le même sextant et durant la même séance + + Ricostruzione in composito di 1 o 2 cuspidi, molare, ogni ulteriore nelle medesima seduta e nel medesimo sestante + TP + 212.7 + 180.8 + 212.7 + 244.6 + + + Lei + 3 + 08.04 + 4.5550 + Kompositaufbau, Molar, 3 und 4 Höcker + Reconstitution en composite d'une molaire, trois ou quatre cuspides + Ricostruzione in composito di 3 o 4 cuspidi, molare + Werden mehrere Füllungen in der gleichen Sitzung gemacht, so berechnet sich die höher bewertete als 1. Füllung. + Lorsque plusieurs obturations sont réalisées au cours de la même séance, la première obturation est celle qui totalise le plus de points. + In caso di più otturazioni nella medesima seduta, si fattura la più cara come prima otturazione + TP + 285.9 + 243 + 285.9 + 328.8 + + + Lei + 3 + 08.04 + 4.5560 + + Kompositaufbau, Molar, 3 und 4 Höcker, jeder weitere in der gleichen Sitzung und im gleichen Sextant + + chaque reconstitution en composite d'une molaire supplémentaire, trois ou quatre cuspides, dans le même sextant et durant la même séance + + Ricostruzione in composito di 3 o 4 cuspidi, molare, ogni ulteriore nelle medesima seduta e nel medesimo sestante + TP + 240.6 + 204.5 + 240.6 + 276.7 + + + Kap + 2 + 08.05 + Keramik- und Kunststoffinlay indirekt, exkl. Bonding + Inlay en céramique ou en résine, indirect; bonding non inclus + Intarsi indiretti in ceramica o composito, adesivo escluso + Keramikarbeiten werden nur in kariesfreien oder sanierten Gebissen als wirtschaftlich und zweckmässig betrachtet + Les réalisations en céramique ne sont considérées comme économiques et appropriées que si les arcades du patient sont exemptes de caries ou ont été assainies. + I lavori di ceramica sono considerati economici e adeguati solo in dentature prive di carie o risanate + + + Lei + 3 + 08.05 + 4.5650 + Keramik-/Kunststoff-Inlay, indirekt, einflächig + Inlay en céramique/résine, indirect, à une face + Intarsio indiretto in ceramica o composito, a una superficie + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 526.5 + 447.5 + 526.5 + 605.5 + + + Lei + 3 + 08.05 + 4.5660 + Keramik-/Kunststoff-Inlay, indirekt, zweiflächig + Inlay en céramique/résine, indirect, à deux faces + Intarsio indiretto in ceramica o composito, a due superfici + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 610.1 + 518.6 + 610.1 + 701.6 + + + Lei + 3 + 08.05 + 4.5670 + Keramik-/Kunststoff-Inlay, indirekt, dreiflächig oder mit Höckerüberdeckung + Inlay en céramique/résine, indirect, à trois faces face ou avec recouvrement des cuspides + Intarsio indiretto in ceramica o composito, a tre superfici o ricopertura di cuspidi + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 711.3 + 604.6 + 711.3 + 818 + + + Lei + 3 + 08.07 + 4.5750 + Kunststoff-Schale, konfektioniert, pro Schale + Facette en résine, préfabriquée, par facette + Faccetta preconfezionata in composito, per ogni faccetta + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 373.1 + 317.1 + 373.1 + 429.1 + + + Lei + 3 + 08.07 + 4.5760 + Porzellanschale, konfektioniert, pro Schale + Facette en céramique, préfabriquée, par facette + Faccetta preconfezionata in porcellana, per ogni faccetta + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 373.1 + 317.1 + 373.1 + 429.1 + + + Lei + 3 + 08.07 + 4.5770 + Kunststoff- oder Porzellanschale, im Labor hergestellt, pro Schale + Facette en résine ou en céramique, indirecte, par facette + Faccetta in composito o porcellana confezionata in laboratorio, per ogni faccetta + • Nur nach Rücksprache mit den Versicherern verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + • Ne peut être facturée qu'après concertation avec l'assureur +• Prestations du laboratoire de technique dentaire facturées à part + • Conteggiabile solo previa consultazione degli assicuratori +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 523 + 444.6 + 523.05 + 601.5 + + + Lei + 3 + 08.07 + 4.5780 + Kunststoffüberzug ohne Schale + Recouvrement en résine, sans facette + Rivestimento diretto in composito senza faccetta + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 167.4 + 142.3 + 167.4 + 192.5 + + + Lei + 3 + 08.07 + 4.5790 + Cerec-Veneer + Facette CEREC + Faccetta Cerec + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 523 + 444.6 + 523.05 + 601.5 + + + Kap + 2 + 08.08 + Bondtechnik und Versiegeln + Technique de bonding et scellements + Tecnica adesiva e sigillatura + + + Lei + 3 + 08.08 + 4.5800 + Schmelzätzung und Anbringen des Haftvermittlers + Mordançage de l'émail et application de l'adhésif + Mordenzatura dello smalto e applicazione dell'adesivo + Gilt auch beim adhäsiven Zementieren + Position également applicable au scellement adhésif + Vale anche per la cementazione adesiva + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 08.08 + 4.5810 + Dentinvorbehandlung und Anbringen des Dentinhaftvermittlers + Préparation de la dentine et application de l'adhésif dentinaire + Condizionamento della dentina e applicazione dell'adesivo dentinale + Gilt auch beim adhäsiven Zementieren + Position également applicable au scellement adhésif + Vale anche per la cementazione adesiva + TP + 15.7 + 13.3 + 15.700000000000001 + 18.1 + + + Lei + 3 + 08.08 + 4.5820 + Fissurenversiegelung, pro Zahn + Scellement de sillons, par dent + Sigillatura dei solchi, per dente + TP + 29.6 + 25.2 + 29.6 + 34 + + + Lei + 3 + 08.08 + 4.5830 + Erweiterte Fissurenversiegelung, pro Zahn + Scellement étendu de fissures, par dent + Sigillatura estesa dei solchi, per dente + TP + 62.8 + 53.4 + 62.8 + 72.2 + + + Kap + 2 + 08.09 + Goldfüllung + Obturations en or + Otturazioni in oro + + + Lei + 3 + 08.09 + 4.5860 + Goldgussfüllung, indirekt, einflächig + Obturation indirecte en or, à une face + Intarsio in oro, indiretto, a una superficie + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 477.7 + 406 + 477.7 + 549.4 + + + Lei + 3 + 08.09 + 4.5870 + Goldgussfüllung, indirekt, zweiflächig + Obturation indirecte en or, à deux faces + Intarsio in oro, indiretto, a due superfici + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 571.8 + 486 + 571.8 + 657.6 + + + Lei + 3 + 08.09 + 4.5880 + Goldgussfüllung, indirekt, dreiflächig oder mit Höckerüberdeckung + Obturation indirecte en or, à trois faces ou avec recouvrement des cuspides + Intarsio in oro, indiretto, a tre superfici o con ricopertura di cuspidi + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 641.5 + 545.3 + 641.5 + 737.7 + + + Kap + 2 + 08.10 + Setzen von Stiften und Schrauben + Pose de tenons et vis + Inserimento di perni e viti + + + Lei + 3 + 08.10 + 4.5910 + Intrakanalärer Stift, pro Stift + Tenon intracanalaire, par tenon + Perno canalare, per ogni perno + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 08.10 + 4.5920 + Intrakanaläre Schraube, pro Schraube + Vis intracanalaire, par vis + Vite canalare, per ogni vite + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Kap + 2 + 08.11 + Unterfüllung + Fond de cavité + Sottofondi + + + Lei + 3 + 08.11 + 4.5940 + Zement-Unterfüllung + Fond de cavité en ciment + Sottofondo in cemento + TP + 15.7 + 13.3 + 15.700000000000001 + 18.1 + + + Lei + 3 + 08.11 + 4.5950 + Liner, Lack + Vernis + Liner, lacca + Kann nicht zusätzlich zu den Tarifziffern 4.5800, 4.5810 verrechnet werden + N'est pas cumulable avec les positions 4.5800 et 4.5810 + Non può essere fatturato in aggiunta alle cifre 4.5800, 4.5810 + TP + 10.5 + 8.9 + 10.5 + 12.1 + + + Kap + 1 + 09 + Prothetik + Prothèses + Protesi + + + Kap + 2 + 09.01 + Totalprothetik + Prothèses totales + Protesi totale + + + Kap + 2 + 09.02 + Teilprothetik + Prothèses partielles + Protesi parziale + + + Kap + 2 + 09.03 + Hybridprothetik + Prothèses hybrides + Protesi ibrida + + + Kap + 2 + 09.04 + Hilfsteile + Dispositifs d'ancrage + Accessori + + + Lei + 3 + 09.04 + 4.6220 + + Indirekter Einbau einer Retentions- oder Resilienzverankerung, jede weitere Verankerung + + chaque montage indirect d'un point d'ancrage supplémentaire, rigide ou résilient + + Montaggio indiretto di un ancoraggio ritentivo o resiliente, ogni ulteriore ancoraggio + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Kap + 2 + 09.05 + Diverses Prothetik + Prestations diverses + Prestazioni diverse protesi + + + Lei + 3 + 09.01 + 4.6000 + Totalprothese Ober- oder Unterkiefer + Prothèse totale + Protesi totale superiore o inferiore + • Planung, Besprechung, Erstabformung, Abformung Gegenkiefer, Bestimmung der vertikalen Relation, Farb-Formauswahl, individuelles Aufstellen, Frontzahn-, Gesamteinprobe, Abgabe, Instruktion über Handhabung und Hygiene +• Exklusive Zweitabformung und Bissnahme +• Zahntechnische Laborleistung separat verrechenbar + • Planification, entretien avec le patient, empreinte préliminaire, empreinte arcade antagoniste, détermination de la dimension verticale, choix de la forme et de la teinte, montage individuel, essai du bloc incisif, essai du montage, pose, instructions de manipulation et d'hygiène +• Empreinte définitive et enregistrement de l'occlusion non inclus +• Prestations du laboratoire de technique dentaire facturées à part + • Progettazione, orientamento del paziente, prima impronta, impronta del mascellare antagonista, determinazione della relazione verticale, scelta della forma e del colore dei denti, montaggio individuale, prova dei frontali e prova generale, consegna istruzioni per l'uso e per l'igiene +• Impronta individuale definitiva e presa del morso esclusi +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 927.4 + 788.3 + 927.4 + 1066.5 + + + Lei + 3 + 09.01 + 4.6010 + Immediat- oder Sofortprothese + Prothèse immédiate + Protesi totale immediata + • Planung, Besprechung, Erstabformung, Abformung Gegenkiefer, Bestimmung der vertikalen Relation, Farb-Formauswahl, Abgabe, Instruktion über Handhabung und Hygiene +• Exklusive Bissnahme +• Zahntechnische Laborleistung separat verrechenbar + • Planification, entretien avec le patient, empreinte préliminaire, empreinte arcade antagoniste, détermination de la dimension verticale, choix de la teinte et de la forme, pose, instructions de manipulation et d'hygiène +• Enregistrement de l'occlusion non inclus +• Prestations du laboratoire de technique dentaire facturées à part + Progettazione, orientamento del paziente, prima impronta, impronta del mascellare antagonista, determinazione della relazione verticale, scelta della forma e del colore dei denti, consegna, istruzioni per l'uso e per l'igiene +• Presa del morso esclusa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 414.9 + 352.7 + 414.9 + 477.1 + + + Lei + 3 + 09.02 + 4.6100 + Provisorische Kunststoffprothese; Nylonprovisorium; Kunststoffprothese mit 2 Drahtklammern + Prothèse provisoire en résine; prothèse provisoire en nylon; prothèse provisoire en résine avec deux crochets en fil d'acier + Protesi provvisoria in resina; +protesi provvisoria in nylon; +protesi in resina con due ganci in filo metallico + • Planung, Besprechung, Erstabformung, Abformung Gegenkiefer, Bestimmung der vertikalen Relation, Farb-Formauswahl, Abgabe, Instruktion über Handhabung und Hygiene. +• Exklusive Bissnahme (nur wenn Modelle nicht eindeutig reponierbar sind, kann eine Bissnahme verrechnet werden); +• Inklusive Klammern und Zähne; z.B. provisorische Versorgung nach Unfall +• Zahntechnische Laborleistung separat verrechenbar + • Planification, entretien avec le patient, empreinte préliminaire, empreinte arcade antagoniste, détermination de la dimension verticale, choix de la teinte et de la forme, pose, instructions de manipulation et d'hygiène. +• Enregistrement de l'occlusion non inclus (l'enregistrement de l'occlusion peut être facturé uniquement si les modèles ne sont pas repositionnables avec précision) +• Crochets et dents inclus p.ex. restauration provisoire suite à un accident +• Prestations du laboratoire de technique dentaire facturées à part + • Progettazione, orientamento del paziente, prima impronta, impronta del mascellare antagonista, determinazione della relazione verticale, consegna, istruzioni per l'uso e per l'igiene. +• Registrazione in centrica esclusa (può essere conteggiata unicamente se i modelli non sono perfettamente articolabili); +• Ganci e denti inclusi; p. es. confezione d'un provvisorio dopo un infortunio +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 219.7 + 186.7 + 219.7 + 252.7 + + + Lei + 3 + 09.02 + 4.6110 + Kunststoffprothese mit mehr als 2 Drahtklammern oder mit Gussklammern + Prothèse en résine avec plus de deux crochets en fil d'acier ou avec crochets coulés + Protesi in resina con più di due ganci in filo metallico o con ganci fusi + • Planung, Aufklärung Patient, Erstabformung, Abformung Gegenkiefer, Farbe- Formauswahl, vertikale Dimension, Draht- oder Gussklammern, Abgabe, Instruktion Handhabung und Hygiene; +• Exklusive Bissnahme +• Zahntechnische Laborleistung separat verrechenbar + • Planification, entretien avec le patient, empreinte préliminaire, empreinte arcade antagoniste, choix de la teinte et de la forme, détermination de la dimension verticale, crochets fil ou crochets coulés, pose, instructions de manipulation et d'hygiène; +• Enregistrement de l'occlusion non inclus +• Prestations du laboratoire de technique dentaire facturées à part + • Progettazione, orientamento del paziente, prima impronta, impronta del mascellare antagonista, scelta del colore e dalla forma dei denti, determinazione della relazione verticale, ganci fusi o in filo metallico, consegna, istruzioni per l'uso e per l'igiene +• Registrazione in centrica esclusa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 530 + 450.5 + 530 + 609.5 + + + Lei + 3 + 09.03 + 4.6150 + Hybridprothese + Prothèse hybride + Protesi ibrida + • Gilt nur für Prothesen mit gegossenen, modellierten Metallelementen im Sinne der Perioprothetik. +• Beinhaltet: Leistungen wie Tarifziffer 4.6000 sowie Gerüstplanung, Werkzeichnung und Gerüsteinpobe +• Exklusive Zweitabformung und Bissnahme +• zusätzlich können die Tarifziffern 4.6200, 4.6210, 4.6220 und 4.7060 verrechnet werden. +• Zahntechnische Laborleistung separat verrechenbar + + • Position applicable uniquement aux prothèses comportant des éléments métalliques modelés et coulés dans le sens de la prothèse parodontale. +• Comprend les prestations telles que la position 4.6000 ainsi que la planification, le dessin et l'essai du châssis; +• Empreinte définitive et enregistrement de l'occlusion non inclus +• Cumulable avec les positions 4.6200, 4.6210, 4.6220 et 4.7060 +• Prestations du laboratoire de technique dentaire facturées à part + • Si applica solamente alle protesi con elementi metallici fusi e modellati ai sensi della perioprotesi +• Comprende: prestazioni pari alla cifra 4.6000 e la progettazione dello scheletrato, il disegno dello scheletrato e la prova dello scheletrato +• Impronta individuale definitiva e presa del morso esclusi +• Inoltre si possono fatturare le cifre 4.6200, 4.6210, 4.6220 e 4.7060 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + + TP + 1087.8 + 924.6 + 1087.8 + 1251 + + + Lei + 3 + 09.07 + 4.6720 + Unterfütterung Totalprothese, direkt + Rebasage direct d'une prothèse totale + Ribasamento diretto protesi totale + TP + 177.8 + 151.1 + 177.8 + 204.5 + + + Lei + 3 + 09.07 + 4.6730 + Unterfütterung Teilprothese, direkt + Rebasage direct d'une prothèse partielle + Ribasamento diretto protesi parziale + TP + 153.4 + 130.4 + 153.4 + 176.4 + + + Kap + 2 + 09.08 + Konditionierung oder provisorische Unterfütterung der Prothese + Conditionnement ou rebasage provisoire + Condizionamento o ribasamento provvisorio della protesi + + + Lei + 3 + 09.08 + 4.6900 + Provisorische Unterfütterung Prothese + Rebasage provisoire d'une prothèse + Ribasamento provvisorio di una protesi + TP + 160.4 + 136.3 + 160.4 + 184.5 + + + Lei + 3 + 09.02 + 4.6120 + Modellgussprothese + Prothèse à châssis coulé + Protesi scheletrata + • Planung, Aufklärung Patient, Erstabformung, Abformung Gegenkiefer, Farbe- Formauswahl, vertikale Dimension, Gerüstplanung am Modell, Gerüstplanung Parallelometer, Werkzeichnung, Schleifen, Klammern, Gerüsteinprobe, Gesamteinprobe, Abgabe, Instruktion Handhabung und Hygiene. +• Exklusive Zweitabformung und Bissnahme +• Zahntechnische Laborleistung separat verrechenbar + • Planification, entretien avec le patient, empreinte préliminaire, empreinte arcade antagoniste, choix de la teinte et de la forme, détermination de la dimension verticale, planification du châssis sur le modèle et au parallèlomètre, dessin du châssis, meulage, essai du châssis, essai du montage, pose, instructions de manipulation et d'hygiène. +• Empreinte définitive et enregistrement de l'occlusion non inclus +• Prestations du laboratoire de technique dentaire facturées à part + • Progettazione, orientamento del paziente, prima impronta, impronta del mascellare antagonista, scelta del colore e dalla forma dei denti, determinazione della relazione verticale, progettazione dello scheletrato sul modello e al parallelometro, disegno dello scheletrato, molaggio, preparazione per i ganci, prova dello scheletrato, prova generale, consegna, istruzioni per l'uso e per l'igiene +• Impronta individuale defintiva e presa del morso esclusi +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 819.3 + 696.4 + 819.3 + 942.2 + + + Lei + 3 + 09.04 + 4.6200 + Fixation der Retention, direkt im Munde, pro Retention + Fixation directe d'un point d'ancrage, par ancrage + Montaggio diretto della retenzione, per ogni elemento + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 09.04 + 4.6210 + Indirekter Einbau einer Retentions- oder Resilienzverankerung + Montage indirect d'un point d'ancrage rigide ou résilient + Montaggio indiretto di un ancoraggio ritentivo o resiliente + • Exklusive Wurzelkappe +• Zahntechnische Laborleistung separat verrechenbar + • Coiffe radiculaire non incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Cappa radicolare esclusa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 09.05 + 4.6300 + Abformung mit individuellem Löffel für Totalprothese + Prise d'empreinte pour prothèse totale avec porte-empreinte individuel + Impronta con portaimpronta individuale per protesi totale + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 142.9 + 121.5 + 142.9 + 164.3 + + + Lei + 3 + 09.05 + 4.6310 + Abformung mit individuellem Löffel für Teilprothese + Prise d'empreinte pour prothèse partielle avec porte-empreinte individuel + Impronta con portaimpronta individuale per protesi parziale + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 97.6 + 83 + 97.6 + 112.2 + + + Lei + 3 + 09.05 + 4.6320 + Kompressionsabdruck + Prise d'empreinte par compression + Impronta in compressione + • Darunter fällt auch die Altered Cast Methode +• Zahntechnische Laborleistung separat verrechenbar + • Cette position s'applique également à la technique par modèle fractionné (altered cast) +• Prestations du laboratoire de technique dentaire facturées à part + • Compreso il metodo Altered Cast +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 209.2 + 177.8 + 209.2 + 240.6 + + + Lei + 3 + 09.05 + 4.6330 + Bestimmung der vertikalen Relation + Détermination de la dimension verticale + Determinazione della relazione verticale + Tarifziffer 4.6330 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik (Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6330 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 09.05 + 4.6340 + Farbe- und Formauswahl + Choix de la forme et de la teinte + Scelta del colore e della forma + Tarifziffer 4.6340 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik (Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6340 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 31.4 + 26.7 + 31.4 + 36.1 + + + Lei + 3 + 09.05 + 4.6350 + Diagnostisches Aufstellen im Artikulator + Montage sur articulateur à des fins de diagnostic + Montaggio diagnostico in articolatore + Tarifziffer 4.6350 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6350 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 320.8 + 272.7 + 320.79999999999995 + 368.9 + + + Lei + 3 + 09.08 + 4.6910 + Provisorische Unterfütterung Prothese und Aushärtung im Drucktopf + Rebasage provisoire d'une prothèse et durcissement dans une marmite à pression + Ribasamento provvisorio di una protesi inclusa polimerizzazione sotto pressione + TP + 240.6 + 204.5 + 240.6 + 276.7 + + + Kap + 2 + 10.01 + Kronen + Couronnes + Corone + + + Lei + 3 + 10.01 + 4.7060 + Stiftkappe + Coiffe à tenon radiculaire + Cappa radicolare a perno + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 453.2 + 385.2 + 453.20000000000005 + 521.2 + + + Lei + 4 + 10.04.01 + 4.7290 + + Provisorische Brücke direkt nach Vorabformung, jedes weitere Glied/Pfeiler + + chaque élément ou pilier supplémentaire d'un pont provisoire en résine, direct + + Ponte provvisorio per mezzo di impronta preliminare, ogni ulteriore elemento/pilastro + TP + 62.8 + 53.4 + 62.8 + 72.2 + + + Lei + 3 + 09.05 + 4.6360 + Individuelles Aufstellen am Patienten + Montage individualisé au fauteuil + Montaggio individuale al paziente + Tarifziffer 4.6360 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6360 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 09.05 + 4.6370 + Frontzahneinprobe Teilprothese + Essai du bloc incisif (prothèse partielle) + Prova dei frontali in protesi parziale + Tarifziffer 4.6370 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6370 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 90.6 + 77 + 90.6 + 104.2 + + + Lei + 3 + 09.05 + 4.6380 + Instruktion des Patienten über Handhabung der Prothesen + Instruction de manipulation de prothèse et d'hygiène + Istruzione del paziente sull'uso e sulla manutenzione della protesi + Tarifziffer 4.6380 darf nur verrechnet werden, soweit sie nicht in den Kapiteln 09.01 Totalprothetik, 09.02 Teilprothetik, 09.03 Hybridprothetik Tarifziffern 4.6000 bis inkl. 4.6150) inbegriffen ist. + Cette position ne peut être facturée que dans le cas où les prestations correspondantes ne sont pas incluses dans une autre position facturée simultanément [chapitres 09.01 Prothèses totales, 09.02 Prothèses partielles et 09.03 Prothèses hybrides (positions 4.6000 à 4.6150)] + La cifra 4.6380 può essere fatturata solo se non è già compresa nei capitolo 09.01 Protesi totale, 09.02 Protesi parziale, 09.03 protesi ibrida (cifre da 4.6000 a 4.6150 compresa) + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 09.05 + 4.6390 + Nachsorge, mit Retouche + Suivi avec retouche + Controllo con ritocchi + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 76.7 + 65.2 + 76.7 + 88.2 + + + Lei + 3 + 09.05 + 4.6400 + Nachsorge, ohne Retouche + Suivi sans retouche + Controllo senza ritocchi + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Kap + 2 + 09.06 + Reparaturen Prothetik + Réparations + Riparazioni protesi + + + Lei + 3 + 09.06 + 4.6500 + Reparatur, ohne Abformung, ohne Inspektion + Réparation sans prise d'empreinte ni examen + Riparazione senza impronta, senza ispezione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 09.06 + 4.6510 + Reparatur, ohne Abformung, mit Inspektion + Réparation sans prise d'empreinte, avec examen + Riparazione senza impronta, con ispezione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 69.7 + 59.2 + 69.7 + 80.2 + + + Lei + 3 + 09.06 + 4.6520 + Reparatur, mit Abformung + Réparation avec prise d'empreinte + Riparazione con impronta + • Nicht kombinierbar mit Unterfütterung in der gleichen Sitzung. +• Zuschlag pro Klammer gemäss Tarifziffer 4.6540; +• Zuschlag pro Zahn gemäss Tarifziffer 4.6550 +• Zahntechnische Laborleistung separat verrechenbar + • N'est pas cumulable avec un rebasage durant la même séance +• Supplément par crochet au moyen de la position 4.6540 +• Supplément par dent au moyen de la position 4.6550 +• Prestations du laboratoire de technique dentaire facturées à part + • Non combinabile nella stessa seduta, con ribasamento +• Supplemento per nuovo gancio conformemente alla cifra 4.6540; +• Supplemento per dente conformemente alla cifra 4.6550 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 174.3 + 148.2 + 174.3 + 200.4 + + + Lei + 3 + 09.06 + 4.6530 + Reparatur, mit Abformung und Abformung Gegenbiss + Réparation avec prise d'empreinte et prise d'empreinte de l'arcade antagoniste + Riparazione con impronta e contromodello + • Nicht kombinierbar mit Unterfütterung in der gleichen Sitzung. +• Zuschlag pro Klammer gemäss Tarifziffer 4.6540; +• Zuschlag pro Zahn gemäss Tarifziffer 4.6550 +• Allfällige Bissnahme zusätzlich verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + • N'est pas cumulable avec un rebasage durant la même séance +• Supplément par crochet au moyen de la position 4.6540 +• Supplément par dent au moyen de la position 4.6550 +• Enregsitrement de l'occlusion éventuel facturé en sus +• Prestations du laboratoire de technique dentaire facturées à part + • Non combinabile nella stessa seduta, con ribasamento +• Supplemento per nuovo gancio conformemente alla cifra 4.6540; +• Supplemento per dente conformemente alla cifra 4.6550 +• Eventuale presa del morso fatturabile in aggiunta +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 212.7 + 180.8 + 212.7 + 244.6 + + + Lei + 3 + 09.06 + 4.6540 + Reparatur, Zuschlag pro Klammer + Réparation, supplément par crochet + Riparazione, supplemento per gancio + • Gilt nur für Reparaturen / Änderung +• Zahntechnische Laborleistung separat verrechenbar + • Position applicable uniquement aux réparations/modifications +• Prestations du laboratoire de technique dentaire facturées à part + • Si applica unicamente alle riparazioni e alle modifiche +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 31.4 + 26.7 + 31.4 + 36.1 + + + Lei + 3 + 09.06 + 4.6560 + Provisorisches Ergänzen eines Zahnes, inkl. Vorabformung + Ajout provisoire d'une dent, prise d'empreinte incluse + Aggiunta provvisoria di un dente, impronta preliminare inclusa + Inklusive Vorabformung + Prise d'empreinte incluse + Impronta preliminare inclusa + TP + 132.5 + 112.6 + 132.5 + 152.4 + + + Kap + 2 + 09.07 + Unterfütterung + Rebasage + Ribasamenti + + + Lei + 3 + 09.07 + 4.6700 + Unterfütterung Totalprothese, indirekt + Rebasage indirect d'une prothèse totale + Ribasamento indiretto protesi totale + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 258 + 219.3 + 258 + 296.7 + + + Lei + 3 + 09.07 + 4.6710 + Unterfütterung Teilprothese, indirekt + Rebasage indirect d'une prothèse partielle + Ribasamento indiretto protesi parziale + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 09.06 + 4.6550 + Reparatur, Zuschlag pro Zahn + Réparation, supplément par dent + Riparazione, supplemento per dente + • Gilt nur für Reparaturen / Änderung +• Zahntechnische Laborleistung separat verrechenbar + • Position applicable uniquement aux réparations/modifications +• Prestations du laboratoire de technique dentaire facturées à part + • Si applica unicamente alle riparazioni e alle modifiche +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 24.4 + 20.7 + 24.4 + 28.1 + + + Kap + 1 + 10 + Kronen- und Brückenprothetik + Couronnes et ponts + Corone e ponti + In den Tarifziffern dieses Kapitels sind je Erfordernis der Methode enthalten: + +Planung der Arbeit, Präparation, Abformung, Gegenbiss, Einprobe (Gerüst-, Rohbrand-, Glasurbrandeinprobe), definitives Zementieren (auch adhäsives), Zementieren von Provisorien. + +Abformungen: +Bei den in diesem Kapitel aufgeführten Leistungen sind die Abformungen, Abformmethoden und Wiederholungen in den Leistungen eingerechnet und können nicht separat verrechnet werden. So auch die Abformung des Gegenkiefers, die Abformung mittels individuellem Löffel und die Cu-Ring-Abformung. + +Stifte, die vom Zahnarzt geliefert werden, sind auch durch den Zahnarzt separat (wie Laborfaktura) zu verrechnen. Zirkonoxidstifte und Keramikaufbauten nur nach Rücksprache mit den Versicherern. + +Bissnahme: gemäss Kapitel 01.14 + +Keramikarbeiten werden nur in kariesfreien oder sanierten Gebissen als wirtschaftlich und zweckmässig betrachtet. + Selon les exigences de la méthode utilisée, les positions de ce chapitre incluent les prestations énumérées ci-après: + +Planification du travail, taille/préparation, empreinte, empreinte antagoniste, essai en bouche (de l'armature, du biscuit, après glaçage), scellement définitif (scellement adhésif inclus), scellement de provisoires. + +Les positions du présent chapitre incluent toutes les empreintes, quels que soient la méthode et le nombre de répétitions, qui ne peuvent être facturées à part. L'empreinte de l'arcade antagoniste, l'empreinte au moyen d'un porte-empreinte individuel ou l'empreinte au moyen d'anneaux de cuivre sont donc également incluses. + +Les tenons fournis par le médecin-dentiste doivent également être facturés à part (comme une facture de laboratoire dentaire). Les tenons en oxyde de zirconium et les moignons en céramique ne peuvent être facturés qu'après concertation avec les assureurs. + +L'enregistrement de l'occlusion doit être facturé conformément au chapitre 01.14. + +Les réalisations en céramique ne sont considérées comme économiques et appropriées que si les arcades du patient sont exemptes de caries ou ont été assainies. + Nelle cifre di questo capitolo sono compresi, a seconda dei metodi impiegati: + +La pianificazione del lavoro, la preparazione, l'impronta, il contromodello, la prova (prova dell'armatura, della prima cottura, della glasatura), la cementazione definitiva (anche adesiva), la cementazione dei provvisori + +Impronte: +Nelle prestazioni elencate in questo capitolo sono comprese le impronte, secondo i diversi metodi, e le ripetizioni, che non possono quindi essere fatturate separatamente. Ciò vale anche per l'impronta del mascellare antagonista, l'impronta con il portaimpronta individuale o con anello di rame. + +I perni forniti direttamente dal medico dentista, vanno fatturati separatamente dal medico dentista (come le prestazioni odontotecniche). I perni in ossido di zirconio e le ricostruzioni in ceramica solo previo accordo da parte degli assicuratori. + +Presa del morso: Conformemente al capitolo 01.14 + +I lavori di ceramica sono considerati economici e adeguati solo in dentature prive di carie o risanate + + + Lei + 3 + 10.01 + 4.7065 + Implantatgetragenes Retentionselement + Élément d'ancrage implanto-porté + Elemento ritentivo su impianto + Gilt nicht für vorfabrizierte Retentionselemente (sonst Tarifziffer 4.2580) + +Zahntechnische Laborleistung separat verrechenbar + N'est pas applicable aux éléments d'ancrage préfabriqués (le cas échéant, utiliser la position 4.2580) + +Prestations du laboratoire de technique dentaire facturées à part + Non vale per gli elementi di ritenzione prefabbricati (altrimenti cifra 4.2580) + +Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 453.2 + 385.2 + 453.20000000000005 + 521.2 + + + Lei + 4 + 10.04.01 + 4.7230 + Vorfabrizierte Kunststoffkrone + Couronne provisoire en résine, préfabriquée + Corona in resina preconfezionata + Gilt auch für Kunststoffkrone direkt in der KZM + Position également applicable en médecine dentaire pédiatrique aux couronnes en résine fabriquées par méthode directe + Vale anche per corone in resina fabbricate con il metodo diretto in pedodonzia + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 4 + 10.04.01 + 4.7250 + Kunststoffprovisorium, im Labor hergestellt + Couronne provisoire en résine, indirecte + Corona provvisoria in resina confezionata in laboratorio + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 69.7 + 59.2 + 69.7 + 80.2 + + + Lei + 4 + 10.04.01 + 4.7260 + Provisorische Kunststoffbrücke, im Labor hergestellt, 3-gliedrig + Pont provisoire en résine, à trois éléments, indirect + Ponte provvisorio in resina di 3 elementi, confezionato in laboratorio + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 153.4 + 130.4 + 153.4 + 176.4 + + + Lei + 4 + 10.04.01 + 4.7270 + + Provisorische Kunststoffbrücke, jedes weitere Glied + + chaque élément supplémentaire d'un pont provisoire en résine, indirect + + Ponte provvisorio in resina, ogni ulteriore elemento + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 4 + 10.04.01 + 4.7280 + Provisorische Brücke, direkt nach Vorabformung, 3-gliedrig + Pont provisoire en résine à trois éléments, direct après prise d'empreinte préliminaire + Ponte provvisorio di 3 elementi per mezzo di impronta preliminare + Nicht verrechenbar wenn Tarifziffer 4.7260 folgt. + Ne peut être facturée préalablement à la position 4.7260 + Non fatturabile se seguito dalla cifra 4.7260 + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 10.01 + 4.7070 + Kronenversorgung, im Oberkiefer-Frontbereich + Couronne de la région antérieure de l'arcade supérieure + Corona nella mascella/regione frontale + • Die Sozialversicherungen bewilligen Porzellanstufen nur im Bereich 15-25 (bei fehlenden Prämolaren und geschlossenen Lücken von 16 bis 26), Vollkeramikkronen nur im Bereich 13-23 auf Zähnen mit metallfreien Aufbauten. +• Zirkonoxid-Keramik-Kronen im gesamten Kiefer bei klarer Indikation nur nach Rücksprache mit den Versicherern verrechenbar. +• Zahntechnische Laborleistung separat verrechenbar + • Les assurances sociales ne prennent en charge les couronnes avec épaulement en céramique que pour les dents 15 à 25 (dents 16 à 26 en l'absence de prémolaires et en cas de fermeture des espaces) et les couronnes tout céramique que pour les dents 13 à 23, uniquement sur des dents avec moignon non métallique +• Lorsque l'indication est univoque, les couronnes en oxyde de zirconium peuvent être prises en charge uniquement après concertation avec l'assureur +• Prestations du laboratoire de technique dentaire facturées à part + • Le assicurazioni sociali autorizzano le spalle in ceramica solo nella regione 15 - 25 (in caso di premolari mancanti e spazi chiusi nella regione 16 - 26), corone in ceramica piena solo nella regione 13 - 23 su denti con ricostruzioni prive di metallo +• Corone in ossido di zirconio-ceramica nell'intera mascella alla presenza di una chiara indicazione fatturabili solo previa consultazione delle assicurazioni +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 770.5 + 654.9 + 770.5 + 886.1 + + + Lei + 3 + 10.01 + 4.7080 + Übrige Kronenversorgung + Autres couronnes + Altre corone + • PP-Bandbreite: abhängig von der Art der Versorgung auswählen - deckt von der Teilkrone bis zur Teleskopkrone alle Varianten ab. +• Zahntechnische Laborleistung separat verrechenbar + • Fourchette PP: le nombre de points dépend du genre de couronne - la fourchette couvre toutes les possibilités de la couronne partielle à la couronne télescopique. +• Prestations du laboratoire de technique dentaire facturées à part + • Intervallo PP: il numero dei punti dipende dal genere del trattamento - copre tutte le varianti dalla corona parziale fino alla corona telescopica. +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 652 + 554.2 + 652 + 749.8 + + + Lei + 3 + 10.01 + 4.7085 + Implantatkrone + Couronne sur implant + Corona su impianto + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 652 + 554.2 + 652 + 749.8 + + + Lei + 3 + 10.01 + 4.7090 + Cerec-Krone + Couronne CEREC + Corona Cerec + • Chair-side durchgeführter Glasurbrand oder Charakterisierung für Kronen im Bereich 15 bis 25 kann gemäss Tarifziffer 0185.1 oder 0186.1 des Zahntechnikertarifs durch den Zahnarzt in Rechnung gestellt werden. +• Bissnahme gemäss Tarifziffer 4.0750 + • Pour les dents 15 à 25, le médecin-dentiste peut facturer la caractérisation et le glaçage des couronnes réalisés au fauteuil au moyen des positions 0185.1 ou 0186.1 du Tarif pour les travaux de technique dentaire. +• Enregistrement de l'occlusion au moyen de la position 4.0750 + • Glasatura eseguita in chairside o caratterizzazione per le corone nella zona da 15 a 25 può essere fattura dal dentista secondo la cifra 0185.1 oppure 0186.1 della tariffa per lavori di odontotecnica +• Registrazione del morso secondo cifra 4.0750 + TP + 836.8 + 711.3 + 836.8 + 962.3 + + + Kap + 2 + 10.02 + Zwischenglied/Flieger + Élément intermédiaire/en extension + Elementi intermedi/di estensione + + + Lei + 3 + 10.02 + 4.7100 + Zwischenglied/Flieger, unverblendet + Élément intermédiaire/en extension, sans recouvrement cosmétique + Elemento intermedio/di estensione senza incrostazione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 10.02 + 4.7110 + Zwischenglied/Flieger, verblendet + Élément intermédiaire/en extension, avec recouvrement cosmétique + Elemento intermedio/di estensione con incrostazione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 191.8 + 163 + 191.8 + 220.6 + + + Lei + 3 + 10.02 + 4.7120 + VMK- oder vollkeramisches Zwischenglied/Flieger + Élément intermédiaire/en extension céramo-métallique ou tout céramique + Corona ceramo-metallica o elemento intermedio/di estensione ceramico + • Pro Zwischenglied +• Zahntechnische Laborleistung separat verrechenbar + • Par élément intermédiaire +• Prestations du laboratoire de technique dentaire facturées à part + • Per ogni elemento intermedio +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 338.2 + 287.5 + 338.2 + 388.9 + + + Kap + 2 + 10.03 + Adhäsivbrücken + Ponts collés + Ponti adesivi + + + Lei + 3 + 10.03 + 4.7140 + Adhäsiv-/Fliegerbrücke, 1 Pfeiler + Pont collé et pont collé en extension, un pilier + Ponte adesivo/di estensione, 1 pilastro + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 732.2 + 622.4 + 732.2 + 842 + + + Lei + 3 + 10.03 + 4.7160 + + Adhäsiv-/Fliegerbrücke, jeder weitere Pfeiler + + chaque pilier supplémentaire d'un pont collé + + Ponte adesivo/di estensione, ogni ulteriore pilastro + • Unabhängig von der Anzahl Zwischenglieder +• Zahntechnische Laborleistung separat verrechenbar + • Indépendamment du nombre d'éléments intermédiaires +• Prestations du laboratoire de technique dentaire facturées à part + • Indipendentemente dal numero di elementi intermedi +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 10.03 + 4.7170 + Adhäsivattachment + Ancrage collé + Attacco adesivo + • Jedes weitere Attachment Tarifziffer 4.7160 +• Zahntechnische Laborleistung separat verrechenbar + • Chaque ancrage supplémentaire au moyen de la position 4.7160 +• Prestations du laboratoire de technique dentaire facturées à part + • Ogni ulteriore attacco cifra 4.7160 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 467.2 + 397.1 + 467.2 + 537.3 + + + Kap + 2 + 10.04 + Provisorien + Provisoires + Provvisori + + + Kap + 3 + 10.04.01 + Kurzfristige Provisorien + Provisoires de courte durée + Provvisori a breve termine + + + Lei + 4 + 10.04.01 + 4.7210 + Vorfabrizierte Stahlkrone + Couronne provisoire en acier, préfabriquée + Corona in acciaio preconfezionata + Gilt auch für Milchmolaren + Position également applicable aux molaires de lait + Vale anche per i molari decidui + TP + 219.7 + 186.7 + 219.7 + 252.7 + + + Lei + 4 + 10.04.01 + 4.7240 + Provisorische Kunststoffkrone, direkt nach Vorabformung + Couronne provisoire en résine, direct après prise d'empreinte préliminaire + Corona provvisoria in resina per mezzo di impronta preliminare + TP + 132.5 + 112.6 + 132.5 + 152.4 + + + Lei + 4 + 10.04.01 + 4.7300 + Reparatur eines Provisoriums + Réparation d'un provisoire + Riparazione di un provvisorio + Gingivakonditionierung: maximal 2 mal zusätzlich zu Tarifziffer 4.7240 verrechenbar + +Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Conditionnement gingival: peut être facturée au maximum deux fois en complément à la position 4.7240 + +Matériel facturer à part, avec position cluster (voir chapitre 20) + Condizionamento della gengiva: fatturabile al massimo 2 volte in aggiunta alla cifra 4.7240 + +Materiale con posizione cluster (Cap. 20) fatturabile sepratamente + TP + 111.6 + 94.9 + 111.60000000000001 + 128.3 + + + Kap + 3 + 10.04.02 + Längerfristige Provisorien + Provisoires de longue durée + Provvisori a lungo termine + Längerfristige Provisorien sind solche, bei welchen mit einer Tragedauer von mindestens 1 Jahr gerechnet wird. + +Bei Jugendlichen können sie auch mit einer Metallverstärkung versehen sein. + Sont considérés de longue durée, les provisoires conçus pour être portés durant au moins un an. + +Chez les adolescents, ils peuvent aussi être pourvus d'un renfort métallique. + Provvisori a lungo termine sono considerati quelli per i quali è prevista una durata d'uso di almeno 1 anno. + +In soggetti giovani, essi possono essere muniti di un rinforzo metallico. + + + Lei + 4 + 10.04.02 + 4.7310 + Kunststoffkrone, Stiftkrone + Couronne en résine, couronne à tenon radiculaire + Corona in resina, corona a perno in resina + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 460.2 + 391.2 + 460.20000000000005 + 529.2 + + + Lei + 4 + 10.04.02 + 4.7320 + Kunststoffbrücke, 3-gliedrig + Pont en résine, à trois éléments + Ponte in resina di 3 elementi + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 530 + 450.5 + 530 + 609.5 + + + Lei + 4 + 10.04.02 + 4.7330 + + Kunststoffbrücke, jeder weitere Pfeiler + + chaque pilier supplémentaire d'un pont en résine + + Ponte in resina, ogni ulteriore pilastro + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 4 + 10.04.02 + 4.7340 + + Kunststoffbrücke, jedes weitere Zwischenglied + + chaque élément intermédiaire supplémentaire d'un pont en résine + + Ponte in resina, ogni ulteriore elemento intermedio + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Kap + 2 + 10.05 + Stumpfaufbau + Moignon artificiel + Ricostruzione del moncone + + + Lei + 3 + 10.05 + 4.7500 + Gegossener Stumpfaufbau, direkt + Moignon artificiel coulé, direct + Perno-moncone fuso, metodo diretto + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 463.7 + 394.1 + 463.7 + 533.3 + + + Lei + 3 + 10.05 + 4.7510 + Gegossener Stumpfaufbau, indirekt + Moignon artificiel coulé, indirect + Perno-moncone fuso, metodo indiretto + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 383.5 + 326 + 383.5 + 441 + + + Lei + 3 + 10.05 + 4.7520 + Aufbau mit plastischem Material + Moignon artificiel en matériau plastique + Ricostruzione con materiale plastico + • Exkl. Dentinhaftung; +• Stift oder Schraube siehe Tarifziffer 4.5910, 4.5920 + • Liaison dentinaire non incluse +• Tenon et vis: facturation au moyen de la position correspondante (4.5910 ou 4.5920) + • Adesivo dentinale escluso +• Per il perno o la vite vedi cifre 4.5910, 4.5920 + TP + 251 + 213.4 + 251.05 + 288.7 + + + Kap + 2 + 10.06 + Zementieren + Scellements + Cementazione + Das provisorische Zementieren wird von den Versicherern nur in medizinisch begründeten Fällen übernommen. + Les assureurs ne remboursent les scellements provisoires que s'ils sont médicalement indiqués. + La cementazione provvisoria viene onorata dalle assicurazioni solo in casi fondati sotto l'aspetto medico. + + + Lei + 3 + 10.06 + 4.7550 + Provisorisches Zementieren, pro Pfeiler + Scellement provisoire, par pilier + Cementazione provvisoria, per ogni pilastro + Das provisorische Zementieren wird von den Versicherern nur in medizinisch begründeten Fällen übernommen. + Les assureurs ne remboursent les scellements provisoires que s'ils sont médicalement indiqués. + La cementazione provvisoria viene onorata dalle assicurazioni solo in casi fondati sotto l'aspetto medico. + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 10.06 + 4.7560 + Rezementieren Einzelkrone, Facette, usw. + Rescellement d'une couronne, d'une facette, etc. + Ricementazione di corona singola, faccetta ecc. + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 10.06 + 4.7590 + Entfernung provisorisch zementierter 3-gliedriger Brücken, pro Brücke + Ablation d'un pont provisoire à trois éléments scellé provisoirement, par pont + Rimozione di un ponte di 3 elementi cementato provvisoriamente, per ogni ponte + TP + 55.8 + 47.4 + 55.8 + 64.2 + + + Lei + 3 + 10.06 + 4.7600 + + Entfernung provisorisch zementierter 3-gliedriger Brücken, jeder weitere Pfeiler + + ablation de chaque pilier supplémentaire d'un pont à trois éléments scellé provisoirement + + Rimozione di un ponte di 3 elementi cementato provvisoriamente, ogni ulteriore pilastro + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 10.06 + 4.7610 + Rezementieren 3-gliedrige Brücke, pro Brücke + Rescellement d'un pont à trois éléments, par pont + Ricementazione di un ponte di 3 elementi, per ogni ponte + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 10.06 + 4.7620 + + Rezementieren 3-gliedrige Brücke, jeder weitere Pfeiler + + rescellement de chaque pilier supplémentaire d'un pont + + Ricementazione di un ponte di 3 elementi, ogni ulteriore pilastro + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Kap + 2 + 10.07 + Allgemeine Leistungen + Prestations générales + Prestazioni generali + + + Lei + 3 + 10.07 + 4.7680 + Behandlung des vitalen Pfeilerstumpfes, pro Pfeilerstumpf + Traitement d'un moignon de pilier vital + Trattamento di moncone vitale, per ogni moncone + TP + 17.4 + 14.8 + 17.4 + 20 + + + Lei + 3 + 10.07 + 4.7690 + Auffüllen von Dentindefekten + Comblement de défauts dentinaires + Riempimento di una lesione dentinale + Bei grösseren Defekten analog Füllung + Le comblement de défauts dentinaires importants est facturé comme une obturation + Per grosse lesioni, analogamente ad un'otturazione + TP + 41.8 + 35.5 + 41.8 + 48.1 + + + Lei + 3 + 10.07 + 4.7770 + Nachkontrolle von komplexen Kronen-, Brückenarbeiten + Suivi après pose de couronnes et de ponts complexes + Controllo di corone e ponti complessi + TP + 73.2 + 62.2 + 73.2 + 84.2 + + + Lei + 3 + 10.07 + 4.7650 + Überabformung + Prise d'empreinte de transfert + Impronta di riposizionamento + Ist im Prinzip in den Leistungen enthalten. Findet nur Anwendung als separate Einzelleistung bei Änderungen an prothetischen Arbeiten + Cet acte est en principe inclus dans les prestations correspondantes. Il ne peut être facturé à part que dans le cadre de modifications apportées à des travaux prothétiques + Per principio già contenuta nelle prestazioni. Trova utilizzo separatamente o in caso di modifiche di manufatti protesici. + TP + 59.3 + 50.4 + 59.3 + 68.2 + + + Lei + 3 + 10.07 + 4.7660 + Übertragungskappeneinprobe, pro Kappe + Essai d'une coiffe de transfert + Prova di una cappa di riporto, per ogni cappa + • Gilt nicht für Primärkappeneinprobe +• Zahntechnische Laborleistung separat verrechenbar + • N'est pas applicable à l'essai de coiffes primaires +• Prestations du laboratoire de technique dentaire facturées à part + • Non si applica alle prove di cappe primarie +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 10.07 + 4.7670 + Zusätzliche Wurzelkappeneinprobe, pro Kappe + Essai supplémentaire d'une coiffe radiculaire + Prova supplementare di cappa radicolare, per ogni cappa + • Nur verrechenbar, wenn mehr als 2 Wurzelkappeneinproben im Zusammenhang mit prothetischen Arbeiten nötig sind +• Zahntechnische Laborleistung separat verrechenbar + • Ne peut être facturée que s'il est indispensable d'effectuer plus de deux essais par travail prothétique +• Prestations du laboratoire de technique dentaire facturées à part + • Fatturabile solo quando sono effettivamente necessarie più di 2 prove di cappe radicolari per l'esecuzione dei lavori protesici. +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 10.07 + 4.7700 + Farbbestimmung + Détermination de la teinte + Scelta del colore + Kann entweder vom Zahnarzt oder vom Zahntechniker 1 mal pro Fall verrechnet werden. + Ne peut être facturée qu'une fois par cas, soit par le médecin-dentiste soit par le laboratoire de technique dentaire + Può essere fatturato una volta per caso o dal medico dentista o dall'odontotecnico + TP + 34.9 + 29.7 + 34.9 + 40.1 + + + Lei + 3 + 10.07 + 4.7720 + Lötfixation, ohne Sägen, pro Lötstelle + Fixation par soudage, sans sciage, par point de soudure + Saldatura senza segatura, per ogni punto di saldatura + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 45.3 + 38.5 + 45.3 + 52.1 + + + Lei + 3 + 10.07 + 4.7730 + Lötfixation, mit Sägen, pro Lötstelle + Fixation par soudage, avec sciage, par point de soudure + Saldatura con segatura, per ogni punto di saldatura + • Maximal verrechenbare Anzahl Lötstellen: Anzahl Pfeiler minus eins +• Zahntechnische Laborleistung separat verrechenbar + • Nombre maximal de points de soudure facturables = nombre de piliers moins un +• Prestations du laboratoire de technique dentaire facturées à part + • Quantità massima di punti di saldatura fatturabile: numero di pilasti meno 1 +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 10.07 + 4.7750 + Einbau von Geschieben, gefrästen Verankerungen, Verschraubungen oder Stegen, pro Ankerzahn bzw. Element + Ajout de glissières, d'ancrages fraisés, d'ancrages vissés ou de barres, par pilier ou par élément + Montaggio di culissi, ancoraggi fresati, viti o barre, per ogni pilastro risp. elemento + • Eine Rille zählt als 1 Element. Pro Pfeiler sind maximal 2 gefräste Elemente verrechenbar. Die Fräsung für eine spezielle Teleskopverankerung ('Amsterdam' und dergleichen) kann nur 1 mal verrechnet werden. +• Nicht verrechenbar für das Verschrauben von Implantatkronen +• Zahntechnische Laborleistung separat verrechenbar + • Une rainure équivaut à un élément. Facturation de deux éléments fraisés au maximum par pilier. Le fraisage pour un ancrage télescopique spécial (« Amsterdam » ou équivalent) ne peut être facturé qu'une fois. +• N'est pas applicable au vissage de couronnes sur implants +• Prestations du laboratoire de technique dentaire facturées à part + • Una scanalatura conta come 1 elemento. Per ogni pilastro possono essere fatturati al massimo 2 elementi fresati. La fresatura per un attacco telescopico ('Amsterdam' e simili) può essere fatturata una sola volta. +• Non fatturabile per l'avvitamento di corone su impianti +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 10.07 + 4.7760 + Einarbeitungsaufwand für eine neue Krone unter bestehender Klammer + Supplément pour réalisation d'une couronne sous un crochet existant + Supplemento per adattamento di una corona sotto un gancio preesistente + • Inklusive Überabdruck +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreinte de transfert incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Impronta compresa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 331.2 + 281.5 + 331.2 + 380.9 + + + Kap + 2 + 10.08 + Reparaturen Kronen- und Brückenprothetik + Réparation de couronnes et de ponts + Riparazioni di corone e ponti + + + Lei + 3 + 10.08 + 4.7850 + Ersatz einer Facette + Remplacement d'une facette + Sostituzione di una incrostazione + TP + 258 + 219.3 + 258 + 296.7 + + + Lei + 3 + 10.08 + 4.7880 + Wiederbefestigen einer Adhäsivbrücke, pro Pfeiler + Rescellement d'un pont collé, par pilier + Ricementazione di un ponte adesivo, per ogni pilastro + • Inklusive Bonding +• Mehrmalige Verrechnung nur nach Rücksprache mit den Versicherern +• Zahntechnische Laborleistung separat verrechenbar + • Bonding inclus +• Facturation de plusieurs rescellements uniquement après concertation avec l'assureur +• Prestations du laboratoire de technique dentaire facturées à part + • Adesivo incluso +• Fatturazione plurima solo previa consultazione degli assicuratori +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 11.02 + 4.8230 + Kopf-Kinn-Kappe vorfabriziert + Fronde occipito-mentonnière préfabriquée + Fionda mentoniera preconfezionata + Material separat verrechenbar: CHF 51.40 (inkl. MWST) + Matériel facturé à part: CHF 51.40 (TVA incluse) + Materiale fatturabile separatamente: CHF 51.40 (IVA inclusa) + TP + 97.6 + 83 + 97.6 + 112.2 + + + Lei + 3 + 11.02 + 4.8230.M + Material zu 4.8230 + Matériel pour 4.8230 + Materiale per posizione 4.8230 + CHF + 51.4 + + + Lei + 3 + 11.02 + 4.8240.M + Material zu 4.8240 + Matériel pour 4.8240 + Materiale per posizione 4.8240 + CHF + 36.6 + + + Lei + 3 + 11.02 + 4.8250.M + Material zu 4.8250 + Matériel pour 4.8250 + Materiale per posizione 4.8250 + CHF + 127 + + + Lei + 3 + 11.02 + 4.8260.M + Material zu 4.8260 + Matériel pour 4.8260 + Materiale per posizione 4.8260 + CHF + 233 + + + Kap + 2 + 11.03 + Festsitzende Apparaturen + Appareils fixes + Apparecchi fissi + + + Lei + 3 + 10.08 + 4.7890 + Entfernen einer Goldgussfüllung, einer Krone, bzw. Durchtrennen von Löt- bzw. Verbindungsstellen + Ablation d'une obturation en or ou d'une couronne ou sectionnement de points de soudure ou de liaison + Rimozione di un intarsio in oro, di una corona risp. separazione di punti di connessione o di saldatura + Gilt auch für das Entfernen definitiv zementierter Kronen und Brücken zur Wiederverwendung (Coronaflex) + Position également applicable à l'ablation de couronnes et de ponts scellés définitivement en vue d'une réutilisation (Coronaflex) + Vale anche per la rimozione di corone e ponti cementati definitivamente allo scopo di essere riutilizzati (Coronaflex) + TP + 62.8 + 53.4 + 62.8 + 72.2 + + + Lei + 3 + 10.08 + 4.7900 + Entfernen eines Stiftes oder einer Schraube + Ablation d'un tenon ou d'une vis + Rimozione di un perno o di una vite + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Kap + 1 + 11 + Kieferorthopädie + Orthopédie dento-faciale + Ortognatodonzia + + + Kap + 2 + 11.01 + Kieferorthopädische Befundaufnahme und Behandlungsplanung + Examen orthodontique et plan de traitement + Reperto e piano di cura d'ortognatodonzia + + + Lei + 3 + 11.01 + 4.8000 + Erste Beurteilung und erste Beratung + Première appréciation et première consultation + Prima valutazione e orientamento + • Bezieht sich nur auf orthodontische Beratung und Beurteilung; +• Tarifziffer 4.0000 darf dazu verrechnet werden, wenn zusätzlich die Leistungen dieser Ziffer erbracht werden. + • Se rapporte uniquement à l'examen et à l'appréciation de la situation orthodontique +• La position tarifaire 4.0000 peut être facturée en sus lorsque les prestations correspondantes ont été fournies + • Solo in riferimento alla consulenza e valutazione ortodontica +• La cifra 4.0000 può essere fatturata solo se vengono eseguite anche altre prestazioni prevista da questa cifra. + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 11.01 + 4.8010 + Kieferorthopädische Anamnese + Anamnèse de la situation orthodontique + Anamnesi ortognatodontica + Allgemeine und spezielle Anamnese + Anamnèse générale et spécifique + Anamnesi generale e particolare + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 11.01 + 4.8020 + Status präsens mit Mundhygiene + Bilan de l'état actuel, également sous l'angle de l'hygiène bucco-dentaire + Stato attuale con igiene orale + • Allgemein klinisches Bild +• Spezielles klinisches Bild, extraoral und intraoral + • État clinique général +• État clinique spécifique, extra et intraoral + • Quadro clinico generale +• Quadro particolare, extraorale e intraorale + TP + 52.3 + 44.5 + 52.3 + 60.1 + + + Lei + 3 + 11.01 + 4.8030 + Funktionsanalyse + Analyse fonctionnelle + Esame funzionale + Lippen, Zunge, Wangen, Muskulatur, Kiefergelenk + Lèvres, langue, joues, musculature, articulation temporo-mandibulaire + Labbra, lingua, guance, muscolatura e articolazione temporo-mascellare + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 11.01 + 4.8040 + Kooperationsdiagnostik + Diagnostic de la coopération + Diagnosi di collaborazione + Zeugnisse, Berichte, konsiliarische Tätigkeit, Röntgen, Abformungen, Fotografien und Bissnahme siehe Kapitel 01 'Allgemeine Leistungen' + Certificats, rapports, concertations entre confrères, radiographies, empreintes, photographies et enregistrement de l'occlusion: voir chapitre 01 « Prestations générales » + Certificati, rapporti, consulenze, radiografie, impronte, fotografie, e presa del morso vedi capitolo 01 'Prestazioni interdisciplinari' + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 11.01 + 4.8050 + Besprechung Patient/Eltern + Entretien avec le patient/les parents + Colloquio con paziente/genitori + TP + 160.4 + 136.3 + 160.4 + 184.5 + + + Lei + 3 + 11.01 + 4.8060 + Platzanalyse + Analyse de place + Valutazione dello spazio + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 11.01 + 4.8070 + Bearbeitung eines diagnostischen Set-Up + Set-up diagnostique + Confezione di un set up diagnostico + • Inklusive Abdrucknahme +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreinte incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Impronta compresa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 209.2 + 177.8 + 209.2 + 240.6 + + + Lei + 3 + 11.01 + 4.8080 + Durchzeichnung des FR + Relevé de la téléradiographie + Tracciato della teleradiografia + • Inklusive Winkelmessung oder Computer-FR-Analyse; +• Anzuwenden für die IV-Beurteilung. +• Nicht kumulierbar mit Tarifziffer 4.8090 + • Mesure des angles ou analyse de la téléradiographie assistée par ordinateur incluses +• Position à appliquer pour les demandes AI +• N'est pas cumulable avec la position 4.8090 + • Inclusi misurazione degli angoli oppure analisi della teleradiografia assistita da computer +• Da applicare per la valutazione AI +• Non cumulabile con la cifra 4.8090 + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 11.01 + 4.8090 + Cephalometrisches Set-Up, Überdeckung + Set-up céphalométrique, superposition + Set up cefalometrico, sovrapposizione + Nicht kumulierbar mit Tarifziffer 4.8080 + N'est pas cumulable avec la position 4.8080 + • Non cumulabile con la cifra 4.8080 + TP + 216.2 + 183.8 + 216.2 + 248.6 + + + Lei + 3 + 11.01 + 4.8100 + Planung für abnehmbare und festsitzende Apparaturen + Planification des appareils amovibles et fixes + Piano di cura per apparecchio amovibile o fisso + Kann pro Apparatetyp nur 1 mal verrechnet werden + Cette position ne peut être facturée qu'une fois par type d'appareil + Fatturabile al massimo 1 volta per tipo di apparecchio + TP + 125.5 + 106.7 + 125.5 + 144.3 + + + Lei + 3 + 11.01 + 4.8110 + Instruktion Patient/Eltern + Instruction du patient/des parents + Istruzione del paziente e dei genitori + • Kann pro Apparatur 1 mal verrechnet werden +• Ausnahme: Wesentliche Änderungen der Apparatur, welche eine neue Instruktion notwendig macht + • Cette position ne peut être facturée qu'une fois par appareil +• Exception: les modifications importantes d'un appareil qui rendent une nouvelle instruction indispensable + • fatturabile al massimo una volta per apparecchio +• Eccezione: cambiamenti essenziali dell'apparecchio che impongono un'ulteriore istruzione + TP + 59.3 + 50.4 + 59.3 + 68.2 + + + Kap + 2 + 11.02 + Abnehmbare Apparaturen + Appareils amovibles + Apparecchi amovibili + + + Lei + 3 + 11.02 + 4.8160 + Retentionsplatte + Plaque de contention + Placca di contenzione + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 261.5 + 222.3 + 261.5 + 300.7 + + + Lei + 3 + 11.02 + 4.8180 + Aufbissschiene + Gouttière de surélévation occlusale + Ferula di rialzo + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 275.4 + 234.1 + 275.4 + 316.7 + + + Lei + 3 + 11.02 + 4.8210 + Schiefe Ebene, im Munde hergestellt + Plan incliné, direct + Piano inclinato confezionato in bocca + TP + 198.7 + 168.9 + 198.7 + 228.5 + + + Lei + 3 + 11.02 + 4.8150 + Platte mit Schrauben und aktivierbaren Elementen + Plaque munie de vis et d'éléments activables + Placca con viti ed elementi attivabili + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 275.4 + 234.1 + 275.4 + 316.7 + + + Lei + 3 + 11.02 + 4.8170 + Bimaxilläres Gerät + Appareil bimaxillaire + Apparecchio bimascellare + Aktivator, Fränkel, Bionator, abnehmbare Herbstapparatur, u.ä. + +• Inklusive Einschleifen +• Zahntechnische Laborleistung separat verrechenbar + Activateurs de type Fränkel, Bionator, Herbst amovible et similaires + +• Meulage inclus +• Prestations du laboratoire de technique dentaire facturées à part + Attivatore, Fränkel, bionator, Herbst amovibile e simili + +• Molaggio compreso +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 460.2 + 391.2 + 460.20000000000005 + 529.2 + + + Lei + 3 + 11.02 + 4.8190 + Positioner individuell + Positionneur confectionné sur mesure + Posizionatore individuale + • Osamu-Retainer oder ähnliches +• Zahntechnische Laborleistung separat verrechenbar + • Gouttière de type Osamu ou similaire +• Prestations du laboratoire de technique dentaire facturées à part + • Osamu-Retainer e simili +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 219.7 + 186.7 + 219.7 + 252.7 + + + Lei + 3 + 11.02 + 4.8200 + Alignerbehandlung einfach + Traitement d'alignement (aligner), cas simple + Trattamento di allineamento, caso semplice + • Individueller Abdruck und Abgabe des ersten Schienenpaares. +• Folgebehandlungen siehe 4.8570 +• Nur nach Rücksprache mit den Versicherern verrechenbar +• Zahntechnische Laborleistung separat verrechenbar + • Prise d'empreinte individuelle et remise de la première paire de gouttières incluses +• Suivi au moyen de la position 4.8570 +• Ne peut être facturée qu'après concertation avec l'assureur +• Prestations du laboratoire de technique dentaire facturées à part + • Impronta individuale e consegna del primo paio di ferule +• Trattamento susseguente vedi cifra 4.8570 +• Fatturabile solo previa consultazione degli assicuratori +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 11.02 + 4.8240 + Headgear, exkl. Bänder + Dispositifs de traction extraorale (headgear) + Dispositivo di trazione extraorale (headgear), anelli esclusi + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Material separat verrechenbar: CHF 36.60 (inkl. MWST) + • Bagues facturées au moyen de la position 4.8330 +• Matériel facturé à part: CHF 36.60 (TVA incluse) + • Anelli fatturabili separatamente (cifra 4.8330) +• Materiale fatturabile separatamente: CHF 36.60 (IVA inclusa) + TP + 142.9 + 121.5 + 142.9 + 164.3 + + + Lei + 3 + 11.02 + 4.8250 + Growth-Guide-Appliance + Dispositif de guidage de la croissance (growth guide appliance) + Growth-Guide-Appliance + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Material separat verrechenbar: CHF 127.00 (inkl. MWST) + • Bagues facturées au moyen de la position 4.8330 +• Matériel facturé à part: CHF 127.00 (TVA incluse) + • Anelli fatturabili separatamente (cifra 4.8330) +• Materiale fatturabile separatamente: CHF 127.00 (IVA inclusa) + TP + 313.8 + 266.7 + 313.79999999999995 + 360.9 + + + Lei + 3 + 11.02 + 4.8260 + Reverse Headgear (z.B. Delaire) + Dispositif de traction extraorale inversée (reverse headgear, p. ex. Delaire) + Dispositivo di trazione extraorale ventrale (reverse headgear, p. es. Delaire) + Material separat verrechenbar: CHF 233.00 (inkl. MWST) + Matériel facturé à part: CHF 233.00 (TVA incluse) + Materiale fatturabile separatamente: CHF 233.00 (IVA inclusa) + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 11.03 + 4.8300 + Messingligatur oder De-Impactor zum Aufrichten von teilretinierten Zähnen, pro Interdentalraum + Ligature en laiton ou séparateur de désimpaction de dents enclavées, par espace interdentaire + Legatura in ottone oppure separatore (De-Impactor) per la liberazione di denti parzialmente inclusi, per ogni spazio interdentale + • Inklusive Entfernung; +• Nicht verrechenbar wenn Tarifziffer 4.8330 folgt + • Ablation incluse +• Ne peut être facturée préalablement à la position 4.8330 + • Rimozione inclusa +• Non fatturabile se seguito dalla cifra 4.8330 + TP + 20.9 + 17.8 + 20.9 + 24 + + + Lei + 3 + 11.03 + 4.8320 + Anbringen von Hilfsteilen an Bändern und Bögen, pro Hilfsteil + Fixation d'un élément auxiliaire sur bague ou arc + Applicazione di elementi ausiliari su anello o arco, per ogni elemento ausiliare + Inklusive Material + Matériel inclus + Materiale incluso + TP + 29.6 + 25.2 + 29.6 + 34 + + + Lei + 3 + 11.03 + 4.8330 + Anpassen und Einzementieren eines Bandes + Ajustage et scellement d'une bague + Adattare o cementare un anello + • Inklusive Reinigen und Separieren; +• Material separat verrechenbar: CHF 20.95 (inkl. MWST) + • Nettoyage et séparation inclus +• Matériel facturé à part: CHF 20.95 (TVA incluse) + • Inclusi pulizia e separazione +• Materiale fatturabile separatamente: CHF 20.95 (IVA inclusa) + TP + 122 + 103.7 + 122 + 140.3 + + + Lei + 3 + 11.03 + 4.8330.M + Material zu 4.8330 + Matériel pour 4.8330 + Materiale per posizione 4.8330 + CHF + 20.95 + + + Lei + 3 + 11.03 + 4.8340 + Direktes oder indirektes Aufkleben von Brackets oder Hilfsteilen, pro Bracket oder Hilfsteil + Collage direct ou indirect d'un bracket ou d'un élément auxiliaire + Incollatura diretta o indiretta di brackets o elementi ausiliari, per ogni bracket o elemento ausiliare + Inklusive Reinigen und Ätzen; + +• Material separat verrechenbar: CHF 12.95 (inkl. MWST) +• Keramikbracket: Versicherer nach UV/MV/IV zahlen nur Ansatz von Metallbrackets + • Nettoyage et mordançage inclus +• Matériel facturé à part au prix de CHF 12.95 (TVA incluse) +• Brackets en céramique: les assureurs AA/AM/AI ne les prennent en charge que jusqu'à concurrence du coût des brackets métalliques + Inclusi pulizia e mordenzatura + +• Materiale fatturabile separatamente: CHF 12.95 (IVA inclusa) +• Bracket in ceramica: Gli assicuratori AInf/AM/AI rimborsano solo l'importo dei bracket metallici + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Lei + 3 + 11.03 + 4.8340.M + Material zu 4.8340 + Matériel pour 4.8340 + Materiale per posizione 4.8340 + CHF + 12.95 + + + Lei + 3 + 11.03 + 4.8350 + Lingual- oder Palatinalbogen, im Munde angepasst + Arc lingual ou palatin, direct + Arco linguale o palatino adattato in bocca + • Material separat verrechenbar: CHF 10.20 (inkl. MWST) +• Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) + • Matériel facturé à part: CHF 10.20 (TVA incluse) +• Bagues facturées au moyen de la position 4.8330 + • Materiale fatturabile separatamente: CHF 10.20 (IVA inclusa) +• Anelli fatturabili in aggiunta (cifra 4.8330) + TP + 174.3 + 148.2 + 174.3 + 200.4 + + + Lei + 3 + 11.03 + 4.8350.M + Material zu 4.8350 + Matériel pour 4.8350 + Materiale per posizione 4.8350 + CHF + 10.2 + + + Lei + 3 + 11.03 + 4.8360 + Lingual- oder Palatinalbogen, im Labor hergestellt + Arc lingual ou palatin, indirect + Arco linguale o palatino confezionato in laboratorio + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Zahntechnische Laborleistung separat verrechenbar + • Bagues facturées au moyen de la position 4.8330 +• Prestations du laboratoire de technique dentaire facturées à part + • Anelli fatturabili separatamente (cifra 4.8330) +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 11.03 + 4.8370 + Lip Bumper + Lip bumper + Lip bumper + • Material separat verrechenbar: CHF 14.55 (inkl. MWST) +• Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) + • Matériel facturé à part: CHF 14.55 (TVA incluse) +• Bagues facturées au moyen de la position 4.8330 + • Materiale fatturabile separatamente: CHF 14.55 (IVA inclusa) +• Anelli fatturabili in aggiunta (cifra 4.8330) + TP + 142.9 + 121.5 + 142.9 + 164.3 + + + Lei + 3 + 11.03 + 4.8370.M + Material zu 4.8370 + Matériel pour 4.8370 + Materiale per posizione 4.8370 + CHF + 14.55 + + + Lei + 3 + 11.03 + 4.8390 + Bogen, vorgefertigt + Arc préfabriqué + Arco prefabbricato + Inklusive Ein- und Ausligieren; alle Materialien und Dimensionen + Ligature et déligature incluses; tous matériaux et toutes dimensions + Legatura e slegatura compresi; tutti i materiali e tutte le dimensioni + TP + 136 + 115.6 + 136 + 156.4 + + + Lei + 3 + 11.03 + 4.8400 + Bogen, individualisiert, einfach + Arc individualisé simple + Arco individuale, semplice + Inklusive Ein- und Ausligieren; alle Materialien und Dimensionen + Ligature et déligature incluses; tous matériaux et toutes dimensions + Legatura e slegatura compresi; tutti i materiali e tutte le dimensioni + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 11.03 + 4.8410 + Bogen, individualisiert, komplex + Arc individualisé complexe + Arco individuale, complesso + Inklusive Ein- und Ausligieren; alle Materialien und Dimensionen + Ligature et déligature incluses; tous matériaux et toutes dimensions + Legatura e slegatura compresi; tutti i materiali e tutte le dimensioni + TP + 219.7 + 186.7 + 219.7 + 252.7 + + + Lei + 3 + 11.03 + 4.8420 + Burstone Mechanik + Arc méthode Burstone + Arco metodo Burstone + Inklusive Sectionals oder Torquing Arch + Éléments sectionnels ou arc de torsion inclus + Incluso arco sezionale o arco per il torque + TP + 338.2 + 287.5 + 338.2 + 388.9 + + + Lei + 3 + 11.03 + 4.8430 + Segmentbogen, aktiv mit Loop + Segment d'arc actif, avec loop + Arco sezionale attivo, con ansa + • Inklusive Aus- und Einligieren des Bogens; +• Bänder/Brackets zusätzlich verrechenbar (Tarifziffern 4.8330 und 4.8340 ) + • Ligature et déligature de l'arc incluses +• Bagues et brackets: facturation au moyen de la position correspondante (4.8330 et 4.8340) + • Legatura e slegatura dell'arco compresi; +• Anelli/Brackets fatturabili in aggiunta (cifra 4.8330 e 4.8340 ) + TP + 139.5 + 118.6 + 139.5 + 160.4 + + + Lei + 3 + 11.03 + 4.8440 + Segmentbogen, ohne Biegungen + Segment d'arc sans pliage + Arco sezionale, senza piegatura + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Segmentbogen passiv + • Bagues facturées au moyen de la position 4.8330 +• Segment d'arc passif + • Anelli fatturabili in aggiunta (cifra 4.8330) +• Arco sezionale passivo + TP + 69.7 + 59.2 + 69.7 + 80.2 + + + Lei + 3 + 11.03 + 4.8450 + Lückenschlussbogen, mit mindestens 3 Loops + Arc de fermeture d'espaces avec au moins trois loops + Arco di chiusura di spazi, con almeno tre anse + Darf nur 1 mal pro Kiefer im Extraktionsfall angewendet werden + En cas d'extraction, cette position en peut être facturée qu'une fois par maxillaire + Può essere applicato 1 sola volta per arcata in caso di estrazione + TP + 324.2 + 275.6 + 324.20000000000005 + 372.8 + + + Lei + 3 + 11.03 + 4.8470 + Lückenhalter + Garde-place + Mantenitore di spazio + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Segmentbogen passiv +• Zahntechnische Laborleistung separat verrechenbar + • Bagues facturées au moyen de la position 4.8330 +• Segment d'arc passif +• Prestations du laboratoire de technique dentaire facturées à part + • Anelli fatturabili in aggiunta (cifra 4.8330) +• Arco sezionale passivo +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 111.6 + 94.9 + 111.60000000000001 + 128.3 + + + Lei + 3 + 11.03 + 4.8480 + Drahtretainer, geklebt, im Munde hergestellt + Contention en fil métallique, collée, direct + Retainer in filo metallico incollato, confezionato direttamente in bocca + • Exklusive Klebestelle siehe Tarifziffer 4.8720 +• Unfallschiene siehe Kapitel 05.07 Schienungen + • Points de collage facturés au moyen de la position 4.8720 +• Attelle en cas d'accident voir chapitre 05.07 Attelles + • Incollatura esclusa vedi cifra 4.8720 +• Fissaggio in seguito ad infortunio vedi capitolo 05.07 Fissaggi + TP + 146.4 + 124.4 + 146.4 + 168.4 + + + Lei + 3 + 11.03 + 4.8490 + Drahtretainer, geklebt, im Labor hergestellt + Contention en fil métallique, collée, indirect + Retainer in filo metallico incollato, confezionato in laboratorio + • Exklusive Klebestelle siehe Tarifziffer 4.8720 +• Inklusive Abdrücke +• Zahntechnische Laborleistung separat verrechenbar + • Points de collage facturés au moyen de la position 4.8720 +• Prise d'empreintes incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Incollatura esclusa vedi cifra 4.8720 +• Impronte incluse +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 205.7 + 174.8 + 205.7 + 236.6 + + + Lei + 3 + 11.03 + 4.8500 + Spring Retainer + Spring retainer + Spring retainer + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 223.1 + 189.6 + 223.10000000000002 + 256.6 + + + Lei + 3 + 11.03 + 4.8540.M + Material zu 4.8540 + Matériel pour 4.8540 + Materiale per posizione 4.8540 + CHF + 192.6 + + + Lei + 3 + 11.03 + 4.8560 + Alignerbehandlung, Anbringen von Attachments + Traitement d'alignement, pose d'attaches + Trattamento di allineamento, posa di fissazioni + Nur nach Rücksprache mit den Versicherern verrechenbar + Ne peut être facturée qu'après concertation avec l'assureur + Conteggiabile solo previa consultazione degli assicuratori + TP + 38.4 + 32.6 + 38.400000000000006 + 44.2 + + + Kap + 2 + 11.04 + Kontrollen, Änderungen, Reparaturen + Contrôles, modifications, réparations + Controlli, modifiche, riparazioni + + + Lei + 3 + 11.03 + 4.8510 + Apparatur für forcierte Dehnung/Distraktor + Dispositif d'expansion forcée/de distraction + Apparecchio per l'espansione forzata/distrattore + • Bänder zusätzlich verrechenbar (Tarifziffer 4.8330) +• Zahntechnische Laborleistung separat verrechenbar + • Bagues facturées au moyen de la position 4.8330 +• Prestations du laboratoire de technique dentaire facturées à part + • Anelli fatturabili in aggiunta (cifra 4.8330) +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 446.3 + 379.4 + 446.3 + 513.2 + + + Lei + 3 + 11.03 + 4.8520 + Apparatur für forcierte Dehnung, geklebt + Dispositif d'expansion forcée, collé + Apparecchio per l'espansione forzata, incollato + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 285.9 + 243 + 285.9 + 328.8 + + + Lei + 3 + 11.03 + 4.8530 + Gegossene Herbstapparatur, bimaxillär einzementiert + Appareil de Herbst, bimaxillaire, scellé + Apparecchio di Herbst bimascellare, cementato + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 606.7 + 515.7 + 606.7 + 697.7 + + + Lei + 3 + 11.03 + 4.8540 + Festsitzende intermaxilläre Mechanik, beidseitig + Dispositif de correction intermaxillaire fixe, des deux côtés + Meccanismo di correzione intermascellare fisso, bilaterale + • Material separat verrechenbar: CHF 192.60 (inkl. MWST) +• Materialpreis pro Paar + • Matériel facturé à part: CHF 192.60 (TVA incluse) par paire + • Materiale fatturabile separatamente: CHF 192.60 (IVA inclusa) +• Costo del materiale per paio + TP + 278.9 + 237.1 + 278.9 + 320.7 + + + Lei + 3 + 11.03 + 4.8550 + Alignerbehandlung mit Präzisionsabdruck und virtuellem Set-Up, durch Behandler bearbeitet + Traitement d'alignement avec prise d'empreintes de précision et set-up virtuel, par le praticien + Trattamento di allineamento con impronta di precisione e set up virtuale, realizzato da parte del curante + Inkl. Abdrucknahmen, Bissnahme und Clin-Check, Präzisionsabformung und 1. Abgabe. + +• Nur nach Rücksprache mit den Versicherern verrechenbar +• Nur 1 x pro Fall verrechenbar + +Materialkosten mit Typisierung 4.8550.G.n (Kapitel 19) separat verrechenbar. + • Prise d'empreintes, enregistrement de l'occlusion et vérification clinique (clin check), prise d'empreintes de précision et première mise en bouche +• Ne peut être facturée qu'une fois par cas et uniquement après concertation avec l'assureur. + +Décompte séparé des frais de matériel possible au moyen de la position standard 4.8550.G.n (chapitre 19). + Inclusa la presa dell'impronta, del morso e controllo clinico, presa dell'impronta di precisione e prima consegna + +• Fatturabile solo 1 volta per caso +• Conteggiabile solo previa consultazione degli assicuratori + +Costi del materiale con tipizzazione 4.8550.G.n (Cap. 19) fatturabile separatamente + TP + 725.2 + 616.4 + 725.2 + 834 + + + Lei + 3 + 11.03 + 4.8570 + Alignerbehandlung, Kontrollsitzung + Traitement d'alignement, séance de contrôle + Trattamento di allineamento, seduta di controllo + • Inklusive Abgabe von Alignern +• Nur nach Rücksprache mit den Versicherern verrechenbar + • Mise en bouche du dispositif d'alignement incluse +• Ne peut être facturée qu'après concertation avec l'assureur + • Inclusa la consegna di aligner +• Conteggiabile solo previa consultazione degli assicuratori + TP + 81.9 + 69.6 + 81.9 + 94.2 + + + Lei + 3 + 11.04 + 4.8600 + Kieferorthopädische Kontrollsitzung, mit einfacher Beurteilung des Behandlungsverlaufs + Contrôle orthodontique avec appréciation simple de l'avancement du traitement + Controllo ortodontico con semplice valutazione dell'andamento della cura + Z.B. Criss Cross, Dehnspaltenmessung und ähnliches + Comme les élastiques en criss cross, la mesure de l'espace d'expansion ou les prestations similaires + P. es. criss cross, misurazione d'espansione e simili + TP + 48.8 + 41.5 + 48.8 + 56.1 + + + Lei + 3 + 11.04 + 4.8610 + Kieferorthopädische Kontrollsitzung, Revisionsarbeiten + Contrôle orthodontique, travaux de révision + Controllo ortodontico, lavori di revisione + • Ersetzen einer Gummikette (z.B. Alastic), Aktivierung von Federn, Klammern, Halteelementen, usw. +• Abschleifen von Milchzähnen oder Entfernen eines gelockerten, resorbierten Milchzahnes + • Remplacement d'une chaîne élastique (p.ex. Alastic), activation de ressorts, de crochets et d'éléments d'ancrage, etc. +• Meulage de dents de lait ou extraction d'une dent de lait mobile et résorbée + • Cambio di catena elastica (p. es. Alastic), attivazione di molle, ganci, elementi di ancoraggio ecc. +• Molaggio di denti decidui o rimozione di uno vacillante o riassorbito + TP + 80.2 + 68.2 + 80.2 + 92.2 + + + Lei + 3 + 11.04 + 4.8620 + Aus- und Einligieren eines bestehenden Bogens oder eines Segmentbogens + Dépose et pose d'un arc ou d'un segment d'arc + Slegatura e rilegatura di un arco o di un arco sezionale + Inklusive allfällige Änderungen + Modifications éventuelles incluses + Incluse eventuali modifiche + TP + 104.6 + 88.9 + 104.6 + 120.3 + + + Lei + 3 + 11.04 + 4.8630 + Reparaturen und Änderungen, ohne Abformung (z.B. Einbau einer Feder oder eines Elementes) + Réparations et modifications sans prise d'empreinte (comme la mise en place d'un ressort ou d'un élément) + Riparazioni e modifiche senza impronta (p. es. inserimento di una molla o di un elemento) + • Inklusive Herstellung +• Zahntechnische Laborleistung separat verrechenbar + • Fabrication incluse +• Prestations du laboratoire de technique dentaire facturées à part + • Confezione compresa +• Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 11.04 + 4.8640 + Reparaturen und Änderungen, mit Abformung + Réparations et modifications avec prise d'empreinte + Riparazioni e modifiche con impronta + • Sitzung für Abgabe: Tarifziffer 4.0240 + • Zahntechnische Laborleistung separat verrechenbar + • Lorsque la mise en bouche a lieu lors d'une séance ultérieure, celle-ci est facturée au moyen de la position 4.0240 +• Prestations du laboratoire de technique dentaire facturées à part + • Seduta per consegna: cifra 4.0240 + • Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 195.2 + 165.9 + 195.2 + 224.5 + + + Lei + 3 + 11.04 + 4.8650 + Direktes Unterfüttern eines abnehmbaren Apparates + Rebasage direct d'un appareil amovible + Ribasamento diretto di un apparecchio amovibile + TP + 170.8 + 145.2 + 170.8 + 196.4 + + + Lei + 3 + 11.04 + 4.8660 + Anbringen eines okklusalen Aufbisses + Surélévation occlusale d'un appareil + Applicazione di un rialzo occlusale + Inklusive Einschleifen + Meulage inclus + Molaggio incluso + TP + 198.7 + 168.9 + 198.7 + 228.5 + + + Lei + 3 + 11.04 + 4.8670 + Voraktivieren oder Rückstellen eines bimaxillären Apparates, direkt am Patienten + Activation ou modification de l'activation d'un dispositif bimaxillaire, direct + Attivazione o modificazione dell'attivazione di un dispositivo bimascellare, direttamente al paziente + TP + 317.3 + 269.7 + 317.29999999999995 + 364.9 + + + Lei + 3 + 11.04 + 4.8680 + Voraktivieren oder Rückstellen eines bimaxillären Apparates, im Labor + Activation ou modification de l'activation d'un dispositif bimaxillaire, indirect + Attivazione o modificazione dell'attivazione di un dispositivo bimascellare, in laboratorio + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 230.1 + 195.6 + 230.10000000000002 + 264.6 + + + Lei + 3 + 11.04 + 4.8690 + Wiedereinzementieren eines bestehenden Bandes + Rescellement d'une bague existante + Ricementazione di un anello esistente + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 3 + 11.04 + 4.8700 + Wiederaufkleben eines Brackets oder Hilfsteiles + Recollage d'un bracket ou d'un élément auxiliaire + Reincollatura di un bracket o di un elemento ausiliario + Inklusive Reinigen und Ätzen + Nettoyage et mordançage inclus + Inclusi pulizia e mordenzatura + TP + 83.7 + 71.1 + 83.699999999999989 + 96.3 + + + Lei + 3 + 11.04 + 4.8710 + Entfernung eines Bandes oder eines geklebten Teils/Retainers, pro Klebestelle; Entfernung einer Microscrew + Ablation d'une bague ou d'un élément/arc de contention collé, par point de collage, nettoyage et polissage par le médecin-dentiste inclus; ablation d'une mini-vis + Rimozione di un anello o di un elemento incollato/retainer per ogni punto di incollatura; rimozione di una microvite + • Inklusive Reinigung und Politur durch den Zahnarzt +• Inklusive Ausligieren des Bogens + • Nettoyage et polissage par le médecin-dentiste inclus +• Déligature de l'arc incluse + • Inclusi pulizia e lucidatura da parte del dentista +• Slegatura dell'arco compresa + TP + 20.9 + 17.8 + 20.9 + 24 + + + Lei + 3 + 11.04 + 4.8720 + Kleben, pro Klebestelle + Collage, par point de collage + Incollatura per punto di fissaggio + • Inklusive Ätzung; +• Nur für Tarifziffer 4.2890, 4.8480, 4.8490 + • Mordançage inclus +• Uniquement en association avec les positions 4.2890, 4.8480 et 4.8490 + • Mordenzatura inclusa; +• Solo per le cifre 4.2890, 4.8480, 4.8490 + TP + 19.2 + 16.3 + 19.200000000000003 + 22.1 + + + Lei + 3 + 11.04 + 4.8730 + Entfernung eines Bandes oder Hilfsteils, ohne Reinigung + Ablation d'une bague ou d'un élément/arc de contention collé, par point de collage, sans nettoyage par le médecin-dentiste + Rimozione di un anello o di un elemento ausiliario, senza pulizia + • Inklusive Ausligieren des Bogens; +• Reinigung der Zähne von Zement- und Kompositresten durch Dentalhygienikerin nach Tarifziffer 4.1110 + • Déligature de l'arc incluse +• Elimination des restes de ciment et de résine composite par l'hygiéniste dentaire, prestation facturée au moyen de la position 4.1110 + • Slegatura dell'arco compresa; +• Pulizia dei denti da resti di cemento o composito da parte dell'igienista secondo cifra 4.1110 + TP + 7 + 6 + 7.05 + 8.1 + + + Kap + 2 + 11.05 + Kieferorthopädische Frühbehandlung bei LKG-Spalten + Traitement orthodontique précoce des fentes labio-maxillo-palatines + Cura ortodontica precoce delle schisi labio-palatine + Klinisch-logopädisches Konsilium siehe Konsilien Kapitel 01.07 + Concertation avec un logopédiste voir chapitre 01.07 Concertation entre confrères et expertise + Consulto clinico o logopedico vedi capitolo 01.07 'Consulti' + + + Lei + 3 + 11.05 + 4.8800 + Kiefermodelle bei Kleinkindern + Prise d'empreinte du maxillaire de l'enfant en bas âge + Modelli delle arcate di bimbi + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 237.1 + 201.5 + 237.1 + 272.7 + + + Lei + 3 + 11.05 + 4.8810 + Individueller Löffel LKG (Lippen-Kiefer-Gaumenspalte) + Prise d'empreinte avec porte-empreinte individuel (fente labio-maxillo-palatine) + Portaimpronta individuale (schisi labio-palatina) + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 125.5 + 106.7 + 125.5 + 144.3 + + + Lei + 3 + 11.05 + 4.8820 + Platte, weich, unterfüttert + Plaque rebasée avec résine molle + Placca in resina molle, ribasata + Zahntechnische Laborleistung separat verrechenbar + Prestations du laboratoire de technique dentaire facturées à part + Prestazione del laboratorio odontotecnico fatturabile separatamente + TP + 352.1 + 299.3 + 352.1 + 404.9 + + + Lei + 3 + 11.05 + 4.8830 + Revisionsarbeiten an Platte + Travaux de révision effectués sur une plaque + Lavori di revisione effettuati sulla placca + Inklusive kleinere Reparaturen + Petites réparations incluses + Piccole riparazioni comprese + TP + 156.9 + 133.4 + 156.9 + 180.4 + + + Lei + 3 + 11.05 + 4.8840 + Anpassung einer extraoralen Bandage + Pose d'un bandage extraoral + Adattamento di una fasciatura extraorale + TP + 101.1 + 85.9 + 101.1 + 116.3 + + + Kap + 2 + 11.06 + Operative Anschlingung eines retinierten Zahnes + Désinclusion chirurgicale + Allacciamento chirurgico di un dente incluso + + + Lei + 3 + 11.06 + 4.8900 + Operative Anschlingung eines retinierten Zahnes, mit geklebtem Hilfsteil + Désinclusion chirurgicale d'une dent incluse avec élément auxiliaire collé + Allacciamento chirurgico di un dente incluso, con attacco incollato + TP + 488.1 + 414.9 + 488.09999999999997 + 561.3 + + + Lei + 3 + 11.06 + 4.8910 + + Operative Anschlingung eines weiteren Zahnes mit geklebtem Hilfsteil unter gleicher Schnittführung + + chaque désinclusion supplémentaire avec élément auxiliaire collé, dans la même ouverture + + Allacciamento chirurgico di un ulteriore dente con attacco incollato nella medesima regione operativa + TP + 369.6 + 314.2 + 369.6 + 425 + + + Kap + 2 + 11.07 + Knöcherne Verankerungen + Ancrages osseux + Ancoraggi ossei + + + Lei + 3 + 11.07 + 4.8950 + Insertion einer Mini-Screw, pro Schraube + Pose d'une mini-vis + Posa di una minivite, per ogni vite + Materialkosten mit Clusterposition (Kap. 20) separat verrechenbar + Matériel facturer à part, avec position cluster (voir chapitre 20) + Materiale con posizione cluster (Cap. 20) fatturabile separatamente + TP + 87.2 + 74.1 + 87.199999999999989 + 100.3 + + + Lei + 3 + 11.07 + 4.8970 + Entfernung eines Ortho-Gaumenimplantats + Ablation d'un implant palatin + Rimozione di un impianto palatale per ancoraggio ortodontico + Inklusive Demontage von Hilfsteilen + Démontage d'éléments auxiliaires inclus + Smontaggio di elementi ausiliario compreso + TP + 289.4 + 246 + 289.4 + 332.8 + + + Lei + 3 + 11.07 + 4.8960 + Insertion eines Ortho-Gaumenimplantates + Pose d'un implant palatin pour ancrage orthodontique + Posa di un impianto palatale per ancoraggio ortodontico + Materialkosten sind mit mehreren Typisierungen (Kapitel 19) separat verrechenbar. + Décompte séparé des frais de matériel possible au moyen de plusieurs positions standardisées (chapitre 19). + Materiale con plurime tipizzazioni (Cap. 19) fatturabile separatamente + TP + 401 + 340.9 + 401.04999999999995 + 461.2 + + + Kap + 1 + 12 + Operations-Assistenz; Benützung OP-Saal; postoperative Überwachung + Assistance opératoire, usage du bloc opératoire, surveillance post-opératoire + Assistenza durante le operazioni; uso della sala operatoria; sorveglianza postoperatoria + Allgemeine Grundsätze: +• Die medizinische Notwendigkeit eines operativen Eingriffs ("OP"), respektive für die Anwendung/Abrechnung von OP-Assistenz, OP-Benützung, postop. Überwachung, ist vom Zahnarzt deklariert (mit Kostenvoranschlag, respektive Leistungsabrechnung). +• Die nachfolgenden Regelungen gelten ausschliesslich für ambulante OP's (für eine stationäre Behandlung gilt: Fallpauschale nach SwissDRG). +• Es gelten bezüglich Anforderungen an Infrastruktur, Fachpersonal die Regelungen gemäss Arzttarif (Beilagen 1, 2, 3). + Principes généraux: +• L'indication d'une intervention chirurgicale, d'une assistance opératoire, de l'utilisation d'une salle d'opération ou d'une surveillance postopératoire doit avoir été constatée par le médecin-dentiste traitant (dans l'estimation d'honoraires ou le décompte de prestations). +• Les dispositions tarifaires suivantes s'appliquent exclusivement aux interventions chirurgicales ambulatoires (les traitements stationnaires sont facturés selon le catalogue des forfaits par cas de SwissDRG). +• Le tarif médical régit les exigences en matière d'infrastructures et de qualifications du personnel (voir annexes 1, 2 et 3) + + + Principi generali +• La necessità medica di un intervento chirurgico, rispettivamente dell'impiego/fatturazione dell'assistenza, dell'uso della sala operatoria, della sorveglianza postoperatoria è stata provata dal medico dentista (con preventivo risp. conteggio delle prestazioni). +• Le disposizioni seguenti sono applicabili esclusivamente agli interventi chirurgici ambulatoriali (per la cura ospedaliera vale: forfait per caso secondo SwissDRG). +• Per quanto concerne l'infrastruttura e il personale specializzato valgono le disposizioni della tariffa medica (allegati 1, 2, 3). + + + Kap + 2 + 12.01 + Operations-Assistenz durch dipl. Arzt (AZ) oder Zahnarzt (ZaZ) + Assistance opératoire par des praticiens (médecin ou médecin-dentiste) diplômés + Assistenza da parte di un medico diplomato o da parte di un dentista diplomato + Bedingung: Assistenz ist Titelträger 'M Med' oder 'M Dent Med' + +Abrechnungs-Grundsatz: +Die abgerechnete zahnärztliche Hauptleistung des Leistungskatalogs ist zu benennen unter Angabe der Tarifziffer. Nachfolgende Tarifziffern sind hierzu nicht anwendbar: +4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +Die Angaben dienen der Berechnung der Vergütungen gemäss Tarifziffer 4.9800, 4.9810, 4.9830, 4.9850. +Ebenso sind Anästhesie- und Überwachungs-Protokoll der Leistungsabrechnung unaufgefordert beizulegen. + Condition: l'assistant doit être titulaire d'un master en médecine (M Med) ou en médecine dentaire (M Dent Med). + +Etablissement du décompte de prestations: +Le médecin-dentiste doit facturer la prestation dentaire principale en indiquant la position tarifaire correspondante. +Les positions tarifaires suivantes ne peuvent pas être facturées: 4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +La prestation principale facturée sert de base de calcul pour l'indemnisation de l'assistant selon les positions tarifaires 4.9800, 4.9810, 4.9830 et 4.9850. +Les comptes-rendus d'anesthésie et de surveillance postopératoire doivent être annexés spontanément au décompte de prestations. + Condizione: l'assistente dispone del titolo 'M Med' (master in medicina) oppure 'M Dent Med' (master in medicina dentaria) + +Principio di fatturazione: +Il medico dentista deve fattura la prestazione dentaria principale indicando la cifra tariffaria corrispondente. Le cifre seguenti non possono essere fatturata: +4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +Le informazioni servono per il calcolo del rimborso conformemente alle cifre 4.9800, 4.9810, 4.9830, 4.9850. +Al conteggio delle prestazioni devono essere allegati il protocollo dell'anestesia e quello della sorveglianza. + + + + Lei + 3 + 12.01 + 4.9800 + Erste Assistenz/Hauptassistenz, pro 5 Min. + Première assistance opératoire /assistance principale, par 5 minutes + Prima assistenza/assistenza principale, ogni 5 minuti + • Assistenz durch einen diplomierten Arzt/Zahnarzt. +• Vergütung pro 5 Min. analog Schnitt-/Nahtzeit in Minuten gemäss Anästhesie-Protokoll. + • Assistance par un médecin/médecin-dentiste diplômé +• Indemnisation par tranche de 5 minutes, par analogie avec la durée incision-suture en minutes, selon le compte-rendu d'anesthésie. + + • Assistenza da parte di un medico o di un medico dentista diplomato +• Indennizzazione ogni 5 minuti in analogia al tempo di incisione e di sutura in minuti conformemente al protocollo dell'anestesia + TP + 18.9 + 16.1 + 18.9 + 21.7 + + + Lei + 3 + 12.01 + 4.9810 + Zweite/jede weitere Assistenz, pro 5 Min. + Deuxième assistance opératoire /assistance supplémentaire, par 5 minutes + Seconda assistenza/ogni ulteriore assistenza, ogni 5 minuti + • Assistenz durch zusätzliche diplomierte Ärzte/Zahnärzte. +• Vergütung pro 5 Min. analog Schnitt-/Nahtzeit in Minuten gemäss Anästhesie-Protokoll. + • Assistance par des médecins/médecins-dentistes diplômés supplémetaires. +• Indemnisation par tranche de 5 minutes, par analogie avec la durée incision-suture en minutes, selon le compte-rendu d'anesthésie. + • Assistenza da parte di medici o di medici dentisti diplomati supplementari +• Indennizzazione ogni 5 minuti in analogia al tempo di incisione e di sutura in minuti conformemente al protocollo dell'anestesia + TP + 11.3 + 9.6 + 11.3 + 13 + + + Kap + 2 + 12.02 + Abgeltungen für die OP-Benützung sowie für die postoperative Überwachung + Utilisation d'une salle d'opération et surveillance postopératoire + Indennizzi per l'uso della sala operatoria e per la sorveglianza postoperatoria + Die Abgeltung umfasst die Benützung von Räumlichkeiten, Instrumenten, Einrichtungen (z.B. Bett, Monitoring, etc.), Operationswäsche, Sterilisation, Verbrauchsmaterial (Naht- und Ligaturmaterial, Tupfer, Gaze, Watte), sowie die Kosten des med. Hilfspersonals; die Aufzählung ist nicht abschliessend. + L'indemnisation couvre l'utilisation des locaux, des instruments, des installations (telles que lit, monitoring, etc.) et du linge opératoire ainsi que la stérilisation, les consommables (matériel de suture et de ligature, tampons, gaze, ouate), de même que les frais pour le personnel médical auxiliaire; +Cette énumeration d'est pas exhaustive. + L'indennizzazione comprende l'uso dei locali, degli strumenti, dell'attrezzatura (p. es. letto, monitoraggio ecc.), della biancheria da sala operatoria, la sterilizzazione, il materiale di consumo (materiale di sutura e di legatura, tamponi, garze, ovatta) e l'assistenza da parte di personale ausiliario; l'elenco non è esaustivo. + + + Lei + 3 + 12.02 + 4.9830 + OP-Benützung, pro 5 Min. + Utilisation d'une salle d'opération, par 5 min. + Uso della sala operatoria, ogni 5 minuti + a) Der Standort des OP ist anzugeben (Adresse) sowie dessen Klassifikation gemäss Arzttarif, z.B. Praxis-OP, OP I, OP II (Beilage 1). +b) Abgegolten sind sämtliche Kosten für nichtärztliches Personal sowie Sach-, Umlage- und Anlagenutzungskosten; Details gemäss Arzttarif (Beilage 2). +c) Referenzwerte der Vergütung: +Schnitt-/Nahtzeit in Minuten gemäss Anästhesie-Protokoll. +d) Keine Abgeltung erfolgt für folgende Tarifziffern: +4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +e) Vergütung von Anästhesie-Leistungen gemäss geltendem PIK-Entscheid Nr. 05051 von 2006 des Arzttarifs. +f) Erläuterungen zur Abgrenzung SSO-Tarif/Arzttarif siehe PIK-Entscheid Nr. 05051 von 2006 des Arzttarifs. + a) Il faut indiquer l'adresse de la salle d'opération ainsi que sa classification conformément aux catégories d'unités fonctionnelles du tarif médical (p. ex. OP I, OP II, voir annexe 1). +b) Indemnise tous les frais imputables au personnel non médical et aux autres charges d'exploitation, de répartition et d'utilisation des installations; modalités selon le tarif médical (voir annexe 2). +c) Valeur de référence pour la rémunération: la durée incision-suture selon compte-rendu d'anesthésie. +d) Les positions ci-après ne donnent lieu à aucune indemnisation: 4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +e) Les prestations d'anesthésie sont rémunérées conformément à la décision CPI No 05051 de 2006 du tarif médical. +f) Explications relatives à la délimitation entre tarif dentaire et tarif médical, voir décision CPI No 05051 de 2006 du tarif médical. + a) Deve essere indicato il luogo dell'intervento chirurgico (indirizzo) e la relativa classificazione in base alla tariffa medica, p. es. intervento in ambulatorio, OP I, OP II (vedi allegato 1). +b) L'importo comprende tutti i costi del personale non medico come pure i costi del materiale, costi ripartibili e di utilizzazione delle installazioni; dettagli conformemente alla tariffa medica (allegato 2). +c) Valori di riferimento dell'indennizzo: +tempo di incisione e di sutura in minuti secondo il protocollo dell'anestesia. +d) Nessun indennizzo per le seguenti cifre: +4.2250, 4.2500, 4.3260, 4.3270, 4.3280, 4.3560, 4.3850. +e) Indennizzazione di prestazioni di anestesia conformemente alla decisione CPI n. 05051 del 2006, in vigore della tariffa medica. +f) Spiegazioni relative alla delimitazione tra la tariffa SSO e la tariffa medica vedi decisione CPI n. 05051 del 2006 della tariffa medica. + TP + 11.3 + 9.6 + 11.3 + 13 + + + Lei + 3 + 12.02 + 4.9850 + Postoperative Überwachung, pro 5 Min. + Surveillance postopératoire, par 5 min. + Sorveglianza postoperatoria, ogni 5 minuti + Nicht-ärztliche Betreuung, Intermediate Care + +a) Der Standort der postoperativen Überwachung ist anzugeben. +b) Referenzwerte der Vergütung: +Vergütung pro 5 Min. analog Aufenthaltszeit in Minuten gemäss Überwachungsprotokoll +c) Gilt für Patienten, deren Betreuung und Überwachung (Vitalfunktionen) aus medizinischen Gründen notwendig ist. +d) Maximale Vergütung: 2 Stunden (eine längere Dauer ist zu begründen) +e) Weitere Regelungen gemäss geltendem PIK-Entscheid 05051 2006 + Prise en charge par le personnel non médical, Intermediate Care + +a) Il faut indiquer le lieu de la surveillance postopératoire. +b) Indemnisation selon les critères suivants: +Indeminsation par tranche de 5 minutes; par analogie avec la durée incision-suture en minutes, selon le compte-rendu d'anesthésie. +c) Applicable aux patients dont la surveillance et le monitorage des fonctions vitales sont basés sur une nécéssité médicale. +d) Durée plafonnée à 2 heures (tout dépassement doit être motivé) +e) Autres dispositions: voir décision CPI No. 05051 de 2006 + Assistenza non medica, Intermediate Care + +a) Deve essere indicato il luogo della sorveglianza postoperatoria. +b) Valore di riferimento dell'indennizzo: +indennizzazione ogni 5 minuti analogamente al tempo di degenza in minuti secondo il protocollo di sorveglianza +c) Vale per i pazienti per i quali è necessaria l'assistenza e il controllo (funzioni vitali) per motivi medici. +d) Indennizzo massimo: 2 ore (la durata superiore deve essere motivata) +e) Altre regolamentazioni conformemente alla decisione CPI 05051 2006 + TP + 11.3 + 9.6 + 11.3 + 13 + + + Lei + 2 + 19 + 4.xxxx.A.n + Implantat (Freitext) + Implant (texte libre) + Impianto (testo libero + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.B.n + Abutment (Freitext) + Abutment (texte libre) + Abutment (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.C.n + Hilfsteile (Freitext) + Pièces auxiliaires (texte libre) + Parti ausiliarie (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.D.n + Material für Augmentation (Freitext) + Matériel pour augmentation osseuse (texte libre) + Materiale per rigenerazione ossea (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.E.n + Einwegmaterial (Freitext) + Matériel à usage unique (texte libre) + Materiale monouso (testo libero + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Kap + 1 + 19 + Typisierungen Material + Standardisation du matériel + Tipizzazione materiale + Für Leistungen aus dem Kapitel 19 muss das Material typisiert werden. + +Das Format 4.xxxx ist ein Platzhalter für eine existierende Tarifziffer, die sich auf die Leistung bezieht, zu welcher das Material dazu gerechnet wird. +Der Buchstabe n steht für die Sequenznummer für dieselbe Tarifziffer am selben Tag. +Beispiel: Tarifziffer 4.8960 -> 4.8960.A.1 als erste Leistung + +Liste der Typisierungen: +(Der Buchstabe (A-H) bezieht sich auf den Typ des Materials) +A = Implantat +B = Abutment +C = Hilfsteile +D = Material Augmentation +E = Einwegmaterial +F = Transplantat +G = Material Alignerbehandlung +H = Diverses Material + Le matériel des prestations du chapitre 19 doit être standardisé. + +Le format 4.xxxx est neutre et doit être appliqué pour la facturation de matériel d'une position tarifaire en question. +La lettre n représente le numéro de séquance pour une position tarifiaire, utilisé plusieurs fois le même jour. +Exemple: chiffre 4.8960 > 4.8960.A.1 comme première prestation. + +Catalogue des standardisations: +La lettre (A-H) se réfère au type de matériel. +A = Implant +B = Abutment +C = Pièces auxiliaires +D = Matériel d'augmentation osseuse +E = Matériel à usage unique +F = Greffe +G = Matériel d'alignement +H = Matériel divers + Per le prestazioni del capitolo 19, il materiale deve esser tipizzato. + +Il formato 4.xxxx è un segnaposto per una cifra tariffale esistente riferita ad una prestazione, alla quale va aggiunto il materiale. +La lettera n si riferisce al numero di sequenza per una posizione tariffale utilizzata più volte il medesimo giorno. +Esempio: cifra tariffale 4.8960 -> 4.8960.A.1 come prima prestazione + +Elenco delle tipizzazioni +(La lettera (A-H) si riferisce al tipo di materiale) +A = Impianto +B = Abutment +C = Parti ausiliarie +D = Materiale per rigenerazione ossea +E = Materiale monouso +F = Trapianto +G = Materiale trattamento di allineamento +H = Materiale diverso + + + Lei + 2 + 19 + 4.xxxx.F.n + Transplantat (Freitext) + Greffe (texte libre) + Trapianto (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.G.n + Material Alignerbehandlung (Freitext) + Matériel d'alignement (texte libre) + Materiale trattamento di allineamento (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Lei + 2 + 19 + 4.xxxx.H.n + Diverses Material (Freitext) + Matériel divers (texte libre) + Materiale diverso (testo libero) + Für die Erklärung der Typisierung siehe Interpretation in Kapitel 19. + Pour l'explication de la standardisation du matériel, voir interprétation au chapitre 19. + Per la spiegazione della tipizzazione del materiale consultare l'interpretazione al capitolo 19 + CHF + + + Kap + 1 + 20 + Diverse Clusterpositionen + Positions cluster diverses + Diverse posizioni cluster + Bei gleichem Datum darf dieselbe Clusterposition nicht auf mehreren Rechnungszeilen aufgeführt werden. +Falls dieselbe Clusterposition mehrmals am Tag abgerechnet werden soll, muss zwingend die Anzahl erhöht werden. +Platzhalter yyyy nach dem Präfix können individuell definiert werden. Die Anzahl Stellen ist mit 4 vorgegeben. + Le même jour une position cluster ne peut pas être utilisée en plusieurs lignes. +Si une position cluster doit être facturée plusieurs fois le même jour, le nombre doit être augmenté obligatoirement. +Les chiffres neutres yyyy après le préfix peuvent être définis individuellment. Limite de 4 chiffres au maximum. + Una posizione cluster non può essere utilizzata con la stessa data in diverse righe della fattura. +Se la posizione cluster deve essere fatturata più volte il medesimo giorno, deve essere aumentata obbligatoriamente la quantità. +Segnaposti YYYY dopo il prefisso possono essere definiti individualmente. Limitato a 4 cifre. + + + Lei + 2 + 20 + D.yyyy + Medikament (Freitext) + Médicament (texte libre) + Medicamento (testo libero) + Die Platzhalter yyyy nach dem Präfix D. können individuell definiert werden. Die Anzahl Stellen ist mit 4 vorgegeben. + Les chiffres neutres yyyy après le préfix D. peuvent être définis individuellment. Limite de 4 chiffres au maximum. + Segnaposti YYYY dopo il prefisso D possono essere definiti individualmente. Limitato a 4 cifre. + CHF + + + Lei + 2 + 20 + M.yyyy + Material/Hilfsmaterial (Freitext) + Matériel/Matériel accessoire (texte libre) + Materiale/Materiale accessorio (testo libero) + Die Platzhalter yyyy nach dem Präfix M. können individuell definiert werden. Die Anzahl Stellen ist mit 4 vorgegeben. + Les chiffres neutres yyyy après le préfix M. peuvent être définis individuellment. Limite de 4 chiffres au maximum. + Segnaposti YYYY dopo il prefisso M possono essere definiti individualmente. Limitato a 4 cifre. + CHF + + + Lei + 2 + 20 + P.yyyy + Prophylaxeartikel (Freitext) + Produits de prophylaxie (texte libre) + Prodotti per la profilassi (testo libero + Die Platzhalter yyyy nach dem Präfix P. können individuell definiert werden. Die Anzahl Stellen ist mit 4 vorgegeben. + Les chiffres neutres yyyy après le préfix P. peuvent être définis individuellment. Limite de 4 chiffres au maximum. + Segnaposti YYYY dopo il prefisso P possono essere definiti individualmente. Limitato a 4 cifre. + CHF + + \ No newline at end of file diff --git a/DPM2016/bin/Debug/Aga.Controls.dll b/DPM2016/bin/Debug/Aga.Controls.dll new file mode 100644 index 0000000..08182e3 Binary files /dev/null and b/DPM2016/bin/Debug/Aga.Controls.dll differ diff --git a/DPM2016/bin/Debug/Aga.Controls.pdb b/DPM2016/bin/Debug/Aga.Controls.pdb new file mode 100644 index 0000000..4c4d493 Binary files /dev/null and b/DPM2016/bin/Debug/Aga.Controls.pdb differ diff --git a/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.dll b/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.dll new file mode 100644 index 0000000..bf25d2b Binary files /dev/null and b/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.dll differ diff --git a/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.xml b/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.xml new file mode 100644 index 0000000..433945e --- /dev/null +++ b/DPM2016/bin/Debug/C1.Win.C1TrueDBGrid.2.xml @@ -0,0 +1,10613 @@ + + + + C1.Win.C1TrueDBGrid.2 + + + + + + + + + Gets the data source. + + + + + + + Gets the data view. + + + + + + + + + + + Sets the bound control. + + The bound control. + The name. + + + + Gets the size of the virtual segment. + + + + + + + Sets the visible row count. + + The value. + The name. + + + + Bounds the control scrolled. + + + + + + + + + Gets the first visible row. + + + + + + + Gets the visible row count. + + + + + + + Scrolls to row. + + The first visible row. + The row count. + + + + + + + + Requests the modification. + + + + + + + + + Sets the row filter. + + The value. + + + + Sets the sort. + + The value. + + + + Refreshes this instance. + + + + + Interfaces used by bound controls and other C1Data consumers: + Dynamic, late bound access to the interfaces, via reflection + + + + + Gets the data source. + + The obj. + + + + + + + + + + News the late binding I c1 complex bound control. + + The obj. + + + + + + + + + + Gets the data view. + + The obj. + + + + + + Holds a Graphics object together with (printer) device or bitmap that was used + to create it, if any. The point is to dispose the device or bitmap together + with the graphics when it is no longer needed (i.e. to avoid resource leaks). + + + + + An empty graphics holder instance. + + + + + Creates a graphics holder from a device context. + When the holder is disposed, both graphics and the device context are released (DeleteDC is called on the device context). + + The device context from which graphics is created. + The new instance of the graphics holder. + + + + Creates a graphics holder from a graphics instance. + When the holder is disposed, the graphics is left alone (i.e. NOT disposed). + + The graphics to store in the new holder. + The new instance of the graphics holder. + + + + Creates a graphics holder from screen. If that fails (e.g. on Azure), the graphics is created from a bitmap. + When the holder is disposed, both graphics and the bitmap are released. + + The new instance of the graphics holder. + + + + Creates a graphics holder from a bitmap. The graphics and the bitmap are released when the holder is disposed. + This should never fail. + + The new instance of the graphics holder. + + + + Disposes the current graphics holder. + + + + + Gets the graphics object held by the current instance. + + + + + Gets the horizontal resolution of graphics held by the current instance. + + + + + Gets the vertical resolution of graphics held by the current instance. + + + + + Represents an exception that occurred during C1DX or C1MDX serialization/deserialization + if the underlying zip stream has invalid format. + + + + + Abstract base class for and + classes. + + + + + Gets the list of strings describing the actions that lead to the exception that occurred + during serialization or deserialization. + + + + + Represents an exception that occurred during serialization. + + + + + Represents an exception that occurred during deserialization. + + + + + Gets the line number associated with the exception. + + + + + Gets the position in line associated with the exception. + + + + + Represents range of character codes. + + + + + Initialization of the range of character codes + + Adding character. + + + + Initialization of the range of character codes + + The first character code. + The last character code. + + + + + + + + + + + + + + + + + The begin code of character. + + + The end code of character. + + + + Represents collection of unique objects. + All CodeRange objects within collection not intersect and sorted + by First field. + + + + + Adds object to current without any check, typically used during deserialization. + + + to add. + + + + Gets the array of chars contained in this list of code ranges. + + Array of char + + + + Gets a value indicating whether the collection + contains all characters from 0x0000 to 0xFFFF. + + + + + + + Static class containing UI strings used by the designer. + + + + + Represents a handler for an item related event. + + + + + Provides data for an item related event. + + + + + Gets key of the item being added or changed. + + The key. + + + + Gets the string value. + + The value. + + + + Gets a value indicating whether this instance is default. + + + true if this instance is default; otherwise, false. + + + + + Gets the description. + + The description. + + + + Represents a collection of end user visible UI strings. + + + + + Adds a string to the collection, specifying the ordinal. + + The key of the string. + The ordinal of the string. + The string. + The description of the string. + + + + Adds a string to the collection in alphabetical order. + + The key of the string. + The string. + The description of the string. + + + + Adds a string to the collection, preserving the order. + + The key of the string. + The string. + The description of the string. + + + + Sets all strings in collection to their default values. + + + + + Indicates whether any of the strings in the current collection + have non-default values. + + + true if any of the strings have non-default values, false otherwise. + + + + Tests whether a string in the collection has default value. + + The key of the string to test. + + true if the string has default value, false otherwise. + + + + Returns the description of a string. + + The key of the string to get the description of. + The string's description + + + + Resets a string to its default value. + + The key of the string to reset. + + + + Returns the key of an item with the specified index. + + The item index. + The item's key. + + + + Gets the string by its index. + + The string index. + The string. + + + + Sets the value of a string with the specified index. + + The string index. + The new string value. + + + + Fires the event. + + The event data. + + + + Fires the event. + + The event data. + + + + Fires the event. + + The event data. + + + + Gets the number of elements contained in the collection. + + + + + Occurs when a new item is added to the collection. + + + + + Occurs when an item in the collection is changed. + + + + + Occurs when the collection has been changed. + + + + + Provides type conversion for the type. + + + + + For internal use. + + + + + + + + + + + + + + + For internal use. + + + + + + + + + + + + + For internal use. + + + + + + + + + C1TrueDBGrid control object. + + + + + Summary description for BaseGridFrame. + + + + + For internal use. + + + + + Ctor for the split container class. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Raised when the Binding Context changes. + + + + + + + ISupportInitialize interface. + + + + + ISupportInitialize interface. + + + + + Called after the control has been added to another container. + + + + + Inherited from Control. + + + + + + + Raises the VisibleChanged event when the Visible property value of the control's container changes. + + An that contains the event data. + + + + Initializes root and named styles. + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + + + Inherited from Control. + + + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Processes Windows messages. + + + + + + + Helper method for serializing images. + + + + + Recomputes the sizes of the splits based on the client size of the control. + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Creates the view. + + + + + + + Creates the view. + + The other. + + + + + + Called when the datasource changes. + + The new datasource. + The new datamember. + True to force a new binding. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Resets to the default value. + + + + + Tests whether should be serialized. + + True if should be serialized, false otherwise. + + + + Raises the event. + + The instance containing the event data. + + + + Raised after the datasource has been updated for a column. + + + + + + + Raised after a row has been deleted. + + + + + + + Raised after a row has been inserted. + + + + + + + Raised after a row has been updated. + + + + + + + Raised before a column has been updated. + + + + + + + Raised before a row is deleted. + + + + + + + Raised before a row is inserted. + + + + + + + Raised before a row is updated. + + + + + + + Raised when a column has been resized. + + + + + + + Raised when a column header has been clicked. + + + + + + + Raised when a column footer has been clicked. + + + + + + + Raised when a cell has to be rendered. + + + + + + + Raised when a cell has to be printed. + + + + + + + Raised when Page header needs to be printed. + + + + + + + Raised when a Page footer needs to be printed. + + + + + + + Raised before a row or column currency is changed. + + + + + + + Raised after a row or column currency has been changed. + + + + + + + Raised before a row is resized. + + + + + + + Raised when the grid scrolls. + + + + + + + Raised when a selection has changed. + + + + + + + Raised when split currency has changed. + + + + + + + Raised when a split has been added. + + + + + + + Raised when a split has been removed. + + + + + + + Raised when the grids cell content has been modified. + + + + + + + Raised to fetch data for an unbound column. + + + + + + + Raised when an unbound column has been updated. + + + + + + + Raised after a column has been edited. + + + + + + + Raised before a column edit. + + + + + + + Raised when a column has been edited. + + + + + + + Raised when the top row has changed. + + + + + + + Raised when the left column has changed. + + + + + + + Raised when a cell value needs custom formatting. + + + + + + + Raised when a button in a cell has been clicked. + + + + + + + Raised when a value in the combobox has been selected. + + + + + + + Raised when a value item is selected that's not in the ValueItems collection. + + + + + + + Raised when a custom style is to be used for rendering a cell. + + + + + + + Raised when a custom style is to be used for renderind a grouped cell. + + + + + + + Raised when a custom style is to be used for a row. + + + + + + + Raised when a new row is added. + + + + + + + Raised when a column is dragged. + + + + + + + Raised when a cell tip is to be displayed. + + + + + + + Raised when the grid is initialized. + + + + + + + Raised when the datasource is changed. + + + + + + + Raised when a band is collasped in a hierarchical grid. + + + + + + + Raised when a band is expanded in a hierarchical grid. + + + + + + + Raised when a grouped column is moved. + + + + + + + Raised when a column header in the grouping area is clicked. + + + + + + + Raised when scroll tips are to be displayed. + + + + + + + Raised when a filter condition has changed. + + + + + + + Raised when a button in the filter bar is clicked. + + + + + + + Raised before a child grid is displayed. + + + + + + + Rasied before a child grid is closed. + + + + + + + Raised when the datasource is sorted by clicking the column header. + + + + + + + Raised when AllowFilter is false. + + + + + + + Raised after the datasource has been filtered. + + + + + + + Raised after the datasource has been sorted. + + + + + + + Raised when the grid encounters an error through the UI. + + + + + + + Raised when custom values are to be used for the group text. + + + + + + + Raised when custom aggregates are used for a grouped grid. + + + + + + + Raised when custom group intervals are used for a grouped grid. + + + + + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + True to preserve design time layout + /// True to keep previously expanded groups in GroupBy mode. + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + True to preserve design time layout + + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + The call to SetDataBinding(object dataSource, string dataMember) assumes false for the holdFields arguments. + + + + Configures the grid for use without a datasource. + + + + + Adds a row to an unbound grid. + + The data used to populate the new row. Column data is delimited by ';' char. + The index of the row that was added. + + + + Adds a row to an unbound grid. + + The data used to populate the new row. + Character used to separate the data fields. + The index of the row that was added. + + + + Adds the number of given rows to an unbound grid. + + The number of rows to add. + The index of the first row that was added. + + + + Deletes the given row from an unbound grid. + + The index of the row to remove. + + + + Deletes a range of rows from an unbound grid. + + The starting index of the row to remove. + The number of rows to remove. + + + + Creates a new System.Data.DataRow with the same schema as the unbound grid. + + + + + + + Gets the default size of the control. + + + + + The default of the control. + + + + + Allows us to set the borderstyle. + + + + + Gets the current position from the currency manager. + + + + + Gets or sets the border for the control. + + + + + Gets or sets a value indicating whether the InactiveStyle is applied to the grid when it loses focus. + + + + + Gets or sets a value indicating the ability of the grid to automatically sort data when a column header is clicked. + + + If True, and if the property is set to GroupBy, the grid will automatically filter column data upon grouping action. + If False, the grid will fire the event. + If the property is set to Group By and the user attempts to drag a column header into the grouping area, the grid will automatically sort the column data. + If False, the event allows the application to sort the data. + + + + + Gets or sets a value indicating the ability of the grid to automatically filter data. + + + If True, and if the Filter Bar is active, the grid will automatically filter data. + If False, the grid will fire the event. + If the property is true and the user attempts to filter column data, the grid will automatically filter the column data according to the value in the Filter Bar. + If False, the event allows the application to filter the data. + + + + + Gets or sets the grid's caption. + + + For a control, this property determines the text displayed in the caption bar at the top of the grid. + Setting the Caption property to an empty string for a control hides its caption bar. + For a object, this property determines the text displayed in the object's heading area. + Setting the Caption property to an empty string for a object clears the text in the column's heading area but does not hide the heading. Column captions are only displayed if the grid's property is set to True. + Setting the Caption property to an empty string for a object hides the heading area, even if other splits have non-empty captions. + + + + + Gets or sets the height of the grid's caption. + + This property requires that the property of the grid has a value. + + + + Gets or sets the height of grid rows. + + + + + Gets or sets the specific data member in a multimember data source that the grid binds to. + + + This property returns or sets the name of the data member used to populate the grid. Typically, a data member represents a database table or query. + A bound can expose multiple sets of data that consumers can bind to. Each set of data is called a data member, and is identified by a unique string. + + + + + Gets or sets the source containing a list of values used to populate the items within the control. + + The DataSource property specifies the list of values used to bind a or control. + + + + Gets or sets a value indicating whether the control should use an off-screen buffer when painting to redue flicker. + + + Setting this value to False may cause the grid to flicker when the control is painting. + You may want to set DoubleBuffer to False to increase performance when deploying applications that run on terminal servers. + + + + + Gets or sets the general appearance of 3D elements for the entire grid. + + + + + Gets the DataRowCollection for an unbound grid. + + + + + Gets or sets a value that controls how the grid scrolls when the scroll thumb is moved. + + + + + + The size of the split divider. + + + + Gets the number of rows in an unbound grid. + + + + + Gets or sets a value indicating whether Style information is applied from the datasource. + + + + + Occurs when visual style property has been changed. + + + + + Gets or sets a value that determines the overall appearance of the control. + + + This property allows you to quickly customize the appearance of the grid so + it matches the appearance of your application. + The settings available include System, various Microsoft Office color + schemes, and Custom, which relies on the controls standard styles and appearance + properties. + + + + + Gets or sets the renderer used to render visual styles. + + The renderer. + + + + Specifies whether text rendering should be compatible with previous releases of WinForms. + + + This property determines whether the control should render text using the + class (compatible with previous versions), or the new class + (available in .NET 2.0 and later). + The class supports complex scripts and Uniscribe APIs, making + it better suited for some international applications. + However, the class seems to render about 25% slower than the + traditional method. + You may want to try both modes and select the one that matches the appearance of other + controls and forms in your application. + + + + + The C1TrueDBGrid control. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Creates a new accessibility object for the control. + + A new for the control. + + + + Creates the view. + + + + + + + Creates the view. + + The other view. + + + + + + + + + + End initialization. + + + + + + + + + + + + + + + + + + + + + + + Gets a top-level object bound to the specified view row. + + Returns null if the specified view row is not a data row. + + + + Shoulds the width of the record selector be serialized. + + + + + + + Should the row divider be serialized. + + + + + + + + + + + + + Adds a row to an unbound grid. + + The data used to populate the new row. Column data is delimited by ';' char. + The index of the row that was added. + + + + Adds a row to an unbound grid. + + The data used to populate the new row. + Character used to separate the data fields. + The index of the row that was added. + + + + Adds the number of given rows to an unbound grid. + + The number of rows to add. + The index of the first row that was added. + + + + Instructs the grid to temporarily ignore IBindingList.ListChange notifications from the data source. + + + + + Resumes IBindingList.ListChange notifications from the data source to the grid. + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Returns the row index of the DataSource for a display row index. + + + The row index of the grid. + + + The underlying row index of the DataSource. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Restores the default grid layout. + + + + + Returns the column index for the column containing the specified X coordinate. + + + The horizontal coordinate (X value) in pixels. + + + The index of the column in the collection beneath the specified X coordinate. + + + + + Returns the column index for the column containing the specified point. + + + The point. + + + The index of the column in the collection beneath the specified point. + + [C1Description("Identifies the index of the DisplayColumn under a point")] + + + + Returns the zero-based index of the display row containing the Y specified coordinate. + + + The vertical coordinate (Y value) in pixels. + + + The display row index beneath the specified Y coordinate. + + + + + Returns the Y coordinate of the top of a visible row. + + + The displayed row index. + + + The Y coordinate of the specified display row, based on the client coordinates of the grid. + + + + + Scrolls the grid data area by the specified number of rows and columns. + + + Number of columns to scroll. + + + Number of rows to scroll. + + + + + Returns one of the enumerations, which indicates the kind of grid element beneath the specified coordinate. + + + The Point in client coordinates. + + + The enumerations under the given coordinate. + + + + + Returns one of the constants, which indicates the kind of grid element beneath the specified coordinate. + + + The x-coordinate. + + + The y-coordinate. + + + The enumerations under the given coordinate. + + + + + Reinitializes grid with data from its data source. + + + True to preserves current column layout. False retrieves the schema from the datasource. + + + + + + + + + Returns the of the split containing the specified coordinate. + + + The x-coordinate. + + + The y-coordinate. + + + The beneath the specified coordinate pair. + + + + + Updates any changes on the current row to the data source. + + + + + Moves the current row positions of the grid by the given offset. + + + The number of records to move. A positive value indicates forward movement; a negative value indicates backward movement. + + + + + Moves the current row positions of the grid by the given offset from the given row. + + + The number of records to move. A positive value indicates forward movement; a negative value indicates backward movement. + + + The origin of the relative movement. + + + + + Positions to the last row of the datasource. + + + + + Positions to the first row of the datasource. + + + + + Positions to the next row of the datasource. + + + + + Positions to the previous row of the datasource. + + + + + Deletes the current row. + + + + + Loads a saved layout from the given file. + + + The file containing a saved layout. + + + + + Loads a saved layout from the given stream. + + + The Stream containing a saved layout. + + + + + Saves the grid's layout. + + + File to contain the grid layout. + + + + + Saves the grid's layout. + + + The Stream to contain the grid layout. + + + + + Saves the grid's layout. + + + File to contain the grid layout. + + + Specifies whether default values are serialized. + + + + + Saves the grid's layout. + + + The Stream to contain the grid layout. + + + Specifies whether default values are serialized. + + + + + Returns the cell position for a set of coordinates. + + + The x-coordinate. + + + The y-coordinate. + + + The row under the coordinate pair. + + + The column index under the coordinate pair. + + + A value indicating whether a data cell is beneath the specified coordinate pair. + + + The CellContaining method combines the and methods into one call. If the coordinate pair specified by x and y points to a data cell, this method returns True, and the rowindex and colindex arguments receive zero-based indexes that identify the cell. + This method is useful when working with mouse and drag events when trying to determine where the user clicked or dropped another control in terms of a grid cell. + If the specified coordinate is outside of the grid's data area, this method returns False. Use the method to determine what kind of grid element, if any, is beneath the specified coordinate. + + + + + Invalidates the current row. + + + The RefreshRow method causes a repaint of the entire row in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a row to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the current row. + + + The row to refresh. + + + The RefreshRow method causes a repaint of the entire row in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a row to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the current column. + + + The RefreshCol method causes a repaint of the entire column in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a column to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the specified column. + + + The split column index to repaint. + + + The RefreshCol method causes a repaint of the entire column in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a column to be repainted and hence cause the appropriate events to fire. + + + + + Retreives data from the datasource for the current row and refreshes the row. + + + The RefetchRow method repopulates the specified row from a data source. It also repaints the row, firing all events necessary for redisplay. + By default, the grid retrieves data automatically as needed. In some circumstances, the underlying datasource may change without the grid receiving notification that a change has occurred. The RefetchRow method is provided for this purpose. + + + + + Retreives data from the datasource for the specified row and refreshes the row. + + + The row to refetch. + + + The RefetchRow method repopulates the specified row from a data source. It also repaints the row, firing all events necessary for redisplay. + By default, the grid retrieves data automatically as needed. In some circumstances, the underlying datasource may change without the grid receiving notification that a change has occurred. The RefetchRow method is provided for this purpose. + + + + + Expands the given row in GroupBy DataView. + + + The row to expand. + + + Expanding/collapsing a row in a GroupBy grid also expands/collapses the row in a split that shares the same vertical scroll group. + + + + + + + Expands the given row in GroupBy DataView and optionally exapands the subrows. + + The row to expand. + True to expand subrows. + + + + Collapses a grouped row. + + + + + Obtains the band given a column index. + + + + + Obtains the underlying row object for the given band and row. + + + + + Obtains the expanded state of a band for a hierarchical grid. + + + + + Collapses a gvien band in a hierarchical grid. + + + + + Expand the given band in a hierarchical grid. + + + + + Closes the Child Grid. + + + + + Displays the Child grid. + + + + + Exports the grid to an HTML file. + + + + + Exports the grid to a PDF file. + + + + + Exports the grid to an RTF file. + + + + + Exports the grid to a XLS file. + + + + + Exports the grid to a XLS file. + + + + + Opens a dialog in which the user can select the export format. + + + + + Exports the grid based upon the file extension. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Inserts vertical splits at the given position. + + + + + Removes all vertical splits at the given index. + + + + + + + + + Inserts new horizontal splits at the given position. + + + + + Removes all the horizontal splits at the given index. + + + + + Clears any cached styles and forces the grid to repaint. + + + + + Sets the focus to the given cell. + + The zero based index of the row. + The zero based index of the column. + + + + Extends the last column in each subrow so that all rows have the same width. + + + + + Raises the AfterColUpdate event. + + + + + + + Raises the AfterDelete event. + + + + + + + Raises the AfterInsert event. + + + + + + + Raises the AfterUpdate event. + + + + + + + Raises the BeforeColUpdate event. + + + + + + + Raises the BeforeDelete event. + + + + + + + Raises the BeforeInsert event. + + + + + + + Raises the BeforeUpdate event. + + + + + + + Raises the ColResize event. + + + + + + + Raises the HeadClick event. + + + + + + + Raises the FootClick event. + + + + + + + Raises the OwnerDrawCell event. + + + + + + + Raises the OwnerDrawCellPrint event. + + + + + + + Raises the OwnerDrawPageHeader event. + + + + + + + Raises the OwnerDrawPageFooter event. + + + + + + + Raises the BeforeRowColChange event. + + + + + + + Raises the RowColChange event. + + + + + + + Raises the RowResize event. + + + + + + + Raises the Scroll event. + + + + + + + Raises the SelChange event. + + + + + + + Raises the SplitChange event. + + + + + + + Raises the SplitRemoved event. + + + + + + + Raises the SplitRemoved event. + + + + + + + Raises the Change event. + + + + + + + Raises the UnboundColumnFetch event. + + + + + + + Raises the UnboundColumnUpdated event. + + + + + + + Raises the AfterColEdit event. + + + + + + + Raises the BeforeColEdit event. + + + + + + + Raises the ColEdit event. + + + + + + + Raises the FirstRowChange event. + + + + + + + Raises the LeftColChange event. + + + + + + + Raises the FromatText event. + + + + + + + Raises the ButtonClick event. + + + + + + + Raises the ComboSelect event. + + + + + + + Raises the ValueItemError event. + + + + + + + Raises the FetchCellStyle event. + + + + + + + Raises the FetchGroupCellStyle event. + + + + + + + Raises the FetchRowStyle event. + + + + + + + Raises the OnAddNew event. + + + + + + + Raises the ColMove event. + + + + + + + Raises the FetchCellTips event. + + + + + + + Raises the OnInit event. + + + + + + + Raises the DataSourceChanged event. + + + + + + + Raises the Collapse event. + + + + + + + Raises the Expand event. + + + + + + + Raises the GroupColMove event. + + + + + + + Raises the GroupText event. + + + + + + + Raises the GroupAggregate event. + + + + + + + Raises the GroupHeadClick event. + + + + + + + Raises the GroupInterval event. + + + + + + + Raises the FetchScrollTips event. + + + + + + + Raises the FilterChange event. + + + + + + + Raises the FilterButtonClick event. + + + + + + + Raises the BeforeOpen event. + + + + + + + Raises the BeforeClose event. + + + + + + + Raises the Sort event. + + + + + + + Raises the Filter event. + + + + + + + Raises the AfterFilter event. + + + + + + + Raises the AfterSort event. + + + + + + + Raises the Error event + + + + + + + + + + + + + Gets a top-level object bound to a current data row. + + Returns null if no data row is selected. + + + + Gets or sets the language to use when localizing the column filters. + + + + + Gets the row object associated with the given row. + + + + + Gets or sets the cell value at the given row and column. + + + + + Gets or sets the cell value at the given row and column. + + + + + Gets a value that describes the current AddNew state. + + + + + Gets or sets a value indicating the ability to delete records from the grid. + + + + + Gets or sets a value indicating the ability to add new rows. + + + + + Gets or sets a value indicating whether arrow keys can be used to navigate around the grid. + + + + + Gets or sets a value indicating the ability to move columns in the grid. + + + + + Gets or sets a value indicating the ability to select columns in the grid. + + + + + Gets or sets a value indicating the ability to drag from the grid. + + + + + Gets or sets a value indicating the ability to select rows in the grid. + + + + + Gets or sets a value indicating the ability of a user to modify data. + + + + + Gets or sets a value indicating how the grid updates modifed data when the grid loses focus. + + + + + Gets the number of levels within a hierarchical grid. + + + + + Gets or sets the current row position of the underlying CurrencyManager. + + + + + Gets or sets whether the grid displays a pop-up text window when the cursor is idle. + + + + + Gets or sets the amount of time in milliseconds before the cell tip window is displayed. + + + + + Gets or sets the width of the cell tip window. + + + + The CellTipsWidth property returns or sets the width of the cell tip window in pixels. + + + By default, this property is set to zero, which causes the cell tip window to grow or shrink to accommodate the cell tip text. Override this behavior and give the cell tip window a fixed width by specifying a non-zero value for this property. + + + + + + Gets or sets the column position of the current cell in the current split. + + + + + Gets or sets the color of the collapse icon. + + + + + Gets a reference to the cell editor that is currently active. + + + + + Gets the Split that has focus. + + + + + Gets or sets the default width for all grid columns. + + + + + Gets or sets the color of the expand icon in hierarchical grids. + + + + + Gets or sets a value indicating the visibility of column headers. + + + + + Gets or sets a value indicating the visibility of column footers. + + + + + Gets the collection of C1DataColumn objects. + + + + + Gets or sets a value indicating the visibility of the current cell in a split. + + + + + Gets or sets a value indicating the modification status of the current row. + + + + + Gets the split index which will be current after cell movement. + + + + + Gets the row which will be current after cell movement. + + + + + Gets the column which will be current after cell movement. + + + + + Gets or sets a value indicating the editing status of the current cell. + + + + + Gets or sets a value indicating whether editing will take place in a popup window or within cell boundaries. + + + + + Gets or sets a value that determines how the grid displays rows below the last data row. + + + + + Gets or sets the image used for ErrorProvider. + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the grid. + + + + + Gets or sets how the rightmost column reacts when clicked by the user. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets a value indicating whether the filter bar has focus. + + + + + Gets or sets a value indicating the visibility of the FilterBar. + + + + + Gets or sets the row index for the first visible row in a grid or split. + + + + + Gets or sets the zero-based index of the leftmost column in a grid or split. + + + + + Gets or sets the MarqueeStyle for a grid. + + + + + Gets or sets the time (milliseconds) in which the incremental search string will reset for a dropdown when the property is True. + + + + + Gets or sets the selection state of the grid. + + + + + Gets or sets the Image used in the record selector to indicate the Current row. + + + + + Gets or sets the Image used in the record selector to indicate the Modified row. + + + + + Gets or sets the Image used in the record selector to indicate the AddNew row. + + + + + Gets or sets the Image used in the record selector to indicate the FilterBar row. + + + + + Gets or sets the Image used in the record selector to indicate the Standard row. + + + + + Gets or sets the Image used in the record selector to indicate the Header row. + + + + + Gets or sets the Image used in the record selector to indicate the Footer row. + + + + + Gets the object. + + + + + Gets the object. + + + + + Gets or sets a value indicating the visibility of row headers for a grid or split. + + + + + Gets or sets the width of the row headers. + + + + + Gets or sets the the current row. + + + + + Gets or sets a value that determines whether the grid displays a pop-up text window when the scrollbar thumb is dragged. + + + + + Gets the collection of rows that are currently selected. + + + + + Gets the collection of columns that are currently selected. + + + + + Gets or sets the number of characters selected within the grid's editing window. + + + + + Gets or sets the starting point of the text selection within the grid's editing window. + + + + + Gets or sets the string containing the currently selected text within the grid's editing window. + + + + + Gets a value indicating whether a range of cells has been selected. + + + + + Gets or sets the index of the current within the . + + + + + Gets or sets a value that determines how columns will resize when the grid is resized. + + + + + Gets or sets a value indicating the behavior of the tab and arrow keys at split borders. + + + + + Gets or sets the behavior of the tab key. + + + + + Gets the number of visible columns in the current Split. + + + + + Gets the number of visible rows in the current Split. + + + + + Gets or sets a value indicating the behavior of Tab and arrow keys at row boundaries. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets the layout by which the grid will display data. + + + + + Gets or sets a value that determines the relative position of the next cell when the user presses the Enter key. + + + + + Gets or sets the text displayed in the grouping area when no columns have been grouped. + + + + + Gets the collection of columns that are grouped. + + + + + Gets or sets a value indicating the visibility of the Grouping area of the grid when the property is set to GroupBy. + + + + + Gets the rectangle occupied by the grouping area. + + + + + Gets or sets the number of subrows of the grid when the property is set to MutlipleLinesFixed. + + + + + Gets or sets a value indicating the behavior of the grid and row currency when the grid's datasource is sorted. + + + + + Gets or sets the style of the border drawn between grid rows. + + + + + Gets or sets the color of the subrow divider in a multi-line grid. + + + + + Gets or sets the C1TrueDBGrid control used as a child grid in a hierarchical presentation. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Gets or sets the object that controls the appearance of the cell editor within a grid. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of grouping area. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the current row/cell when the is set to Highlight Row/Cell. + + + + + Gets or sets the object that controls the grids caption when it doesn't have focus. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of selected rows and columns. + + + + + Gets or sets the root object. + + + + + Gets the collection of named objects. + + + + + Gets or sets a value indicating whether the grid or split uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether a user is allowed to create horizontal splits. + + + + + Gets or sets a value indicating whether a user is allowed to create vertical splits. + + + + + Gets the collection of objects. + + + + + Gets or sets the width of a column when the is set to Inverted or Form. + + + + + Gets or sets the width of the column caption when the is set to Inverted or Form. + + + + + Occurs after a cell has been updated. + + + + + Occurs after a row has been deleted. + + + + + Occurs after a row has been added. + + + + + Occurs after a row has been updated. + + + + + Occurs before a cell is updated to the datasource. + + + + + Occurs before a row is deleted. + + + + + Occurs before a new row is added to the datasource. + + + + + Occurs before a row is updated to the datasource. + + + + + Occurs whenever a column is resized. + + + + + Occurs whenever a column header is clicked. + + + + + Occurs whenever a column footer is clicked. + + + + + Occurs before a cell is rendered and the is true. + + + + + Occurs before a cell is to be printed and the is true. + + + + + Occurs before the page header is to be printed. + + + + + Occurs before the page footer is to be printed. + + + + + Occurs prior to focus moving to another cell. + + + + + Occurs when the focus moves to a different cell. + + + + + Occurs whenever the user resizes a row. + + + + + Occurs whenever the user scrolls the grid. + + + + + Occurs whenever the user selected a different range of rows or columns. + + + + + Occurs whenever a Split changes focus. + + + + + Occurs when a split is removed. + + + + + Occurs when a split is added. + + + + + Occurs whenever the user changes the value of a cell. + + + + + Occurs when the grid needs to access the value of an unbound column. + + + + + Occurs when the value of an unbound column has been updated. + + + + + Occurs after editing is completed. + + + + + Occurs before a cell enters edit mode. + + + + + Occurs whenever a cell first enters edit mode. + + + + + Occurs whenever the first row changes. + + + + + Occurs whenever the left column changes. + + + + + Occurs whenever a cell is about to be rendered and whose property has been set to FormatTextEvent. + + + + + Occurs whenever a button is clicked in a cell. + + + + + Occurs whenever a selection has been made to the built-in combo or TrueDBDropdown. + + + + + Occurs whenever a user attempts to enter invalid data into a column that is using valueitems. + + + + + Occurs whenever a cell is to be rendered and the is true. + + + + + Occurs whenever a grouped cell that contains an aggregate is to be rendered and is true. + + + + + Occurs whenever the grid renders a row and the property has been set. + + + + + Occurs whenever an AddNew operation has been initiated. + + + + + Occurs whenever the user has finished moving a column. + + + + + Occurs when the grid needs to display CellTips. + + + + + Occurs after the grid has been initialized. + + + + + Occurs whenever the datasource changes. + + + + + Occurs whenever a hierarchical row is collapsed. + + + + + Occurs whenever a hierarchical row is expanded. + + + + + Occurs whenever a column is moved into or out of the grouping area. + + + + + Occurs when the property is set to custom. + + + + + Occurs when the is set to Custom for a grouped row. + + + + + Occurs whenever a column in the grouping area is clicked. + + + + + Occurs whenever a row is being grouped and a custom interval has been specified. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Occurs when the contents of a cell in the filterbar changes. + + + + + Occurs when a button is clicked in the filterbar. + + + + + Occurs when the user attempts to open a child grid. + + + + + Occurs when the user attempts to close a child grid. + + + + + Occurs when the user drags a column into the grouping area. + + + + + Occurs when the user types in the filterbar and the property is false. + + + + + Occurs after the datasource has been filtered. + + + + + Occurs after a column has been sorted. + + + + + Occurs whenever an exception is thrown during end user interaction. + + + + + C1TrueDBDropdown control. + + + + + Creates a new instance of the object. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Creates the view. + + + + + + + Creates the view. + + The other. + + + + + + + + + + + + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Restores the default layout. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Restores the default layout. + + + + + Returns the column index for the column containing the specified X coordinate. + + + The horizontal coordinate (X value) in pixels. + + + The index of the column in the collection beneath the specified X coordinate. + + + + + Returns the zero-based index of the display row containing the Y specified coordinate. + + + The vertical coordinate (Y value) in pixels. + + + The display row index beneath the specified Y coordinate. + + + + + Reinitializes grid with data from its data source. + + + True to preserves current column layout. False retrieves the schema from the datasource. + + + + + + + + + Scrolls the data area by the specified number of rows and columns + + + + + + + + + Occurs when the user has moved a column. + + + + + Occurs when the user has resized a column. + + + + + Occurs when the grids DataSource has changed. + + + + + Occurs when the dropdown is opened. + + + + + Occurs when the dropdown closes. + + + + + Occurs whenever the grid is about to display a row of data and the FetchRowStyles property is True. + + + + + Occurs when the first displayed row of a control or split is changed. + + + + + Occurs when the user clicks on the column footer. + + + + + Occurs when the grid is about to display cell data in a column whose NumberFormat property is set to the string FormatText Event. + + + + + Occurs when the user clicks on the column header. + + + + + Occurs when the first visible column of a grid or split is changed. + + + + + Occurs when the focus moves to a different row. + + + + + Occurs when the user has finished resizing a grid row. + + + + + Occurs when the user scrolls the grid. + + + + + Occurs when the user selects a different range of rows or columns. + + + + + Occurs when the grid needs to display the value of a cell in an unbound column. + + + + + Occurs when the user attempts to enter invalid data into a column that is using value lists. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Gets the current selected index. + + + + + + + + + + + + + + + + + + + Raises the MouseUp event. + + A MouseEventArgs that contains the event data. + + + + Raises event. + + A that contains the event data. + + + + Inherited from control. + + A that contains the event data. + + + + + + + + + + Gets the default size of the control. + + + + + The default of the control. + + + + + Gets or sets a value indicating the ability to move columns. + + + + + Gets or sets a value indicating the ability to select columns. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether the dropdown uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets the current row position of the underlying CurrencyManager. + + + + + Gets or sets the column position. + + + + + Gets or sets a value indicating the visibility of column footers. + + + + + Gets or sets the height of column captions. + + + + + Gets or sets the height of column footers. + + + + + Gets or sets a value indicating the visibility of column headers. + + + + + Gets the collection of C1DataColumn objects. + + + + + Gets the collection of C1DisplayColumn objects. + + + + + Gets or sets a value indicating the visibility of the current cell. + + + + + Gets or sets the property used to update the associated grid column. + + + + + Gets or sets the default width for all grid columns. + + + + + Gets or sets the width of the dropdown. + + + + + Gets or sets a value that determines how the grid displays rows below the last data row. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the dropdown. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets the row index for the first visible row. + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the appearance of a highlighted row. + + + + + Gets or sets a value indicating whether the control should resize to avoid showing partial items. + + + + + Gets or sets the zero-based index of the leftmost column. + + + + + Gets or sets the property used for incremental search. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the the current row. + + + + + Gets or sets the style of the border drawn between rows. + + + + + Gets or sets the color of the subrow divider in a multi-line dropdown. + + + + + Gets or sets a value that determines if rows are highlighted under the mouse. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets a value that determines whether the grid displays a pop-up text window when the scrollbar thumb is dragged. + + + + + Gets or sets the root object. + + + + + Gets the collection of named objects. + + + + + Gets or sets a value that determines how the grid display values in a column. + + + + + Gets the number of visible columns in the dropdown. + + + + + Gets the number of visible rows in the dropdown. + + + + + Occurs when the user has moved a column. + + + + + Occurs when the user has resized a column. + + + + + Occurs when the grids DataSource has changed. + + + + + Occurs when the dropdown is opened. + + + + + Occurs when the dropdown closes. + + + + + Occurs whenever the grid is about to display a row of data and the FetchRowStyles property is True. + + + + + Occurs when the first displayed row of a control or split is changed. + + + + + Occurs when the user clicks on the column footer. + + + + + Occurs when the grid is about to display cell data in a column whose NumberFormat property is set to the string FormatText Event. + + + + + Occurs when the user clicks on the column header. + + + + + Occurs when the first visible column of a grid or split is changed. + + + + + Occurs when the focus moves to a different row. + + + + + Occurs when the user has finished resizing a grid row. + + + + + Occurs when the user scrolls the grid. + + + + + Occurs when the user selects a different range of rows or columns. + + + + + Occurs when the grid needs to display the value of a cell in an unbound column. + + + + + Occurs when the user attempts to enter invalid data into a column that is using value lists. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Represents operators used in filter conditions. + + + + + Disables the operator. + + + + + Return true if the value equals the operator parameter. + + + + + Return true if the value does not equal the operator parameter. + + + + + Return true if the value is greater than the operator parameter. + + + + + Return true if the value is less than the operator parameter. + + + + + Return true if the value is greater than or equal to the operator parameter. + + + + + Return true if the value is less than or equal to the operator parameter. + + + + + Return true if the string representation of the value contains the operator parameter. + + + + + Return true if the string representation of the value does not contain the operator parameter. + + + + + Return true if the string representation of the value begins with the operator parameter. + + + + + Return true if the string representation of the value ends with the operator parameter. + + + + + Represents a condition within a . + + + Each contains up to two conditions that + can be combined with 'And' or 'Or' operators. + + + + + Clears this condition by setting the to 'None' + and the to null. + + + + + Applies the condition to a given value. + + Value to test. + True if the value satisfies the condition, false otherwise. + + + + Gets a value that indicates whether the condition is active. + + + + + Gets or sets the operator used by this condition. + + + + + Gets or sets the parameter used by this condition. + + + + + Gets or sets the parameter as a string used by this condition. + + + + + Specifies the type of filter to be used for a . + + + + + Filter column using a . + + + + + Filter column by values using a . + + + + + Filter column by conditions using a . + + + + + Filter column using a filter specified by the caller. + + + + + Do not provide a filter for this column. + + + + + + + + + + + + + + + + + + + + + Specifies the language to be used for localizing the control. + + + + + Localize the control to the language specified by the CurrentUICulture. + + + + + Localize the control to Arabic. + + + + + Localize the control to Czech. + + + + + Localize the control to Danish. + + + + + Localize the control to Dutch. + + + + + Localize the control to English. + + + + + Localize the control to Finnish. + + + + + Localize the control to French. + + + + + Localize the control to German. + + + + + Localize the control to Greek. + + + + + Localize the control to Hebrew. + + + + + Localize the control to Italian. + + + + + Localize the control to Japanese. + + + + + Localize the control to Norwegian. + + + + + Localize the control to Polish. + + + + + Localize the control to Portuguese. + + + + + Localize the control to Russian. + + + + + Localize the control to Slovak. + + + + + Localize the control to Spanish. + + + + + Localize the control to Swedish. + + + + + Localize the control to Chinese (simplified). + + + + + Localize the control to Turkish. + + + + + Base class for splits. + + + + + + + + + Releases the resources used by the view. + + + + + Releases the resources used by the view. + + + + + + + Returns the string that represents the current object. + + + + + + + Returns the style associated with a given cell. + + Row to fetch the style for. + Column to fetch the style for. + The text of the cell. + + + + + + Returns a value indicating whether a line should be rendered for a given row and column. + + The row index. + The column index. + + + + + + Raised when the scrollbar visibility changes. + + The scrollbar object. + The new visible state. + + + + + + + + + + + + + + + + + + + + Notifies what curent row or column is changed. + + + + + + + + + + + + + + + + + + + + + + + + + + + autosizes the height of the given row + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Performs internal reset. + + + + + + + + + + + + + + + + + checks to see if the mouse is over a 3d element + + + + + + + Called when C1DisplayColumn properties have been changed. + + + + + + + + + + + + + + + + + + + + + + + + + + + creates a datasource from the valueitems so for the internal combobox. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets an XML string containing the current filter state. + + + + + potential properties + + + + + + + + + Gets or sets the type of border rendered for a split. + + + + + Base class for typeconverter. + + + + + Returns an object from it's string representation. + + + + + + + + + Returns a string representation from a given object. + + + + + + + + + Returns true if the source type is string. + + + + + + + + + + + Returns true of the type of string. + + + + + + + + + + + Overloaded. Returns whether this converter can convert an object of one type to the type of this converter. + + + + + + + + + + + + + Overloaded. Converts the given value object to the specified type. + + + + + + + + + + + + + + + Typeconverter for bitmaps. Used for serialization. + + + + + Override. Returns the object given a string. + + + + + + + + + Override. Returns a string given an object. + + + + + + + + + Expandable object converter that doesn't handle strings. + + + + + Overloaded. Returns whether this converter can convert an object of one type to the type of this converter. + + + + + + + + + + + Overloaded. Returns whether this converter can convert the object to the specified type. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Converts from. + + The CTX. + The ci. + The obj. + + + + + + Defined the relationship of a column. + + + + + Column is not related. + + + + + Column is the parent. + + + + + Column is the child. + + + + + Represents a column that defines binding information for the datasource. + + + + + Creates a new instance of this object. + + + + + Creates a new instance of this object. + + The column caption. + The data type. + + + + Creates a new instance of this object. + + The column caption. + The field from the data source. + The data type. + + + + + + + + + + Resets ButtonPicture to its default value. + + + + + Resets FilterButtonPicture to its default value. + + + + + Gets the display value for a cell in a given row. + + The row to fetch. + The display value. + + + + Gets the cell value for a given row. + + The row to fetch. + The underlying data from the data source. + + + + Invalidate the current column in all visible rows. + + + + + Invalidates the current cell. + + + + + Invalidates the cell at the given row. + + Row to invalidate. + + + + Repopulate the entire grid from the data source. + + + + + Repopulates the current cell from the data source. + + + + + Repopulates the specified data from the data source. + + The row to refetch. + + + + Gets or sets the level of this column in a hierarchical data source. + + + + + + + + + + + + + Gets or sets the type of aggregate computed for a grouped row. + + + + + Gets or sets the image shown in a drop-down button in a column. + + + + + Index of button picture. + + + + + Tag of button picture. + + + + + Gets or sets the text in the column header. + + + + + Gets or sets a value indicating whether data in this column has been modified. + + + + + Gets or sets the database field name for a column. + + + + + Gets or sets the type of object stored for a column. + + + + + + + + + Gets or sets the maximum number of characters which may be entered for cells in this column. + + + + + Gets or sets the default value for a column when a new row is added by the grid. + + + + + Gets or sets the edit mask for a column. + + + The property allows an input mask to be specified for automatic input formatting and validation. The mask syntax is similar to the one used by Microsoft Access. Setting the input mask for a column will prevent the user from entering any information in the cell that is not in the format of the string. + The must be a string composed of the following symbols: + + Wildcards + + + + 0 + Digit. + + + 9 + Digit or space. + + + # + Digit or sign. + + + L + Letter. + + + ? + Letter or space. + + + A + Letter or digit. + + + a + Letter, digit or space. + + + & + Any character. + + + + Localized characters + + + + . + Localized decimal separator. + + + , + Localized thousand separator. + + + : + Localized time separator. + + + / + Localized date separator. + + + + Command characters + + + + \ + Next character is taken as a literal. + + + > + Translate letters to uppercase. + + + < + Translate letters to lowercase. + + + + + + + Gets or sets a value indicating whether literal characters in the edit mask are stored to the underlying data source. + + + + + Gets or sets the editor that is used to edit cell data. + + + + + Gets or sets a value indicating whether a DateTime picker is used to edit this column. + + + + + Gets or sets the image shown as the column's filter button. + + + + + + + + + Gets or sets the key used to initiate the filtering operation as the user types in the filterbar. + + + + + Gets the number of values in the filter drop-down list. + + + + + Gets or sets the text displayed in the column footer. + + + + + Gets or sets the characters that should be ignored when applying the filter criteria to the datasource. + + + + + Gets or sets the operator that is used for a filter expression. + + + + + Gets or sets the data associated with the value of the filter for a column. + + + + + Specifies the text that is rendered in an empty cell in the Filterbar. + + + + + Gets or sets a value indicating whether a drop-down list is displayed in the filter cell that lists all the values of the field. + + + + + Gets or sets the value indicating All when the FilterDropdown property is True. + + The filter dropdown text. + + + + Gets or sets a value indicating whether multiple values can be selected in the filter drop-down list. + + If FilterMultiSelect is true then the user is able to enter several values using comma separator. + + + + Gets or sets a character used to separate values in the filter drop-down list when multiple values are selected. + + + + + Gets or sets the text of Apply button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Gets or sets the text of Cancel button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Gets or sets the text of Clear button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Specifies the ImeMode used to edit this column. + + + + + Gets or sets the formatting string for a column. + + + + + Gets the object for this column. + + + + + Gets or sets the display value for the current cell. + + + + + Gets or sets the value of the current cell. + + + + + Gets or sets a user defined objects associated with this column. + + + + + Gets or sets a user defined object associated with this column. + + + + + Gets or sets the state of the sorting glyph in the column caption bar. + + + + + Gets or sets the associated with this column. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an object used to render grid elements. + + + + + Creates a new instance of this object. + + + + + Called when the class is being disposed. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + Renders the given string using the style properties. + + Graphics object to render too. + Rectangle to render in. + String to render. + + + + Renders the given string using the style properties. + + Graphics object to render too. + Rectangle to render in. + String to render. + The draw flags. + + + + Reset BackColor to its default value. + + + + + Resets ForeColor to its default value. + + + + + Resets Font to its default value. + + + + + Resets HorizontalAlignment to its default value. + + + + + Resets VerticalAlignment to its default value. + + + + + Resets BackgroundPictureDrawMode to its default value. + + + + + Resets the BackgroundImage to its default value. + + + + + Resets ForGroundImagePosition to its default value. + + + + + Resets ForegroundImage to its default value. + + + + + Resets Locked to its default value. + + + + + Resets WrapText to its default value. + + + + + Resets Trimming to its default value. + + + + + Resets all specialized attributes. + + + + + Gets the associated with this Style. + + + + + Gets or sets the background color associated with a Style. + + + + + Gets or sets the background color associated with a Style. + + + + + Gets or sets a value indicating whether gamma correction is enabled when a linear gradient style is rendered. + + + true if gamma correction is enabled; otherwise, false. + + + + Gets or sets the direction of a linear gradient. + + The gradient mode. + + + + Gets or sets the alpha component when the style is rendered. + + + + + Gets or sets the foreground color associated with a Style. + + + + + Gets or sets the Font associated with a Style. + + + + + Gets or sets the horizontal text alignment. + + + + + Gets or sets the vertical text alignment. + + + + + Gets or sets the rendering method for a . + + + + + Gets or sets the background image associated with a Style. + + + + + Gets or sets the position that the ForGroupImage is rendered. + + + + + Gets or sets the foreground image associated with a style. + + + + + Gets or sets a value indicating whether data entry is permitted for the assocated object. + + + + + Gets or sets a value indicating whether text is word-wrapped when it does not fit into a layout shape. + + + + + Gets or sets the name of the Style. + + + + + Gets or sets the trim characters for a string that does not completely fit into a layout shape. + + + + + Gets or sets the spacing between cell content and its edges. + + + + + Represents the border in a + + + + Gets or sets the type of border. + + + + + Gets or sets the width of the left border. + + + + + Gets or sets the width of the right border. + + + + + Gets or sets the width of the top border. + + + + + Gets or sets the width of the bottom border. + + + + + Gets or sets the color of the border. + + + + + Represents an object that defines how cells are rendered. + + + + + Returns a that represents the current . + + + A that represents the current . + + + + + Gets or sets a value indicating whether both Value and Display Value are rendenered when Display value is an image. + + + + + Gets or sets a value indicating whether users can cycle through by clicking on a cell. + + + + + Gets or sets the index of the default or -1 for no default. + + + + + Gets or sets the maximum number of visible rows in the combobox. + + + + + Gets or sets the method in which cells are rendered. + + + + + Gets or sets a value indicating whether data values are translated using matching . + + + + + Gets or sets a value indicating whether values entered by the user must match on of the objects. + + + + + Gets the collection of Value/Display Value pairs. + + + + + + + + + Represents a collection of objects. + + + + + Initializes a new instance of the class. + + + + + Adds a to the end of the collection. + + The ValueItem to add. + The index at which the ValueItem has been added. + + + + + + + + + + + + Inserts a at the specified index. + + The zero-based index at which the ValueItem should be inserted. + The ValueItem to insert. + + + + Gets the index of the specified . + + The ValueItem to search. + The index of the ValueItem. + + + + Gets or sets the specified from the collection at the specified index. + + + + + Represents an object that defines a value/display value pair. + + + + + Initializes a new instance of the ValueItem class. + + + + + Initializes a new instance of the ValueItem class. + + Underlying data value. + Translated value. + + + + Returns a string that represents the current object. + + + + + + + Gets or sets the raw (untranslated) value of this item. + + + + + Gets or sets the display value of this item. + + + + + + + + + + + + + Represents the columns in a split. + + + + + Releases the resources used by the component. + + + + + Returns a that represents the current . + + + A that represents the current . + + + + + Releases the resources used by the component. + + + + + + + + + + + Gets the filter expression for the column. + + The filter expression for the column + Use this method in your implementations of custom filtering. + Example shows how to build a row filter using method. + "" Then + If sb.ToString() <> "" Then + sb.Append(" AND ") + End If + sb.Append(cond) + End If + + Next dc + ' filter the data + Me.DataSet11.Tables(0).DefaultView.RowFilter = sb.ToString() + End Sub]]> + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Adjusts the width of a column to accommodate the longest visible field within that column. + + + + + Gets or sets a value indicating whether the dropdown opens automatically when a key is typed. + + + + + Gets or sets a value indicating whether the dropdown auto fills the edit portion with the matched entry. + + + + + Gets the vertical offset of the top of the cell for the current row. + + + + + Gets or sets a value indicating whether the dropdown acts like a dropdown list (text portion is not editable). + + + + + Gets or sets the that controls the appearance of the column headers. + + + + + Gets or sets the root for this column. + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the used for the cell editor. + + + + + Gets or sets the used to render the cell in the grouped header row. + + + + + Gets or sets the used to render the cell in the grouped footer row. + + + + + Gets or sets a value indicating the visibility of a column. + + + + + Gets or sets the style of the border drawn between columns. + + + + + Gets or sets the width of a column. + + + + + Gets or sets the height of the column. + + + + + Gets or sets a value indicating the ability of a column to receive focus. + + + + + Gets or sets a value indicating whether editing is permitted in a column. + + + + + Gets or sets a value indicating whether contiguous like-value cells of this column are merged into one large cell. + + + + + Gets or sets a value indicating whether this is frozen. + + + true if frozen; otherwise, false. + + + + Gets or sets a value indicating whether column resizing is allowed. + + + + + Gets or sets a value indicating whether cells in this column look like buttons. + + + + + Gets or sets a value indicating whether buttons will be displayed when the cell does not contain focus. + + + + + Gets or sets a value indicating whether a dropdown button will be displayed in this column. + + + + + Gets or sets a value indicating whether a dropdown button will be displayed in this column. + + + + + Gets or sets the minimum width a column can be resized to when in . + + + + + Gets or sets a value indicating whether to display the column divider in the header area. + + + + + Gets or sets a value indicating whether to display the column divider in the footer area. + + + + + Gets or sets a value indicating whether the FetchCellStyle event will be raised for a column. + + + + + Gets or sets a value indicating whether a column header will act like a button. + + + + + Gets or sets a value indicating whether a column footer will act like a button. + + + + + Gets or sets a value indicating whether cells in this column are drawn by the user in the OwnerDrawCell event. + + + + + Gets the associted associated with this object. + + + + + + + + + Gets the caption of the associated objects. + + + + + Enumerates the type of changes made to a display column for event listeners + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TypeConverter for the GridLines object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Froms the STR. + + The STR. + + + + + + + + + + + + + + + + Represents the line used for row and column dividers. + + + + + Creates a new instance of this object. + + + + + Gets or sets the color of lines used for row and column dividers. + + + + + Gets or sets the style of lines used for row and column dividers. + + + + + + + + + Initializes a new instance of the class. + + + + + Gets or sets the width. + + The width. + + + + Gets or sets the border3D style. + + The border3D style. + + + + Represents a collection of ViewRow objects. + + + + + Performs additional custom processes when clearing the contents of the instance. + + + + + Performs additional custom processes when removing an element from the instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Owner of the row list. + + + + + Gets or sets the at the specified index. + + + + + Represents a row in a split. + + + + + Adjust the size of the row to fully display cell data. + + + + + Gets or sets the visiblity of a row. + + + + + Gets the type of row. + + + + + Gets or sets the height of a row. + + + + + Gets or sets the width of a row. + + + + + Gets index of the row in data source. + + + + Returns -1 if there is not corresponding data row. + For example, for a group row. + + + Use DataRowIndex property to translate view row index to data row index. + + + + + private void c1TrueDBGrid1_FetchCellStyle(object sender, C1.Win.C1TrueDBGrid.FetchCellStyleEventArgs e) + { + ViewRow row = this.c1TrueDBGrid1.Splits[0].Rows[e.Row]; + if (row.RowType == RowTypeEnum.DataRow) + { + bool val = (bool)this.c1TrueDBGrid1[row.DataRowIndex, 3]; + if (val == true) + e.CellStyle.BackColor = Color.Red; + } + } + + + + + + Represents a horizontal or vertical pane to display and edit data. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The f. + + + + Initializes a new instance of the class. + + The other. + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + + + + + + + + + + + Draws the filter cell. + + The instance containing the event data. + The col. + + + + + + + + + + + + + + + + returns true if the data at the given row is the same as the passed in string + + + + absolute row number + + + + + + + + + + Called when C1DisplayColumn properties have been changed. + + + + + Returns the upper and lower bounds for a merged column. + + Starting row + Starting colum. + The CellRange object that defines the rows and columns for a merged cell. + + + + Exits editing mode. + + + + + + + short circuits exiting the editor on row change when actively filtering + + + + + + + + + + + + + + + + + + + + + + + + + + + Adds the row. + + The newrow. + + + + Deletes the rows. + + + + + Gets the drop down for the current column if one exists. + + + + + + + Determines whether we have an internal combo. + + + true if combo is not a valueitem otherwise, false. + + + + + Determines whether this instance has combo. + + + true if this instance has combo; otherwise, false. + + + + + Creates the internal dropdown for use in the filterbar. + + + + + + + Sets the flat mode. + + The mode. + + + + + + + + + + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Returns the Rectangle for the given Row and Column + + Visible row number + Visible column index + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets a value indicating whether the split can recive focus. + + + + + Gets or sets a value indicating the ability to move columns. + + + + + Gets or sets a value indicating the ability to select columns. + + + + + Gets or sets a value indicating the ability to select rows. + + + + + Gets or sets the name of a split. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether a user is allowed to resize horizontal splits. + + + + + Gets or sets a value indicating whether a user is allowed to resize vertical splits. + + + + + Gets or sets a value indicating whether the split uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets the caption. + + + + + Gets or sets the height of the caption. + + + + + Gets or sets the height of the column captions. + + + + + Gets or sets the height of column footers. + + + + + Gets or sets a value indicating the visibility of the current cell in a split. + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the split. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets a value indicating whether the filter bar has focus. + + + + + Gets or sets a value indicating the visibility of the FilterBar. + + + + + Gets or sets the filter border style. + + The filter border style. + + + + Gets or sets the row index for the first visible row in a split. + + + + + Gets or sets the left most visible column for a split. + + + + + Gets or sets the MarqueeStyle for a Split. + + + + + Gets or sets a value indicating if the cells of a split can be edited. + + + + + Gets or sets the width of the row headers. + + + + + + + + + Gets or sets a value indicating the visibility of row headers for Split. + + + + + Gets the collection of Rows displayed in the Split. + + + + + Gets or sets the group which synchronizes verticall scrolling between splits. + + + + + Gets or sets the minimum width that a split can be interactively resized. + + + + + Gets or sets the minimum height that a split can be interactively resized. + + + + + Gets or sets the group which synchronizes horizontal scrolling between splits. + + + + + Gets or sets the position of the Horizontal scrollbar. + + + + + Gets or sets the position of the Vertical scrollbar. + + + + + Gets or sets a value that determines how columns will resize when the grid is resized. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets the size of a split. + + + + + Gets or sets the height of a split. + + + + + Gets or sets a value indicating how the property is used to determine the actual size of a split. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Gets or sets the object that controls the appearance of the cell editor within a grid. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the current row/cell when the is set to Highlight Row/Cell. + + + + + Gets or sets the object that controls the grids caption when it doesn't have focus. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of selected rows and columns. + + + + + Gets or sets the root object for the Split. + + + + + Gets a collection of objects. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the struct. + + The row. + The col. + + + + Initializes a new instance of the struct. + + The row1. + The col1. + The row2. + The col2. + + + + Determines whether the range is a single cell. + + + true if [is single cell]; otherwise, false. + + + + + Represents a collection of named . + + + + + + + + + + + + + + + + + + + Adds a to the end of the collection. + + The Style to add. + The index at which the has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the Style should be inserted. + The Style to insert. + + + + Gets the index of the specified . + + + + The index of the Style. + + + + Removes the at the specified index. + + Teh zero-based index of the Style to remove. + + + + Gets the specified Style from the collection given its index. + + + + + Gets the specified Style from the collection given its name. + + + + + Represents a collection of in a . + + + + + Inserts a at the specified index. + + The zero-based index at which the C1DisplayColumn should be inserted. + The C1DataColumn to insert. + + + + Gets the index of the . + + + + The index of the C1DisplayColumn. + + + + Gets the index of the specified by the . + + + + The index of the C1DisplayColumn. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the specified from the collection at the specified index. + + + + + Gets the specified from the collection wich contains the specified . + + + + + Gets the specified from the collection with the specified name. + + + + + Contains a collection of objects. + + + + + + + + + + + + + Removes all elements from the collection. + + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Gets the index of the specified . + + + + The index of the the C1DataColumn. + + + + Gets the index of a with the specified DataField. + + + + The index of the the C1DataColumn. + + + + Gets the specified C1DataColumn from the collection at the specified index. + + + + + Gets the specified C1DataColumn from the collection with the specified name. + + + + + Contains a collection of objects that represent columns that are selected. + + + + + Removes all elements from the collection. + + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Contains a collection of objects that represent columns that are grouped. + + + + + Removes all elements from the collection. + + + + + Exchanges the C1DataColumn objects at the specified index. + + The zero-based index of the first C1DataColumn. + The zero-based index of the second C1DataColumn. + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Represents a collection of Selected rows. + + + + + Removes all elements from the collection. + + + + + Removes the row at the specified index. + + The zero-based index of the row to remove. + + + + Adds a row to the end of the collection. + + Row number to add. + The index at which the row has been added. + + + + Inserts a row at the specified index. + + The zero-based index at which row should be inserted. + The row to insert. + + + + Gets the index of the specified row. + + + + The index of the row. + + + + Gets or sets the specified Row index from the collection. + + + + + Represents a collection of Split objects. + + + + + This interface is used to allow objects and collection to serialize + types of their members in a custom way. + If a collection implements this interface, TypeToString is invoked during + serialization of collection items, and for all items for which it returns a + non-null string, that string is used as the element name of the item. + If a class implements this interface, AND a member of that class has + attribute TypeNameSerialization.Custom, AND does not have attribute + XmlAttribute (i.e. is serialized as an element), TypeToString is invoked + on the owner when that member is serialized, and if that returns a non-null + string, that string is used as the value of TypeName attribute. + When deserializing a collection which implements this interface, + StringToType is invoked for each new item in the collection, and if that + returns a non-null type, that type is used to create the item. Otherwise, + TypeNameSerialization attribute is used. + When deserializing a class which implements this interface, StringToType + is invoked on that class for members with TypeNameSerialization.Custom + attribute set. + + + + + Returns a string representing the type of the object + + + + + Returns the type restored from the serialized string + + + + + + + + + + + + + Gets the index if the specified Split. + + + + + + + + + Gets the specified Split object from the collection. + + + + + Gets the specified Split object from the collection. + + + + + Gets the specified Split object from the collection. + + + + + Gets the number of vertical splits in the collection. + + + + + Gets the number of horizontal splits in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the glyph used to denote a sort direction in the column header. + + + + + Column is not sorted. + + + + + Column is sorted in ascending order. + + + + + Column is sorted in descending order. + + + + + Specifies the UI behavior for selecting rows and columns. + + + + + Multiple selection is disabled but single selection is permitted. When the user clicks a record selector, the current selection is cleared, and the clicked row is then selected and added to either the SelectedRows or SelectedCols collections. The Ctrl and Shift keys are ignored, and the user can only select one row at a time. + + + + + Multiple selection is enabled using the mouse. When the user clicks a record selector, the selection is cleared and the clicked row is selected and added to either the SelectedRows or Selected Cols collections. However, if the user holds down the Ctrl key while clicking, the clicked row is added to the current selection. The user can also select a range of rows by selecting the first row in the range, then selecting the last row in the range while holding down the Shift key. + + + + + Multiple selection is enabled using the mouse. The user can also select records with the following key combinations: Shift + Up Arrow, Shift + Down Arrow, Shift + PgUp, and Shift + PgDn. NOTE: The user will not be able to select a single cell, instead the entire corresponding row will be selected. + + + + + Specifies how 3D elements are rendered. + + + + + The grid’s column headers and recordselectors are rendered with an inset three-dimensional look + + + + + Three-dimensional elements appear flat + + + + + Three-dimensional elements are flat, but when the user drags the cursor over a column heading or recordselector, they become three-dimensional and appear to pop up. + + + + + Three-dimensional elements uses XP Themes if available. + + + + + Specifies the sizing mode for splits. + + + + + The indicates the relative size of the split with respect to other scalable splits. + + + + + The indicates the size of the split in pixels. + + + + + The indicates the number of columns displayed in the split. + + + + + Specifies the vertical alignment of text or images in a cell. + + + + + Text is rendered at the top of the cell. + + + + + Text is rendered at the center of the cell. + + + + + Text is rendered at the bottom of the cell. + + + + + Specifies the horizontal alignment of text or images in a cell. + + + + + Text is aligned Near and numeric values Far + + + + + Text is aligned to the left. + + + + + Text is aligned centered. + + + + + Text is aligned to the right. + + + + + Text is aligned with respect to the cells boundries. + + + + + Specifies the visibility of ScrollBars. + + + + + ScrollBars are never displayed. + + + + + ScrollBars are always displayed. + + + + + ScrollBars are displayed only if the object's contents extend beyond its borders. + + + + + Specifies the line style for row and column dividers. + + + + + No line. + + + + + Single line. + + + + + Double line. + + + + + Line with 3D raised appearance. + + + + + Line with 3D inset appearance. + + + + + Specifies how the grid displays its data. + + + + + The grid will only display flat files and will not support a hierarchical view. If the data source is a hierarchical dataset, the grid will only display data from the master table. + + + + + Rows will be represented horizontally and columns vertically. + + + + + The data will be displayed in a convenient data entry form. + + + + + A grouping area is created at the top of the grid; any columns that are placed into this area become part of the GroupedColumn collection. When in group mode, grid columns can be moved into or out of the grouping area with the Add and RemoveAt methods, respectively. Users can also perform this action by selecting and dragging a column into or out of the grouping. Users can customize the display of the grouped row with styles and automatically compute aggregates for columns that are grouped. The expanded/collapsed state of the grouping can also be specified. + + + + + The grid will display all the fields in the current grid area with multiple lines. + + + + + The grid will display DataSets in a hierarchical format. At run time, users can expand and collapse hierarchical recordset Bands using a treeview-like interface. + + + + + The grid will display all the fields in the current grid area with multiple lines. The number of subrows does not change once set. The number of subrows can be set using the LinesPerRow property. + + + + + Provides a description of the current addnew state with respect to the current cell. + + + + + The current cell is not on the addnew row. + + + + + The current cell is on the addnew row. + + + + + There is an Add New operation pending. + + + + + Specifies the behavior of the pop-up window when the cursor is idle over the grid. + + + + + No cell tips will be displayed. + + + + + Cell tips will be displayed in the bounding rectable of the cell. + + + + + Cell tips will be displayed under the mouse cursor. + + + + + Specifies how the grid exposes the rightmost column when it gets focus. + + + + + The grid will scroll to the left to display the rightmost column in its entirety. + + + + + The grid will not move when the rightmost column is clicked initially. However, if the user attempts to edit the cell, then the grid will scroll to the left to display the rightmost column in its entirety. + + + + + The grid will always leave the rightmost column clipped. + + + + + Specifies the location of the foreground image in a cell. + + + + + Image is rendered in the near side of the cell. + + + + + Image is rendered in the far side of the cell. + + + + + Image is rendered to the left of any text in the cell. + + + + + Image is rendered to the right of any text in the cell. + + + + + Image is rendered on top of any text in the cell. + + + + + Image is rendered below any text in the cell. + + + + + Text is not displayed. + + + + + Image is not displayed. + + + + + Specifies how the background image is rendered. + + + + + The image is rendered in the center of the cell. + + + + + The image is tiled in the cell. + + + + + The image is stretched to fit within the cell. + + + + + Specifies how rows can be resized. + + + + + Row can not be resized. + + + + + All rows will be sized to the same height or width. + + + + + Rows can be sized indepentently. + + + + + Specifies which rows are to be previewed/printed. + + + + + All rows are to be previewed/printed. + + + + + Only selected rows will be previewed/printed. + + + + + Only the current row will be previewed/printed. + + + + + Specifies the type of ui-element for a coordinate. + + + + + Coordinates are not in the grid. + + + + + Coordinates are in the caption area + + + + + Coordinates are in the split's header + + + + + Coordinates are in the split's resizing box + + + + + Coordinates are in the row selector. + + + + + Coordinates are in the row resizing box. + + + + + Coordinates are in the column headers. + + + + + Coordinates are in the column footers. + + + + + Coordinates are in the column resizing box. + + + + + Coordinates are in the data area. + + + + + Coordinates are in the grouping area. + + + + + Coordinates are in the group header. + + + + + Coordinates are in the empty row area. + + + + + Coordinates are in the addnew row. + + + + + Coordinates are in the empty column area. + + + + + Coordinates are in the filter bar. + + + + + Specifies how ValueItems are rendered. + + + + + Values are displayed as text or graphics. + + + + + Values are displayed as a group of Radio Buttons. + + + + + Values are displayed as a dropdown combobox. + + + + + Values are displayed as a dropdown combobox in sorted order. + + + + + Values are displayed as a checkbox. + + + + + Specifies how focus is handled when the Tab key is entered. + + + + + The tab key moves to the next or previous control on the form. + + + + + The tab key moves the current cell to the next or previous column. However, if this action would cause the current row to change, then the next or previous control on the form receives focus. + + + + + The tab key moves the current cell to the next or previous column. The behavior of the tab key at row boundaries is determined by the property. When this setting is used, the tab key never results in movement to another control. + + + + + Specifies the borders for a . + + + + + No borders. + + + + + Borders have a Flat appearance. + + + + + Borders have a 3D raised appearance. + + + + + Borders have a 3D inset appearance. + + + + + A line around the inside of the border. + + + + + A fillet type border. + + + + + Borders have a 3D raised with a bevel. + + + + + Borders have a 3D inset with a bevel. + + + + + Specifies which cell gets focus when the enter key is pressed. + + + + + Cell currency doesn't change. + + + + + The next cell will be the cell to the right of the current cell. + + + + + The next cell will be the cell below the current cell. + + + + + The next cell will be the cell to the left of the current cell. + + + + + The next cell will be the cell above the current cell. + + + + + Describes the disposition of a cell. + This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values. + + + + The cell satisfies none of the conditions. For grouped rows, this is the only applicable cell style. + + + + + The cell is the that currently has focus. At any given time, only one cell can have this status. When the MarqueeStyle property is set to Floating Editor, this condition is ignored. + + + + + The cell is part of a highlighted row marquee. When the MarqueeStyle property indicates that the entire current row is to be highlighted, all visible cells in the current row have this additional condition set. + + + + + The cell contents have been modified by the user but not yet written to the datasource. This condition is also set when cell contents have been modified in code with the Text or Value properties. + + + + + The cell is part of a row selected by the user or in code. The SelectedRowCollection contains the index for each selected row. + + + + + All cells. + + + + + Specifies how the current cell is highlighted. + + + + + The current cell within the current row will be highlighted by drawing a dotted border around the cell. In Microsoft Windows terminology, this is usually called a focus rectangle. + + + + + The current cell within the current row will be highlighted by drawing a solid box around the current cell. This is more visible than the dotted cell border, especially when 3D divider properties are used for the grid. + + + + + The entire current cell will be drawn using the attributes of the HighlightRowStyle property. This provides a very distinctive block-style highlight for the current cell. + + + + + The entire row containing the current cell will be drawn using the attributes of the HighlightRowStyle property. In this mode, it is not possible to visually determine which cell is the current cell, only the current row. When the grid or split is not editable, this setting is often preferred, since cell position is then irrelevant. + + + + + The entire row will be highlighted as in setting 3, but the current cell within the row will be "raised" so that it appears distinctive. This setting does not appear clearly with all background color and divider settings. The best effect is achieved by using 3D dividers and a light gray background. + + + + + The marquee will not be shown. This setting is useful for cases where the current row is irrelevant, or when not wanting to draw the user's attention to the grid until necessary. + + + + + The current cell will be highlighted by a floating text editor window with a blinking caret (as in Microsoft Access). + + + + + The entire current row will be highlighted by drawing a dotted border around it. This effect is similar to setting 0. + + + + + Identifies the type of scrollbar. + + + + + The Horizontal scrollbar. + + + + + The Vertical scrollbar. + + + + + Identifies the type of row. + + + + + Row is a datarow. + + + + + Row is a collapsed group row. + + + + + Row is an expanded group row. + + + + + Row is a footerrow. + + + + + Row is a childrow. + + + + + Specifies the initial expanded or collapsed state of a grouped row. + + + + + Grouped rows initial display is collapsed (default). + + + + + Grouped rows initial display is expanded. + + + + + Specifies how the grouped column should be displayed. + + + + + Grouped columns contain just a header row (default). + + + + + Grouped columns contain a header and footer row. + + + + + Grouped columns contain a header and footer row, but aggregates are shown only in the footer row. + + + + + Specifies the type of aggregate that is computed for a grouped row. + + + + + No aggregate is calculated or displayed. + + + + + Count of non-empty values. + + + + + Sum of numerical values. + + + + + Average of the numerical values. + + + + + Minimum value (numerical, string, or date). + + + + + Maximum value (numerical, string, or date). + + + + + Standard deviation (using formula for Sample, n-1). + + + + + Standard deviation (using formula for Population, n). + + + + + Variance (using formula for Sample, n-1). + + + + + Variance (using formula for Population, n). + + + + + Causes the GroupAggregate event to be raised. + + + + + Specifies the width of a C1TrueDBDropdown for a cell. + + + + + The width of the dropdown is the control width. + + + + + The width of the dropdown is the column width. + + + + + Specifies how columns are merged. + + + + + + + + + + + + + + + + + Specifies the type of gradient. + + + + + + + + + + + + + + + + + + + + + + + + + Specifies how rows are grouped. + + + + + Rows are grouped by their values. + + + + + Rows are grouped by the date portion of their values. + + + + + Rows are grouped by the month portion of their values. + + + + + Rows are grouped by the year portion of their values. + + + + + Rows are grouped by the first character of their values. + + + + + Rows are grouped according to their date values. + + + + + Rows are grouped by raising the event. + + + + + Raised before an action is performed on the grid and the action can be canceled. + + + + + Provides data for the , , , , , , , , and events. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Provides data for the event. + + + + + Gets the current scroll position. + + + + + Gets the new scroll position. + + + + + Raised before a column enters edit mode. + + + + + Provides data for the BeforeColEdit event. + + + + + Gets or sets a value indicating that editing should be disallowed. + + If event procedure sets the Cancel argument to True, the cell will not enter edit mode. Otherwise, the ColEdit event is raised immediately, followed by the Change event for the KeyChar property, if non-zero. + + + + Indicates the character that initiated the editing operation. + + The BeforeColEdit event occurs just before the user enters edit mode by typing a character. If a floating editor marquee is not in use, this event also occurs when the user clicks the current cell or double clicks another cell. + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn for the column being edited. + + + + + Raised after editing is completed in a cell. + + The BeforeColUpdate event occurs after editing is completed in a cell, but before data is moved from the cell to the grid's internal copy buffer. + The data specified by the OldValue argument moves from the cell to the grid's copy buffer when the user completes editing within a cell, as when tabbing to another column in the same row, pressing the Enter key, or clicking on another cell. Before the data has been moved from the cell into the grid's copy buffer, the BeforeColUpdate event is triggered. This event gives the application an opportunity to check the individual grid cells before they are committed to the grid's copy buffer. + If your event procedure sets the Cancel argument to True, the previous value is restored in the cell, the grid retains focus, and the AfterColUpdate event is not triggered. Change the current cell text by setting OldValue to the value wanted to display (other than the previous value). + To restore OldValue in the cell and permit the user to move focus off of the cell, set Cancel to False and set the cell to OldValue as follows: + + + + Provides data for the BeforeColUpdate event. + + + + + Gets or sets a value that prevents the user from moving focus to another cell. + + + + + Gets or sets the value of the original cell data. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn for the column being edited. + + + + + Raised after a column has been resized. + + + + + Provides data for the ColReisize event. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets or sets a value indicating that sizing should be ignored. + + + + + Gets the C1DisplayColumn for the column being sized. + + + + + Raised when an action is perfored on a column. + + + + + Provides data for the , , , , , , , , and events. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn. + + + + + Raised when grouping columns. + + + + + Provides data for the event. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The C1DataColumn that was clicked. + + + + + Raised when a cell is to rendered by the event code. + + + + + Provides data for the and events. + + + + + The bounding rectangle for the cell that needs to be rendered. + + + + + The index of the row for the cell being rendered. + + + + + The index of the split for the cell being rendered. + + + + + The index of the column in the DisplayColumns collection. + + + + + The GDI+ graphics object to render on. + + + + + The text of the cell. + + + + + The Style used to render the cell. + + + + + Indicates whether the event code rendered the cell. + + + + + The C1DisplayColumn being rendered. + + + + + Indicates whether the custom renderer handles the background, border or content. + + + + + Raised when custom page headers and footers need to be rendered. + + + + + Provides data for the and events. + + + + + The object used to render the custom header or footer + + + + + Raised after the current Row or Column changes. + + + + + Provides data for the event. + + + + + The previous row index. + + + + + The previous column index of the DisplayColumns collection. + + + + + Raised when an unbound column needs to be rendered. + + + + + Provides data for the event. + + + + + The index of the row. + + + + + Indicates the position in the Columns collection. + + + + + The object. + + + + + Gets or sets the value of the Column. + + + + + Raised when Split specific actions are performed. + + + + + Provides data for the and events. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Raised when a cell needs custom formatting. + + + + + Provides data for the FromatText event. + + + + + Indicates the position in the Columns collection. + + + + + The row index for the cell to be formatted. + + + + + The value to format. + + + + + The object. + + + + + Raised when the used to render a cell needs customization. + + + + + Provides data for the event. + + + + + The sum of one or more constants describing the disposition of the cell being rendered. + + + + + Indicates the position in the Splits collection. + + + + + The index of the row for the cell being rendered. + + + + + The index of the column in the DisplayColumns collection. + + + + + The Style used to render the cell. + + + + + The C1DisplayColumn being rendered. + + + + + Provides data for the event. + + + + + Value that the data is being grouped on. + + + + + First row index that is being grouped. + + + + + Last row index that is being grouped. + + + + + Raised when the used to render a row needs customization. + + + + + Provides data for the event. + + + + + Indicates the position in the Splits collection. + + + + + The index of the row for the cell being rendered. + + + + + The Style used to render the row. + + + + + Raised when a column is being repositioned. + + + + + Provides data for the event. + + + + + Indicates the target index of the column being moved. + + + + + Indicates the starting position in the DisplayColumns collection. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Gets the C1DisplayColumn that is being moved. + + + + + Raised when a column is moved into or out of the grouping area. + + + + + Provides data for the event. + + + + + The C1DataColumn for the column being moved. + + + + + Raised when cell tips are to be displayed. + + + + + Provides data for the event. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The index of the row for the cell tip. + + + + + The text to be displayed in the cell tip. + + + + + Indicates if the contents of the cell is fully displayed. + + + + + The Style used to render the cell tip. + + + + + The C1DisplayColumn that this tip is associated with. + + + + + Raised when a hierarchical node is expanded or collapsed. + + + + + Provides data for the and events. + + + + + Indicates the recordset level that holds the current row within a master-detail hierarchy. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Raised when scroll tips are to be displayed. + + + + + Provides data for the event. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The index of the topmost row for the scroll tip. + + + + + Indicates the scrollbar that was moved. + + + + + The text to be displayed in the scroll tip. + + + + + The Style used to render the scroll tip. + + + + + The current C1DisplayColumn. + + + + + Raised when the grid is sorted or filtered. + + + + + Provides data for the , , , and + + + + The filter or sort condition. + + + + + Raised when an excpetion is thrown via the UI. + + + + + Provides data for the event. + + + + + The exception which caused the Event to be raised. + + + + + True if the exception has been handled. + + + + + True to continue as if no exception was raised. + + + + + Raised when text is grouped. + + + + + Provides data for the event. + + + + + Custom text for the grouped row. + + + + + Value that the data is being grouped on. + + + + + Column that is being grouped. + + + + + Type of row being grouped. + + + + + First row index that is being grouped. + + + + + Last row index that is being grouped. + + + + + Raised when text is grouped. + + + + + Provides data for the event. + + + + + Underlying value of the row being grouped. + + + + + Column that is being grouped. + + + + + Row index that is being grouped. + + + + + Object that represents a groupby split. + + + + + Gets the type of row. + + + + + Gets the text that is being grouped. + + + + + Gets the level of the grouping. + + + + + Gets the starting row index of the datasource that belong to this group. + + + + + Gets the ending row index of the datasource that belong to this group. + + + + + Gets the number of rows that belong to this group. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Interface used to provide feedback and the ability to cancel potentially long operations + + + + + + + + + + + + + + + + + + + + + + + + + + + Simple stack with indexed access, based on System.Collections.ArrayList + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + General purpose pair class. (Should be moved to gp utils.) + + + + + + + + + + + + + + + + + + + + + + + + + Attribute used to specify which properties get serialized when saving layouts. + + + + + Attribute used to specify which properties get serialized when saving layouts. + + + + + Determines how item types are serialized + + + + + Item type is not serialized (this is the default) + + + + + Item type is serialized as a fully qualified name + + + + + Item type is serialized as a fully qualified name and assembly name + + + + + Use owner's IMemberTypeEncoder for members + (for collection items, this is done automatically). + + + + + Helper class for implementors of IMemberTypeEncoder + + + + + + + + + + + + + + + + + + + + + Forces the serializer to serialize the type name of a property or field + + + + + + + + + + + + + + + + + + + + + This attribute allows to specify collection's element type name + (in that case there is no need to store it). + + + + + + + + + + + + + + + Serializes and deserializes objects into and from XML. + + + All the methods in this class are static (Shared in Visual Basic). + You cannot create an instance of this class. + + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + DOES NOT close the underlying stream. Useful for copying objects. + Caller is responsible to call out writer.Close() to close writer and underlying stream. + + The Stream used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + The XmlWriter object reference. Call writer.Close after working with stream/writer. + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + + The Stream used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified XmlWriter + + The XmlWriter used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + DOES NOT close the underlying stream. Useful for copying objects. + Caller is responsible to call out writer.Close() to close writer and underlying stream. + + The Stream used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + The XmlWriter object reference. Call writer.Close after working with stream/writer. + + + + + + + + + + + + + + + + + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + + The Stream used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified XmlWriter + + The XmlWriter used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + Array of attributes that specify what to serialize + + + + Serializes the specified object to an XML formatted string. + + + + + + + + + + + + + Deserializes an XML-document instance + + The Stream containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Deserializes an XML-document instance + + The XmlReader containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Deserializes object + + The XmlReader containing the XML-document instance to deserialize + The Object being deserialized + The type of object being deserialized + The type of array elements (in case the object is an array) + The Object being deserialized + + + + Deserializes an XML document string + + + + + + + + + + + Deserializes text of element or attribute into object of appropriate type + + The XmlReader containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Sets or returns the object implementing IOnLongOpInProgressProvider interface + (can be used to provide visual feedback to the user during serialization). + + + + + Gets or sets a value indicating whether all the values are to be persistent. + + + + + Sets or returns formatting used by the XML writer. + + + + + Sets or returns indentation used by the XML writer. + + + + + Sets or returns serialization of non-public properties. If true non-public properties + are included, but are hidden by default. Public properties are always visible by default. + + + + + + + + + Initializes a new instance of the class. + + + + + Raises the event. + + + + + Raises the event. + + + true if this object can be changed; otherwise, false. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + + A service object of type . + -or- + null if there is no service object of type . + + + + + Gets the container representing this request. + + + + + Gets the object that is connected with this type descriptor request. + + + + + Gets the that is associated with the given context item. + + + + + The that describes the given context item; otherwise, null if there is no responsible for the call. + + + + + GroupInfo + Property of the C1DataColumn object, used to control grouping and + rendering of group headers and footers + + + + + Creates a new instance of the object. + + The column this object is associated with. + + + + Override. The string representation of the object. + + + + + + + Gets or sets the position of the grouped row. + + + + + Gets or sets the initial expanded/collapsed state of the grouped row. + + + + + Gets or sets the text that is displayed in the group header row. + + + + + Gets or sets the text that is displayed in the group footer row. + + + + + Gets or sets the text that is displayed with the Aggregates value + + + + + Gets or sets the way rows are grouped. + + + + + Gets or set a value indicating the visibility of a column when it's grouped. + + + + + Represents print/export options form. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of the PrintOptionsFrom class. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets the output file name. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of the ActionItem class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Object to manage custom page headers and footers when printing and previewing. + + + + + Renders text for the document. + + X-coordinate to start the rendering. + Y-coordinate to start the rendering. + The text to render. + The width for the rendered text. + The font to use. + The color of the text. + The alignment to render the text. + + + + Renders an image for the document. + + X-coordinate. + Y-coordinate. + Image to render. + Width to render. + Height to render. + Alignment options. + + + + Renders a line for the document. + + Start x-coordinate. + Start y-coordinate. + End x-coordinate. + End y-coordinate. + Color of the line. + Width of the line. + + + + The height of drawing area in inches + + + + + Specifies how a should be printed + or exported when using such methods as + , + etc. + + + + + + + + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Resets the property to its default value. + + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Resets the property to its default value. + + + + + Opens a separate modal window in which end users can preview the output + that would be generated by the print operation. + + + allows to specify a custom form for + the preview dialog. + + + + + Prints the grid. + + + + + Prints the grid. + + Specifies the printer settings (including the printer) to use. + + + + Saves the current grid to a stream in C1D + (native C1PrintDocument) format. + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The output stream. + + + The stream's Position is set to 0 when the method returns. + + This method does not show progress dialog + (ignoring property). + + + + + + Saves the current grid to a memory stream in C1D + (native C1PrintDocument) format. + + The stream's Position is set to 0 when the method returns. + + The stream containing the saved grid. + + + + Saves the current grid as a C1D file, which can later be loaded + into a C1PrintDocument (provided by C1Report product). + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The name of the output file. + + true if the file was successfully saved, + false otherwise. + + + + Saves the current grid to a stream in C1D + (native C1PrintDocument) format. + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The output stream. + + true if the stream was successfully written, + false otherwise. + + Unlike the method, + this method does not reset the stream's position after saving. + + + + + Gets or sets a value indicating whether the grid rows can split between pages. + + + This new property helps to print very long text in columns on multiple pages. + + + + + Gets or sets a value indicating whether the grid's color scheme is translated to the print page. + + + + + Gets or sets a value indicating whether the page header is owner-drawn. + + + + + Gets or sets a value indicating whether the page footer is owner-drawn. + + + + + Gets or sets the style used to render the page header. + + + + + Gets or sets the string to be printed at the top of each page. + + + + + Gets or sets the height of the Page header. + + + + + Gets or sets the style used to render the page footer. + + + + + Gets or sets the page footer height in hundredths of an inch. + + + + + Gets or sets a string to be printed at the bottom of each page. + + + + + Gets or sets a value indicating whether column footers should appear on each page. + + + + + Gets or sets a value indicating whether the grid caption should appear on each page. + + + + + Gets or sets a value inidcating whether split captions should appear on each page. + + + + + Gets or sets a value indicating whether horizontal splits are previewed and printed. + + + + + Gets or sets a value indicating whether column headers should appear on each page. + + + + + Gets or sets a value indicating how empty space left on a printed page is handled. + + + + + Gets or sets the horizontal page break mode. + + + + + Gets or sets a value that controls how text is wrapped in a cell. + + + + + Gets or sets a value whether to print a grid if it has no data rows. + + + + + Gets or sets the maximum row height in hundredths of an inch + (used if is ). + + + + + Gets or sets a value indicating how row height of the printed grid is determined. + + + + + Gets or sets a value indicating how grid lines are rendered. + + + + + Gets or sets a value indicating whether the options dialog is displayed + when the grid is printed or exported. + + + + + Gets or sets a value indicating whether the progress dialog is displayed when the grid is printed or exported. + + + + + Gets or sets a value indicating whether the grid in Form view style is printed each record per page. + + + + + Gets or sets a value indicating whether selected cells will be highlighted when previewing or printing. + + + + + Gets or sets the PageSettings for printing. + + + + + Gets or sets the caption of the print progress dialog. + + + + + Gets or sets the class name of the form used as the print options dialog. + + + + + Gets or sets the class name of the form used as the preview form. + + + + + Specifies how empty space left on a printed page is handled (filled or otherwise). + + + + + All columns are extended proportionally to fill the page. + + + + + Empty space on the right of the page is left as is. + + + + + Rightmost column on the page is extended to fill the empty space. + + + + + Specifies how grid is broken into extension (horizontal) pages + when it is too wide to fit into one page. + + + + + All columns are made narrow enough to fit into one page. + + + + + Columns that do not fit into one page are clipped. + + + + + Horizontal page breaks can be inserted on grid splits as necessary. + + + + + Horizontal page breaks can be inserted on any column as necessary. + + + + + Specifies how cell text is wrapped. + + + + + Text can wrap in any cell as needed. + + + + + Text in cells never wraps. + + + + + Use column's property. + + + + + Specifies how grid lines are rendered. + + + + + Grid lines are rendered. + + + + + Grid lines are not rendered. + + + + + Specifies how rows' heights are determined. + + + + + Stretch rows vertically to fit all data. + + + + + Use the grid's row height. + + + + + Stretch rows vertically but not greater than . + + + + + Specify allowed print options. + + + + + No print/export operations are allowed. + + + + + Printing is allowed. + + + + + Preview is allowed. + + + + + Export is allowed. + + + + + All print/export operations are allowed. + + + + + The print preview form. + + + + + Creates a new instance of the PrintFrom class. + + + + + Additional initialization of the form. + + + To override properties like FormBorderStyle, MaximizeBox, MinimizeBox, ControlBox etc. of a Form, + inherited from "C1.Win.C1TrueDBGrid.PrintForm", override the Init method of the PrintForm. + First call the base.Init(), then set the properties you want. + + + The example is a custom PrintForm which has sizable border, control box is on, and minimize and maximize boxes are off. + + public class CustPrintForm : C1.Win.C1TrueDBGrid.PrintForm + { + public CustPrintForm(): base() + { + } + + protected override void Init() + { + base.Init(); + FormBorderStyle = FormBorderStyle.Sizable; + this.ControlBox = true; + this.MinimizeBox = false; + this.MaximizeBox = false; + } + } + + + + + Overloaded. Overridden. Releases all resources used by the Control. + + + + + + + + + + + + + + + Represents exception that is thrown if printing or exporting + a is cancelled by the user. + + + + + Initializes a new instance of the class. + + + + + Specifies the characteristics of the print preview window + shown by the method. + + + + + + + + + + + + + + + + + Resets the array of UIStrings back to the default locale. + + + + + Gets or sets the caption of the preview window. + + + + + Gets or sets the position and manner in which the control is docked in the navigation page. + + + + + Gets or sets the location of the preview window. + + + + + Gets or sets a value indicating whether the end user has the ability to size the preview window. + + + + + Gets or sets the zoom factor for print preview. + + + + + Gets or sets the size of the form. + + + + + Gets or sets a value indicating the visibiity of toolbars. + + + + + Gets the array of user interface strings. + + + + + Print progress window. + + + + + Initializes a new instance of the C1PrintProgress class. + + + + + Initializes a new instance of the C1PrintProgress class with a language. + + UI Language + + + + Overloaded. Releases the resources used by the component. + + + + + Gets or sets the text used to display the current progress when the grid is printed/previewed. + + + + + Gets or sets the text for the Cancel button. + + + + + Gets or sets the text for the Windows caption. + + + + + Gets a value indicating if the print/preview was cancelled. + + + + + Base class for the grid's scrollbars + + + + + Initializes a new instance of the SBar class + + + + + + + + + Overloaded. Releases the resources used by the class. + + + + + + + Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Gets or sets the visibility of the scrollbars. + + + + + Gets or sets a value indicating whether the scrollbar is displayed. + + + + + Gets or sets a numeric value that represents the current position of the scroll box on the scroll bar control. + + + + + Represents a vertical scrollbar. + + + + + Initializes a new instance of the VBar class. + + + + + + + Overloaded. Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Returns a string the represents the current object. + + + + + + + Gets or sets a numeric value that represents the current position of the scroll box on the scroll bar control. + + + + + Gets or sets the width of the vertical scrollbar. + + + + + Represents a horizontal scrollbar. + + + + + Initializes a new instance of the VBar class. + + + + + + + Overloaded. Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Returns a string the represents the current object. + + + + + + + Gets or sets the height of the horizontal scrollbar. + + + + + Specifies which elements of the cell should be drawn by the grid. + + + This enumeration is used when rendering owner-drawn cells. + + + + + Draw nothing. + + + + + Draw the cell background. + + + + + Draw the cell border. + + + + + Draw the cell content (text, images, checkboxes, etc). + + + + + Draw all cell elements (background, border, and contents). + + + + + Specifies a visual style to use when rendering the control. + + + + + Do not use any visual styles. Render the control using the styles and properties only. + + + + + Render the control with an appearance based on the current system settings. + + + + + Render the control with an appearance based on the Office 2007 Blue color scheme. + + + + + Render the control with an appearance based on the Office 2007 Silver color scheme. + + + + + Render the control with an appearance based on the Office 2007 Black color scheme. + + + + + Render the control with an appearance based on the Office 2010 Blue color scheme. + + + + + Render the control with an appearance based on the Office 2010 Silver color scheme. + + + + + Render the control with an appearance based on the Office 2010 Black color scheme. + + + + + Base class for the grid renderers. + + + + + Initializes a new instance of the class. + + + + + + + + + Gets the background brush. + + The grid. + Type of the cell. + The r. + + + + + + Gets the border pen. + + Type of the cell. + + + + + + Styles the has custom background. + + The style. + + + + + + Styles the has custom border. + + The style. + + + + + + Styles the has right border. + + the style + + + True is has right border + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DPM2016/bin/Debug/DPM2016.exe b/DPM2016/bin/Debug/DPM2016.exe new file mode 100644 index 0000000..c5f4f61 Binary files /dev/null and b/DPM2016/bin/Debug/DPM2016.exe differ diff --git a/DPM2016/bin/Debug/DPM2016.exe.config b/DPM2016/bin/Debug/DPM2016.exe.config new file mode 100644 index 0000000..2d8c91e --- /dev/null +++ b/DPM2016/bin/Debug/DPM2016.exe.config @@ -0,0 +1,44 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + data source=shu00;initial catalog=dpmneu;integrated security=SSPI;persist security info=false;workstation id=;packet size=4096;user id=sa;password=*shu29 + + + 2 + + + h:\dpm + + + h:\dpm\docarchiv + + + + diff --git a/DPM2016/bin/Debug/DPM2016.pdb b/DPM2016/bin/Debug/DPM2016.pdb new file mode 100644 index 0000000..715bac6 Binary files /dev/null and b/DPM2016/bin/Debug/DPM2016.pdb differ diff --git a/DPM2016/bin/Debug/DPM2016.vshost.exe b/DPM2016/bin/Debug/DPM2016.vshost.exe new file mode 100644 index 0000000..8f90da4 Binary files /dev/null and b/DPM2016/bin/Debug/DPM2016.vshost.exe differ diff --git a/DPM2016/bin/Debug/DPM2016.vshost.exe.config b/DPM2016/bin/Debug/DPM2016.vshost.exe.config new file mode 100644 index 0000000..424caee --- /dev/null +++ b/DPM2016/bin/Debug/DPM2016.vshost.exe.config @@ -0,0 +1,41 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + data source=shu00;initial catalog=dpmneu;integrated security=SSPI;persist security info=false;workstation id=;packet size=4096;user id=sa;password=*shu29 + + + 2 + + + h:\dpm + + + + diff --git a/DPM2016/bin/Debug/DPM2016.vshost.exe.manifest b/DPM2016/bin/Debug/DPM2016.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/DPM2016/bin/Debug/DPM2016.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/DPM2016/bin/Debug/DPM2016.xml b/DPM2016/bin/Debug/DPM2016.xml new file mode 100644 index 0000000..f075640 --- /dev/null +++ b/DPM2016/bin/Debug/DPM2016.xml @@ -0,0 +1,191 @@ + + + + +DPM2016 + + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + diff --git a/DPM2016/bin/Debug/Database1.mdf b/DPM2016/bin/Debug/Database1.mdf new file mode 100644 index 0000000..b3240fc Binary files /dev/null and b/DPM2016/bin/Debug/Database1.mdf differ diff --git a/DPM2016/bin/Debug/Database1_log.ldf b/DPM2016/bin/Debug/Database1_log.ldf new file mode 100644 index 0000000..96f648f Binary files /dev/null and b/DPM2016/bin/Debug/Database1_log.ldf differ diff --git a/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.dll b/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.dll new file mode 100644 index 0000000..fd4f2c0 Binary files /dev/null and b/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.dll differ diff --git a/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.xml b/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.xml new file mode 100644 index 0000000..80851d2 --- /dev/null +++ b/DPM2016/bin/Debug/DevComponents.DotNetBar.Schedule.xml @@ -0,0 +1,13572 @@ + + + + DevComponents.DotNetBar.Schedule + + + + + Constructor + + + + + Sends ChangedEvent for the CategoryColor property + + Old CategoryColor + New CategoryColor + + + + Handles control MouseDown events + + MouseEventArgs + + + + Determines if it is a simple, single-click MouseDown + + + + + + Returns copy of the item. + + + + + Copies the CalendarItem specific properties to new instance of the item. + + New CalendarItem instance + + + + Occurs when CategoryColor has changed + + + + + Occurs when StartTime has Changed + + + + + Occurs when EndTime has Changed + + + + + Occurs when IsSelected has Changed + + + + + Occurs when CollateId has Changed + + + + + Gets or sets the CollateId used for TimeLine row collation. + + + + + Gets or sets the CalendarItem Start time. + + + + + Gets or sets the CalendarItem End time. + + + + + Gets or sets the category color used for TimeLine CondensedView markers. + Use static members on Appointment class to assign the category color for example Appointment.CategoryRed. + + + + + Gets and sets the Model item + + + + + Gets and sets the Root Model item + + + + + Gets and sets the IsRecurring item status + + + + + Gets and sets the selection state + + + + + Gets and sets the last hit area + + + + + IsMarkupSupported + + + + + Constructor + + + + + + + Handles StartTime value changes + + CalendarItem + EventArgs + + + + Handles EndTime value changes + + CalendarItem + EventArgs + + + + DisplayTemplateText + + + + true is displayed + + + + GetDisplayTemplateText + + + Templatized text + + + + Paint processing + + ItemPaintArgs + + + + Gets the item text and image bounds + + + + + + + + + DrawContentImage + + + + + + + + + Initiates the drawing of the appointment Time Marker + + Graphics + Appointment rectangle + Corner radius + + + + RenderMarker + + + Brush + Rectangle + Corner + + + + Creates a left rounded rectangle path to be + used for the Time Marker + + Appointment rectangle + Corner radius + Graphics path + + + + Gets the appointment BackGround brush + + Bounding rectangle + + + + + Gets the appointment TimeMarkerBrush + + Bounding rectangle + + + + + Gets and sets the view Appointment + + + + + Gets and sets the appointment color + + + + + Gets and sets the view font + + + + + Gets whether the Appointment display Text is clipped + + + + + BaseView + + + + + Image + + + + + Gets the border color for the Category + + + + + Gets the border pen + + + + + Gets the selected border pen + + + + + Gets the Text color for the Category + + + + + Constructor + + + + + + + Handles StartTime value changes + + CalendarItem + EventArgs + + + + Handles EndTime value changes + + CalendarItem + EventArgs + + + + Sets the view display end types + + + + + Paint processing + + ItemPaintArgs + + + + DrawContentText + + + + + + + Gets the view rect for the appointment + + Corner radius + View rect + + + + Gets a path defining the item + + + + + + + + + Draws the resize gribits for the view + + + View rectangle + + + + Handles mouseDown processing + + MouseEventArgs + + + + Gets the HitArea from the current + mouse position + + + + + + + Gets whether the appointment is mutable + + + + + Constructor + + + + + + + Sets the view display end types + + + + + Gets and sets View MonthWeek + + + + + Constructor + + + + + + + Sets the view display end types + + + + + Constructor + + + + + + + Handles StartTime value changes + + CalendarItem + EventArgs + + + + Handles EndTime value changes + + CalendarItem + EventArgs + + + + Sets the view display end types + + + + + Gets the initial starting DayColumn col and max col + for the given date + + Selection date + Column + Max col + + + + + Paint processing + + ItemPaintArgs + + + + Gets the view rect for the appointment + + View rect + + + + DrawContent + + + + + + + Draws the content text + + + + + + + Draws the resize handles for the view + + + View rectangle + + + + Handles mouseDown processing + + MouseEventArgs + + + + Gets the HitArea from the current + mouse position + + + eHitArea + + + + Gets and sets View DayColumn + + + + + Gets and sets View AllDayPanel + + + + + Gets the default horizontal padding + + + + + Gets whether the appointment is mutable + + + + + Constructor + + + + + + + OnCalendarColorChanged event propagation + + + + + SelectedItemChanged event propagation + + + + + Hooks and unhooks our object events + + True - hook, false - unhook + + + + DateSelectionEndChanged + + + + + + + DateSelectionStartChanged + + + + + + + ModelChanged + + + + + + + Performs NeedRecalcSize requests + + + + + Paint processing + + + + + + Draws horizontal tab layout + + + + + + Draws the background border around + the entire control view + + + + + + + Draws the tab - border and content + + ItemPaintArgs + Tab text + Text measured width + Bounding rectangle + + + + Gets the tab graphics path + + Tab width + GraphicsPath + + + + Draws vertical tab layout + + + + + + Draws the tab - border and content + + ItemPaintArgs + Tab text + Bounding rectangle + + + + Gets the tab graphics path + + Tab width + GraphicsPath + + + + Draws the tab - border and content + + ItemPaintArgs + Tab text + Bounding rectangle + + + + Gets the tab graphics path + + Tab width + GraphicsPath + + + + Gets the multiuser tab path + + + + + + + Determines if the given Point is + within the View tab area + + Point in question + true if the Point is in the tab + + + + MouseDown processing + + MouseEventArgs + + + + MouseMove processing + + + + + + MouseUp processing + + + + + + Clears all mouse related state flags + + + + + Initiates dragging of a copy of the + current selectedItem - if the ctrl-key is pressed + + + + + + Updates associated appointment reminders + after an appointment has been moved + + + + + Gets the view area under the given mouse + point (tab, header, content, etc) + + Point + eViewArea + + + + Gets the date selection from the given point. The startDate + and endDate will vary based upon the view type (WeekDay / Month) + + Point in question + out start date + out end date + True if a valid selection exists + at the given point + + + + Gets the appointment view created for an appointment in this view + + The appointment + Reference to AppointmentView or null if no view is found + + + + Gets the CustomCalendarItem created for this view + + Reference to CustomCalendarItem or null if none found + + + + Invalidates the given rectangle + + + + + Invalidates the entire calendar + bounding rect area + + NeedRecalcSize flag + + + + Invalidates the entire calendar + bounding rect area + + + + + Invalidates the given rectangle + + Rectangle to invalidate + NeedRecalcSize flag + + + + Disconnects and resets the Model connection + + + + + Sets the current selected item + + Previously selected CalendarItem + New CalendarItem to select + Base selected CalendarItem + + + + Updates each monthWeeks DayRects to reflect + the date selection start and end values + + + + + AutoSync our view start date + + + + + + Extends the selection if the shift-key + is pressed with selection + + + + + + + Pos window update + + + + + Returns copy of the item. + + + + + Copies the BaseView specific properties to new instance of the item. + + New BaseView instance + + + + Occurs when SelectedItem has Changed + + + + + Occurs when CalendarColor has Changed + + + + + Gets the Bold display font + + + + + Gets and sets the view bounding rectangle + + + + + Gets and sets the DisplayedOwnerKey + + + + + Gets and sets the DisplayedOwnerKeyIndex + + + + + Gets and sets the view Owner Key + + + + + Gets and sets the view Display Name + + + + + Gets and sets the display start date + + + + + Gets and sets the display end date + + + + + Gets and sets the date selection start + + + + + Gets or sets the end date of selection. + + + + + Gets and sets the CalendarColorTable + + + + + Gets and sets the display calendar color scheme + + + + + Get and sets the calendar font. + + + + + Gets and sets the currently selected CalendarItem + + + + + Gets the selected state of the view + + + + + Gets a ReadOnlyCollection of the + currently selected appointments for the view + + + + + Gets the View CalendarModel + + + + + IsMouseDown + + + + + IsStartResizing + + + + + IsEndResizing + + + + + IsResizing + + + + + IsMoving + + + + + IsTabMoving + + + + + IsConMoving + + + + + CanDrag + + + + + Pre-move/resize StartTime + + + + + Pre-move/resize EndTime + + + + + Sets local view cursor + + + + + Gets CalendarView default cursor + + + + + Gets and sets the view position window + + + + + Gets the CalendarView + + + + + Gets the ECalendarView + + + + + Gets and sets the ModelViewConnector + + + + + Gets the DayOfWeekHeader height + + + + + IsCopyDrag + + + + + OldOwnerKey + + + + + Gets the MultiUserTabHeight + + + + + Gets the MultiUserTabWidth + + + + + Gets the Appointment height + + + + + Gets and sets the date selection anchor + + + + + Gets and sets the Days of the week object + + + + + Gets and sets the selecting status + + + + + Gets and sets recalc layout need + + + + + Gets and sets the view client rectangle + + + + + Gets and sets the DateRangeChanged state + + + + + Gets and sets the base non-client data + + + + + Constructor + + Tab Orientation + Tab border color + Tab foreground color + Tab background color + Tab content background + Tab selected foreground + Tab selected background + + + + SelectedItemChangedEventArgs + + + + + Generic ValueChangedEventArgs + + oldValue type + newValue type + + + + Gets the old value + + + + + Gets the new value + + + + + CalendarColorChangedEventArgs + + + + + Constructor. + This is the main container panel for all + BaseView and TimeRulerPanel objects + + CalendarView + + + + Handles SelectedView changes + + + + + + + Performs object recalc processing + + + + + Recalculates all WeekDay views + + + + + Configures the CalendarPanel subItems + + View count + TimeRuler width + Vert Scrollbar width + + + + Recalculates Month views + + + + + Configures the CalendarPanel subItems + + View count + + + + Recalculates all Year views + + + + + Configures the CalendarPanel subItems + + View count + Vert Scrollbar width + + + + Recalculates TimeLine views + + + + + Configures TimeLine view items + + + + + + Configures default view horizontal scrollBar + + + + + + + + + + Sets up default view horizontal scrollbar + + + + + Updates default view horizontal scrollbar + + + + + Processes default view horizontal + scrollbar value changes + + + + + + + Configures TimeLine View vertical scrollbar + + + + + + + + Sets up TimeLine vertical scrollbar + + + + + Updates our vertical scrollbar + + + + + + + Processes TimeLine vertical scrollbar changes + + + + + + + Paint processing + + + + + + Paints the non-BaseView items + + ItemPaintArgs + + + + Paints the BaseView items + + ItemPaintArgs + + + + Returns copy of the item. + + + + + Copies the CalendarPanel specific properties to new instance of the item. + + New CalendarPanel instance + + + + Gets the Horizontal scrollbar + + + + + Gets the Vertical scrollbar + + + + + CalendarView constructor + + + + + SelectedViewChanged event propagation + + + + + Propagates FixedAllDayPanelHeightChanged events + + Old value + New value + + + + Propagates MaximumAllDayPanelHeightChanged events + + Old value + New value + + + + Propagates MinimumTimeSlotHeightChanged events + + Old value + New value + + + + OnTimeSlotDurationChanged event propagation + + + + + OnIs24HourFormatChanged event propagation + + + + + OnLabelTimeSlotsChanged event propagation + + + + + OnShowOnlyWorkDayHoursChanged event propagation + + + + + OnIsMonthSideBarVisibleChanged event propagation + + + + + OnIsMonthMoreItemsIndicatorVisibleChanged event propagation + + + + + OnIsTimeRulerVisibleChanged event propagation + + + + + OnEnableDragDropChanged event propagation + + + + + YearViewAllowDateSelectionChanged event propagation + + + + + YearViewAppointmentLinkChanged event propagation + + + + + YearViewNonAppointmentLinkChanged event propagation + + + + + YearYearViewLinkViewChanged event propagation + + + + + YearViewLinkActionChanged event propagation + + + + + YearViewLinkStyleChanged event propagation + + + + + OnYearViewShowGridLinesChanged event propagation + + + + + OnWeekDayCanExtendRangeChanged event propagation + + + + + OnModelChanged event propagation + + + + + OnDateSelectionStartChanged event propagation + + + + + OnDateSelectionEndChanged event propagation + + + + + Sends DayViewDateChanged event + + Old date + New date + + + + Sends WeekViewStartDateChanged event + + Old date + New date + + + + Sends WeekViewEndDateChanged event + + Old date + New date + + + + Sends MonthViewStartDateChanged event + + Old date + New date + + + + Sends MonthViewEndDateChanged event + + Old date + New date + + + + Sends MonthViewHorizontalPaddingChanged events + + Old padding + New padding + + + + Sends OnYearViewStartDateChanged event + + Old date + New date + + + + Sends OnYearViewEndDateChanged event + + Old date + New date + + + + Sends TimeLineViewStartDateChanged event + + Old date + New date + + + + Sends TimeLineViewEndDateChanged event + + Old date + New date + + + + Updates the TimeLine scroll value + + Value + + + + Sends TimeLineViewScrollDateChanged event + + Old date + New date + + + + Calculates number of TimeLine columns + + + + + + Sends TimeLineColumnWidthChanged event + + Old width + New width + + + + Sends TimeLineHorizontalPaddingChanged events + + Old padding + New padding + + + + Sends TimeLineMaxColumnCountChanged event + + Old width + New width + + + + Sends TimeLineIntervalChanged events + + + + + + + Coerces the user supplied interval period into + an evenly divisible duration + + Original value + Validated value + + + + Gets a valid minute interval from the + given user supplied value + + Supplied value + Valid interval + + + + Gets a valid hour interval from the + given user supplied value + + Supplied value + Valid interval + + + + Updates the BaseInterval value (interval total minutes) + + + + + Sends TimeLineIntervalPeriodChanged events + + + + + + + Updates the view end date period given the + new base interval + + + + + Sends TimeLineShowPeriodHeaderChanged event + + + + + + + Sends TimeLineShowIntervalHeader event + + + + + + + Sends TimeLineShowPageNavigationChanged event + + + + + + + Sends OnTimeLineCondensedViewVisibilityChanged event + + + + + + + Sends OnTimeLineCondensedViewHeightChanged event + + + + + + + Refreshes the deselected and newly selected tabs + + Old tab index + New tab index + + + + Invalidates the given view tab + + + + + + + Invalidates the given view tab + + + + + + + InvalidateCondensedViews + + + + + + InvalidateTimeIndicators + + + + + + Invalidates TimeIndicator display area + for the given view DateTime + + + + + + + + Propagates SelectedOwnerChanged events + + Old index + New index + + + + Navigates the current calendar view to show the given date + + Date to show in the calendar view + + + + Navigates the given view to show date + + View to navigate + Date to navigate to + + + + Scrolls the Day/Week calendar view to the + specified hour and minute + + Hour to scroll to + Minute to scroll to + + + + Ensures that the given Appointment is visible + in the current view. It will change the view date and + scroll as necessary to ensure the appointment is visible + + Appointment to bring into view + + + + Ensures that the given CustomCalendarItem is visible + in the current view. It will change the view date and + scroll as necessary to ensure the item is visible + + Appointment to bring into view + + + + Ensures that the given calendarItem is visible + in the current view. It will change the view date and + scroll as necessary to ensure it is visible + + Item start time + Item end time + + + + Gets the AppointmentView in the current displayed + view that was created for the given appointment + + Reference to AppointmentView or null if not found + + + + Gets the default date selection from the given point. The startDate + and endDate will vary based upon the view type (WeekDay / Month) + + Point in question + [out] Start date + [out] End date + True if a valid selection exists + at the given point + + + + Gets the View that contains the given point + + Point in question + BaseView containing the given point, or null + + + + Gets the current selected BaseView + + + + + + Hooks needed events + + True to hook, false to unhook + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + ReminderNotification + + + + + + + Dispatches ReminderNotification to UI thread + + + + + + AppointmentStartTimeReached + + + + + + + Dispatches AppointmentStartTimeReached to UI thread + + + + + + AppointmentCategoryColorCollectionChanged + + + + + + + TimeIndicatorCollectionChanged + + + + + + + Processes TimeIndicatorColorChanged events + + + + + + + Processes TimeIndicatorTimeChanged events + + + + + + + InitDefaultViews + + + + + Sets the selected view + + View to select + + + + Installs single-user calendar + + eCalendarView + + + + Installs multi-user calendar + + + + + + Installs multi-user DayView calendar + + + + + Installs multi-user WeekView calendar + + + + + Installs multi-user MonthView calendar + + + + + Installs multi-user YearView calendar + + + + + Installs multi-user TimeLineView calendar + + + + + Installs the TimeRulerPanel + + + + + Release the TimeRulerPanel + + + + + Release the TimeLineHeaderPanel + + + + + Installs the TimeLine Horizontal Scroll Panel + + + + + Handles Scroll Panel updates + + + + + + + Releases the Horizontal Scroll Panel + + + + + Installs the given View into the CalendarPanel + + View to install + + + + Routine to initiate the OnChange user events + + Affected item + + New start time + New end time + Move, resize, etc + + + + + + Routine to initiate the BeforeAppointmentViewChange event + + BaseView + Affected item + Move, resize, etc + + + + + OnBeforeAppointmentViewChange event propagation + + + + + OnAppointmentViewChanging event propagation + + + + + DoAppointmentViewChanged event propagation + + + + + DoGetDisplayTemplateText event propagation + + + + + DoGetDisplayTemplateText event propagation + + + + + Handles DoAppointmentViewPreRender events + + + + + Handles DoAppointmentViewPostRender events + + + + + DoDetailSortEvent + + + + + Handles invocation of DoTimeLineViewRenderPeriodHeader event + + + + + + + + + + + Handles invocation of DoTimeLineViewPreRenderSlotBackground event + + + + + + + + + + + + Handles invocation of DoTimeLineViewPostRenderSlotBackground event + + + + + + + + + + + + DoTimeLineViewRenderSlotBorder + + + + + + + + + + + + + + DoTimeLineViewRenderViewBorder + + + + + + + + + + + + DoTimeLineGetRowHeight + + + + + + DoTimeLineGetRowCollateId + + + + + + DoTimeLineGetHeaderText + + + + + + + + Handles invocation of PageNavigatorClick events + + + + + + Handles invocation of DoYearViewLinkSelected event + + + + + Handles invocation of YearViewDrawDayBackground event + + + + + Handles invocation of YearViewDrawDayText event + + + + + Handles invocation of MonthViewPreRenderSlotBackground event + + + + + + + + + + + + Handles invocation of MonthViewPostRenderSlotBackground event + + + + + + + + + + + + Handles invocation of RenderDaySlotAppearanceText events + + + + + Handles invocation of RenderTabBackground event + + + + + Handles invocation of RenderTabContent events + + + + + DoRenderViewBorder + + + + + + + + + Handles invocation of ViewLoadComplete events + + + + + Handles invocation of MonthMoreItemsIndicatorClick events + + + + + + This routine is called after an element has been + added to the DisplayedOwners list. It is responsible + for updating the MultiCalendar views accordingly. + + + + + This routine is called after an element has been + removed from the DisplayedOwners list. It is responsible + for updating the MultiCalendar views accordingly. + + Starting index to remove + Ending index to remove + + + + Removes individual views + + Index to remove + + + + This routine is called after an element has been + reset in the DisplayedOwners list. It is responsible + for updating the MultiCalendar views accordingly. + + + + + + Gets the view index from a given Point + + Point + + + + + Reorders views in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + SelectedViewChanged event propagation + + + + + Reorders Day view in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + Reorders Week view in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + Reorders Month view in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + Reorders Year view in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + Reorders TimeLine view in the MultiCalendar and + DisplayOwner arrays + + Starting index + Ending index + + + + Reorders the DisplayedOwner list + + Starting index + Ending index + + + + Creates a new calendar base view of + the given type + + Type of view to create + DisplayedOwner index + Created view + + + + Creates new DayViews + + DisplayedOwner index + Created DayView + + + + Creates new WeekViews + + DisplayedOwner index + Created WeekView + + + + Creates new MonthViews + + DisplayedOwner index + Created MonthView + + + + Creates new YearView + + DisplayedOwner index + Created YearView + + + + Creates new TimeLineViews + + DisplayedOwner index + Created WeekView + + + + Completes the setup of the created view + + Newly created view + DisplayedOwner index + + + + Gets the default eCalendarColor for the view + + View in question + Index of view + View color + + + + Updates all view CalendarColor settings + + New color + Multi-user index + + + + Mouse Wheel support + + Window handle + wParam + lParam + false + + + + OnMouseDown + + + + + + Processes KeyDown events + + + + + + + + Control resize processing + + + + + + OnCursorChanged + + + + + + Occurs when CalendarModel has changed + + + + + Occurs when DateSelectionStart has changed + + + + + Occurs when DateSelectionEnd has changed + + + + + Occurs when the Day, Week, or Month view date(s) have changed + + + + + Occurs when SelectedView has Changed + + + + + Occurs when SelectedOwner has Changed + + + + + Occurs when EnableDragDrop has changed + + + + + Occurs when DisplayedOwners has Changed + + + + + Occurs when TimeIndicators has changed + + + + + Occurs when a TimeIndicator time has changed + + + + + Occurs when a TimeIndicator Color has changed + + + + + Occurs when ViewDisplayCustomizations have changed + + + + + Occurs when a Tab's background needs rendered + + + + + Occurs when a Tab's content (text, etc) needs rendered + + + + + Occurs when a View Border needs rendered + + + + + Occurs when a view load/reload has occurred + + + + + Occurs when a View date is changing + + + + + Occurs before an AppointmentView is about to change + + + + + Occurs when an AppointmentView is changing + + + + + Occurs when an AppointmentView has changed + + + + + Occurs when Appointment Reminder has been reached.")] + + + + + Occurs when Appointment StartTime has been reached.")] + + + + + Occurs when Appointment DisplayTemplate text is needed + + + + + Occurs when an AppointmentView is about to be rendered + + + + + Occurs when an AppointmentView has been rendered + + + + + Occurs when Appointment GroupId is needed (used to logically group + appointments together when displayed in the WeekDay view) + + + + + Occurs when two CalendarItems need detail sorting. + When items are of equal sort value, based upon their calendar time, this + event will be raised to give the user the ability to perform more detailed + sorting as needed - such as via Subject and/or Description, etc). + + + + + Occurs when DayViewDate has Changed + + + + + Occurs when WeekViewStartDate has Changed + + + + + Occurs when WeekViewEndDate has Changed + + + + + Occurs when LabelTimeSlots has changed + + + + + Occurs when TimeSlotDuration has changed + + + + + Occurs when Is24HourFormat has changed + + + + + Occurs when FixedAllDayPanelHeight has changed + + + + + Occurs when MaximumAllDayPanelHeight has Changed + + + + + Occurs when MinimumTimeSlotHeight has Changed + + + + + Occurs when IsTimeRulerVisible has changed + + + + + Occurs when ShowOnlyWorkDayHours has changed + + + + + Occurs when DaySlotAppearance Text needs rendered + + + + + Occurs when WeekDayCanExtendRange has changed + + + + + Occurs when the WeekDay header is about to be rendered + + + + + Occurs when the WeekDay header has been rendered + + + + + Occurs when MonthViewStartDate has Changed + + + + + Occurs when MonthViewEndDate has Changed + + + + + Occurs when IsMonthSideBarVisible has changed + + + + + Occurs when IsMonthMoreItemsIndicatorVisible has changed + + + + + Occurs when a MonthView Slot Background is about to be rendered + + + + + Occurs when a MonthView Slot Background has just been rendered + + + + + Occurs when a MonthView 'MoreItemsIndicator' has been clicked + + + + + Occurs when the MonthView header is about to be rendered + + + + + Occurs when the MonthView header has been rendered + + + + + Occurs when MonthViewHorizontalPadding has changed + + + + + Occurs when YearViewStartDate has Changed + + + + + Occurs when YearViewEndDate has Changed + + + + + Occurs when YearViewShowGridLines has changed + + + + + Occurs when YearViewAllowDateSelection has changed + + + + + Occurs when YearViewLinkView has changed + + + + + Occurs when YearViewAppointmentLink has changed + + + + + Occurs when YearViewLinkAction has changed + + + + + Occurs when YearViewNonAppointmentLink has changed + + + + + Occurs when YearViewLinkStyle has changed + + + + + Occurs when YearViewLink has been selected + + + + + Occurs when YearView Day Background needs drawn + + + + + Occurs when YearView Day Text needs drawn + + + + + Occurs when TimeLineViewStartDate has Changed + + + + + Occurs when TimeLineViewEndDate has Changed + + + + + Occurs when TimeLineViewViewScrollDate has Changed + + + + + Occurs when TimeLineInterval has Changed + + + + + Occurs when TimeLineIntervalPeriod has Changed + + + + + Occurs when TimeLineColumnWidth has changed + + + + + Occurs when TimeLineMaxColumnCount has changed + + + + + Occurs when TimeLineHorizontalPadding has changed + + + + + Occurs when TimeLineShowPeriodHeader has changed + + + + + Occurs when TimeLineShowIntervalHeader has changed + + + + + Occurs when TimeLineShowPageNavigation has changed + + + + + Occurs when TimeLineCondensedViewVisibility has changed + + + + + Occurs when TimeLineCondensedViewHeight has changed + + + + + Occurs when TimeLineView Period Header needs rendered + + + + + Occurs when a TimeLineView Slot Background is about to be rendered + + + + + Occurs when a TimeLineView Slot Background has just been rendered + + + + + Occurs when a TimeLineView Slot Border needs rendered + + + + + Occurs when a TimeLineView Border needs rendered + + + + + Occurs when TimeLineView needs to get the Appointment row height + + + + + Occurs when TimeLineView needs to get the row collate Id (used to group rows). + + + + + Occurs when a PageNavigator control button has been clicked + + + + + Occurs when the TimeLineView needs Date Header Text for a column + + + + + Gets and sets whether the control will permit + tab reordering via the user interface + + + + + Gets or sets whether view dates are automatically + synced to the currently viewed date range + + + + + Gets and sets the default appointment border width + + + + + Gets or sets how DayView "AllDay" appointments are displayed + + + + + Gets or sets whether Appointment text-markup support is enabled + + + + + Gets and sets the selected calendar view + + + + + Gets and sets the fixed (constant) AllDayPanel + height for all WeekDay views. Setting this value to -1 + will let the height change dynamically + + + + + Gets or sets whether the current calendar day is highlighted + + + + + Gets or sets the maximum height of the All Day Appointment panel + + + + + Gets or sets the minimum height of the WeekDay time slots + + + + + Gets and sets the Calendar multi-user tab height + + + + + Gets or sets the default TimeIndicator + + + + + Gets and sets the Time slot duration for all Day and Week views. + This value, in minutes, must be greater than 0 and less than or + equal to 30. Set values must also evenly divide the hour. This means + that values like 6, 10 and 20 are valid values, whereas 7, 11 and 31 are not + + + + + Gets and sets the 12 or 24 hour + formatting that is used in the Day and Week views + + + + + Gets and sets whether time slot labels are + displayed in the Day and Week view TimeRulerPanel + + + + + Gets and sets whether only WorkDay hours are + displayed in the Day and Week views + + + + + Gets and sets multi-user tab visibility + + + + + Gets and sets the default Month view SideBar visibility + + + + + Gets and sets the Month view 'More Items' indicator visibility + + + + + Gets and sets whether the Week/Day view TimeRuler is visible + + + + + Gets and sets whether DragDrop across calendar views is enabled + + + + + Gets or sets whether a new copy of an item will be + created when holding the Control-Key while dragging it. + + + + + Gets and sets whether date selection is permitted + + + + + Gets and sets the YearView Appointment Link mode. This defines the + interaction between the mouse and YearView days that contain appointments. + + + + + Gets and sets the YearView Non-Appointment Link mode. This defines the + interaction between the mouse and YearView days that do not contain appointments. + + + + + Gets or sets the Link Calendar View. This defines the + View that is activated when a YearView date 'link' is selected. + + + + + Gets or sets the Link action. This defines the + action that is taken when a YearView date 'link' is selected. + + + + + Gets or sets the AppointmentLink display style. This defines the + style that is used when 'highlighting' YearView date links. + + + + + Gets and sets the YearView grid lines visibility + + + + + Gets or sets whether the Week or Day View Start and End dates can be + can be automatically extended by the control when the user presses + the left or right arrow keys. + + + + + Gets and sets the calendar Model + + + + + Appointment CategoryColors + + + + + Gets the collection of user defined custom + CalendarItems + + + + + Gets or sets the selection start date + + + + + Gets or sets the end date selection + + + + + Gets the Day View + + + + + Gets and sets the DayView date + + + + + Gets and sets the Calendar Multiuser Horizontal scrollbar + + + + + Gets the Week View + + + + + Gets and sets the week start date + + + + + Gets the week end date + + + + + Gets the Month View + + + + + Gets and sets the month start date + + + + + Gets the month end date + + + + + Gets and sets the horizontal padding used between + items displayed in the Month view + + + + + Gets the Year View + + + + + Gets and sets the YearView start date + + + + + Gets the YearView end date + + + + + Gets the TimeLine View + + + + + Gets and sets the TimeLine start date + + + + + Gets or sets the TimeLine end date + + + + + Gets and sets the TimeLine Scrolled start date + + + + + Gets the TimeLine Scrolled end date + + + + + Gets and sets the Calendar TimeLineColumnWidth + + + + + Gets and sets the horizontal padding used between + items displayed in the TimeLine view + + + + + Gets and sets the TimeLine Interval Header height + + + + + Gets or sets the text alignment for the TimeLineView Period Header text + + + + + Gets or sets whether text-markup support is enabled for the + TimeLineView Period Header text + + + + + Gets and sets the Calendar TimeLineMaxColumnCount + + + + + Gets and sets the Calendar TimeLineInterval + + + + + Gets and sets the Calendar TimeLinePeriod + + + + + Gets or sets the TimeLine period header height. Set to -1 for default. + + + + + Gets and sets the Calendar TimeLineHeight + + + + + Gets and sets the Calendar TimeLineShowPeriodHeader + + + + + Gets and sets the Calendar TimeLineShowIntervalHeader + + + + + Gets and sets the Calendar TimeLineShowPageNavigation + + + + + Gets or sets whether the Horizontal TimeLine scroll bar is shown + + + + + Gets and sets the Condensed View visibility + + + + + Gets and sets the Condensed View height + + + + + Gets or sets whether the row height is stretched + to fill the TimeLine appointment content area + + + + + Gets or sets how the row height is stretched to fill the TimeLine + appointment content area (TimeLineStretchRowHeight must be set to true). + + + + + Gets or sets whether the TimeLine Start and End dates can be + can be automatically extended by the control + + + + + Gets or sets whether the TimeLine view will draw collate lines + between each group of collated rows (see TimeLineViewGetRowCollateId event) + + + + + Gets and sets the Calendar TimeLine horizontal tab width + + + + + Gets and sets the Calendar TimeLine horizontal tab orientation + + + + + Gets or sets the Calendar TimeLineView PageNavigator TodayTooltip + + + + + Gets or sets the Calendar TimeLineView PageNavigator PreviousPageTooltip + + + + + Gets or sets the Calendar TimeLineView PageNavigator NextPageTooltip + + + + + Gets and sets the Calendar TimeLineView Minimum Appointment Width + + + + + Gets the multiCalendar state or mode + + + + + Gets the MultiCalendarDayViews collection + + + + + Gets the MultiCalendarWeekViews collection + + + + + Gets the MultiCalendarMonthViews collection + + + + + Gets the MultiCalendarYearViews collection + + + + + Gets the MultiCalendarTimeLineViews collection + + + + + Gets the DisplayedOwners collection + + + + + Gets and sets the current selected multi-user owner + + + + + Gets and sets the current selected multi-user owner + using a DisplayedOwner index + + + + + Gets the read-only collection of currently selected + appointments in the current view + + + + + TimeIndicators + + + + + Gets the CalendarView ViewDisplayCustomizations + + + + + Gets and sets the Calendar ViewWidth + + + + + Gets the Calendar Multiuser Vertical scrollbar + + + + + Gets the WeekDay Vertical scrollbar + + + + + Gets/Sets the visual style of the CalendarView + + + + + Gets the default (cycling) color scheme + + + + + Gets the CalendarPanel object + + + + + Gets the width of a vertical scrollbar + + + + + Gets the height of a horizontal scrollbar + + + + + Gets and sets the AutoSyncDate + + + + + Gets whether any CategoryColors have been defined + + + + + Gets the default TimeSlice height + + + + + Gets the number of WeekDay time slices + + + + + Gets the NumberOfActiveSlices + + + + + WeekDay starting Slice + + + + + Gets the number of slots per hour + + + + + Gets the WeekDay Vertical Scroll panel + + + + + Gets the Year Vertical Scroll panel + + + + + Gets the AllDay panel height + + + + + Gets the TimerRuler width + + + + + Gets the base interval (total minutes) + + + + + Gets the TimeLine column count + + + + + Gets the TimeLine Horizontal Scroll panel + + + + + Gets whether the user has defined any ViewDisplayCustomizations + + + + + Sets the local view cursor + + + + + Gets the default cursor + + + + + Defines the available view operations + + + + + Defines views available on CalendarView control. + + + + + Defines TimeLine interval period + + + + + Defines TimeLine interval period + + + + + Row height is partially stretched, based upon the + number of overlapping rows. + + + + + Row height is extended fully (if possible), irrespective of the + number of overlapping rows. + + + + + Defines Condensed View visibility + + + + + Defines link mode for YearView dates containing appointments + + + + + Defines link action for YearView dates containing Appointments or CalendarItems + + + + + Defines link mode for YearView dates containing appointments + + + + + Defines the "display state" (work, inactive, selected) of the slot + + + + + Defines how All "All Day" appointments are displayed + + + + + SelectedViewEventArgs + + + + + ModelEventArgs + + + + + DateSelectionEventArgs + + + + + LabelTimeSlotsChangedEventArgs + + + + + TimeSlotDurationChangedEventArgs + + + + + Is24HourFormatChangedEventArgs + + + + + IsMonthSideBarVisibleChangedEventArgs + + + + + IsMonthMoreItemsIndicatorVisibleChangedEventArgs + + + + + IsTimeRulerVisibleChangedEventArgs + + + + + BeforeAppointmentViewChangeEventArgs + + + + + Gets the CalendarItem being affected + + + + + Gets the operation to be performed + + + + + Gets whether the operation is being + performed on a drag created copy item + + + + + AppointmentViewChangingEventArgs + + + + + Gets the CalendarItem being changed + + + + + Gets the OwnerKey to be applied. + This value will be null if no new OwnerKey is to be applied. + + + + + Gets the new StartTime to be applied + + + + + Gets the new EndTime to be applied + + + + + Gets the operation to be performed + + + + + Gets whether the operation is being + performed on a drag created copy item + + + + + AppointmentViewChangedEventArgs + + + + + Gets the CalendarItem that was changed + + + + + Gets th old, previous OwnerKey + + + + + Gets th old, previous start time + + + + + Gets the old, previous end time + + + + + Gets the operation that was performed + + + + + Gets whether the operation is being + performed on a drag created copy item + + + + + AppointmentViewPostRenderEventArgs + + + + + Gets the CalendarItem being changed + + + + + Gets the associated Graphics object. + + + + + Gets the associated GraphicsPath. + This item may be null, based upon appointment style. + + + + + Gets the item bounding rectangle + + + + + AppointmentViewPreRenderEventArgs + + + + + Gets or sets whether to cancel + further item rendering. + + + + + GetAppointmentGroupIdEventArgs + + + + + Gets the CalendarItem that was changed + + + + + Gets or sets the GroupId + + + + + GetDisplayTemplateTextEventArgs + + + + + Gets the CalendarItem that was changed + + + + + Gets the DisplayTemplate + + + + + Gets or sets the Display Text for the given DisplayTemplate + + + + + DateChangeEventArgs + + + + + ViewDateChangedEventArgs + + + + + Gets the View + + + + + Gets the eCalendarView + + + + + Gets th old, previous start time + + + + + Gets the old, previous end time + + + + + Gets or sets the new start time + + + + + Gets or sets the new end time + + + + + DateViewChangingEventArgs + + + + + Gets the View + + + + + Gets the eCalendarView + + + + + Gets th old, previous start time + + + + + Gets the old, previous end time + + + + + Gets or sets the new start time + + + + + Gets or sets the new end time + + + + + CalendarItemEventArgs + + + + + Gets the View + + + + + Gets the eCalendarView + + + + + Gets item1 comparison element + + + + + Gets item2 comparison element + + + + + + SelectedOwnerChangedEventArgs + + + + + + FixedAllDayPanelHeightChangedEventArgs + + + + + + MaximumAllDayPanelHeightChangedEventArgs + + + + + + MinimumTimeSlotHeightChangedEventArgs + + + + + + TimeLineIntervalChangedEventArgs + + + + + TimeLineIntervalPeriodChangedEventArgs + + + + + EnableDragDropChangedEventArgs + + + + + TimeLineColumnWidthChangedEventArgs + + + + + TimeLineMaxColumnCountChangedEventArgs + + + + + TimeLineHorizontalPaddingChangedEventArgs + + + + + TimeLineShowPeriodHeaderChangedEventArgs + + + + + TimeLineShowIntervalHeaderChangedEventArgs + + + + + TimeLineShowPageNavigationChangedEventArgs + + + + + TimeLineCondensedViewVisibilityChangedEventArgs + + + + + TimeLineCondensedViewHeightChangedEventArgs + + + + + TimeLineRenderPeriodHeaderEventArgs + + + + + Gets the Graphics object used to render + the Period Header + + + + + Gets the Bounding Text Rectangle + + + + + Gets the visible display StartTime + + + + + Gets the visible display EndTime + + + + + Gets or sets the header Text + + + + + TimeLinePreRenderSlotBackgroundEventArgs + + + + + TimeLinePreRenderSlotBackgroundEventArgs + + + + + Gets the Graphics object used to render + the slot + + + + + Gets the slot bounding Rectangle + + + + + Gets the slot StartTime + + + + + Gets the slot EndTime + + + + + Gets the slot display state + + + + + Gets the associated View + + + + + Gets or Sets whether the event should be canceled + + + + + TimeLineRenderSlotBorderEventArgs + + + + + Gets the Graphics object used to render + the slot + + + + + Gets whether the border if an hourly border + + + + + Gets the slot display state + + + + + Gets the slot Starting Time + + + + + Gets the slot starting Point + + + + + Gets the slot ending Point + + + + + Gets the slot border Color + + + + + TimeLineRenderViewBorderEventArgs + + + + + Gets the Graphics object used to render + the slot + + + + + Gets the starting column + + + + + Gets the ending column + + + + + Gets the bounding rectangle + + + + + Gets the default border Pen + + + + + ShowOnlyWorkDayHoursChangedEventArgs + + + + + TimeLineGetRowHeightEventArgs + + + + + Gets or sets the Height + + + + + Gets the associated CalendarItem + + + + + TimeLineGetRowCollateIdEventArgs + + + + + Gets or sets the row CollateId + + + + + Gets the associated CalendarItem + + + + + PageNavigatorClickEventArgs + + + + + Gets the PageNavigator + + + + + Gets the associated CalendarView + + + + + Gets which button was clicked + + + + + Gets or sets the time to navigate to + + + + + AllowDateSelectionChangedEventArgs + + + + + DayLinkChangedEventArgs + + + + + LinkViewChangedEventArgs + + + + + LinkViewActionChangedEventArgs + + + + + LinkViewStyleChangedEventArgs + + + + + LinkViewSelectedEventArgs + + + + + Gets the selected StartDate + + + + + Gets the selected EndDate + + + + + Gets the eCalendarView to activate + + + + + ShowGridLinesChangedEventArgs + + + + + YearViewDrawDayBackgroundEventArgs + + + + + Gets the Graphics object + + + + + Gets the YearMonth + + + + + Gets the date to draw + + + + + Gets the bounding rectangle + + + + + Gets or sets the Appointment Link style + + + + + YearViewDrawDayTextEventArgs + + + + + Gets the Graphics object + + + + + Gets the YearMonth + + + + + Gets the date to draw + + + + + Gets the bounding rectangle + + + + + RenderDaySlotAppearanceTextEventArgs + + + + + Gets the Graphics object + + + + + Gets the DaySlotAppearance + + + + + Gets the start DateTime + + + + + Gets the bounding rectangle + + + + + Gets the end DateTime + + + + + Gets whether the area is selected + + + + + Gets or Sets the Text to render + + + + + MonthViewPreRenderSlotBackgroundEventArgs + + + + + MonthViewPreRenderSlotBackgroundEventArgs + + + + + MonthViewHorizontalPaddingChangedEventArgs + + + + + RenderTabBackgroundEventArgs + + + + + Gets the Graphics object + + + + + Gets the tab GraphicsPath + + + + + Gets the tab BaseView + + + + + Gets whether the tab is selected or not + + + + + RenderTabBackgroundEventArgs + + + + + Gets or sets the tab text + + + + + RenderViewBorderEventArgs + + + + + Gets the Graphics object used to render + the slot + + + + + Gets the bounding rectangle + + + + + ViewLoadCompleteEventArgs + + + + + Gets the tab BaseView + + + + + MonthMoreItemsIndicatorClickEventArgs + + + + + Gets the associated MonthView + + + + + Gets the eCalendarView to select + + + + + Gets or sets the starting time to navigate to + + + + + TimeLineGetHeaderTextEventArgs + + + + + Gets the associated TimeLineHeaderPanel + + + + + Gets the Header date / time + + + + + Gets or sets the Header Text + + + + + WeekDayCanExtendRangeChangedEventArgs + + + + + PostRenderWeekDayHeaderEventArgs + + + + + Gets the Graphics object + + + + + Gets the WeekDayView + + + + + Gets the DayColumn index + + + + + Gets the bounding rectangle + + + + + PreRenderWeekDayHeaderEventArgs + + + + + Gets or sets whether to cancel default rendering + + + + + PostRenderMonthHeaderEventArgs + + + + + Gets the Graphics object + + + + + Gets the MonthView + + + + + Gets the column index + + + + + Gets the bounding rectangle + + + + + PreRenderMonthHeaderEventArgs + + + + + Gets or sets whether to cancel default rendering + + + + + Constructor + + CalendarView + + + + Locates the view index from the given + DisplayedOwner text + + DisplayedOwner + View index, or -1 if not found + + + + Returns the given view at the specified index. + + This routine will initiate the creation + of the view if it has not previously been created. + + Index + Requested view + + + + Gets the count of items in the collection + + + + + Gets the view at the given index + + Index + Requested view + + + + Gets the view for the given DisplayedOwner + + DisplayedOwner + Requested view + + + + Gets the collection view list + + + + + Constructor + + CalendarView + + + + Adds a range of Owners to the DisplayedOwner collection + + Array of Owners to add + + + + Processes list RemoveItem calls + + Index to remove + + + + Processes list InsertItem calls + + Index to add + Text to add + + + + Processes list SetItem calls (e.g. replace) + + Index to replace + Text to replace + + + + Processes list Clear calls (e.g. remove all) + + + + + Gets and sets the SuspendUpdate state + + + + + ViewDisplayCustomizations + + + + + ViewDisplayCustomizations + + + + + + Handles DaySlotBackgrounds CollectionChanged events + + + + + + + Retrieves the DaySlotAppearance from the given criteris + + + + + + + + + + Determines if the given slot is a valid + day and time slot + + + + + + + + + + Determines if the given slot is a valid time slot + + + + + + + + + Determines if the given slot is a valid time slot + + + + + + + + Determines if the given owner key is valid for the slot + + + + + + + + Occurs when the ViewDisplayCustomizations have changed + + + + + DaySlotBackgrounds + + + + + DaySlotBackgrounds + + + + + Removes the DaySlotBackground for the given DateTime + + + + + + Removes the DaySlotBackground for the given DayOfWeek + + + + + + Adds a range of DaySlotBackgrounds + + + + + + Processes list RemoveItem calls + + Index to remove + + + + Processes list InsertItem calls + + Index to add + Text to add + + + + Processes list SetItem calls (e.g. replace) + + Index to replace + Text to replace + + + + Processes list Clear calls (e.g. remove all) + + + + + Handles collection change notification + + + + + Occurs when the DaySlotBackgrounds collection changes + + + + + Gets and sets the SuspendUpdate state + + + + + DaySlotBackground + + + + + Processes OwnerKeys_CollectionChanged events + + + + + + + Handles collection change notification + + + + + Occurs when the DaySlotBackground collection changes + + + + + Gets or sets the Appearance + + + + + Gets or sets the DateTime + + + + + Gets or sets the DayOfWeek + + + + + Gets or sets the OwnerKeyCollection + + + + + Gets or sets the DaySlotBackgrounds + + + + + HasOwnerKeys + + + + + DaySlotAppearance + + + + + Gets or sets the BackColor + + + + + Gets or sets the Appearance end time + + + + + Gets or sets the DaySlot Font + + + + + Gets or sets the HalfHourBorderColor + + + + + Gets or sets the HourBorderColor + + + + + Gets or sets whether the Text is on top of the borders + + + + + Gets or sets the Appearance start time + + + + + Gets or sets the Text + + + + + Gets or sets the Text Alignment + + + + + Gets or sets the Text Color + + + + + Gets or sets the Selected Text Color + + + + + Gets or sets wheter the Text is displayed when cells are selected + + + + + OwnerKeyCollection + + + + + Processes list RemoveItem calls + + Index to remove + + + + Processes list InsertItem calls + + Index to add + Text to add + + + + Processes list SetItem calls (e.g. replace) + + Index to replace + Text to replace + + + + Processes list Clear calls (e.g. remove all) + + + + + Handles collection change notification + + + + + Occurs when the OwnerKeyCollection changes + + + + + AppointmentCategoryColor + + Color name + Text Color + Border Color + Background Color + + + + AppointmentCategoryColor + + Color name + + + + Occurs when AppointmentCategoryColorCollection has changed + + + + + Color name + + + + + Text Color + + + + + Border Color + + + + + Background Color + + + + + AppointmentCategoryColorCollection + + + + + Adds a AppointmentCategoryColor to the collection + + + + + + Removes an entry from the collection, by color name + + Color name + + + + Removes an entry from the collection, by AppointmentCategoryColor + + AppointmentCategoryColor + + + + Clears the AppointmentCategoryColor collection + + + + + CategoryColorChanged + + + + + + + OnAppointmentCategoryColorCollectionChanged + + + + + Occurs when AppointmentCategoryColorCollection has changed + + + + + Gets the Count of items defined + + + + + Gets the entire list of added AppointmentCategoryColor items + + + + + Gets the AppointmentCategoryColor from the given + color name string index + + + + + + + Appointment parts enum + + + + + Constructor + + eCalendarColor + + + + Gets the Color of the calendar part + + Calendar part + Color + + + + Gets the ColorDef of the part + + Calendar part + Part ColorDef + + + + Creates a LinearGradientBrush from the given part + + Color part + Gradient Rectangle + Created Brush + + + + Creates a LinearGradientBrush from the given ColorDef + + ColorDef + Gradient Rectangle + Created Brush + + + + Creates a LinearGradientBrush from the given ColorDef + + ColorDef + Gradient Rectangle + Gradient angle + Created Brush + + + + Creates a ColorBlend from the given ColorDef + + ColorDef for blend + ColorBlend + + + + Gets the array of color positions + + + + + + + Gets and sets ColorTable + + + + + Gets and sets calendar color scheme + + + + + Constructor + + + + + Sets our current color table to either + a local or global definition + + + + + Month calendar parts enum + + + + + Constructor + + Default color + + + + Sets our current color table to either + a local or global definition + + + + + View calendar parts enum + + + + + Defines available custom calendar color + + + + + Constructor + + Default color + + + + Sets our current color table to either + a local or global definition + + + + + Week/Day calendar parts enum + + + + + Constructor + + Default color + + + + Sets our current color table to either + a local or global definition + + + + + Week/Day calendar parts enum + + + + + Constructor + + + + + Sets our current color table to either + a local or global definition + + + + + Sends ChangedEvent for the OwnerKey property + + Old OwnerKey + New OwnerKey + + + + Sends ChangedEvent for the Locked property + + Old OwnerKey + New OwnerKey + + + + Returns copy of the item. + + + + + Copies the CustomCalendarItem specific properties to new instance of the item. + + New CustomCalendarItem instance + + + + Occurs when the OwnerKey has changed + + + + + Occurs when Locked has changed + + + + + Gets or sets the CollateId used for TimeLine row collation. + + + + + Gets and sets the item OwnerKey + + + + + Gets and set whether modification is enabled + through the user interface" + + + + + Base CalendarItem + + This property holds the base CalendarItem from which + each displayed CustomItem (of this type) is based. + + In order to keep all displayed items "in-sync", it is necessary + to propagate data to and from the base CalendarItem. This is + accomplished via hooking those members you are interested in, at + both the item (HookEvents) and BaseCalendarItem (HookBaseEvents) + level. + + + + + + Gets or sets the category color used for TimeLine CondensedView markers. + Use static members on Appointment class to assign the category color for example Appointment.CategoryRed. + + + + + Gets or sets whether the item is selected. + + + + + Gets and sets the item Visibility + + + + + OwnerKeyChangedEventArgs + + + + + + LockedChangedEventArgs + + + + + + CategoryColorChangedEventArgs + + + + + + Adds a range of CustomCalendarItems to the collection + + Array of items to add + + + + Removes a CustomCalendarItem from + the collection. + + Item to remove + + + + Processes list RemoveItem calls + + Index to remove + + + + Processes list InsertItem calls + + Index to add + CustomCalendarItem to add + + + + Processes list SetItem calls (e.g. replace) + + Index to replace + CustomCalendarItem to replace + + + + Processes list Clear calls (e.g. remove all) + + + + + Hooks needed system events + + + + + + + Processes OwnerKeyChanged events + + + + + + + Processes StartTimeChanged events + + + + + + + Processes EndTimeChanged events + + + + + + + Processes ItemCategoryColorChanged events + + + + + + + Processes ItemVisibleChanged events + + + + + + + Processes ItemCollateIdChanged events + + + + + + + Propagates CollectionChanged events + + + + + Begins Update block + + + + + Ends update block + + + + + Occurs when the collection has changed + + + + + Returns the date that is 30 minutes before or after input date if input date minute is 0 or 30. Otherwise it returns next increment to 0 or 30. + + Date and time. + Indicates whether to add or subtract minutes. + New date time. + + + + Returns date that starts with the day. If passed date is not on the requested date function returns first date with day that is before passed date. + + Date to inspect. + Day of week + Date that starts on given day of week. + + + + Returns whether two days fall on same month and year. + + First date + Second date + true if dates are on same month and year + + + + Returns true if time periods overlap. + + Start of first period. + End of first period. + Start of second period. + End of second period. + true if periods overlap + + + + Gets the abbreviated month name for + the given date + + Date + Abbreviated name + + + + Gets the abbreviated day name for + the given date + + Day of week + Abbreviated name + + + + Represents date-navigation control that is used with CalendarView to provide calendar date navigation. + + + + + Handles CalendarView ViewDateChanged events + + + + + + + Handle CalendarView SelectedViewChanged events + + + + + + + Handles CalendarView_TimeLineViewScrollDateChanged events + + + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Handles NavigateForward button clicks + + + + + + + Handles NavigateBack button clicks + + + + + + + Navigates forward + + + + + NavigateDayForward + + + + + NavigateWeekForward + + + + + NavigateMonthForward + + + + + NavigateYearForward + + + + + NavigateTimeLineForward + + + + + Gets the next forward TimeLine Period Date + + Current date + Next Period Date + + + + Navigates back + + + + + NavigateDayBack + + + + + NavigateWeekBack + + + + + NavigateMonthBack + + + + + NavigateYearBack + + + + + NavigateTimeLineBack + + + + + Gets the next back TimeLine Period Date + + Current date + Next back Period Date + + + + CountMonthSpan + + + + + + + + Updates the Date Label text + + + + + Updates the DayView display + + + + + + + Updates the WeekView display + + + + + + + + Updates the MonthView display + + + + + + + + Updates the YearView display + + + + + + + + Updates the TimeLineView display + + + + + + + + Updates the button images + + + + + Gets image fore color + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when a date Navigation is occurring + + + + + Occurs when a date Navigation has occurred + + + + + Occurs when the DateNavigator needs a formatted date label + + + + + Gets or sets the CalendarView date navigation will be applied to. + + + + + Gets or sets the current Day format label + + + + + Gets or sets the current Week, start format label + + + + + Gets or sets the current Week, end format label + + + + + Gets or sets the current Week, same Year, start format label + + + + + Gets or sets the current Week, same Year, end format label + + + + + + + Gets or sets the current Month, start format label + + + + + Gets or sets the current Month, end format label + + + + + Gets or sets the current Year, start format label + + + + + Gets or sets the current Year, end format label + + + + + Gets or sets the current TimeLine Hour format label + + + + + Gets or sets the current TimeLine Day, start format label + + + + + Gets or sets the current TimeLine Day, end format label + + + + + Gets or sets the current TimeLine Day, same Year, start format label + + + + + Gets or sets the current TimeLine Day, same Year, end format label + + + + + + + Gets or sets the current TimeLine Year, start format label + + + + + Gets or sets the current TimeLine Year, end format label + + + + + Gets or sets whether in Week View week-days navigation is enabled. Default value is true. When week-days navigation is enabled + and start date points to Monday and end date points to Friday, navigating to next day will navigate to next Monday-Friday view. + + + + + DateChangingEventArgs + + + + + DateChangingEventArgs + + + + + Gets the navigation direction + + + + + Gets the old navigation start date + + + + + Gets the old navigation end date + + + + + Gets or sets the new navigation start date + + + + + Gets or sets the new navigation end date + + + + + Gets or sets whether to cancel the operation + + + + + GetDateLabelEventArgs + + + + + Gets the formatted DateLabel + + + + + Constructor + + + + + Constructor + + Day of the week + Count of days + + + + Loads the DayText arrays + + Starting day of week + Count of days + + + + Measures the day text + + Graphics + Text font + + + + Gets the DayText string arrays + + + + + Gets the DaySize Size arrays + + + + + Day text NeedsMeasured flag + + + + + DayRect array management class + + + + + Constructor + + + Rectangle array length + + + + Gets the Rectangle array + + + + + Gets and sets a specific array Rectangle + + Rectangle index to get + Rectangle + + + + Simple DayRect class + + + + + Constructor + + BaseItem + + + + Invalidates the given rectangle + + + + + Gets and sets the bounding rect + + + + + Gets and sets the rect selection status + + + + + Represents base class for the model to view connectors. + + + + + Connects View to a model. + + + + + Disconnects view from model. + + + + + Gets whether connector has connected model to a view. + + + + + Gets or sets the owner key of the owner of the appointments displayed on the view. + + + + + Represents an calendar appointment. + + + + + Defines an interface for property notification change. + + + + + Occurs when property on object or its sub-objects has changed. + + + + + Initializes a new instance of the Appointment class. + + + + + Initializes a new instance of the Appointment class. + + Appointment subject. + Appointment start time + Appointment end time + + + + Initializes a new instance of the Appointment class. + + Appointment subject. + Appointment start time + Appointment end time + Appointment owner key + + + + Initializes a new instance of the Appointment class. + + Appointment subject. + Appointment start time + Appointment duration in minutes + + + + Initializes a new instance of the Appointment class. + + Appointment subject. + Appointment start time + Appointment duration in minutes + Appointment owner key + + + + Called when Visible property has changed. + + Old property value + New property value + + + + Moves the appointment to the specified date and time while keeping its duration constant. + + New start date and time for appointment. + + + + Raises the StartTimeReached event. + + Provides event arguments. + + + + Creates an copy of the appointment. + + Appointment copy. + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Occurs when system time reaches the appointment start time and StartTimeAction is set to fire event. Note that event handler will be called on the thread of System.Timer which is different + than UI thread. You should use BeginInvoke calls to marshal the calls to your UI thread. + + + + + Gets or sets whether appointment is visible in user interface views. Default value is true. + + + + + Gets or sets the tooltip that is assigned to the appointment view. + + + + + Gets or sets the appointment category color string based key that is used to lookup for appointment background and border colors. + Use static members on Appointment class to assign the category color for example Appointment.CategoryRed. + + + + + Gets or sets how the time used by appointment is marked on calendar. For example Free, Tentative, Busy etc. + Use static members on Appointment class to assign the time marker for example Appointment.TimeMarkerBusy + + + + + Gets the collection of reminders associated with this Appointment. + + + + + Gets or sets the appointment subject. + + + + + Gets or sets the appointment description. + + + + + Gets or sets the appointment display template. + + + + + Gets or sets whether appointment is selected in the user interface. + + + + + Gets or sets whether appointment modification through user interface is disabled. Default value is false. + + + + + Gets or sets the appointment start time. + + + + + Gets or sets the appointment end time. + + + + + Gets or sets the time-zone this appointment is defined in. Default value is null which indicates that appointment is + in current system time zone. Note that setting the time zone will affect StartTime and EndTime of appointment if set. + It will convert them to the TimeZone you set but as absolute values meaning that 10:00 AM in previous time zone + will become 10:00 AM in TimeZone you just assigned. + + + + + Gets or sets the StartTime of appointment in local, display time-zone. + + + + + Gets or sets the StartTime of appointment in local, display time-zone. + + + + + Gets the UTC Start Time of appointment. + + + + + Gets the UTC End Time of appointment. + + + + + Gets the calendar appointment is associated with. + + + + + Gets or sets the action performed when StartTime of appointment is reached. Default is none. + + + + + Gets whether this appointment is the recurring appointment instance. + + + + + Gets or sets the root appointment if this instance is an recurring appointment instance (IsRecurringInstance=true). + + + + + Gets or sets additional data associated with the object. + + + + + Gets or sets the reference to the appointment recurrence definition object which defines + recurring appointment properties and range. + + + + + Gets or sets the owner of the appointment. Default value is empty string which indicates default owner. + + + + + Gets whether appointment is all day event or whether it spans multiple days. + + + + + Gets or sets the appointment identifier. This property is provided for your usage in serialization scenarios. It is not set by the control. + + + + + Gets the automatically generated identifier that identifies appointment. + + + + + Gets or sets the image key for the image displayed on appointment view. ImageList property on CalendarView must be set for this property to work. + + + + + Gets or sets the image alignment in relation to the appointment view content. Default value is TopLeft. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Provides more information about the time change for appointment StartTime and EndTime property changes. + + + + + Gets the old value. + + + + + Gets the new value. + + + + + Initializes a new instance of the AppointmentTimePropertyChangedEventArgs class. + + + + + + + Initializes a new instance of the AppointmentCollection class. + + + + + + Gets the calendar collection is associated with. + + + + + Represents appointment recurrence definition. + + + + + Called when IndependentVisibility property has changed. + + Old property value + New property value + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the range type for the recurrence. Default value is no end date for recurrence. + + + + + Gets or sets the recurrence end date. To specify the end date for recurrence set this property and RangeLimitType property to RangeEndDate. + + + + + Gets or sets number of occurrences after which recurrence ends. To specify limited number of recurrences + set this property and set RangeLimitType to RangeNumberOfOccurrences. + + + + + Gets or sets additional data associated with the object. + + + + + Gets or sets the recurring frequency for appointment i.e. daily, weekly, monthly or yearly. + Default value is Daily. + + + + + Gets reference to appointment recurrence is assigned to. + + + + + Gets the settings for Daily recurrence type. + + + + + Gets the settings for Weekly recurrence type. + + + + + Gets the settings for monthly recurrence type. + + + + + Gets the settings for yearly recurrence type. + + + + + Gets or sets the recurrence start date. Default value is DateTime.MinValue which indicates that recurrence starts after + the appointment ends. + + + + + Gets or set the list of dates on which the recurrences are skipped. + + + + + Gets or sets whether generated recurring appointments have independent Visible property setting from root Appointment. + When set to true recurring appointment instances will not by default have Visible property set to the Visible property of root appointment. + Default value is false which means recurring instances by default have Visible property set to the root appointment Visible property. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Represents subset of appointments collection. + + + + + Represents custom collection with INotifyPropertyChanged and INotifyCollectionChanged interface support. + + + + + + Represents collection changed notification interface. + + + + + Occurs when collection changed. + + + + + Creates new instance of object. + + + + + Creates new instance of object. + + List to initialize collection with. + + + + Add item to collection. + + Item to add. + + + + Remove all items from collection. + + + + + Remove all items from collection. + + + + + Checks whether collection contains item. + + Item to look for. + true if item is in collection. + + + + Copy collection to array. + + Array to copy to. + Index to copy from. + + + + Gets enumerator for collection. + + Enumerator. + + + + Returns index of an item. + + Reference to item. + Index of item. + + + + Insert item at specified location. + + Index to insert item in. + Item to insert. + + + + Inserts item. + + Index to insert item at. + Reference to item. + + + + Removes item from collection. + + Item to remove. + true if item was removed. + + + + Remove item at specified location. + + Index of item to remove. + + + + Remove item at specified location. + + Index of item to remove. + + + + Set item on location. + + Index + Item to assign. + + + + Returns items directly without checks. + + List of items. + + + + Occurs when collection is read. + + + + + Occurs when collection property has changed. + + Event arguments. + + + + Blocks the collection re-entrancy. + + IDisposable to end re-entrancy + + + + Checks whether call creates re-entrancy. + + + + + Called when collection has changed. + + Event arguments. + + + + Occurs when property value has changed. + + + + + Returns number of items in collection. + + + + + Returns item at index. + + Index of item. + Item at index. + + + + Returns the IList interface for items in collection. + + + + + Occurs when collection has changed. + + + + + Initializes a new instance of the AppointmentSubsetCollection class with appointments between given start and end date. + + + + + + + + Invalidates collection content due to the change to appointments or some other condition. Invalidating collection + content causes the collection elements to be re-generated on next collection read access. + + + + + Gets the calendar collection is associated with this collection. + + + + + Defines a working day. + + + + + Called when WorkStartTime has changed. + + Old property value. + New property value. + + + + Called when WorkEndTime has changed. + + Old property value. + New property value. + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the work start time. + + + + + Gets or sets the work end time. + + + + + Gets the calendar work day is associated with. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Represents the calendar model control. + + + + + Initializes a new instance of the CalendarModel class. + + + + + Gets reference to the Day object which represents day in calendar. + + Date to retrieve day for. + Returns reference to Day object. + + + + Returns true if appointment overlapps with one or more of the appointments in the model. + + Appointment to check overlap for. + true if there are appointments overlapping appointment otherwise false. + + + + Finds appointments that overlap with the parameter appointment. + + Appointment to use to find overlapps + Array of appointments that overlap parameter. + + + + Returns the calendar date time which has seconds part set to 0. + + + + + + + Raises the AppointmentRemoved event. + + Event arguments + + + + Raises the AppointmentAdded event. + + Event arguments + + + + Invalidates appointments cache store and causes recurrences to be regenerated when requested. + + + + + Suspends internal control updates to the cache structures etc. When making changes on multiple appointments + time related properties or when adding multiple appointments before doing so call BeginUpdate and after + updates are done call EndUpdate method to optimize performance. + Calls to BeginUpdate method can be nested and only last outer most EndUpdate call will resume internal control updates. + + + + + Resumes internal control updates that were suspended using BeginUpdate call and invalidates internal cache. + + + + + Raises AppointmentStartTimeReached event. + + Event arguments + + + + Raises ReminderNotification event. + + Event arguments + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Occurs when an appointment has been added to the model. + + + + + Occurs when an appointment has been removed from the model. + + + + + Occurs when AppointmentStartTime has been reached. This event can be used to trigger appointment reminders. Note that event handler will be called on the thread of System.Timer which is different + than UI thread. You should use BeginInvoke calls to marshal the calls to your UI thread. + + + + + Occurs when Reminder's ReminderTime has been reached. Note that event handler will be called on the thread of System.Timer which is different + than UI thread. You should use BeginInvoke calls to marshal the calls to your UI thread. + + + + + Occurs when Appointments collection has been cleared. + + + + + Gets appointments associated with this calendar. + + + + + Gets owners of appointments associated with this calendar. + + + + + Gets working days associated with this calendar. + + + + + Gets the calendar/date based working days collection. This collection allows you to specify working time for specific dates. Values specified here take precedence over working hours set through WorkDays collection. + + + + + Gets or sets whether Appointment StartTime and EndTime values retain seconds and milliseconds. When + set to false seconds and milliseconds are discarded. When set to true the DateTime set to appointment + StartTime and EndTime is used as is including seconds and milliseconds. Default value is false. + + + + + Gets whether internal control update is suspended due to the call to BeginUpdate method. + + + + + Gets or sets the default display time zone used for the appointments. Default value is null which indicates that system time-zone is used. + Display Time zone can also be set for each Owner on Owner object. Value set here is used if specific display time-zone is not set on user. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Gets the collection of custom reminders that are not associated with appointments. + + + + + Defines arguments for appointment related events. + + + + + Gets the appointment referenced by this event. + + + + + Initializes a new instance of the AppointmentEventArgs class. + + + + + + Represents specific date based work day. + + + + + Initializes a new instance of the WorkDay class. + + + + + Initializes a new instance of the WorkDay class. + + Date this work-day represents + + + + Called when Date property has changed. + + Old property value. + New property value. + + + + Gets or sets the date this day represents. + + + + + Represents collection of calendar work days. + + + + + Initializes a new instance of the AppointmentCollection class. + + + + + + Initializes a new instance of the CalendarWorkDayCollection class. + + + + + + Gets the Owner of work-day collection. + + + + + Gets the calendar collection is associated with. + + + + + Gets the item based on the Key assigned to the item + + Date to retrieve data for. + Reference to CalendarWorkDay or null if no day in collection. + + + + Defines the daily recurrence settings. + + + + + Initializes a new instance of the DailyRecurrenceSettings class. + + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the days of week on which appointment is repeated. + + + + + Gets or sets the interval between recurring appointments. Default value is 1. Setting this value to for example 3 means that + recurrence is repeated every 3 days. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Returns number of weekdays (Monday-Friday) between two dates. + + Start date + End date + Total number of weekdays between two dates + + + + Return total number of days specified by day parameter between two dates. + + Start date. + End date. + Day of week + Number of days between two dates + + + + Returns the date/time that represents end of the day value. + + + + + + + Returns the date/time that represents beginning of the day value. + + + + + + + Returns true if date falls at begging of the day 12:00 AM + + + + + + + Gets greater date between two dates. + + Date 1 + Date 2 + Greater date. + + + + Returns true if both dates are on same day and year. + + First date + Second date + true if dates are on same day and year + + + + Returns true if time periods overlap. + + Start of first period. + End of first period. + Start of second period. + End of second period. + true if periods overlap + + + + Represents the calendar day. + + + + + Initializes a new instance of the Day class. + + + + + + + Invalidate the day appointments + + + + + Gets appointments that start on this day. + + + + + Gets the date this day represents. + + + + + Gets the Calendar this day is part of. + + + + + Specifies notification type when appointment start time has been reached. + + + + + No action is taken. + + + + + StartTimeReached event is fired. + + + + + StartTimeCommand is executed. + + + + + Both event and command are performed. + + + + + Specifies notification type when reminder time has been reached. + + + + + No action is taken. + + + + + Reminder event is fired. + + + + + Reminder Command is executed. + + + + + Both event and command are performed. + + + + + Specifies the recurrence range type. + + + + + Recurrence range has no end date specified. + + + + + Recurrence ends on date specified by RangeEndDate property. + + + + + Recurrence ends after specified number of repeats by RangeNumberOfOccurrences property. + + + + + Specifies the pattern type for appointment recurrence. + + + + + Appointment recurs daily. + + + + + Appointment recurs weekly. + + + + + Appointment recurs monthly. + + + + + Appointment recurs yearly. + + + + + Specifies the relative day in month for recurrence. + + + + + No value specified. + + + + + The first occurrence of the specified day in its month. + + + + + The second occurrence of the specified day in its month. + + + + + The third occurrence of the specified day in its month. + + + + + The fourth occurrence of the specified day in its month. + + + + + The last occurrence of the specified day in its month. + + + + + Specifies on which day the appointment is repeated. + + + + + Specifies on which days daily recurrence is repeated. + + + + + Appointment is repeated on all days. + + + + + Appointment is repeated on week-days only, Monday-Friday. + + + + + Appointment is repeated on weekend-days only, Saturday-Sunday. + + + + + Specifies on which month monthly appointment recurrence is repeated. + + + + + Represents collection of holidays. + + + + + Constructor + + Text line start + Text line end + + + + Attributes + + + + + Id + + + + + LineEnd + + + + + LineStart + + + + + Value + + + + + Constructor + + Id + Value + + + + Gets or sets the attribute Id + + + + + Gets or sets the attribute value + + + + + Export DNB internal Model/Appointment data layout into + ICS (Internet Calendaring and Scheduling - RFC5545) format file. + + + + + IcsExporter + + + + + IcsExporter + + + + + + Exports Appointment data in the iCalendar format + + Array of OwnerKeys + Array of CalendarNames + Export StreamWriter + + + + Exports all appointments to the given export file. + + Output file path + + + + Exports all appointments to the given export stream. + + Output StreamWriter + + + + Exports all appointments for the specified OwnerKey to + the given export file. + + Appointment OwnerKey + Output file path + + + + Exports all appointments for the specified OwnerKey to + the given export stream. + + Appointment OwnerKey + Output StreamWriter + + + + Exports all appointments for the specified OwnerKey to + the given export file, using the specified calendar name. + + Appointment OwnerKey + Associated Calendar Name + Output file path + + + + Exports all appointments for the specified OwnerKey to + the given export stream, using the specified calendar name. + + Appointment OwnerKey + Associated Calendar Name + Output StreamWriter + + + + Exports all appointments for the specified OwnerKey array to + the given export file, using the specified associated calendar name array. + + Array of OwnerKeys + Array of 1:1 associated Calendar Names + Output file path + + + + Exports model data for each requested OwnerKey + + + + + Exports the beginning calendar sequence + + + + + + Exports the ending calendar sequence + + + + + Exports a calendar event (appointment) + + + + + + Exports the appointment Recurrence Rule + + + + + + ExportDailyRRule + + + + + + ExportWeeklyRRule + + + + + + ExportMonthlyRRule + + + + + + ExportYearlyRRule + + + + + + AddRRuleByDay + + + + + + + AddRRuleByDay + + + + + + + AddRRuleByDay + + + + + + + + AddRRuleInterval + + + + + + + AddRRuleRangeInfo + + + + + + + ExportExDate + + + + + + ExportAlarms + + + + + + GetDuration + + + + + + + GetUtcDate + + + + + + + Adds escape chars to text meta data + + + + + + + Exports a line + + + + + + Performs line wrapping (aka folding) + + Text to wrap + Wrapping length + + + + + Determines where to break a line of text + + Text + Current text pos + Max line length + + + + + Determines if a char is a break char + + + true if break char + + + + GetDefaultOwnerKeys + + A list of all defined model OwnerKeys + + + + GetUniversalTime + + + + + + + Determines if an appointment is visible + with respect to the given ownerKey + + + + + + + + Gets or sets the Calendar Product Id. + + + + + CalendarModel + + + + + ICS (Internet Calendaring and Scheduling - RFC5545) import into + corresponding DNB internal Model/Appointment data layout + + + + + Imports all appointments from the given export file's + calName array Calendar entries, and associates them with the + given OwnerKey array entries. + + Array of Calendar names + Array of associated OwnerKeys + Import file path. + + + + Imports all appointments from the given input file. + + Input file + + + + Imports all appointments from the given input stream. + + Input file StreamReader + + + + Imports all appointments from the given export file + calName Calendar entry. + + Calendar entry name + Import file path. + + + + Imports all appointments from the given export stream + calName Calendar entry. + + Calendar entry name + Import file StreamReader. + + + + Imports all appointments from the given export file + calName Calendar entry, and associates them with the + given OwnerKey. + + Calendar entry name + Associated OwnerKey + Import file path. + + + + Imports all appointments from the given export stream + calName Calendar entry, and associates them with the + given OwnerKey. + + Calendar entry name + Associated OwnerKey + Import file StreamReader. + + + + Imports all appointments from the given export file + calName array Calendar entries, and associates them with the + given OwnerKey array entries. + + Array of Calendar names + Array of associated OwnerKeys + Import file path. + + + + Initiates the processing of each calendar component entry + + + + + + Processes individual calendar component entries + + + + + Processes final Calendar component termination + + + + + + Processes Calendar Scale (Gregorian only support) + + + + + + Processes Calendar version entries + + + + + + Processes Event components for the given OwnerKey + + Associated OwnerKey + + + + Processes Event termination + + + + + + + + ProcessEventEndEx + + + + + + + + + Processes Daily recurrences + + + + + + + + Processes Weekly recurrences + + + + + + + + Processes Monthly recurrences + + + + + + + + SetNewByDayAppStartTime + + + + + + + + Processes Yearly recurrences + + + + + + + + Processes event reminders + + + + + + Processes RecurrenceId events + + + + + + + + Processes Recurrence range values + + + + + + + + Determines if the given date is a valid + SkippedRecurrence date. + + + + + + + + + Determines if the given date is a skippable + byMonthDate + + + + + + + + + Determines if the given date is a skippable ByMonth date + + + + + + + + + Determines if the given date is a skippable ByDays date + + + + + + + + ProcessRDateRange + + + + + + + + Processes Attribute date values + + + + + + + + Processes attribute DateTime values + + + + + + + + Processes Value=Date entries + + + + + + + + Processes TxId attribute DateTime values + + + + + + + + + GetTzIdDelta + + + + + + + + GetLastPartDate + + + + + + + + GetTimeZone + + + + + + + Processes event Description values + + + + + + + + Processes event Duration values + + + + + + + + Gets the int value from the given Regex Match + + + + + + + + + Processes event ExDate values + + + + + + + Processes ExDate Value=Date values + + + + + + + Processes ExDate Value=DateTime values + + + + + + + + Processes ExDate Value=DateTime values + + + + + + + + + Combines the main evData exDates list with a secondary + accumulated exDates list + + + + + + + Processes RDate attributes and values + + + + + + + + Processes RDate Value=Date values + + + + + + + Processes RDate Value=DateTime values + + + + + + + + Processes RDate Value=DateTime values + + + + + + + + + Processes RDate Value=Period values + + + + + + + Combines RDate values + + + + + + + + Processes RecurrenceId entries + + + + + + + Processes RRule entries + + + + + + + Processes ByDay= attribute entries + + + + + + + + Processes individual ByDay.WeekDay entries + + + + + + + + + Processes ByMonth= and ByMonthDay= attribute entries + + + + + + + + + + + Processes RRule Count attribute entries + + + + + + + + Processes Freq= attribute entries + + + + + + + + Processes Interval= attribute entries + + + + + + + + Processes Until= attribute entries + + + + + + + + Processes Summary entries + + + + + + + + Processes UID entries + + + + + + + + Processes VAlarm component entries + + + + + + Processes VAlarm Trigger properties + + + + + + + Processes DNB CategoryColor entries + + + + + + + + Processes DNB DisplayTemplate entries + + + + + + + + Processes DNB specific ImageAlign entries + + + + + + + + Processes DNB ImageKey entries + + + + + + + + Processes DNB Locked entries + + + + + + + + Processes DNB RecStartDate entries + + + + + + + Processes DNB StartTimeAction entries + + + + + + + + Processes DNB TimeMarkedAs entries + + + + + + + + Processes DNB ToolTip entries + + + + + + + + Processes VTimeZone components + + + + + Processes TxId values + + + + + + + Processes TzOffset values + + + + + + + ProcessVTimezoneEnd + + + + + + + Processes VTimeZone parts (DayLight, Standard) + + + + + + + Processes VToDo entries + + + + + + Processes X-WR-CALNAME entries + + + + + + + Skips the given component block (until it reaches + the corresponding ctkn:END value) + + + + + + Gets the token associated with the given text + + Token registry + Token text + Token, or -1 if not found + + + + Gets the first CalendarEntry + + + + + + Gets the next CalendarEntry + + + + + + Gets the enum value, given the token type and text + + + + + + + + Initiates the parsing of the given import file + + + + + + Gets the next logical line of text + + + + + + + + + Initiates the syntactic parsing of the given line + + + + + + + + Determines if the given line is blank + + + + + + + Parses the Id portion of the given line + + + + + + + + Initiates the parsing of the line attributes + + + + + + + Parses line attribute data + + + + + + + Parses the value portion of the given line + + + + + + + Removes Meta data from the value text + + + + + + + Gets the eRelativeDayInMonth from the given dayOfWeek + + + + + + + Gets the DayOfWeek from the given eDayOfWeekRecurrence + + + + + + + Determines if the given Calendar (by it's name) is + a valid calendar to import + + + + + + + Gets the OwnerKey based upon the + given Calendar name + + + + + + + Reports encountered import errors + + + + + + + Ignore import Errors + + + + + Gets or sets the iCalendar components to include in the import. + + + + + CalendarModel + + + + + Defines event arguments for SubPropertyChanged event. + + + + + Reference to PropertyChangedArgs of changed property. + + + + + Reference to the source object of the event. + + + + + Initializes a new instance of the SubPropertyChangedEventArgs class. + + + + + + + Represents the calendar month. + + + + + Initializes a new instance of the Month class. + + + + + + + Gets collection of days in this month. + + + + + Gets the month year. + + + + + Gets the month. + + + + + Gets the Calendar this day is part of. + + + + + Defines monthly recurrence settings. + + + + + Initializes a new instance of the MonthlyRecurrenceSettings class. + + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the day of month on which appointment is repeated. + When RepeatOnRelativeDayInMonth property is set to value other than None value of this property is not used. + + + + + Gets or sets whether appointment should repeat on first, second, third, fourth or last day in month as specified + by RepeatOnDayOfMonth property. Property applies only for RecurrenceType Monthly or Yearly. + + + + + Gets or sets the interval between recurring appointments. Default value is 1. + + For example, setting RepeatInterval to 2 means that appointment will recur every 2 months. + + + + + + Gets or sets the day of week on which relative repeat as specified by RepeatOnRelativeDayInMonth is effective. + For example setting RepeatOnRelativeDayInMonth to First and RelativeDayOfWeek to Monday will repeat the appointment on first + Monday in a month. + + + + + Gets or sets the months on which appointment is repeated. This property is represented by bit-flag enum + which means that you can combine the values from eMonthRecurrence enum using OR operator to specify multiple values. + Default value is All. + + For example you could set this property to eMonthRecurrence.January | eMonthRecurrence.July to repeat appointments on January and July only. + + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Initializes a new instance of the NotificationRequest class. + + + + + + + Gets or sets requested notification time. + + + + + Gets the callback handler for notification when notification time is reached. + + + + + Provides notification support for appointments. + + + + + Initializes a new instance of the NotificationServerEventArgs class. + + + + + + Gets the time notification is sent on. + + + + + Gets or sets the next requested notification time by the handler of the event. + Handler of event must set this to the desired next notification time in order to be notified. + The value recorded will be the lowest value set by all handlers. + + + + + Initializes a new instance of the Owner class. + + + + + Initializes a new instance of the Owner class. + + + + + + Initializes a new instance of the Owner class. + + + + + + + Initializes a new instance of the Owner class. + + + + + + + + Initializes a new instance of the Owner class. + + + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets working days associated with this owner. If empty WorkDays from CalendarModel are used instead. + + + + + Gets date based working days associated with this owner. Date specific working days take precedence over days specified in WorkDays collection. If empty WorkDays on owner or from CalendarModel are used instead. + + + + + Gets or sets the unique key that identifies the owner. + + + + + Gets or sets the owner description. For example if owner represents person, it would be person name or if owner represents resource + like room it would be the room name. + + + + + Gets or sets custom data associated with the object. + + + + + Gets the calendar owner is associated with. + + + + + Gets or sets the display time-zone for this owner. Default value is null. + + + + + Gets or sets the owner color scheme used to represent owner data in user interface. + + + + + Gets or sets the display name for the owner. Display name is used in User Interface to identify the owner. + If not specified the Key is used instead in UI. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Initializes a new instance of the AppointmentCollection class. + + + + + + Gets the calendar collection is associated with. + + + + + Gets the item based on the Key assigned to the item + + + + + + + Defines change actions. + + + + + Items were added. + + + + + Items were removed. + + + + + Items were replaced. + + + + + Items were moved. + + + + + Collection was reset. + + + + + Defines delegate for collection notification events. + + Event sender. + Event arguments. + + + + Defines collection change notification event arguments. + + + + + Create new instance of object. + + Action + + + + Creates new instance of object. + + Specifies action. + List of changed items. + + + + Creates new instance of object. + + Specifies action. + Item that was changed. + + + + Creates new instance of object. + + Action. + New items in collection. + Old items in collection. + + + + Creates new instance of object. + + Action. + List of changed items. + Starting index of change. + + + + Creates new instance of object. + + Action + Changed item + Index of change + + + + Creates new instance of object. + + Action + New item + Old item + + + + Creates new instance of object. + + Action + New items. + Removed items. + Starting index of change. + + + + Creates new instance of object. + + Action + Changed items + New index + Old index + + + + Creates new instance of object. + + Action + Changed item + New index + Old index + + + + Creates new instance of object. + + Action. + New item + Old item + New index + + + + Gets the type of the collection change action. + + + + + Gets list of newly added items. + + + + + Gets new starting index. + + + + + Gets list of removed items. + + + + + Old starting index. + + + + + Generates Daily recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Daily recurrence type. + Start date for generation. + End date for generation. + + + + Generates Weekly recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Weekly recurrence type. + Start date for generation. + End date for generation. + + + + Generates Monthly recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Monthly recurrence type. + Start date for generation. + End date for generation. + + + + + Generates Daily recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Daily recurrence type. + Start date for generation. + End date for generation. + + + + Generates Weekly recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Weekly recurrence type. + Start date for generation. + End date for generation. + + + + Generates Monthly recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Monthly recurrence type. + Start date for generation. + End date for generation. + + + + Generates Yearly recurring appointments. If appointment is assigned to calendar method must populate the Calendar.Appointments collection as well. + + Collection to add generated recurrences to + Recurrence description, must be of Monthly recurrence type. + Start date for generation. + End date for generation. + + + + Represents an appointment reminder. + + + + + Initializes a new instance of the Reminder class. + + + + + Initializes a new instance of the Reminder class. + + + + + + Initializes a new instance of the Reminder class. + + + + + + + Gets or sets the date and time reminder will be executed at. + + Unless you mark reminder as inactive by setting the IsActive=false the reminder will occur next time + notifications are updated or when appointment data is loaded. + + + + + + Gets or sets the action performed when reminder time is reached. Default value is Event and Command. + + + + + Snoozes reminder so it occurs at specified notification time. This method should be used instead of the SnoozeDateTime property and it will + set the SnoozeDateTime property to the next notification time. + + Next reminder notification time. + + + + Runs the ReminderNotification as if the reminder time has been reached. + This method is automatically called by reminder once ReminderTime has been reached. + + + + + Raises the ReminderNotification event. + + + + + + Creates an copy of the reminder. + + Reminder copy. + + + + Occurs when ReminderTime has been reached. Note that event handler will be called on the thread of System.Timer which is different + than UI thread. You should use BeginInvoke calls to marshal the calls to your UI thread. + + + + + Gets or sets whether reminder will be active for appointments that are in the past. Default value is true. + This property is useful if you are creating recurring appointments with reminders that start in past but don't want reminders + for past instances of appointment to be active. + + + + + Gets or sets the reminder description. + + + + + Gets or sets additional data associated with the object. + + + + + Gets the Appointment reminder is attached to. + + + + + Gets or sets whether reminder is active. Active reminders fire events or execute commands when + reminder time has been reached. Set this value to false to dismiss the reminder. + + + + + Gets or sets the next snooze time for the reminder. Use the Snooze method if you want to snooze the reminder correctly. + + + + + Gets or sets whether this reminder is snooze reminder usually created by Reminder dialog when user hits the Snooze button. + Default value is false. + + + + + Defines arguments for reminder related events. + + + + + Gets the reminder referenced by this event. + + + + + Initializes a new instance of the ReminderEventArgs class. + + + + + + Represents collection of reminders. + + + + + Initializes a new instance of the ReminderCollection class. + + + + + + Initializes a new instance of the ReminderCollection class. + + + + + + Gets parent appointment. + + + + + Gets parent model if collection is custom reminders collection. + + + + + Defines weekly recurrence settings. + + + + + Initializes a new instance of the WeeklyRecurrenceSettings class. + + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the days of week on which appointment is repeated. This property is represented by bit-flag enum + which means that you can combine the values from eDayOfWeekRecurrence enum using OR operator to specify multiple values. + Default value is All. + + This property value cannot be set to eDayOfWeekRecurrence.None. + + + + + + Gets or sets the interval between recurring appointments. Default value is 1. + + For example, setting RepeatInterval to 2 means that appointment will recur every 2 weeks. + + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Represents working day in calendar. + + + + + Initializes a new instance of the WorkDay class. + + + + + Initializes a new instance of the WorkDay class. + + + + + + Initializes a new instance of the WorkDay class. + + + + + + + + Gets or sets the day of week this instance represents. + + + + + Represents collection of working days. + + + + + Initializes a new instance of the AppointmentCollection class. + + + + + + Initializes a new instance of the WorkDayCollection class. + + + + + + Gets the Owner of work-day collection. + + + + + Gets the calendar collection is associated with. + + + + + Gets the item based on the Key assigned to the item + + Day of week to retrive data for. + Reference to WorkDay or null if no day in collection. + + + + Represents a work time. + + + + + Initializes a new instance of the WorkTime structure. + + + + + + + Gets or sets the hour from 0 to 23 this time instance represents. + + + + + Gets or sets the minute from 0 to 59 this time instance represents. + + + + + Determines if the WorkTime is Empty + + + + + Represents the calendar year. + + + + + Initializes a new instance of the Year class. + + + + + + + Returns read-only collection of months in year. + + + + + Defines yearly recurrence settings. + + + + + Initializes a new instance of the YearlyRecurrenceSettings class. + + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Raises the SubPropertyChanged event. + + Event arguments + + + + Gets or sets the interval between recurring appointments. Default value is 1. + + For example, setting RepeatInterval to 2 means that appointment will recur every 2 years. + + + + + + Gets or sets the day of month on which appointment is repeated. + When RepeatOnRelativeDayInMonth property is set to value other than None value of this property is not used. + + + + + Gets or sets whether appointment should repeat on first, second, third, fourth or last day in month as specified + by RepeatOnDayOfMonth property. Default value is None. + + + + + Gets or sets the day of week on which relative repeat as specified by RepeatOnRelativeDayInMonth is effective. + For example setting RepeatOnRelativeDayInMonth to First and RelativeDayOfWeek to Monday will repeat the appointment on first + Monday in a month. + + + + + Gets or sets the month the appointment is repeated on every year. + + + + + Occurs when property value has changed. + + + + + Occurs when property or property of child objects has changed. This event is similar to PropertyChanged event with key + difference that it occurs for the property changed of child objects as well. + + + + + Constructor + + Assoc CalendarModel + Assoc MonthView + + + + Performs Model connection processing + + + + + Severs the Model/MonthView connection + + + + + Clears individual MonthWeek view connections + + MonthWeek + + + + Loads Model/MonthView connection data + + + + + Refreshes the data in a previously established + and loaded connection + + + + + Process any remaining removed data + + + + + + + Updates individual MonthWeek views + + MonthWeek + List of appointments + List of cached views + + + + Gets all appointment AppointmentMonthViews + + + + + + + Gets the view from the MonthWeek list + + MonthWeek + Appointment + Appointment view + + + + Gets the view from the cached list + + Appointment + Cached views + Appointment view + + + + Gets a new appointment view + + Appointment + New view + + + + Gets a new CustomItem + + + + + + + Removes duplicate multi-day appointments + + + Trimmed list + + + + Removes out-dated views + + + + + + + + + Returns the Month view + + + + + + Verifies the Model and MonthView are valid + + + + + Handles Model property change notifications + + + + + + + Handles ModelSubProperty change notifications + + object + SubPropertyChangedEventArgs + + + + Gets the connection status + + + + + Constructor + + Parent CalendarView + + + + OnIsSideBarVisibleChanged event propagation + + + + + Hooks (or unhooks) needed events + + True to hook, false to unhook + + + + Processes CalendarView SelectedViewChanged events + + CalendarView + SelectedViewEventArgs + + + + Processes StartDate changes + + + + + + + Processes EndDate changes + + + + + + + Processes CalendarView IsMonthSideBarVisibleChanged events + + CalendarView + SelectedViewEventArgs + + + + Gets the view area under the given mouse + point (tab, header, content, etc) + + Point + eViewArea + + + + Gets the date selection from the given point. The startDate + and endDate will vary based upon the view type (WeekDay / Month) + + Point in question + out start date + out end date + True if a valid selection exists + at the given point + + + + Handles selected item changes + + CalendarItem + EventArgs + + + + Sets the current selected item + + Previous CalendarItem + New CalendarItem to select + Base selected CalendarItem + + + + Updates each monthWeeks DayRects to reflect + the date selection start and end values + + + + + Performs NeedRecalcSize requests + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Updates our connection model view + + + + + Updates our CalendarItems list + + + + + Sorts the provided CalendarItems + + Sorted CalendarItems + + + + Calculates the display bounds for the AppointmentView + + CalendarItem + Week associated with the view + Row accumulator + + + + Gets the starting day index for the given appointment + + Week index + CalendarItem + Day of week index (0-6) + + + + UpdateMoreItems + + + + + + + + Calculates display info for the MonthWeek data + + Start date + End date + + + + Paint processing + + ItemPaintArgs + + + + Calculates the range of days needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Day start index + [out] Day end index + Day range count (end - start) + + + + Calculates the range of weeks needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Week start index + [out] Week end index + Week range count (end - start) + + + + Draws the top Day of the week header + + ItemPaintArgs + Start day index + End day index + + + + Draws day header and content + + ItemPaintArgs + Week start index + Week end index + Day start index + Day end index + + + + DrawDayBackground + + + + + + + + + Draws the day content + + + Week index + Day index + Pen + + + + GetSlotState + + + + + + Gets the content calendar part for the given + week and dayMonth + + + + + + Draws day header + + + Week index + Day index + Text pen + + + + GetDayHeaderText + + + + + + + Initiates the drawing of weekly appointments + + ItemPaintArgs + Week start index + Week end index + + + + Gets the More image path + + + + + + Draws the SideBar header + + ItemPaintArgs + Week start index + Week end index + + + + MouseDown event processing + + + + + + CalendarItem left mouseDown processing + + Week index + Day index + + + + Handles MonthView left MouseDown events + + Week index + Day index + + + + ProcessMoreButtonDown + + + + + + + + MouseMove event processing + + MouseEventArgs + + + + Gets the cursor + + Cursor + + + + Initiates a user "DragDrop" operation - if enabled + + + True if operation started + + + + Drags the given appointment from one view to another + + Previous view + AppointmentView + Point + + + + Processes MonthView mouseMove events + + + + + + + ProcessMoreMouseMove + + + + + + + + Processes CalendarItem mouseMove events + + Week index + Day index + + + + Gets the CalendarItems current week/day range + + CalendarItem + [out] Start week index + [out] End week index + Day index + + + + Processes CalendarItem left resizing + + Week index + Day index + + + + Processes CalendarItem right resizing + + Week index + Day index + + + + Gets the week and day index item for + the given point + + Point + [out] Week index + [out] Day index + Success or failure + + + + Gets the week index for the given point + + Point + Week index + + + + Gets the day index for the given point + + Point + Week index + Day index + + + + Processes KeyDown events + + + + + + Processes Up and Down Key events + + + + + + + Processes Left and Right key events + + + + + + + Processes Hoe key events + + + + + + Processes End key events + + + + + + Gets the week containing the given date + + + Week or -1 + + + + Gets the Home and End week from the + current selection range + + + + + + Returns copy of the item. + + + + + Copies the MonthView specific properties to new instance of the item. + + New MonthView instance + + + + Gets and sets the SideBar visibility + + + + + Gets the sidebar width + + + + + Gets the DayHeader height + + + + + IsSideBarVisibleChangedEventArgs + + + + + Constructor + + + + + + Calculates the day rectangles for the + current bounding rectangle + + + + + Gets array of CalendarItems + + + + + Gets the first day of the week + + + + + Gets and sets the week bounding Rectangle + + + + + Gets the day Rectangles + + + + + Gets the MoreItems + + + + + Gets the week day range text + + + + + Gets day height + + + + + Gets day width + + + + + Constructor + + + + + Updates the posWin + + View rectangle + + + + Paint processing + + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets and sets the window content text + + + + + Gets the calculated window height + + + + + Gets the Culture used by the date time input and month calendar controls + + reference to CultureInfo + + + + Gets or sets the CultureInfo for the culture used by the DateTime and Numeric Input controls. + Default value is null which indicates that controls will use CurrentUICulture. + + + + + Constructor + + + + + Gets whether the indicator is visible + + + + + + Gets whether the indicator is visible + in the given view + + + + + + + + Handles ColorDefChanged events + + + + + + + Handles TimeIndicatorChanged propagation + + + + + Handles OnTimeIndicatorColorChanged propagation + + + + + Handles TimeIndicatorTimeChanged propagation + + + + + + + Begins Update block + + + + + Ends update block + + + + + Occurs when the collection has changed + + + + + Occurs when a TimeIndicator time has changed + + + + + Occurs when a TimeIndicator Color has changed + + + + + Gets the Indicator display time. + + The DisplayTime is the addition of the IndicatorTime + and IndicatorTimeOffset. + + + + + Gets or sets whether we are in design mode + + + + + Gets or sets whether the timer indicator + is protected (can't be deleted) + + + + + Gets or sets the leading edge border color + + + + + Gets or sets whether automatic time updates are enabled. + This property, whose default is true, is only utilized when + the IndicatorSource is set to eTimeIndicatorSource.SystemTime + + + + + Gets or sets the Indicator Display Area. + + This property determines where the Indicator is + drawn: in the Time Header, View Content, or both. + + + + + Gets or sets the Indicator color + + + + + Gets or sets the IndicatorTime display level + + + + + Gets or sets the Indicator time + + + + + Gets or sets the Indicator time offset. + + This value is added to the current IndicatorTime + before displaying the indicator. + + + + + Gets or sets the Indicator visibility + + + + + Gets or sets the User defined data associated with the object + + + + + Gets or sets the thickness of the Indicator + + + + + Gets or sets the IndicatorTime source + + + + + TimeIndicatorConvertor + + + + + Specifies the source for the IndicatorTime + + + + + Specifies the Indicator visibility + + + + + Specifies the Indicator display area + + + + + Specifies the Indicator display level + + + + + Adds a range of TimeIndicators to the collection + + Array of items to add + + + + Processes list RemoveItem calls + + Index to remove + + + + Processes list InsertItem calls + + Index to add + TimeIndicator to add + + + + Processes list SetItem calls (e.g. replace) + + Index to replace + TimeIndicator to replace + + + + Processes list Clear calls (e.g. remove all) + + + + + IndicatorCollectionChanged + + + + + + + IndicatorColorChanged + + + + + + + IndicatorTimeChanged + + + + + + + Propagates TimeIndicatorCollectionChanged events + + + + + Propagates OnTimeIndicatorColorChanged events + + + + + + Propagates OnTimeIndicatorTimeChanged events + + + + + + Updates our system timer use + + + + + Determines if a system timer is needed + + true if needed + + + + Handles our timer tick events + + + + + + + Begins Update block + + + + + Ends update block + + + + + Occurs when the TimeIndicator collection has changed + + + + + Occurs when a TimeIndicator time has changed + + + + + Occurs when a TimeIndicator Color has changed + + + + + TimeIndicatorTimeChangedEventArgs + + + + + Gets the TimeIndicator being affected + + + + + Gets the old DateTime + + + + + Gets the new DateTime + + + + + TimeIndicatorColorChangedEventArgs + + + + + Gets the TimeIndicator being affected + + + + + Gets and sets work start time + + + + + Gets and sets work end time + + + + + Constructor + + Assoc CalendarModel + Assoc TimeLineView + + + + Performs Model connection processing + + + + + Hooks or unhooks our system events + + + + + + Handles Model property change notifications + + + + + + + Handles ModelSubProperty change notifications + + object + SubPropertyChangedEventArgs + + + + Handles CustomItemCollection change events + + + + + + + Severs the Model/TimeLineView connection + + + + + Clears TimeLine view items + + + + + Loads Model/TimeLineView connection data + + + + + Loads the view data + + Forceful reload + Validation needed + + + + Loads the Period data (visible view range) + + Forceful reload + + + reload flag + + + + Loads the TimeLine appointment data + + + + + + Refreshes the data in a previously established + and loaded connection + + + + + Gets the range of appointment dates + + + + + + + Updates the TimeLine view + + + + + + Updates the TimeLine CustomItems + + + + + Updates the WorkDay details array + + + + + Removes Outdated Views + + + + + + Determines if the provided view is valid, given + the current list of Appointments + + + + + + + + Removes out dated CustomItems + + + + + Determines if the given CustomItem is valid + for the current view + + + + + + + Gets the AppointmentView from the timeline + + + AppointmentView or null + + + + Gets the CustomCalendarItem from the timeline. + + + CustomCalendarItem or null + + + + Gets a new appointment view + + Appointment + New view + + + + Gets a new CustomCalendarItem + + + CustomCalendarItem + + + + Returns the view + + + + + + Verifies the Model and MonthView are valid + + + + + Gets the connection status + + + + + Gets the + + + + + Gets the DayInfo array + + + + + Constructor + + + + + + Routine hooks all necessary events for this control + + True to hook, false to unhook + + + + TimeLineIntervalPeriod Change notification + + + + + + + TimeLineInterval Change notification + + + + + + + Handles TimeIndicatorCollectionChanged events + + + + + + + Handles TimeIndicatorTimeChanged events + + + + + + + Horizontal Scroll Panel change notification + + + + + + + Gets the view area under the given mouse point + + Point + eViewArea + + + + Gets the IntervalHeader Start Date under the given mouse point + + Point + ref to interval start date. + 'true' if valid date is returned. + + + + Paint processing routine + + + + + + Draws the encompassing Date header + + ItemPaintArgs + + + + Determines if a date period change has occurred + + Initial date + Current date + Current column + + + + + Draws a given date period or range + + + Starting column + Ending column + + + + + + Aligns the MarkUp text + + + + + + + Renders the current MarkUp + + + + + + + Gets the default Period text + + + + + + + + Draws the time interval header + + ItemPaintArgs + Starting column + Ending column + + + + DrawBackground + + + + + + + Draws view TimeIndicators + + + + + + + + + Draws individual view TimeIndicator + + + + + + + + + Gets the Indicator Back color + + + + + + + Gets the Indicator Border color + + + + + + + CalcIndicatorRect + + + + + + + + + DrawContent + + + + + + + + + Gets the interval text + + DateTime + Interval text + + + + Gets minute interval text + + DateTime + Interval text + + + + Gets Day interval text + + + Interval text + + + + Gets year interval text + + + Interval text + + + + Calculates the range of days needed to be drawn + to satisfy the specified paint request + + Clip rectangle + [out] Column start index + [out] Column end index + Day range count (end - start) + + + + Returns copy of the item. + + + + + Copies the TimeLineHeaderPanel specific properties to new instance of the item. + + New TimeLineHeaderPanel instance + + + + Gets the ColumnWidth + + + + + Gets the TimeLineColumnCount + + + + + Gets the ShowPeriodHeader property + + + + + Gets the ShowIntervalHeader property + + + + + Interval header height + + + + + Period header height + + + + + Header font + + + + + TimeLine start date + + + + + Gets and sets the view color + + + + + IsMarkupSupported + + + + + Constructor + + _CalendarView + + + + Hooks our ScrollBar events + + + + + + Hooks our PageNavigator events + + + + + + ScrollBar Scroll event handler + + + + + + + Processes ScrollBar ValueChanged events + + + + + + + Navigates to the previous page + + + + + + + Navigates to Today + + + + + + + Navigates to the Next page + + + + + + + Increases timeline EndDate + + Amount to add + + + + Increases timeline EndDate + + Amount to add + + + + Decreases the timeline StartDate + + Amount to del + + + + Decreases the timeline StartDate + + Amount to del + + + + Begins Update block + + + + + Ends update block + + + + + Performs panel setup + + + + + Sets-up the PageNavigator + + + + + + Updates the panel + + + + + Updates the PageNavigator + + + + + Updates our ScrollBar + + + + + Passes the scroll onto others + + + + + Performs control recalc + + + + + Returns copy of the item + + + + + Copies the TimeLineHScrollPanel specific properties to + new instance of the item + + New PageNavigatorItem instance + + + + Gets and sets the display bounds + + + + + Gets and sets the visible status + + + + + Gets the ScrollBar + + + + + Gets the scrollBar SmallChange value + + + + + Gets the scrollBar LargeChange value + + + + + Gets the scrollBar Maximum value + + + + + Routine hooks all necessary events for this control + + True to hook, false to unhook + + + + Processes view changes + + object + SelectedViewEventArgs + + + + Processes StartDate changes + + + + + + + Processes EndDate changes + + + + + + + Handles IntervalPeriodChange notification + + + + + + + Handles IntervalChange notification + + + + + + + Handles ScrollPanel change notification + + + + + + + Gets the view area under the given mouse + point (tab, header, content, etc) + + Point + eViewArea + + + + Gets the date selection from the given point. The startDate + and endDate will vary based upon the view type + + Point in question + out start date + out end date + True if a valid selection exists + at the given point + + + + Handles selected item changes + + CalendarItem + EventArgs + + + + Sets the current selected item + + Previous CalendarItem + New CalendarItem + New selected CalendarItem + + + + Updates our slice selection range to reflect + the given date selection start and end values + + + + + Processes the selection time column range + + Column range start + Column range end + Column start limit + Column end limit + + + + Gets an array of column selection values + over the given range of columns + + Column start limit + Column end limit + Slice range start + Slice range end + Array of selection values + + + + Performs NeedRecalcSize requests + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Updates our connection model view + + + + + Disconnects and resets the Model connection + + + + + Updates our CalendarItems list + + + + + Sorts the provided CalendarItems + + Sorted CalendarItems + + + + Calculates normal appointment bounds + + Accumulated ColumnList + + + + + + Get the RowHeight for the given CalendarItem + + CalendarItem + Calculated height + + + + + Updates the condensed view column list + + + + + Determines if an appointment is visible + for the given DisplayOwner + + + + + + + Paint processing + + ItemPaintArgs + + + + Initiates the drawing of the TimeLine + + Graphics + Starting column + Ending column + + + + Draws the content area of the TimeLine + + + Starting column + Ending column + + + + + GetSlotState + + + + + + + Gets the background content brush + for the given time slice + + Background brush + + + + Determines if the given time is tagged as a "Work time" + + Day of week + WorkTime to test + true if specified "time" is a Work time + + + + Draws the TimeLine border + + + Starting column + Ending column + + + + + DrawHalfHourBorders + + + + + + + + + + DrawHourBorders + + + + + + + + + + Draws view TimeIndicators + + + + + + + + Draws individual view TimeIndicator + + + + + + + + + Gets the Indicator Back color + + + + + + + Gets the Indicator Border color + + + + + + + Gets the TimeIndicator Rectangle + + + + + + + + + Gets the TimeIndicator Rectangle + + + + + + + Gets the TimeIndicator Rectangle for the given date + + + + + + + + Draws the condensed TimeLine + + + + + + Draws the Condensed Content area + + + + + + + + Gets the condensed view display path + + Scale factor + Condensed view rect + Path + + + + Draws condensed appointments + + Graphics + Scale factor + + + + Gets the appointments condensed pen + + Appointment object + + + + + GetCategoryPen + + + + + + + Draws TimeLine appointments + + + + + + Calculates the range of columns needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Column start index + [out] Column end index + Column range count (end - start) + + + + Gets the display rectangle for the given column + + Column + Display rectangle + + + + Gets the CondensedView rectangle + + CondensedView rectangle + + + + Gets the absolute column value for the given date + + Selection date + Absolute column + + + + MouseDown event processing + + + + + + Handles CondensedView Left Button Down events + + + + + + Processes CondensedView point selection + + + + + + CalendarItem left mouseDown processing + + MouseEventArgs + + + + Handles TimeLineView left MouseDown events + + Column index + + + + MouseUp event processing + + MouseEventArgs + + + + MouseMove event processing + + MouseEventArgs + + + + Handles CondensedView mouse moves + + + + + + Processes content mouse moves + + MouseEventArgs + + + + Initiates a user "DragDrop" operation - if enabled + + + True if operation started + + + + Drags the given appointment from one view to another + + Previous view + Item to drag + + + + Gets the cursor + + Cursor + + + + Processes user MouseMove + + DayColumn + + + + + Processes TimeLineView mouseMove events + + Column + + + + Processes CalendarItem mouseMove events + + Column + MouseEventArgs + + + + Processes CalendarItem left resizing + + Column + + + + + Processes CalendarItem right resizing + + Column + + + + + Initiates the resize of the selected item + + + + + + + Gets the change from the last offset (in minutes) + + Column + Are we going left or right + MouseEventArgs + Change in mnutes + + + + Gets the change from the last offset (in years) + + Column + Are we going left or right + MouseEventArgs + Change in years + + + + Routine to enable or disable view scrolling + + true to enable + + + + Cancels the view scroll timer + + + + + Determines the amount to scroll (which is + based loosely upon the delta magnitude) + + Point delta + Scroll amount + + + + Handles view scroll timer ticks + + object + EventArgs + + + + Gets the item column at the given point + + Point in question + [out] Column + True if partial hits are ok + True if valid item + + + + Determines if a given column is visible + + Display rectangle + True if partial visibility is ok + True if visible + + + + Determines if the given point in in + the CondensedView area + + + + + + + Processes KeyDown events + + + + + + Processes Left and Right Key events + + + + + + + Handles Home key events + + + + + + Processes End key events + + + + + + Gets array of CalendarItems + + + + + Start date - readonly + + + + + End date - readonly + + + + + Gets the ColumnWidth + + + + + Gets the BaseInterval (interval in total minutes) + + + + + Gets the number of Columns + + + + + Gets the MinAppointmentWidth + + + + + Gets the CondensedView visibility state + + + + + Gets and sets the Work time brush + + + + + Gets and sets the Off-hours work time brush + + + + + Gets and sets the selected brush + + + + + Gets the first visible timeline column + + + + + Gets the condensed time line height + + + + + Gets and sets the model reload state + + + + + Constructor + + + + + + Performs scrollBar setup + + + + + Updates our scrollbar + + + + + Disables the scrollbar + + + + object + EventArgs + + + + Passes the scroll onto others + + + + + Gets and sets the panel Bounds + + + + + Gets and sets the control visibility + + + + + Gets the scrollBar + + + + + Gets the scrollBar SmallChange value + + + + + Gets the scrollBar Maximum value + + + + + Constructor + + + + + + Gets the ScrollBar SmallChange value + + + + + Gets the ScrollBar Maximum value + + + + + Constructor + + WeekDayView + + + + Performs panel recalc support + + + + + Sorts the CalendarItems + + + + + Calculates the display bounds for the AppointmentView + + CalendarItem + Row accumulator + + + + Gets the starting day index for the given appointment + + Day of week index (0-6) + + + + Updates our vertical scrollbar + + + + + Processes Extended appointments scrollBar changes + + object + EventArgs + + + + Resets the AllDayPanel view + + + + + Updates the AllDayPanel view + + + + + Draws extended appointments + + ItemPaintArgs + + + + Returns copy of the item. + + + + + Copies the AllDayPanel specific properties to new instance of the item. + + New AllDayPanel instance + + + + Gets and sets the panel bounding rectangle + + + + + Gets the DayPanel Height + + + + + Gets the panel's CalendarItem list + + + + + Gets WeekDayView + + + + + gets the Fixed AllDayPanel height + + + + + gets the Maximum AllDayPanel height + + + + + Gets the Appointment height + + + + + Gets the width of a vertical scrollbar + + + + + Adds a CalendarItem to the running slot list + + CalendarItem to add + Slot level to add the item to + The added slot item + + + + Returns the SlotItem (if present) in the given list for + the CalendarItem in question + + CalendarItem + Slot level to scan + SlotItem, if found + + + + Counts the number of columns for + each column zero entry slot lists + + + + + Gets the max column count from all + zero level slot paths + + Initial SlotItem + Running level count + + + + + Sets all column entry counts to the given + count + + Initial SlotItem + Count + + + + Clears the Column slot list + + + + + Gets the column slot Id + + + + + Gets the column slot list + + + + + Constructor + + CalendarItem + + + + Adds a slot to the peer SlotItem list + + SlotItem to add + Slot column + + + + Gets and sets the slots CalendarItem + + + + + Gets the peer SlotItem list + + + + + Gets and sets the peer level count + + + + + Gets and sets the peer column + + + + + Constructor + + Slice height + + + + Offsets the bounding rectangles for the + DayColumn's non-extended appointments + + Amount to offset + + + + Determines if the given time is tagged as a "Busy time" + + WorkTime to test + true if specified "time" is a Busy time + + + + Determines if the given time is tagged as a "Work time" + + WorkTime to test + true if specified "time" is a Work time + + + + Gets and sets the week bounding Rectangle + + + + + Gets and sets the column date + + + + + Gets and sets the TimeSlice height + + + + + Gets and sets the busy time start + + + + + Gets and sets the busy time end + + + + + Gets and sets the work time start + + + + + Gets and sets the work time end + + + + + Gets the column CalendarItems list + + + + + Constructor + + CalendarView + + + + + Routine hooks all necessary events for this control + + True to hook, false to unhook + + + + Processes view changes + + object + SelectedViewEventArgs + + + + Processes DayViewDate changes + + + + + + + Processes StartDate changes + + + + + + + Processes EndDate changes + + + + + + + Handles TimeSlotDurationChanged events + + object + TimeSlotDurationChangedEventArgs + + + + Handles FixedAllDayPanelHeightChanged events + + + + + + + Handles MaximumAllDayPanelHeightChanged events + + + + + + + Handles ScrollBarChanged events + + + + + + + Gets the view area under the given mouse + point (tab, header, content, etc) + + Point + eViewArea + + + + Gets the date selection from the given point. The startDate + and endDate will vary based upon the view type (WeekDay / Month) + + Point in question + out start date + out end date + True if a valid selection exists + at the given point + + + + Gets the bounding display rectangle for the given date/time. + + The date/time + Bounding display rectangle + + + + Gets the bounding display rectangle for the given + starting and ending date/time range. + + Start date + End date + Bounding display rectangle + + + + Handles selected item changes + + CalendarItem + EventArgs + + + + Sets the current selected item + + Previous CalendarItem + New CalendarItem + New selected CalendarItem + + + + Updates our slice selection range to reflect + the given date selection start and end values + + + + + Gets the absolute slice value for the given date + + Selection date + Absolute slice + + + + Processes the selection time slice range + + Slice range start + Slice range end + Slice start limit + Slice end limit + + + + Gets an array of slice selection values + over the given range of column slices + + Slice start limit + Slice end limit + Column + Slice range start + Slice range end + Array of selection values + + + + Performs NeedRecalcSize requests + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Allocates out DayColumns + + + + + + + Updates our connection model view + + + + + Disconnects and resets the Model connection + + + + + Updates our AllDayPanel items + + + + + Calculates and updates DayColumn bounds + + Start date + End date + + + + Updates our CalendarItems list + + + + + Sorts the DayColumn CalendarItem list + + DayColumn index + + + + Calculates normal appointment bounds + + DayColumn column + Accumulated ColumnList + + + + Paint processing + + ItemPaintArgs + + + + Calculates the range of days needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Day start index + [out] Day end index + Day range count (end - start) + + + + Calculates the range of slices needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Slice start index + [out] Slice end index + Slice range count (end - start) + + + + Draws the top Day of the week header + + ItemPaintArgs + Start day index + End day index + + + + DrawColumnHeader + + + + + + + + + + + + Get the index for our day of the week text + + Graphics handle + Index to header text + + + + Draws Normal Appointment time slices + + ItemPaintArgs + Start slice + End slice + Day start + Day end + + + + Gets the array of DaySlot information + + + + + + array of DaySlots + + + + Time slice content drawing + + Graphics + Start slice + End slice + Day start + Day end + + + + + Gets the background content brush + for the given time slice + + + Column index + Time slice + Background brush + + + + Initiates DaySlot drawing + + + + + + + + On top of borders + + + + Flushes out pending DaySlot drawing + + + + + Display rect + + + + + Draws the DaySlot Text + + + + + + + + + + Draw view TimeIndicators + + + + + + + + Draws individual view TimeIndicator + + + + + + + + Gets the TimeIndicator rectangle + + + + + + + Gets the TimeIndicator rectangle for the + given DataTime + + + + + + + + Gets the Indicator Back color + + + + + + + Gets the Indicator Border color + + + + + + + Draws time slice borders + + Graphics + Start slice + End slice + Day start + Day end + + + + + Draws horizontal borders + + + + + + + + + + + Draws the vertical borders + + + + + + + + + + Draws the Current-Day Now border + + + + + + + + Initiates the drawing of weekly appointments + + ItemPaintArgs + Day start index + Day end index + + + + MouseDown event processing + + + + + + CalendarItem left mouseDown processing + + DayColumn col index + MouseEventArgs + + + + Handles DayView left MouseDown events + + DayColumn col index + Time slice + + + + MouseUp event processing + + MouseEventArgs + + + + MouseMove event processing + + MouseEventArgs + + + + Determines if the mouse is in the + panel resize area + + Mouse location + true if in the resize area + + + + Processes the actual panel resizing + + MouseEventArgs + + + + Processes content mouse moves + + MouseEventArgs + + + + Initiates a user "DragDrop" operation - if enabled + + + True if operation started + + + + Drags the given appointment from one view to another + + Previous view + Item to move + + + + Gets the cursor + + Cursor + + + + Processes user MouseMove + + DayColumn + Slice + + + + + Processes DayView mouseMove events + + DayColumn col index + Time slice + + + + Processes CalendarItem mouseMove events + + DayColumn col index + Time slice + + + + + Processes CalendarItem left resizing + + Time slice + + + + + Processes CalendarItem right resizing + + Time slice + + + + + Initiates the resize of the selected item + + + + + + + + Gets the changes in minutes + from the last mouse operation (move or resize) + + Current slice + Flag denoting top or bottom delta + MouseEventArgs + Delta minutes + + + + Invalidates altered DayColumns + + Current column + + + + Routine to enable or disable view scrolling + + true to enable + + + + Cancels the view scroll timer + + + + + Determines the amount to scroll (which is + based loosely upon the delta magnitude) + + Point delta + Scroll amount + + + + Handles view scroll timer ticks + + object + EventArgs + + + + Processes KeyDown events + + + + + + Processes Up and Down key events + + + + + + + Processes Left and Right key events + + + + + + + Processes Home key events + + + + + + Processes End Key events + + + + + + Processes Page Up and Down key events + + + Paging direction (-1, 1) + + + + Gets the Home and End column from the current + selection range + + + + + + Gets the view column from the given date + + + The DayColumns index, or -1 if invalid. + + + + Ensures the given selection is visible + + + + + Ensures the given date is visible + + + + + + + Gets the column and slice index item for + the given point + + Point + [out] DayColumn column + [out] Time slice + + Item visible state + + + + Determines if a given slice is visible + + DayColumn + Slice in question + Partially visible is ok + Slice visibility + + + + Gets the given slice rectangle + + Column + Slice + Bounding rectangle + + + + Gets the col index for the given point + + Point + Column + + + + Gets the slice index for the given point + + Point + + Slice index + + + + Gets the DateTime adjusted by the given + slice and minutes delta + + + + + + + + + Returns copy of the item. + + + + + Copies the WeekDayView specific properties to new instance of the item. + + New WeekDayView instance + + + + Gets the view DayColumns + + + + + Gets the view's number of DayColumns + + + + + Gets the WeekDay vertical scrollbar + + + + + Gets the Sub-Day view rectangle + + + + + Gets the CalendarColor + + + + + Gets the local StartSlice + + + + + Gets the local NumberOfSlices + + + + + Gets the view's AllDayPanel + + + + + Gets the DayColumnWidth + + + + + Gets the maximum AllDayPanel height + + + + + Gets the TimeSlotDuration + + + + + Gets the default Time Slice height + + + + + Gets the SlotsPerHour + + + + + Gets the NumberOfSlices + + + + + Gets the NumberOfActiveSlices + + + + + Gets the StartSlice + + + + + Gets and sets the Busy time brush + + + + + Gets and sets the Work time brush + + + + + Gets and sets the Off-hours work time brush + + + + + Gets and sets the Off-hours work time brush + + + + + Gets and sets the selected brush + + + + + Gets the WeekDay vertical scroll panel + + + + + Constructor + + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Constructor + + Assoc CalendarModel + Assoc WeekDayView + + + + Performs Model connection processing + + + + + Severs the Model/WeekDayView connection + + + + + Clears individual DayColumn view connections + + DayColumn + + + + Loads Model/WeekDayView connection data + + + + + Refreshes the data in a previously established + and loaded connection + + + + + Process any remaining removed data + + + + + + + Updates individual DayColumn views + + DayColumn + List of appointments + List of cached views + + + + Updates DayColumn workday details + + DayColumn to update + + + + GetCalendarWorkDays + + + + + + + + GetWorkDays + + + + + + + + Gets the view from all lists + + + + + + + Gets the view from the DayColumn list + + DayColumn + Appointment + Appointment view + + + + Gets the view from the AllDayPanel list + + Appointment + Appointment view + + + + Gets the view from the cached list + + Appointment + Cached views + Appointment view + + + + Gets the CustomCalendarItem from the AllDayPanel list + + CustomCalendarItem + CustomCalendarItem + + + + Gets a new appointment view + + Appointment + New view + + + + Removes duplicate multi-day appointments + + + + Trimmed list + + + + Determines if an appointment is a duplicate + + List of days appointments + Appointment in question + + + + + Removes out-dated views + + + + + + + + Removes any outdated AllDayAppt views + + + Accumulated DayAppts + + + + Looks for the given appointment in the + accumulated dayAppts list + + Accumulated appts list + Appointment to look for + true if found + + + + Returns the view + + + + + + Verifies the Model and MonthView are valid + + + + + Handles Model property change notifications + + + + + + + Handles ModelSubProperty change notifications + + object + SubPropertyChangedEventArgs + + + + Gets the connection status + + + + + Constructor + + + + + + Routine hooks all necessary events for this control + + True to hook, false to unhook + + + + Processes LabelTimeSlotsChanged events + + + + + + + Processes Is24HourFormatChanged events + + + + + + + Processes TimeSlotDurationChanged events + + + + + + + Processes CalendarView_TimeIndicatorsChanged events + + + + + + + Processes CalendarView_TimeIndicatorTimeChanged events + + + + + + + Paint processing routine + + + + + + Calculates the range of slices needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Slice start index + [out] Slice end index + Slice range count (end - start) + + + + Gets the given slice rectangle + + Slice + Bounding rectangle + + + + Draws the TimeRuler + + ItemPaintArgs + + + + + + DrawBackGround + + + + + + Draws TimeIndicators + + + + + + + + Draws individual TimeIndicators + + + + + + + + Gets the Indicator Back color + + + + + + + Gets the Indicator Border color + + + + + + + GetViewDates + + + + + + + GetIndicatorRect + + + + + + + Draws the time text + + + + + + + + Gets the hourly display text + + Hour + Hourly text + + + + Gets the minute display text + + Hour + Minute + Minute text + + + + Returns copy of the item. + + + + + Copies the TimeRulerPanel specific properties to new instance of the item. + + New TimeRulerPanel instance + + + + Gets the TimeRuler font + + + + + Gets the TimeRuler font (small) + + + + + Gets the default Time Slice height + + + + + Gets the TimeSlotDuration + + + + + Gets the SlotsPerHour + + + + + Gets the NumberOfSlices + + + + + Gets the starting Time Slice + + + + + Gets the culturally correct AM time designator + + + + + Gets the culturally correct PM time designator + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Processes Up and Down key events + + + + + + + Processes Left and Right Key events + + + + + + + Retrieves the show state and the restored, minimized, and maximized positions of the specified window. + + + A handle to the window. + + + A pointer to the WINDOWPLACEMENT structure that receives the show state and position information. + + Before calling GetWindowPlacement, set the length member to sizeof(WINDOWPLACEMENT). GetWindowPlacement fails if lpwndpl-> length is not set correctly. + + + + If the function succeeds, the return value is nonzero. + + If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + + + Options available when a form is tested for mose positions. + + + HTERROR: On the screen background or on a dividing line between windows + (same as HTNOWHERE, except that the DefWindowProc function produces a system + beep to indicate an error). + + + HTTRANSPARENT: In a window currently covered by another window in the + same thread (the message will be sent to underlying windows in the same thread + until one of them returns a code that is not HTTRANSPARENT). + + + HTNOWHERE: On the screen background or on a dividing line between + windows. + + + HTCLIENT: In a client area. + + + HTCAPTION: In a title bar. + + + HTSYSMENU: In a window menu or in a Close button in a child window. + + + HTGROWBOX: In a size box (same as HTSIZE). + + + HTMENU: In a menu. + + + HTHSCROLL: In a horizontal scroll bar. + + + HTVSCROLL: In the vertical scroll bar. + + + HTMINBUTTON: In a Minimize button. + + + HTMAXBUTTON: In a Maximize button. + + + HTLEFT: In the left border of a resizable window (the user can click + the mouse to resize the window horizontally). + + + HTRIGHT: In the right border of a resizable window (the user can click + the mouse to resize the window horizontally). + + + HTTOP: In the upper-horizontal border of a window. + + + HTTOPLEFT: In the upper-left corner of a window border. + + + HTTOPRIGHT: In the upper-right corner of a window border. + + + HTBOTTOM: In the lower-horizontal border of a resizable window (the + user can click the mouse to resize the window vertically). + + + HTBOTTOMLEFT: In the lower-left corner of a border of a resizable + window (the user can click the mouse to resize the window diagonally). + + + HTBOTTOMRIGHT: In the lower-right corner of a border of a resizable + window (the user can click the mouse to resize the window diagonally). + + + HTBORDER: In the border of a window that does not have a sizing + border. + + + HTOBJECT: Unknown...No Documentation Found + + + HTCLOSE: In a Close button. + + + HTHELP: In a Help button. + + + HTSIZE: In a size box (same as HTGROWBOX). (Same as GrowBox). + + + HTREDUCE: In a Minimize button. (Same as MinimizeButton). + + + HTZOOM: In a Maximize button. (Same as MaximizeButton). + + + + Hides the window and activates another window. + + + + + Activates and displays a window. If the window is minimized or + maximized, the system restores it to its original size and position. + An application should specify this flag when displaying the window + for the first time. + + + + + Activates the window and displays it as a minimized window. + + + + + Maximizes the specified window. + + + + + Activates the window and displays it as a maximized window. + + + + + Displays a window in its most recent size and position. This value + is similar to , except + the window is not actived. + + + + + Activates the window and displays it in its current size and position. + + + + + Minimizes the specified window and activates the next top-level + window in the Z order. + + + + + Displays the window as a minimized window. This value is similar to + , except the + window is not activated. + + + + + Displays the window in its current size and position. This value is + similar to , except the + window is not activated. + + + + + Activates and displays the window. If the window is minimized or + maximized, the system restores it to its original size and position. + An application should specify this flag when restoring a minimized window. + + + + + Sets the show state based on the SW_* value specified in the + STARTUPINFO structure passed to the CreateProcess function by the + program that started the application. + + + + + Windows 2000/XP: Minimizes a window, even if the thread + that owns the window is not responding. This flag should only be + used when minimizing windows from a different thread. + + + + + Constructor + + Assoc CalendarModel + Assoc YearView + + + + Performs Model connection processing + + + + + Severs the Model/MonthView connection + + + + + Loads Model/YearView connection data + + + + + UpdateCustomItems + + + + + + Handles CustomItemCollection change events + + + + + + + GetFirstAppointment + + + + + + + GetFirstCustomItem + + + + + + + Returns the Month view + + + + + + ResetModelData + + + + + Handles Model property change notifications + + + + + + + Handles ModelSubProperty change notifications + + object + SubPropertyChangedEventArgs + + + + Gets the connection status + + + + + Constructor + + + + + + + Calculates the control's Bounding Rects + + + + + Calculates the day rectangles for the + current bounding rectangle + + + + + Gets the month date from the given day index + + + + + + + Gets the month date from the given Point + + + + + + + + Gets the month view area from the given Point + + + + + + + Gets the normalized month date for the given dayIndex + + + + + + + Gets the month dayIndex from the given Point + + + + + + + Gets the month dayIndex from the given date + + + + + + + Determines if the given date is contained in the month + + + + + + + Determines if the given day of the month has + Appointments or CustomItems associated with it + + Day of the month + true, if there are Appointments associated with this day + + + + Determines if the given dayIndex has + Appointments or CustomItems associated with it + + + + + + + Determines if the given day of the month is selected + + Day of the month + true if selected + + + + Updates the date selection for the month + + + + + ClearSelection + + + + + Gets the Preferred control size for the month + + + + + + Paint + + + + + + + DrawContent + + + + + + DrawBackground + + + + + + DrawDayContent + + + + + + DrawDayContentBackground + + + + + + + + + + DrawDayContentText + + + + + + + + Draws the day highlight + + + + + + + + + + DrawGridLines + + + + + + DrawNowHighlight + + + + + + DrawMonthHeader + + + + + + + DrawDayOfWeekHeader + + + + + + + DrawBorder + + + + + + + GetDaysOfTheWeekType + + + + + + + Appointment (and CustomItem) bit array + + + + + DayOfWeekHeaderHeight + + + + + Gets the day Rectangles + + + + + MonthHeaderHeight + + + + + Gets and sets the week bounding Rectangle + + + + + Gets the number of Days in the Month + + + + + Gets or sets the month starting date + + + + + Gets the month end date + + + + + Gets the parent YearView + + + + + Constructor + + Parent CalendarView + + + + Hooks (or unhooks) needed events + + True to hook, false to unhook + + + + Processes CalendarView SelectedViewChanged events + + CalendarView + SelectedViewEventArgs + + + + Processes StartDate changes + + + + + + + Processes EndDate changes + + + + + + + Handles YearViewAllowDateSelectionChanged events + + + + + + + Processes CalendarView YearViewShowGridLinesChanged events + + CalendarView + SelectedViewEventArgs + + + + Handles ScrollBarChanged events + + + + + + + Gets the view area under the given mouse + point (tab, header, content, etc) + + Point + eViewArea + + + + Gets the date selection from the given point. + + Point in question + out start date + out end date + True if a valid selection exists + at the given point + + + + Updates each monthWeeks DayRects to reflect + the date selection start and end values + + + + + Performs NeedRecalcSize requests + + + + + Performs all necessary recalc operations + + + + + Normalizes the user specified start and end dates + + [out] Normalized start date + [out] Normalized end date + + + + Updates our connection model view + + + + + Disconnects and resets the Model connection + + + + + Calculates display info for the YearMonth data + + Start date + End date + + + + Performs size and positioning layout for the control + + + + + + Gets the preferred size of the control + + + + + + + Paint processing + + ItemPaintArgs + + + + Draws YearMonth header and content + + ItemPaintArgs + Row start index + Row end index + Col start index + Col end index + + + + Calculates the range of columns needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Col start index + [out] COl end index + Col range count (end - start) + + + + Calculates the range of rows needed to be drawn + to satisfy the specified paint request + + ItemPaintArgs + [out] Row start index + [out] Row end index + Row range count (end - start) + + + + MouseMove event processing + + MouseEventArgs + + + + Processes view mouseMove events + + + + + + + MouseDown event processing + + + + + + Handles MonthView left MouseDown events + + Month index + Day index + + + + Handles InternalMouseUp events + + + + + + Process mouse up events + + + + + + + Performs a day link selection + + + + + + Processes KeyDown events + + + + + + Processes Up and Down Key events + + + + + + + Processes Left and Right key events + + + + + + + Processes Hoe key events + + + + + + Processes End key events + + + + + + Gets the month containing the given date + + + MonthIndex or -1 + + + + Gets the Home and End month from the + current selection range + + + + + + InternalKeyUp + + + + + + Gets the cursor + + Cursor + + + + Gets the month and dey index for the given Point + + + Month index + Day index + Normalized day index + + + + + Gets the month index from the given point + + Point + month index or -1 + + + + Returns copy of the item. + + + + + Copies the YearView specific properties to new instance of the item. + + New YearView instance + + + + Gets whether date selections are permitted + + + + + Gets the default day cell size + + + + + Gets whether Grid lines are to be displayed + + + + + Gets the Appointment Link click style + + + + + Gets the non-Appointment Link click style + + + + + Gets the Month Color table + + + + + Gets the Year vertical scroll panel + + + + + Gets or sets the display font + + + + + Gets the array of YearMonths + + + + diff --git a/DPM2016/bin/Debug/DevComponents.DotNetBar2.dll b/DPM2016/bin/Debug/DevComponents.DotNetBar2.dll new file mode 100644 index 0000000..d2f4e7c Binary files /dev/null and b/DPM2016/bin/Debug/DevComponents.DotNetBar2.dll differ diff --git a/DPM2016/bin/Debug/DevComponents.DotNetBar2.xml b/DPM2016/bin/Debug/DevComponents.DotNetBar2.xml new file mode 100644 index 0000000..470e122 --- /dev/null +++ b/DPM2016/bin/Debug/DevComponents.DotNetBar2.xml @@ -0,0 +1,79014 @@ + + + + DevComponents.DotNetBar2 + + + + + Represents advanced multi-column Tree control. + + + + + Specifies the notification interface that node uses to communicate status changes to it's parent tree. + + + + Called when Node.Expanded property has changed. + Node which Expanded property has changed. + + + Called before node is collapsed + Context information. + + + Called before node is expanded + Context information. + + + Called after node is collapsed. + Context information. + + + Called after node is expanded + Context information + + + + Required designer variable. + + + + + Raises Render event. + + Provides event arguments. + + + Creates new instance of the class. + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets the current renderer used by the control. + + Reference to the TreeRenderer used by the control. + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Invalidates node bounds on canvas. + + Reference node. + + + + Invalidates node bounds on canvas. + + Reference node. + + + + Finds the node based on the Node.Name property. + + Name of the node to find. + Reference to a node with given name or null if node cannot be found. + + + + Finds the node based on the Node.DataKey property. + + Data key to look for. + Reference to a node with given key or null if node cannot be found. + + + + Finds the node based on the Node.BindingIndex property. + + Index to look for. + Reference to a node with given key or null if node cannot be found. + + + + Finds the first node that starts with the specified text. Node.Text property is searched. + + Partial text to look for + Reference to a node or null if no node is found. + + + + Finds the first node where each Node.Cell[0:n].Text value starts with the + respective value found in the comma delimited 'text' string. + + Comma delimited partial text to look for + Reference to a node or null if no node is found. + + + + Finds the first node that starts with the specified text. Node.Text property is searched. + + Partial text to look for + Controls whether case insensitive search is performed + Reference to a node or null if no node is found. + + + + Finds the first node where each Node.Cell[0:n].Text value starts with the + respective value found in the comma delimited 'text' string. + + Comma delimited partial text to look for + Controls whether case insensitive search is performed + Reference to a node or null if no node is found. + + + + Finds the first node that starts with the specified text. Node.Text property is searched. + + Partial text to look for + Reference node to start searching from + Controls whether case insensitive search is performed + Reference to a node or null if no node is found. + + + + Finds the first node where each Node.Cell[0:n].Text value starts with the + respective value found in the comma delimited 'text' string. + + Comma delimited partial text to look for + Reference node to start searching from + Controls whether case insensitive search is performed + Reference to a node or null if no node is found. + + + + Indicates whether SelectionBoxFillColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets SelectionBoxFillColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether ExpandBorderColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets ExpandBorderColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether ExpandBackColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets ExpandBackColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether ExpandBackColor2 should be serialized. Used by windows forms designer design-time support. + + + + + Resets ExpandBackColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether ExpandLineColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets ExpandLineColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandBackColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandBackColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandBackColor2 should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandBackColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandForeColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandForeColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandMouseOverBackColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandMouseOverBackColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandMouseOverBackColor2 should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandMouseOverBackColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether CommandMouseOverForeColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CommandMouseOverForeColor to it's default value. Used by windows forms designer design-time support. + + + + + Returns the zero based flat index of the node. Flat index is the index of the node as if tree structure + has been flattened into the list. + + Reference to the node to return index for. + Zero based node index or -1 if index cannot be determined. + + + + Returns node based on the flat index. Flat index is the index of the node as if tree structure + has been flattened into the list. + + Index to return node for. + Reference to a node or null if node at specified index cannot be found. + + + + Returns color scheme part color if set otherwise returns color passed in. + + Color. + Color scheme part. + Color. + + + + Collapses all nodes in a tree. + + + + + Expands all the tree nodes. + + + + + Paints control to canvas. This method might be used for print output. + + Graphics object to paint control to. + Indicates whether to paint control background. + + + + Paints control to canvas. This method might be used for print output. + + Graphics object to paint control to. + Indicates whether to paint control background. + Indicates clipping rectangle. Nodes outside of clipping rectangle will not be painted. You can pass Rectangle.Empty and all nodes will be painted. + + + + Processes the keyboard character and executes the search through the nodes. + + Character to process. + + + + + Raises ColumnResized event. + + ColumnHeader that was resized. + Event arguments + + + + Raises ColumnMoved event. + + ColumnHeader that was moved. + Provides event arguments. + + + + Raises ColumnResizing event. + + Column being resized + Event arguments + + + + Deselect specified node. Use this method when multiple node selection is enabled to deselect single node or all nodes. + + Reference to node to select or null to deselect all selected nodes. + Action that is selecting the node. + + + + Raises SelectionChanged event. + + Event arguments + + + + Raises CellSelected event. + + Event arguments. + + + + Raises CellUnselected event. + + Event arguments. + + + + Selected specified node. + + Node to select. + Action that is selecting the node. + + + + Invalidates the size for all top-level nodes and their sub-nodes. + + + + + Invalidates the size for a node and its sub-nodes. + + Node to invalidate size for. + + + + Ensures that selected node is visible i.e. that all parents of the selected node are expanded. If not selects the first parent node not expanded. + + + + + Starts editing specified cell, places the cell into the edit mode. + + Cell to start editing. + Action that is a cause for the edit. + + + + Starts editing specified cell, places the cell into the edit mode. + + Cell to start editing. + Action that is a cause for the edit. + Specifies the text to be edited instead of the text of the cell. Passing the NULL value will edit the text of the cell. + + + + Called just before cell editor is released for editing. + + Reference to the cell being edited. + Reference to the editor control. + + + + Raises the ProvideCustomCellEditor event. + + Event arguments. + + + + Ends cell editing. + + Specifies which action is cause for end of the editing. + Returns true if edits were applied to the cell or false otherwise. + + + + Ends cell editing. + + Specifies which action is cause for end of the editing. + Returns true if edits were applied to the cell or false otherwise. + + + + Raises the AfterCellEditComplete event. + + Provides information about event. + + + + Cancels the cell editing if it is in progress. + + Specifies which action is cause for canceling of editing. + + + + Raises BeforeNodeInsert event + + Node that is about to be inserted + Source of the event + + + + Raises AfterNodeInsert event + + Node that is inserted + Source of the event + + + + Raises BeforeNodeRemove event + + Node that is about to be removed + Source of the event + + + + Raises AfterNodeRemove event + + Node that is removed + Source of the event + + + + Called after node has been removed + + Node that is removed + Source of the event + + + + Invokes BeforeNodeDrop event. If overriden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes AfterNodeDrop event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseDown event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseUp event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseMove event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeClick event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeDoubleClick event. If overridden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseEnter event. If overriden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseLeave event. If overriden base implementation must be called in order for event to fire. + + Provides information about event + + + + Invokes NodeMouseHover event. If overriden base implementation must be called in order for event to fire. + + Provides information about event + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Save nodes to XmlDocument. New Node AdvTree is created and nodes are serialized into it. + + Reference to an instance of XmlDocument object + + + + Saves nodes to a file. + + File name to save nodes to. + + + + Saves nodes to specified stream. + + Stream to save nodes to. + + + + Saves nodes to specified writer. + + Writer to save nodes to. + + + + Saves nodes to specified writer. + + Writer to save nodes to. + + + + Load nodes from file. + + File to load nodes from + + + + Load nodes from stream. + + Stream to load from + + + + Load nodes from reader. + + Reader to load from. + + + + Load nodes from reader. + + Reader to load from. + + + + Load nodes from an XmlDocument object. + + Document to load Nodes from. + + + + Forces the control to invalidate its client area and immediately redraw itself + and any child controls. Note however that this method will node do anything if refresh + is suspended as result of call to BeginUpdate method without corresponding EndUpdate + call or if SuspendPaint property is set to true. + + + + + Disables any redrawing of the tree control. To maintain performance while items + are added one at a time to the control, call the BeginUpdate method. The BeginUpdate + method prevents the control from painting until the + EndUpdate method is called. + + + + + Enables the redrawing of the tree view. To maintain performance while items are + added one at a time to the control, call the BeginUpdate + method. The BeginUpdate method prevents the control from painting until the EndUpdate + method is called. + + + Call to EndUpdate will enable the layout and painting in tree control. If there + are any pending layouts the EndUpdate will call + RecalcLayout method to perform the layout and it will + repaint the control. + + + + + Enables the redrawing of the tree view. To maintain performance while items are + added one at a time to the control, call the BeginUpdate + method. The BeginUpdate method prevents the control from painting until the EndUpdate + method is called. + + Gets or sets whether layout and refresh of control is performed if there are no other update blocks pending. + + + + Retrieves the tree node that is at the specified location. + + The Node at the specified point, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The Point to evaluate and retrieve the node from. + + + + Retrieves the tree node that is at the specified location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The X position to evaluate and retrieve the node from. + The Y position to evaluate and retrieve the node from. + + + + Retrieves the tree node that is at the specified location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The X position to evaluate and retrieve the node from. + The Y position to evaluate and retrieve the node from. + Whether to enumerated displayed nodes only. + + + + Retrieves the tree node that is at the specified vertical location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.Y coordinates of the + MouseDown event as the y parameter. + + The Y position to evaluate and retrieve the node from. + + + + Retrieves the node cell that is at the specified location. + + The Point to evaluate and retrieve the cell from. + The Cell at the specified point, in tree view coordinates. + + + + Retrieves the node cell that is at the specified location. + + The X position to evaluate and retrieve the cell from. + The Y position to evaluate and retrieve the cell from. + The Cell at the specified point, in tree view coordinates. + + + + Retrieves the node cell that is at the specified location. + + The X position to evaluate and retrieve the cell from. + The Y position to evaluate and retrieve the cell from. + Whether to enumerated displayed nodes only. + The Cell at the specified point, in tree view coordinates. + + + Applies any layout changes to the tree control. + + Layout will not be performed if BeginUpdate is called. Any calls to the + RecalcLayout will return without executing requested layout operation. + + + + + Recalculates layout for the tree control. Not affected by BeginUpdate call. + + + + + Returns translation matrix for current Zoom. Translation matrix is used to translate internal node coordinates to screen + coordinates when Zoom is not set to 1. + + Returns new instance of Matrix object. + + + + Returns layout based rectangle from screen rectangle. Layout based rectangle will be different + from screen rectangle when Zoom is not set to 1. This method will translate the screen rectangle enlarged by Zoom + to layout rectangle which does not have Zoom applied. + + Screen rectangle + Layout rectangle + + + + Returns mouse position which is translated if control Zoom is not equal 1 + + Mouse event arguments + Returns translated position + + + + Returns mouse position which is translated if control Zoom is not equal 1 + + Mouse position + Returns translated position + + + + Returns mouse position which is translated if control Zoom is not equal 1 + + X coordinate + Y coordinate + + + + + Returns rectangle translated to screen rectangle if Zoom is not equal 1. + + Rectangle to translate + Screen Rectangle + + + + Returns size translated to screen dimension if Zoom is not equal 1. + + Size to translate + Screen Size + + + + Raises ColumnHeaderMouseUp event. + + Reference to ColumnHeader + Event arguments + + + + Raises ColumnHeaderMouseDown event. + + Reference to ColumnHeader + Event arguments + + + + Calls OnBeforeCheck method which fired + OnBeforeCheck event. + + Event arguments. + + + Raises the BeforeCheck event. + + A AdvTreeCellBeforeCheckEventArgs that contains the event + data. + + + + + Calls OnAfterCheck method which fired + AfterCheck event. + + Event arguments. + + + Raises the AfterCheck event. + + A AdvTreeEventArgs that contains the event + data. + + + + + Invokes CommandButtonClick event. + + Context node. + Event arguments. + + + + Invokes DeserializeNode event. + + Provides more information about the event + + + + Invokes SerializeNode event. + + Provides more information about the event + + + + Invokes the MarkupLinkClick evcent. + + Sender of the event, usually instance Cell object. + Event arguments + + + + Raises the NodeDragFeedback event. + + Provides event arguments. + + + + Processes drag over event. + + Drag event arguments. + + + + Raises the NodeDragStart event. + + Reference to node being dragged. + Event parameters + + + + Raises BeforeNodeDragStart event. + + Provides event arguments. + + + + Returns the display root node. + + Instance of node or null if there is no display root node. + + + + Returns reference to the node involved in drag-drop operation if any. + + Reference to node object or null if there is no drag node. + + + + + This member supports the .NET Framework infrastructure and is not intended to be + used directly from your code. + + + + + This member supports the .NET Framework infrastructure and is not intended to be + used directly from your code. + + + + + Raises FormattingEnabledChanged event. + + Event arguments. + + + + Raises FormatStringChanged event. + + Event arguments. + + + + Raises FormatInfoChanged event. + + Event arguments. + + + + Raises the DataSourceChanged event. + + An EventArgs that contains the event data. + + + + Raises the DisplayMemberChanged event. + + An EventArgs that contains the event data. + + + + When overridden in a derived class, resynchronizes the item data with the contents of the data source. + + + + + Disposes all nodes in Nodes collection and clears it. + + + + + When overridden in a derived class, sets the specified array of objects in a collection in the derived class. + + An array of items. + + + + Raises the DataColumnCreated event. + + Provides event arguments. + + + + Raises the DataNodeCreated event. + + Provides event arguments. + + + + Creates a new node for the data item. + + Item to create node for. + New instance of the node. + + + + Raises the DataNodeCreated event. + + Provides event arguments. + + + + When overridden in a derived class, sets the object with the specified index in the derived class. + + The array index of the object. + The object. + + + + Called when ParentFieldName property has changed. + + + + + Called when GroupingMembers property has changed. + + + + + Raises the Format event. + + Event parameters + + + + Clears internal property descriptors cache when data-binding is used. In most cases it is not needed that you call this method. Do so only if instructed by DevComponents support. + + + + + Raises the SelectedIndexChanged event. + + Event arguments. + + + + Raises the ValueMemberChanged event. + + Event arguments. + + + + Raises the SelectedValueChanged event. + + Event arguments. + + + + Called when TouchEnabled property has changed. + + Old property value + New property value + + + + Occurs just before cell editor is released for editing. It allows you to customize any properties on edit control. + + + + + Occurs when mouse button is pressed over the column header. + + + + + Occurs when mouse button is released over the column header. + + + + + Occurs after the cell check box is checked. + + + + + Occurs before the cell check box is checked and provides opportunity to cancel the event. + + + + + Occurs after the tree node is collapsed. + + + + + Occurs before the tree node is collapsed. + + + + + Occurs after the tree node is expanded. + + + + + Occurs before the tree node is expanded. + + + + + Occurs when command button on node is clicked. + + + + + Occurs before cell is edited. The order of the cell editing events is as follows: + BeforeCellEdit, CellEditEnding, AfterCellEdit, AfterCellEditComplete. + + + + + Occurs just before the cell editing is ended. The text box for editing is still visible and you can cancel + the exit out of editing mode at this point. The order of the cell editing events is as follows: + BeforeCellEdit, CellEditEnding, AfterCellEdit, AfterCellEditComplete. + + + + + Occurs after cell editing has ended and before the new text entered by the user is assigned to the cell. You can abort the edits in this event. + The order of the cell editing events is as follows: + BeforeCellEdit, CellEditEnding, AfterCellEdit, AfterCellEditComplete. + + + + + Occurs after cell editing has been completed. This event cannot be canceled. + + + + + Occurs after node selection has changed. + + + + + Occurs before Node has been selected by user or through the SelectedNode property. Event can be cancelled. + + + + + Occurs after node has been selected by user or through the SelectedNode property. + + + + + Occurs after node has been deselected by user or through the SelectedNode or SelectedNodes properties. + + + + + Occurs before node has been removed from its parent. + + + + + Occurs after node has been removed from its parent. + + + + + Occurs before node is inserted or added as child node to parent node. + + + + + Occurs after node is inserted or added as child node. + + + + + Occurs when node drag & drop operation is initiated. + + + + + Occurs before internal node drag & drop support is initiated and allows you to cancel the drag & drop. + + + + + Occurs before Drag-Drop of a node is completed and gives you information about new parent of the node that is being dragged + as well as opportunity to cancel the operation. + + + + + Occurs while node is being dragged. You can handle this event to disable the drop at specific nodes or to even change the + drop location for the node by modifying event arguments. + + + + + Occurs after Drag-Drop of a node is completed. This operation cannot be cancelled. + + + + + Occurs when the mouse pointer is over the node and a mouse button is pressed. + + + + + Occurs when the mouse pointer is over the node and a mouse button is released. + + + + + Occurs when the mouse pointer is moved over the node. + + + + + Occurs when the mouse enters the node. + + + + + Occurs when the mouse leaves the node. + + + + + Occurs when the mouse hovers over the node. + + + + + Occurs when the node is clicked with left mouse button. If you need to know more information like if another mouse button is clicked etc. use + NodeMouseDown event. + + + + + Occurs when the node is double-clicked. + + + + + Occurs after an node has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data associated with the node and load it back up in DeserializeNode event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeNodeEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an node has been de-serialized (loaded) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrieve any data you saved in SerializeNode event. + + + + + Occurs when hyperlink in text-markup is clicked. + + + + + Occurs when cell with custom editor type is about to be edited by user. Handle this event to provide + custom editors. + + + + + Occurs when the DataSource changes. + + + + + Occurs when the DisplayMembers property changes. + + + + + Occurs when the control is bound to a data value that need to be converted. + + + + + Occurs when FormattingEnabled property changes. + + + + + Occurs when FormatString property changes. + + + + + Occurs when FormatInfo property has changed. + + + + + Occurs when a Node for an data-bound object item has been created and provides you with opportunity to modify the node. + + + + + Occurs when a group Node is created as result of GroupingMembers property setting and provides you with opportunity to modify the node. + + + + + Occurs when value of ValueMember property has changed. + + + + + Occurs when value of SelectedValue property has changed. + + + + + Occurs when value of SelectedIndex property has changed. + + + + + Occurs when ColumnHeader is automatically created by control as result of data binding and provides you with opportunity to modify it. + + + + + Occurs after column has been resized by end-user. + + + + + Occurs while column is being resized by end-user. + + + + + Occurs after cell has been selected. + + + + + Occurs after cell has been unselected. + + + + + Occurs after users has moved the column. + + + + + Occurs while tree control is being rendered. + + + + + Indicates whether nodes are disposed when control is disposed. + + + + + Indicates whether sorting of node collection sorts child nodes as well. Default value is false. + + + + + Gets or sets whether tooltips are shown when mouse is over the cell when Tooltip property is set. + + + + + Gets the column header control which renderes the columns. + + + + + Gets or sets the scroll-bar visual style. + + + + + Gets or sets the proposed size of the tile in Tile view. The size of the tile might be larger than specified if Style assigned to node, cells adds padding, margins etc. or if Node.Image or font is greater than width or height specified here. + + + + + Gets or sets a value indicating whether the selected tree node remains highlighted even when the tree control has lost the focus. + + + + + Gets whether keyboard focus is within the control. + + + + + Gets or sets whether cell editing is completed when control loses input focus. Default value is true. + + + + + Gets or sets the reference to DotNetBar ContextMenuBar component which is used to provide context menu for nodes. This property + is automatically maintained by AdvTree. + + + + + Gets or sets zoom factor for the control. Default value is 1. To zoom display of the nodes for 20% set zoom factor to 1.2 + To zoom view 2 times set zoom factor to 2. Value must be greater than 0. Zoom is supported only when non-column tree setup is used. + Please note that Zoom functionality is designed only for very special use cases and only for + plain tree control setup which does not use editing, alternating row colors, drag & drop or any other + advanced functionality. + + + + + Gets the size of the tree. + + + + + Gets or sets custom node renderer. You can set this property to your custom renderer. When set the RenderMode should be set to Custom to enable + your custom renderer. To choose one of the system renderer use RenderMode property. Default value is null. + + + + + Gets or sets the render mode used to render all nodes. Default value is eNodeRenderMode.Default which indicates that system default renderer is used. + Note that if you specify custom renderer you need to set AdvTree.NodeRenderer property to your custom renderer. + + + + + Gets the style for the background of the control. + + + + + Gets or sets internal layout cell horizontal spacing. This property is for advanced internal use and you should not set it. + + + + + Gets or sets whether automatic drag and drop is enabled. Default value is true. + + + + + Gets or sets whether anti-alias smoothing is used while painting the tree. + + + + + Gets or sets the delimiter string that the tree node path uses. + + + + + Gets or sets whether user can resize the columns. Default value is true. + + + + + Gets or sets whether user can reorder the columns. Default value is false. + + + + + Gets the collection of column headers that appear in the tree. + + + By default there are no column headers defined. In that case tree control + functions as regular tree control where text has unrestricted width. + If you want to restrict the horizontal width of the text but not display + column header you can create one column and set its width to the width desired and + set its Visible property to false. + + + + + Gets or sets whether column headers are visible if they are defined through Columns collection. Default value is true. + + + + + Gets the collection of all style elements created for the tree. + + + + + Gets or sets default style for the node cell. + + + + + Gets or sets default style for the node cell when mouse is pressed. + + + + + Gets or sets default style for the node cell when mouse is over the cell. + + + + + Gets or sets default style for the node cell when cell is selected. + + + + + Gets or sets default style for the node cell when cell is disabled. + + + + + Gets or sets default style for the node when node is expanded. + + + + + Gets or sets default style for all nodes where style is not specified + explicity. + + + Name of the style assigned or null value indicating that no style is used. + Default value is null. + + + + + Gets or sets style for the node when node is selected. Note that this style is applied to the default node style. + + + Reference to the style assigned or null value indicating that no style is used. + Default value is null. + + + + + Gets or sets style for the node when mouse is over node. Note that this style is applied to the default node style. + + + Reference to the style assigned or null value indicating that no style is used. + Default value is null. + + + + + Gets the collection of tree nodes that are assigned to the tree view control. + + + A NodeCollection that represents the tree nodes + assigned to the tree control. + + + The Nodes property holds a collection of Node objects, each of which has a + Nodes property that can contain its own NodeCollection. + + + + + Gets or sets the vertical spacing between nodes in pixels. Default value is 3. + + + + + Gets or sets the horizontal spacing between nodes in pixels when control is in Tile layout. Default value is 4. + + + + + Gets or sets whether horizontal grid lines between each row are displayed. Default value is false. + + + + + Gets or sets whether column can be resized when mouse is over the column grid line and outside of the column header. + GridColumnLines must be set to true to make column lines visible. + + + + + Gets or sets whether grid lines are displayed when columns are defined. Default value is true. + + + + + Gets or sets the grid lines color. + + + + + Gets or sets the alternate row color applied to every other row. Default value is Color.Empty. + + + + + Gets or sets the background style for the child nodes columns. Background style defines the appearance of the column header background. + + + Reference to the style assigned to the column header. + + + + + Gets or sets the background style for the columns. Background style defines the appearance of the column header background. + + + Reference to the style assigned to the column header. + + ColumnStyleNormal Property + ColumnStyleMouseDown Property + ColumnStyleMouseOver Property + + + + Gets or sets the default style class assigned to the column headers. + + + Reference to the style assigned to the column header. + + + When style is not set on ColumnHeader objects then style setting from this property is used instead. + + ColumnStyleMouseDown Property + ColumnStyleMouseOver Property + + + + Gets or sets default style class assigned to the column which is applied when mouse + button is pressed over the header. + + + Name of the style assigned to the column. + + + When style is not set on ColumnHeader objects then style setting from this property is used instead. + + ColumnStyleNormal Property + ColumnStyleMouseOver Property + + + + Gets or sets default style class assigned to the column which is applied when mouse is + over the column. + + + Name of the style assigned to the column. + + + When style is not set on ColumnHeader objects then style setting from this property is used instead. + + ColumnStyleNormal Property + ColumnStyleMouseDown Property + + + + Gets collection that holds definition of column headers associated with nodes. + + + + + Gets or sets the tree node that is currently selected in the tree control. + + + If no Node is currently selected, the + SelectedNode property is a null reference (Nothing in Visual + Basic). + + + + + Gets or sets the collection of currently selected nodes in tree control. + + + + + Gets or sets whether multi-node selection is enabled. Default value is false. When + multi-selection is enabled use SelectedNodes property to retrive collection of selected nodes. + Use MultiSelectRule property to change the multi-node selection rule. + + + + + Gets or sets the rule that governs the multiple node selection. Default value indicates that only nodes + belonging to same parent can be multi-selected. + + + + + Returns reference to node layout object. + + + + + Returns reference to node display object. + + + + + Gets whether layout is suspended for tree control. Layout is suspended after + call to BeginUpdate method and it is resumed after the + call to EndUpdate method. + + + + + Gets whether control has layout operation pending on next paint or update. + + + + + Gets or sets whether paint operations are suspended for the control. You should use this method + if you need the RecalcLayout operations to proceed but you want to stop painting of the control. + + + + + Gets or sets the ImageList that contains the Image objects used by the tree nodes. + + + + + Gets or sets the image-list index value of the default image that is displayed by the tree nodes. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box in cell is checked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box in cell is unchecked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box in cell is in indeterminate state. + + + + + Gets or sets the NodeConnector object that describes the type of the connector used for + displaying connection between nested nodes. RootConnector property specifies the connector + between root node and it's imidate nested nodes. This property specifies connector for all other nested levels. + Default value is null. + + + You can use + Node.ParentConnector + property to specify per node connectors. + + + + + Gets or sets the NodeConnector object that describes the type of the connector used for + displaying connection between linked nodes. Connector specified here is used to display the connection + between nodes that are on the path to the selected node. When set you can use it to visually indicate the path to the currently selected node. + Default value is null. + + + + + Gets or sets the layout of the cells inside the node. Default value is Horizontal layout which + means that cell are positioned horizontally next to each other. + + + You can specify cell layout on each node by using + Node.CellLayout + property. + + + + + Gets or sets the layout of the cells inside the node. Default value is Horizontal layout which + means that cell are positioned horizontally next to each other. + + + You can specify cell layout on each node by using + Node.CellLayout + property. + + + + + Gets or sets the color scheme style. Color scheme provides predefined colors based on popular visual styles. + We recommend that you use "SchemePart" color settings since they maintain consistant look that is + based on target system color scheme setting. + + + + + Gets the reference to the color scheme object. + + + + + Gets or sets whether the content of the control is centered within the bounds of control. Default value is true. + + + + + Gets or sets whether per cell selection mode is enabled. In cell selection mode the selection box is drawn over selected cell only + instead of all cells in the node. + Default value is false. + + + + + Gets or sets whether selection appearance changes depending on whether control has input focus. Default value is true. Setting this value to false causes selection box to be rendered as if control has focus all the time. + + + + + Gets or sets the node selection box style. + + SelectionBox Property + SelectionBoxSize Property + SelectionBoxFillColor Property + SelectionBoxBorderColor Property + + + + Gets or sets the value that indicates whether selection box is drawn around the + selected node. Default value is true. Another way to provide the visual indication that + node is selected is by using selected state style properties like + NodeStyleSelected + and + CellStyleSelected. + + CellStyleSelected Property + NodeStyleSelected Property + + + + Gets or sets the size/thickness in pixel of the selection box drawn around selected + node. + + + + + Gets or sets whether node is selected when mouse is pressed anywhere within node vertical bounds. Default value is true. + + + When set to false the node is selected only when mouse is pressed over the node content. + + + + + Gets or sets the total node expand area width in pixels. The expand button with ExpandButtonSize is fitted into this area. Default value is 24. + + + + + Gets or sets the size of the expand button that is used to expand/collapse node. Default value is 8,8. + + + + + Gets or sets expand button border color. Note that setting ExpandBorderColorSchemePart property will override the value that you set here. + + + + + Gets or sets expand button color scheme border color. Setting + this property overrides the setting of the corresponding ExpandBorderColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandBorderColor property. + + + + + Gets or sets expand button back color. Note that setting ExpandBackColorSchemePart property will override the value that you set here. + + + + + Gets or sets expand button color scheme back color. Setting + this property overrides the setting of the corresponding ExpandBackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandBackColor property. + + + + + Gets or sets expand button target gradientback color. Note that setting ExpandBackColor2SchemePart property will override the value that you set here. + + + + + Gets or sets expand button color scheme target gradient back color. Setting + this property overrides the setting of the corresponding ExpandBackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandBackColor2 property. + + + + + Gets or sets expand button line color. Note that setting ExpandLineColorSchemePart property will override the value that you set here. + + + + + Gets or sets expand button color scheme line color. Setting + this property overrides the setting of the corresponding ExpandLineColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandLineColor property. + + + + + Gets or sets the expand button background gradient angle. + + + + + Gets or sets the expand button image which is used to indicate that node will be expanded. To use images as expand buttons you also need to set ExpandButtonType=eExpandButtonType.Image. + + + + + Gets or sets the expand button image which is used to indicate that node will be collapsed. To use images as expand buttons you also need to set ExpandButtonType=eExpandButtonType.Image. + + + + + Gets or sets the type of the expand button used to expand/collapse nodes. + + + + + Gets or sets the display root node. Setting this property allows you to use any + Node as root display node. Default value is Null which means that first node from + AdvTree.Nodes collection is used as display root node. + + + + + Gets or sets the width of the command button. Default value is 10 pixels. + + + + + Gets or sets command button back color. Note that setting CommandBackColorSchemePart property will override the value that you set here. + + + + + Gets or sets command button color scheme back color. Setting + this property overrides the setting of the corresponding CommandBackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandBackColor property. + + + + + Gets or sets command button target gradient back color. Note that setting CommandBackColor2SchemePart property will override the value that you set here. + + + + + Gets or sets command button color scheme target gradient back color. Setting + this property overrides the setting of the corresponding CommandBackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandBackColor2 property. + + + + + Gets or sets command button foreground color. Note that setting CommandForeColorSchemePart property will override the value that you set here. + + + + + Gets or sets command button color scheme foreground color. Setting + this property overrides the setting of the corresponding CommandForeColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandForeColor property. + + + + + Gets or sets the command button background gradient angle. + + + + + Gets or sets command button mouse over back color. Note that setting CommandMouseOverBackColorSchemePart property will override the value that you set here. + + + + + Gets or sets command button color scheme mouse over back color. Setting + this property overrides the setting of the corresponding CommandMouseOverBackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandMouseOverBackColor property. + + + + + Gets or sets command button mouse over target gradient back color. Note that setting CommandMouseOverBackColor2SchemePart property will override the value that you set here. + + + + + Gets or sets command button mouse over color scheme target gradient back color. Setting + this property overrides the setting of the corresponding CommandMouseOverBackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandMouseOverBackColor2 property. + + + + + Gets or sets command button mouse over foreground color. Note that setting CommandMouseOverForeColorSchemePart property will override the value that you set here. + + + + + Gets or sets command button mouse over color scheme foreground color. Setting + this property overrides the setting of the corresponding CommandMouseOverForeColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through CommandMouseOverForeColor property. + + + + + Gets or sets the command button mouse over background gradient angle. + + + + + Gets or sets a value indicating whether the label text of the node cells can be edited. Default value is false. + + + + + Returns whether cell editing is in progress. + + + + + Gets or sets whether keyboard incremental search through Node.Text property is enabled. Default value is true. + + + + + Gets or sets the keyboard search buffer expiration timeout. Default value is 1000 which indicates that + key pressed within 1 second will add to the search buffer and control will be searched for node text + that begins with resulting string. Setting this value to 0 will disable the search buffer. + + + + + Indicates whether search buffer is auto-cleared regardless of the expiration timeout if node is not found using current buffer content. + + + + + Gets or sets whether double-clicking the node will toggle its expanded state. Default value is true. + + + + + Gets or sets whether node is highlighted when mouse enters the node. Default value is false. + + + There are two ways to enable the node hot-tracking. You can set the HotTracking property to true in which case the + mouse tracking is enabled using system colors specified in TreeColorTable. You can also define the NodeStyleMouseOver + style which gets applied to the node when mouse is over the node. + + + + + Gets whether tree is in process of moving the column in response to user finishing the column move action. + + + + + Gets or sets how control positions the items. Default value is standard TreeView layout. + + + + + Gets or sets the color of the group divider line when in tile view. + + + + + Returns the reference to the node mouse is currently over or null (Nothing) if mouse is not over any node in tree. + + + + + Specifies the mouse cursor displayed when mouse is over the cell. Default value + is null which means that default control cursor is used. + + + To specify cursor for each individual cell use + Cell.Cursor property. + + + + + Gets reference to array of Cell objects that have HostedControl property set. + + + + + Gets or sets whether hosted controls are clipped so they don't overlap the control borders. Default value is true. + + + + + Gets or sets whether control border needs to be updated by calling UpdateControlBorderPanel() + + + + + Gets the reference to internal vertical scroll-bar control if one is created or null if no scrollbar is visible. + + + + + Gets or sets whether Vertical Scroll-bar is shown if needed because content of the control exceeds available height. Default value is true. + + + + + Gets or sets whether Horizontal Scroll-bar is shown if needed because content of the control exceeds available width. Default value is true. + + + + + Gets the reference to internal horizontal scroll-bar control if one is created or null if no scrollbar is visible. + + + + + Gets or sets a value indicating whether the tree control enables the user to scroll to any nodes placed outside of its visible boundaries. + This property is managed internally by AdvTree control and should not be modified. + + + + + Gets or sets the minimum size of the auto-scroll. Returns a Size that represents the minimum height and width of the scrolling area in pixels. + This property is managed internally by AdvTree control and should not be modified. + + + + + Gets or sets the location of the auto-scroll position. + + + + + Gets the list of all checked nodes in tree including child nodes. + + + + + Gets or sets the offset in pixels from node's X position that is used during drag & drop operation to indicate that + dragged node is dropped as child node of the parent's node. + + + + + Gets or sets whether drag & drop internal implementation allows the copying of the node being dragged when CTRL key is pressed. + + + + + Gets or sets whether control accepts the dragged nodes from other AdvTree controls. Default value is true. + + + + + Gets or sets the distance to indent each of the child tree node levels. Default value is 16. + + + + + Indicates whether drop marker is displayed during drag-drop operation. + + + + + Gets or sets whether drag and drop operation is in progress. This member supports + the AdvTree infrastructure and is not intended to be used directly from your + code. + + + + + Gets or sets whether number of nodes being dragged is displayed on drag node preview. Default value is true. + + + + + Gets or sets whether multiple nodes drag & drop is enabled. Default value is true. + + + + + Indicates whether AutoScrollPosition is reset to 0,0 when all nodes are cleared from the tree. Default value is true. + + + + + Gets or sets the comma separated list of property or column names to display on popup tree control. + + + + + Gets or sets the data source for the ComboTree. Expected is an object that implements the IList or IListSource interfaces, + such as a DataSet or an Array. The default is null. + + + + + Gets or sets a value indicating whether formatting is applied to the DisplayMembers property of the control. + + + + + Gets or sets the format-specifier characters that indicate how a value is to be displayed. + + + + + Gets or sets the IFormatProvider that provides custom formatting behavior. + + + + + Gets or sets comma separated field or property names that holds the value that is used to identify node and parent node. Format expected is: FieldNodeId,ParentNodeFieldId. For example if your table represents departments, you have DepartmentId field which uniquely identifies a department and ParentDepartmentId field which identifies parent of the department if any you would set this property to DepartmentId,ParentDepartmentId. + Note that you can only use ParentFieldNames or GroupingMembers property but not both. If both are set ParentFieldName take precedence. + + + + + Gets or sets comma separated list of field or property names that are used for grouping when data-binding is used. Note that you can only use ParentFieldName or GroupingMembers property but not both. If both are set ParentFieldName take precedence. + + + + + Gets or sets style for automatically created group nodes when data-binding is used and GroupingMembers property is set. + + + Name of the style assigned or null value indicating that no style is used. + Default value is null. + + + + + Gets or sets the index specifying the currently selected item. + + + + + Gets or sets the property to use as the actual value for the items in the control. Applies to data-binding scenarios. SelectedValue property will return the value of selected node as indicated by this property. + + + + + Gets or sets the value of the member property specified by the ValueMember property. + + + + + Indicates whether control changes the CurrencyManager.DataPosition when selected node is changed during data binding. + Default value is true. + + + + + Indicates whether touch support for scrolling is enabled. + + + + + Static class that holds AdvTree settings that are not commonly used. + + + + + Gets or sets whether tree control is scrolled horizontally so selected node is brought into the view. Default value is false. + You can set this property to false to disable the horizontal scrolling of tree control when selected node has changed. + + + + + Gets or sets whether AdvTree node comparer that provides column sorting uses standard text comparer instead of default + hybrid alpha-numeric comparer. Default value is false. + + + + + Defines an interface for cell edit control that allows custom controls to be used as cell editors. AdvTree control + expects that editing control inherits from System.Windows.Forms.Control. + + + + + Called when edit operation is started. The AdvTree control will first set CurrentValue, then call BeginEdit and will call EditComplete once + editing is completed. + + + + + Called when edit operation is completed. + + + + + Gets or sets current edit value. + + + + + AdvTree control subscribes to this event to be notified when edit operation is completed. For example when Enter key is + pressed the edit control might raise this event to indicate the completion of editing operation. + + + + + AdvTree control subscribes to this event to be notified that user has cancelled the editing. For example when Escape key is + pressed the edit control might raise this event to indicate that editing has been cancelled. + + + + + Gets or sets whether cell requests the word-wrap based on the current cell style. If your editor does not support + word-wrap functionality this can be ignored. + + + + + Defines delegate for PrepareCellEditor event. + + + + + + + Event arguments for PrepareCellEditor event. + + + + + Gets reference to the cell being edited. + + + + + Gets reference to the cell editor control. + + + + + Initializes a new instance of the PrepareCellEditorEventArgs class. + + + + + + + Defines delegate for PrepareCellEditor event. + + + + + + + Event arguments for AdvTree.Render event. + + + + + Indicates the rendering operation being performed. + + + + + Indicates graphics canvas to render on. + + + + + Initializes a new instance of the AdvTreeRenderEventArgs class. + + Specifies rendering type + Specifies graphics canvas to render on + + + + Specifies the rendering type being performed on AdvTree control Render event. + + + + + Control background is being painted. + + + + Represents a cell assigned to the Node. + + The Cell with Index 0 (zero) always exists for a Node and it is a cell that + you can interact with through the properties on a node, which are forwarding to the + Cell(0), or you can go directly to the Cell(0). + When Node has multiple columns defined each column corresponds to Cell in + Node's Cells collection. The first Column has Index 0, second Column Index 1 and so + forth. + Note that there is always at least one Cell in a Node even if multiple + columns are not used. + + + + + Initializes new instance of Cell class. + + + + + Initializes new instance of Cell class. + + Cell text. + + + + Initializes new instance of Cell class. + + Cell text. + + + + Initializes new instance of Cell class. + + Cell text. + + + + Releases the resources used by the Component. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Occurs after Tooltip text has changed. + + + + + Called when tooltip is shown and hidden. + + true if tooltip is being shown otherwise false. + + + + Shows tooltip for this item. + + + + + Destroys tooltip window. + + + + + Sets the bounds of the cell. + + New cell bounds. + + + + Sets the bounds of the image inside of the cell. + + New cell bounds. + + + + Sets the bounds of the check box inside of the cell. + + New cell bounds. + + + + Sets whether cells is visible or not. This is set by node layout manager and it is based on column visibility. + + True if visible otherwise false. + + + + Sets the parent of the cell. + + Parent node. + + + + Occurs after text has changed. + + + + + Sets the Images to the new CellImages object. + + CellImages object. + + + + Returns whether Images property should be serialized. Used internally for windows forms designer support. + + + + + Sets the Checked or CheckState properties. + + New value for checked state. + Action source. + + + + Sets the Checked or CheckState properties. + + New value for checked state. + Action source. + + + + Sets the mouse over flag. + + true if mouse is over the cell otherwise false. + + + + Sets the mouse down flag. + + true if left mouse button is pressed while over the cell otherwise false. + + + + Returns effective editor type used for cell editing. + + Editor type. + + + Makes a copy of a Cell. + + + + Ensures that the cell is visible, expanding nodes and scrolling the control as necessary. + + + + + Occurs when any image property for the cell has changed. + + + + + Invokes AfterCheck event on AdvTree + control. + + + + + Invokes BeforeCheck event on AdvTree + control. + + + + + Called just before cell layout is to be performed. + + + + + Occurs when text markup link is clicked. + + + + + Gets/Sets informational text (tooltip) for the cell. + + + + + Gets whether tooltip is visible or not. + + + + + Occurs when item's tooltip visibility has changed. + + + + + Gets or sets whether tooltips are shown when mouse is over the cell when Tooltip property is set. + + + + + Gets or sets whether cell content is editable when cell editing is enabled on tree control. Default value is true. + + + + + Gets whether cell can be edited. Cell can be edited if both Editable property is set to true and ColumnHeader.Editable property is set to true. + + + + + Gets or sets the item hosted inside of the cell. Only items that do not generate + popups are supported. Note that cell can only host either HostedItem or HostedControl but not both. + + + + + Gets or sets the control hosted inside of the cell. Note that cell can only host either HostedItem or HostedControl but not both. + + + When control is hosted inside of the cell, cell size is determined by the + size of the control hosted inside of it. The cell will not display its text but it will display any image assigned + or check box when control is hosted inside of it. The Style settings like Margin + and Padding will still apply. + + + + + Gets or sets whether hosted control size change event is ignored. + + + + + Gets or sets the hosted control size. Property is used to correctly scale control when AdvTree.Zoom is used to zoom view. + + + + + Returns name of the cell that can be used to identify it from the code. + + + + + Gets the relative bounds of the cell. + + + + + Gets the bounds of the cell. + + + + + Gets or sets the available content bounds for the text. Text will fitted into these bounds + but it's true location can be obtained only after it is displayed. + + + + + Gets the bounds of the text inside of cell. + + + + + Gets the relative bounds of the image inside of cell. + + + + + Gets the bounds of the image inside of cell. + + + + + Gets the bounds of the image inside of cell. + + + + + Gets the bounds of the check box inside of cell. + + + + + Gets a value indicating whether the cell is in an editable state. true if the cell is in editable state; otherwise, false. + + + + + Gets a value indicating whether the cell is in the selected state. true if the cell is in the selected state; otherwise, false. + + + + + Gets a value indicating whether the cell is visible. Cell is considered to be visible when it's parent column is visible. + + + + + Gets the parent node of the current cell. + + + + + Gets or sets the object that contains data about the cell. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the object that contains data about the cell. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the format that is applied to the value of Text property for display purposes. See "Formatting Overview" in MSDN + for description on available format strings. For example you can specify "C" to format text as currency, or "D" to format text as decimal number etc. + + + + + + Gets the formatted display text. + + + + + Gets or sets the text displayed in the cell. + + + + + Gets the parent tree control that the cell belongs to. + + + + + Gets or sets the style class assigned to the cell. Null value indicates that + default style is used as specified on cell's parent. + + + Reference to the style assigned to the cell or null (VB Nothing) indicating that default + style setting from tree control is applied. Default value is null. + + + When property is set to null (VB Nothing) the style setting from parent tree + controls is used. CellStyleNormal on AdvTree control is a root style for a cell. + + StyleDisabled Property + StyleMouseDown Property + StyleMouseOver Property + StyleSelected Property + + + + Gets or sets the style name used by cell. This member is provided for internal use only. To set or get the style use StyleNormal property instead. + + + + + Gets or sets the style class that is to when cell is selected. Null value indicates that + default style is used as specified on cell's parent. + + + Reference to the style assigned to the cell or null value indicating that default + style setting from tree control is applied. Default is null value. + + + When property is set to null value the style setting from parent tree + controls is used. CellStyleSelected on AdvTree control is a root style for a cell. + + StyleNormal Property + StyleDisabled Property + StyleMouseDown Property + StyleMouseOver Property + + + + Gets or sets the selected style name used by cell. This member is provided for internal use only. To set or get the style use StyleSelected property instead. + + + + + Gets or sets the disabled style class assigned to the cell. Null value indicates + that default style is used as specified on cell's parent. + + + Reference to the style assigned to the cell or null value indicating that default + style setting from tree control is applied. Default value is null. + + + When property is set to null value the style setting from parent tree + controls is used. CellStyleDisabled on AdvTree control is a root style for a + cell. + + StyleNormal Property + StyleMouseDown Property + StyleMouseOver Property + StyleSelected Property + + + + Gets or sets the disabled style name used by cell. This member is provided for internal use only. To set or get the style use StyleDisabled property instead. + + + + + Gets or sets the style class assigned to the cell which is applied when mouse + button is pressed while mouse is over the cell. Null value indicates that default + style is used as specified on cell's parent. + + + Reference to the style assigned to the cell or null value indicating that default + style setting from tree control is applied. Default value is null. + + + When property is set to null value style setting from parent tree + controls is used. CellStyleMouseDown on AdvTree control is a root style for a + cell. + + StyleNormal Property + StyleDisabled Property + StyleMouseOver Property + StyleSelected Property + + + + Gets or sets the mouse down style name used by cell. This member is provided for internal use only. To set or get the style use StyleMouseDown property instead. + + + + + Gets or sets the style class assigned to the cell which is applied when mouse is + over the cell. Null value indicates that default style is used as specified on cell's + parent. + + + Reference to the style assigned to the cell or null value indicating that default + style setting from tree control is applied. Default value is null. + + + When property is set to null value the style setting from parent tree + controls is used. CellStyleMouseOver on AdvTree control is a root style for a + cell. + + StyleNormal Property + StyleDisabled Property + StyleMouseDown Property + StyleSelected Property + + + + Gets or sets the mouse over style name used by cell. This member is provided for internal use only. To set or get the style use StyleMouseOver property instead. + + + + + Gets or sets whether cell is enabled or not. + + + + + Gets the reference to images associated with this cell. + + + + + Gets or sets the image alignment in relation to the text displayed by cell. + + + + + Gets or sets the checkbox alignment in relation to the text displayed by cell. + + + + + Gets or sets whether check box is visible inside the cell. + + + + + Gets or set a value indicating whether the check box is in the checked state. + + + + + Gets or sets a value indicating whether the CheckBox will allow three check states rather than two. If the ThreeState property is set to true + CheckState property should be used instead of Checked property to set the extended state of the control. + + + + + Specifies the state of a control, such as a check box, that can be checked, unchecked, or set to an indeterminate state. + + + + + Gets or sets the appearance style of the item. Default value is CheckBox. Item can also assume the style of radio-button. + + + + + Gets whether mouse is over the cell. + + + + + Gets whether left mouse button is pressed while over the cell. + + + + + Gets or sets the layout of the cell parts like check box, image and text. Layout can be horizontal (default) + where parts of the cell are positioned next to each other horizontally, or vertical where + parts of the cell are positioned on top of each other vertically. + Alignment of the each part is controlled by alignment properties. + + ImageAlignment Property + CheckBoxAlignment Property + + + + Specifies the mouse cursor displayed when mouse is over the cell. + + + + + Gets or sets whether cell wrapped the text during the layout. + + + + + Gets or sets the editor type used to edit the cell. Setting this property to value other than Default + overrides the cell editor type specified on column cell belongs to. + + + + + Gets or sets whether cell can be selected by user by clicking it with the mouse or using keyboard. Default value is true. + + + + + Gets whether cell can be selected. Cell must be Visible, Enabled and Selectable in order for it to be selected. + + + + + Returns ColumnHeader cell is under if one is defined and cell is already parented to the tree. Otherwise it returns null/nothing. + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets or sets whether cell supports and renders text markup. Default value is true. + + + + + Gets whether item supports text markup. Default is false. + + + + + A strongly-typed collection of objects. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Gets the cell based on the column name. Node must be able to reach AdvTree control for this method to work. + + Column name. + Cell object or null. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Cell array. + + Array to copy to. + + + + Sets the node collection belongs to. + + Cell that is parent of this collection. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. Returns null/nothing if cell with given name is not found. + + + + + Gets or sets the node this collection is associated with. + + + + + Represents event arguments for cell editing events. + + + + + Indicates the action that caused the event. + + + + + Indicates the cell that is affected. + + + + + Indicates new text that will be assigned to the cell if one is appropriate for given event. + + + + + Indicates whether the current action is cancelled. For BeforeCellEdit event setting this + property to true will cancel the editing. For AfterCellEdit event setting this property to + true will cancel any changes made to the text and edits will not be accepted. For CellEditEnding + event setting this property to true will keep the cell in edit mode. + + + + + Indicates whether editing operation was canceled by the end user, usually by pressing ESCAPE key. + + + + + Initializes new instance of CellEditEventArgs class. + + Reference to Cell this event is raised for. + Indicates the action that caused the event. + Indicates new text of the cell if it applies to given event. + + + + Initializes new instance of CellEditEventArgs class. + + Reference to Cell this event is raised for. + Indicates the action that caused the event. + Indicates new text of the cell if it applies to given event. + + + + Initializes new instance of CellEditEventArgs class. + + Reference to Cell this event is raised for. + Indicates the action that caused the event. + Indicates new text of the cell if it applies to given event. + Indicates whether action is canceled by the end user. + + + + Initializes new instance of CellEditEventArgs class. + + Reference to Cell this event is raised for. + Indicates the action that caused the event. + Indicates new text of the cell if it applies to given event. + Indicates whether action is canceled by the end user. + + + + Gets reference to the cell editor control. + + + + + Represents class that holds images for a cell. + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + + + Initializes new instance of CellImages class. + + Reference to parent cell. + + + + Resets Image property to it's default value (null, VB nothing). + + + + + Resets ImageMouseOver to it's default value (null, VB nothing). + + + + + Resets ImageDisabled to it's default value (null, VB nothing). + + + + + Resets ImageExpanded to it's default value (null, VB nothing). + + + + Makes a copy of a CellImages object. + + + + Changes the image and invokes largest image size calculation if the + image size truly changed. + + + + + + + Returns image from image list based on the image index. + + Index of the image to return. + Image object from image list. + + + + Returns image from image list based on the image key. + + Key of the image to return. + Image object from image list. + + + + Gets or sets default cell image. Setting this property to valid image will + override any setting of ImageIndex property. + + + The image set through this property will be serialized with the cell. If you + plan to use ImageList then use ImageIndex + property. + + If you plan to use alpha-blended images we recommend using PNG-24 format + which supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 + do not support alpha-blending when used through Image class. + + + Image object or null (Nothing) if no image is assigned. + + + + Gets or sets the image that is displayed when mouse is over the cell. Setting + this property to valid image will override any setting of ImageMouseOverIndex + property. + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writting .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + + + Gets or sets the image that is displayed when cell is disabled. If not assigned + disabled image is created from default cell image. Setting this property to valid image + will override any setting of ImageDisabledIndex property. + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + + + Gets or sets image that is displayed when Node that this cell belongs to is + expanded. Setting this property to valid image will override any setting of + ImageExpandedIndex property. + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + + + Gets or sets the Index of default cell image from ImageList specified on AdvTree + control. + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + + + Gets or sets the key of the default cell image from ImageList specified on AdvTree control. + + + + + Property Editor support for ImageIndex selection + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the Index of cell image when mouse is over the cell from ImageList + specified on AdvTree control. + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the key of cell image when mouse is over the cell from ImageList + specified on AdvTree control. + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the Index of disabled cell image from ImageList specified on AdvTree + control. + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the key of disabled cell image from ImageList specified on AdvTree + control. + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the Index of cell image from ImageList specified on AdvTree control + that is used when Node associated with this cell is expanded + + + + + If you plan to use alpha-blended images we recommend using PNG-24 format which + supports alpha-blending. As of this writing .NET Framework 1.0 and 1.1 do not support + alpha-blending when used through Image class. + + + Gets or sets the key of cell image from ImageList specified on AdvTree control + that is used when Node associated with this cell is expanded + + + + + Gets or sets the parent node of the cell. + + + + + Gets whether CellImages object should be serialized or not. If object has all + default values then this property will return false. + + + + + Returns largest image size in this set of images. + + + + + Indicates whether assigned images are automatically disposed when the cell and node are disposed. Default value is false. + + + + Represents the node or tree ColumnHeader. + + + + Creates new instance of the object. + + + + + Creates new instance of the object and initializes it with text. + + Text to initialize object with. + + + + Makes a copy of ColumnHeader object. + + Returns new instance of column header object. + + + + Sets the column bounds. + + + + + Resets Image property to it's default value (null, VB nothing). + + + + + Called when DataFieldName property has changed. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when SortingEnabled property has changed. + + Old property value + New property value + + + + Called when SortDirection property has changed. + + Old property value + New property value + + + + Invalidates the appearance of column header. + + + + + Occurs after Tooltip text has changed. + + + + + Called when tooltip is shown and hidden. + + true if tooltip is being shown otherwise false. + + + + Shows tooltip for this item. + + + + + Destroys tooltip window. + + + + + Automatically sets the column width (Width.Absolute) property based on the content of the column. + This will perform the one-time auto sizing of the column. To make column auto-size all the time + set Width.AutoSize=true. + + + + + Raises MouseMove event. + + Provides event arguments. + + + + Raises MouseEnter event. + + Provides event arguments. + + + + Raises MouseLeave event. + + Provides event arguments. + + + + Raises MouseHover event. + + Provides event arguments. + + + + Sort first level nodes that belong directly to this column. Calling this method repeatedly will + alternate between A-Z and Z-A sorting. + + + + + Sort first level nodes that belong directly to this column. + + true to use reverse Z-A sorting, false to sort from A-Z + + + + Called when SortComparer property has changed. + + Old property value + New property value + + + + Called when SortComparerReverse property has changed. + + Old property value + New property value + + + + Occurs when header size has changed due to the user resizing the column. + + + + + Occurs when mouse button is pressed over the column header. + + + + + Occurs when mouse button is released over the column header. + + + + + Occurs when header is double clicked. + + + + + Occurs when header is clicked. + + + + + Gets or sets whether cells content in this column is editable when cell editing is enabled on tree control. Default value is true. + + + + + Gets or sets the maximum number of characters the user can type or paste when editing cells in this column. + + + + + Returns name of the column header that can be used to identify it from the code. + + + + + Returns rectangle that this column occupies. If the layout has not been performed on the column the return value will be Rectangle.Empty. + + + + + Gets the reference to the object that represents width of the column as either + absolute or relative value. + + + Set Width using Absolute or Relative properties of ColumnWidth object. + + Absolute Property (DevComponents.AdvTree.ColumnWidth) + Relative Property (DevComponents.AdvTree.ColumnWidth) + + + + Gets or sets the minimum column width in pixels that is enforced when user is resizing the columns using mouse. + Default value is 0 which indicates that there is no minimum size constraint. + + + + + Gets or sets whether column is stretched to fill any empty space horizontally in tree when all columns consume less width than available. + Only one column in tree may have this property set to true and only last column with this property set will be stretched. + You should always set the Width for the column since Width will be used when columns consume more space in tree horizontally than available. + Applies to top-level columns only. + + + + + Gets or sets the style class assigned to the column. Empty value indicates that + default style is used as specified on cell's parent's control. + + + Name of the style assigned to the cell or an empty string indicating that default + style setting from tree control is applied. Default is empty string. + + + When property is set to an empty string the style setting from parent tree + controls is used. ColumnStyleNormal on AdvTree control is a root style for a cell. + + StyleMouseDown Property + StyleMouseOver Property + + + + Gets or sets the style class assigned to the column which is applied when mouse + button is pressed over the header. Empty value indicates that default + style is used as specified on column's parent. + + + Name of the style assigned to the column or an empty string indicating that default + style setting from tree control is applied. Default is empty string. + + + When property is set to an empty string the style setting from parent tree + controls is used. ColumnStyleMouseDown on AdvTree control is a root style for a + cell. + + StyleNormal Property + StyleMouseOver Property + + + + Gets or sets the style class assigned to the column which is applied when mouse is + over the column. Empty value indicates that default style is used as specified on column's + parent control. + + + Name of the style assigned to the column or an empty string indicating that default + style setting from tree control is applied. Default is empty string. + + + When property is set to an empty string the style setting from parent tree + controls is used. ColumnStyleMouseOver on AdvTree control is a root style for a + cell. + + StyleNormal Property + StyleMouseDown Property + + + + Gets or sets the name of the column in the ColumnHeaderCollection. + + + + + Gets or sets the column caption. + + + + + Gets or sets whether column is visible. Hiding the header column will also hide corresponding data column. + + + + + + Gets or sets Image alignment inside of column. Default value is Left. + + + + + Gets or sets the data-field or property name that is used as source of data for this column when data-binding is used. + + + + + Gets or sets additional custom data associated with the column. + + + + + Gets or sets the color of the cells background for this column. + + + + + Gets or sets display index of the column. -1 indicates default value and is modified to actual display index when the column is added to a ColumnHeaderCollection. + + + A lower display index means a column will appear first (to the left) of columns with a higher display index. + Allowable values are from 0 to num columns - 1. (-1 is legal only as the default value and is modified to something else + when the column is added to a AdvTree's column collection). AdvTree enforces that no two columns have the same display index; + changing the display index of a column will cause the index of other columns to adjust as well. + + + + + Gets or sets whether user can sort by this column by clicking it. + + + + + Gets or sets the sort direction. Sort direction can be changed by clicking the column header if SortingEnabled=true. + + + + + Gets/Sets informational text (tooltip) for the cell. + + + + + Gets whether tooltip is visible or not. + + + + + Occurs when item's tooltip visibility has changed. + + + + + Gets or sets whether tooltips are shown when mouse is over the cell when Tooltip property is set. + + + + + Returns reference to AdvTree control this column belongs to. + + + + + Gets or sets whether column is automatically sized to the content when user double-clicks the column + on the column resize line. Column resizing must be enabled in order for this property to function. + Default value is true which indicates that column will be auto-sized to content when user double-clicks the + column resize marker. + + + + + Gets or sets whether column size has changed and it's layout needs to be recalculated. + + + + + Gets whether mouse left button is pressed on the column. + + + + + Gets whether mouse is over the column. + + + + + Occurs when mouse is moving over the column header. + + + + + Occurs when mouse enters column header. + + + + + Occurs when mouse leaves the column header. + + + + + Occurs when mouse hovers over the column. + + + + + Gets or sets the editor type used to edit the cell. Setting this property to value other than Default + overrides the cell editor type specified on column cell belongs to. + + + + + Gets or sets ascending (A-Z) column comparer used to sort nodes when this column is clicked. Your comparer will be passed to NodeCollection.Sort method and should know how to sort by appropriate column. + + + + + Gets or sets descending (Z-A) column comparer used to sort nodes when this column is clicked. Your comparer will be passed to NodeCollection.Sort method and should know how to sort by appropriate column. + + + + + Gets or sets whether to cancel internal sorting performed by AdvTree. + + + + + Gets or sets the column header being sorted. + + + + + Gets or sets the IComparer used for sorting. + + + + + Defines column related event arguments. + + + + + Gets reference to the column. + + + + + Initializes a new instance of the ColumnEventArgs class. + + + + + + Defines delegate for ColumnMoved event. + + + + + Defines column moved event arguments. + + + + + Gets the column display index before the column was moved. + + + + + Gets the column display index before the column was moved. + + + + + Initializes a new instance of the ColumnMovedEventArgs class. + + Column affected + Old display index + New display index + + + + Represents collection for ColumnHeader objects. + + + + + Default constructor. + + + + + Sets the node collection belongs to. + + ColumnHeader that is parent of this collection. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns index of the object inside of the collection. + + Name of column to return index for. + Index of the column or -1 if column not found. + + + + Returns index of the object inside of the collection based on column DataFieldName. + + DataFieldName of column to return index for. + Index of the column or -1 if column not found. + + + + Returns index of the object inside of the collection based on column DataFieldName. + + DataFieldName of column to return index for. + Index of the column or -1 if column not found. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Called when SortDirection property on column header is set to value other than None. + + Ref to column header + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the ColumnHeader array. + + Array to copy to. + + + + Gets the display index for specified column. + + Column that is part f ColumnHeaderCollection + Display index or -1 column is not part of this collection. + + + + Returns the column that is displayed at specified display index.. + + 0 based display index. + ColumnHeader + + + + Invalidates the display indexes and causes them to be re-evaluated on next layout. + + + + + Gets or sets the node this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Occurs before the cells are sorted. + + + + + Gets whether a column that is part of this collection has SortDirection set. + + + + + A map of display index (key) to index in the column collection (value). Used to quickly find a column from its display index. + + + + + Gets reference to last visible column or null if there is no last visible column. + + + + + Gets reference to first visible column or null if there is no first visible column. + + + + + Gets the column header rendering bounds. + + + + + Initializes a new instance of the IndexToDisplayIndex class. + + + + + + + Initializes a new instance of the ColumnHeaderControl class. + + + + + Returns mouse position which is translated if control Zoom is not equal 1 + + X coordinate + Y coordinate + + + + + Gets or sets the column move marker that marks insertion point for column that is dragged. Marker is drawn before the column specified by this index. + + + + + Gets or sets the column header collection to be rendered. + + + + + Represents the width of the Column. Supports absolute width in Pixels and + relative width as percentage of the width of parent control. + + + + + Creates new instance of the object. + + + + + Gets or sets relative width expressed as percentage between 1-100. 0 indicates that + absolute width will be used. + + + Relative width is expressed as percentage between 1-100 of the parent controls + width. 0 indicates that absolute width will be used. Absolute width always takes + priority over relative width. For example value of 30 assigned to this property + indicates that width of the column will be 30% of the total client width of the + control. + + + + Gets or sets the absolute width of the column in pixels. + + Absolute width always takes precedence over the relative width of the + column. + + + + + Gets or sets whether column width is automatically set based on the column's content. Default value is false. + When set absolute and relative size values are ignored. + + + + + Gets or sets whether column auto-width is set to minimum of the column header text width. Applies to AutoSize=true only. + + + + + Gets the auto-size calculated width of the column after tree layout is performed and column has AutoSize=true. + + + + + Provides event arguments for command button events. + + + + + Default constructor. + + Action type. + Context node. + + + + Indicates the action type that caused the event. + + + + + Indicates the node action is peformed on. + + + + + Represents collection of connector points for a node. + + + + + Default constructor. + + + + + Sets the node collection belongs to. + + Node that is parent of this collection. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds range of objects to the array. + + Array to add. + + + + Copies objects of the collection to the array. + + + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the ColumnHeader array. + + Array to copy to. + + + + Gets or sets the node this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Control for input of the integer value. + + + + + Represents an control that allows numeric input. + + + + + Closes all popups managed by the owner control. + + + + + Defines interface that should be implemented by controls that support per control renderers. + + + + + Gets the renderer control will be rendered with. This can be either custom renderer set on the control or the + Rendering.GlobalManager specified renderer. + + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Defines interface for internal accessibility support for DotNetBar control. + + + + + Gets or sets the item default accesibility action will be performed on. + + + + + Provides support for custom localization. + + + + + Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control. + + The AccessibleEvents object to notify the accessibility client applications of. + The child Control to notify of the accessible event. + + + + Forces the button to perform internal layout. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Sets up timer that watches when active window changes. + + + + + Called after change of active window has been detected. SetupActiveWindowTimer must be called to enable detection. + + + + + Releases and disposes the active window watcher timer. + + + + + Generates a Click event for the control. + + + + + Returns the collection of items with the specified name. This member is not implemented and should not be used. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. This member is not implemented and should not be used. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. This member is not implemented and should not be used. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. This member is not implemented and should not be used. + + Item name to look for. + + + + + Invokes the DotNetBar Customize dialog. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Control is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Gets/Sets the visual style for the button. + + + + + Gets or sets the rendering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets button Color Scheme. ColorScheme does not apply to Office2007 styled buttons. + + + + + Specifies whether button is drawn using Windows Themes when running on OS that supports themes like Windows XP. + + + + + Gets whether Windows Themes should be used to draw the button. + + + + + Gets or sets whether hooks are used for internal DotNetBar system functionality. Using hooks is recommended only if DotNetBar is used in hybrid environments like Visual Studio designers or IE. + + + + + Gets or sets the form button is attached to. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Creates new instance of the class. + + + + + Resets the input position so the new input overwrites current value. + + + + + Called when InputHorizontalAlignment property value has changed. + + Old value. + New Value. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Selects next input field if possible. + + true if next input field was selected otherwise false. + + + + Selects previous input field if possible. + + true if previous input field was selected otherwise false. + + + + ISupportInitialize.BeginInit implementation. While initialization is in progress ValueChanged events will not be fired. + + + + + ISupportInitialize.EndInit implementation. + + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + Gets or sets whether control system buttons are rendered. Default value is true. + + + + + Gets or sets whether during painting OnPaintBackground on base control is called when BackColor=Transparent. + + + + + Gets whether watermark text should be rendered. + + + + + Gets or sets whether mouse wheel affects the input control. Default value is true. + + + + + Gets whether keyboard focus is within the control. + + + + + Gets the reference to internal visual item used as the root visual for the control. Using this property is in all cases not necessary except for some + very advanced usage scenarios. + + + + + Gets or sets the input field alignment inside the control + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is displayed if set for the input items. Default value is true. + + + + + Gets or sets the watermark text displayed on the input control when control is empty. + + + + + Gets or sets the watermark text alignment. Default value is left. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Specifies the background style of the control. + + + + + Gets the preferred height of the control. + + + + + Gets or sets the keys used to navigate between the input fields provided by this control. + + + + + Gets or sets the control background color when control is disabled. Default value is an empty color which indicates that background is not changed when control is disabled. + + + + + Gets or sets the control text color when control is disabled. Default value is an empty color which indicates that background is not changed when control is disabled. + + + + + Gets the system colors used by the control. + + + + + Defines an interface for the object that knows how to invoke a command. + + + + + Gets or sets the command that will be executed when the command source is invoked. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Initializes a new instance of the NumericInputBase class. + + + + + Raises the LockUpdateChanged event. + + Provides event data./ + + + + Gets or sets a value indicating whether a spin button control (up-down control) is used to adjust the current value. The default is false. + + When the ShowUpDown property is set to true, a spin button control is shown to adjust value of currently focused input item. + The value can be adjusted by using the up and down buttons to change the value. + + + + + + Decreases value of the control. + + + + + Increases the value of the control. + + + + + Shows drop-down popup. Note that popup will be shown only if there is a DropDownControl assigned or DropDownItems collection has at least one item. + + + + + Closes the drop-down popup if it is open. + + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Raises the ValueChanged event. + + Provides event arguments. + + + + Called when Command property value changes. + + + + + + + + + + + Occurs when the Value or IsEmpty property changes. + + This event is not raised when the entered date is earlier than MinDateTime or later than MaxDateTime. + + + + + + Occurs when the Value or IsEmpty property changes. This event occurs at the same time and has same function as ValueChanged event. It is provided for binding support. + + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows calendar is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ShowCheckBox property is set to true and user changes the lock status of the control by clicking the check-box. + + + + + Gets or sets whether input part of the control is read-only. When set to true the input part of the control becomes read-only and does not allow the typing. However, drop-down and up/down buttons part if visible still allows user to possibly change the value of the control through the method you can provide on drop-down or through up/down buttons. Use this property to allow change of the value through drop-down or up/down buttons only. + + + + + Gets or sets a value indicating whether a check box is displayed to the left of the input value. + Set to true if a check box is displayed to the left of the input value; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed to the left of the input in the control. When the check box is selected, the value can be updated. When the check box is cleared, the value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked and unchecked. Use LockUpdateChecked property + to get or sets whether check box is checked. + + + + + + Gets or sets whether check box shown using ShowCheckBox property which locks/unlocks the control update is checked. + + + + + Gets the object that describes the settings for the button that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the button that switches the control into the free-text entry mode when clicked. + + + + + Gets the object that describes the settings for the button that displays popup calculator. + + + + + Gets or sets the Numeric String Format that is used to format the numeric value entered for display purpose. Read more about + available formats in MSDN under "Standard Numeric Format Strings" and "Custom Numeric Format Strings" topics. + + The format specified here indicates the format for display purpose only, not for the input purpose. + For example to display the number in system Currency format set the DisplayFormat to 'C'. + + + + + + Gets or sets whether empty null/nothing state of the control is allowed. Default value is true which means that IsEmpty property + may return true if input value is resets or ValueObject set to null/nothing. + + + + + Gets or sets whether control is empty i.e. it does not hold a valid value. + + + + + Gets or sets the input field alignment inside the control + + + + + Gets or sets the reference of the control that will be displayed on popup that is shown when drop-down button is clicked. + + + + + Gets the collection of BaseItem derived items displayed on popup menu. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Gets or sets the keyboard key that will toggle FreeTextEntryMode. Default value is Keys.None. + + + + + Occurs if Free-Text entry value is not natively recognized by the control and provides you with opportunity to convert that value to the + value control expects. + + + + + Occurs when Free-Text button is clicked and allows you to cancel its default action. + + + + + Gets or sets whether free text entries are attempted to be auto-resolved to dates like Today to today's date or Now to date and time now etc. Default value is true. + + + + + Gets or sets whether free-text entry is automatically turned off when control loses input focus. Default value is false. + + + + + Gets or sets whether control input is in free-text input mode. Default value is false. + + + + + Decreases value of the control. + + + + + Increases the value of the control. + + + + + Copies the current value in the control to the Clipboard. + + + + + Pastes the current Clipboard content if possible as the value into the control. + + + + + Moves the current control value to the Clipboard. + + + + + Raises the ParseValue event. + + Provides event arguments. + + + + Occurs when ValueObject property is set and it allows you to provide custom parsing for the values. + + + + + Gets or sets whether mouse wheel increases or decreases the input value when used. + + + + + Gets or sets the value displayed in the control. + + + + + Gets or sets the value of the control as an object. This property allows you to bind to the database fields and supports + null values. Expected value is int type or null. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets the value to increment or decrement the value of the control when the up or down buttons are clicked. + + + + + Control for input of the integer value. + + + + + Copies the current value in the control to the Clipboard. + + + + + Pastes the current Clipboard content if possible as the value into the control. + + + + + Moves the current control value to the Clipboard. + + + + + Raises the ParseValue event. + + Provides event arguments. + + + + Decreases value of the control. + + + + + Increases the value of the control. + + + + + Occurs when ValueObject property is set and it allows you to provide custom parsing for the values. + + + + + Gets or sets whether mouse wheel increases or decreases the input value when used. + + + + + Gets or sets the value displayed in the control. + + + + + Gets or sets the value of the control as an object. This property allows you to bind to the database fields and supports + null values. Expected value is int type or null. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets the value to increment or decrement the value of the control when the up or down buttons are clicked. + + + + + Initializes a new instance of the DateTimeInput class. + + + + + Copies the current value in the control to the Clipboard. + + + + + Pastes the current Clipboard content if possible as the value into the control. + + + + + Moves the current control value to the Clipboard. + + + + + Gets or sets the default date-time values that are used by the control. + + + + + Gets or sets a value indicating whether a spin button control (up-down control) is used to adjust the date/time value. The default is false. + + When the ShowUpDown property is set to true, a spin button control is shown to adjust value of currently focused input item. + The date and time can be adjusted by selecting each element individually and using the up and down buttons to change the value. + + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Resets Value property to default value. Used by Windows Forms designer. + + + + + Raises the ParseValue event. + + Provides event arguments. + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MinDate property to its default value. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MaxDate property to its default value. + + + + + Gets the Culture used by the date time input and month calendar controls + + reference to CultureInfo + + + + Raises the LockUpdateChanged event. + + Provides event data./ + + + + Raises the ValueChanged event. + + Provides event arguments. + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Called when DateTimeSelectorVisibility property has changed. + + Old property value + New property value + + + + Called when TimeFormat property has changed. + + Old property value + New property value + + + + Called when TimeSelectorType property has changed. + + Old property value + New property value + + + + Called when Command property value changes. + + + + + + + + + + + Occurs when the Value or IsEmpty property changes. + + This event is not raised when the entered date is earlier than MinDateTime or later than MaxDateTime. + + + + + + Occurs when the Value or IsEmpty property changes. This event occurs at the same time and has same function as ValueChanged event. It is provided for binding support. + + + + + Occurs when the Format property value has changed. + + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows calendar is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ValueObject property is set and it allows you to provide custom parsing for the values. + + + + + Occurs when ShowCheckBox property is set to true and user changes the lock status of the control by clicking the check-box. + + + + + Gets whether popup calendar is open. + + + + + Gets or sets whether selected date on popup calendar can be changed using keyboard arrow keys. + + + + + Gets or sets a value indicating whether a check box is displayed to the left of the selected date. + Set to true if a check box is displayed to the left of the selected date; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed to the left of the date in the control. When the check box is selected, the date/time value can be updated. When the check box is cleared, the date/time value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked and unchecked. Use LockUpdateChecked property + to get or sets whether check box is checked. + + + + + + Gets or sets the date time value of the control. You can use IsEmpty property to check whether control holds an empty value. + Setting this property to System.DateTime(0) will also make the control Empty if AllowEmptyState=true. + + + + + Gets or sets the date/time value of the control as an object. This property allows you to bind to the database fields and supports + null values. Expected value is DateTime object or null to indicate no date selected. + + + + + Gets or sets the values of the nested DateTimeGroup items. + + When nested date-time groups are used note that some of the features of the control are disabled, notably minimum and maximum values + for nested date-times. + + + + + + Gets or sets whether empty null/nothing state of the control is allowed. Default value is true which means that IsEmpty property + may return true if input value is resets or ValueObject set to null/nothing. + + + + + Gets or sets whether control is empty i.e. it does not hold a valid DateTime value. + + + + + Gets or sets the minimum date and time that can be selected in the control. + + + + + Gets or sets the maximum date and time that can be selected in the control. + + + + + Gets or sets the format date/time is displayed in. To specify custom format set this value to Custom and specify custom format using CustomFormat property. + + + + + Gets or sets the custom date/time format string. + + + + To display string literals that contain date and time separators or format strings listed below, + you must use escape characters in the substring. For example, to display the date as "June 15 at 12:00 PM", + set the CustomFormat property to "MMMM dd 'at' t:mm tt". If the "at" substring is not enclosed by escape characters, + the result is "June 15 aP 12:00PM" because the "t" character is read as the one-letter A.M./P.M. format string (see the format string table below). + + + To display single quote in custom format use two single quotes characters like so '' after each other and they will be displayed as single quote. + + The following list shows all the valid format strings and their descriptions: + + + Format String + Description + + + d + The one- or two-digit day. + + + dd + The two-digit day. Single-digit day values are preceded by a 0. + + + ddd + The three-character day-of-week abbreviation. + + + dddd + The full day-of-week name. + + + jjj + The three-digit day-of-year day. Single and two-digit values are preceded by 0. + + + j + The three-digit day-of-year day. + + + h + The one- or two-digit hour in 12-hour format. + + + hh + The two-digit hour in 12-hour format. Single digit values are preceded by a 0. + + + H + The one- or two-digit hour in 24-hour format. + + + HH + The two-digit hour in 24-hour format. Single digit values are preceded by a 0. + + + m + The one- or two-digit minute. + + + mm + The two-digit minute. Single digit values are preceded by a 0. + + + M + The one- or two-digit month number. + + + MM + The two-digit month number. Single digit values are preceded by a 0. + + + MMM + The three-character month abbreviation. + + + MMMM + The full month name. + + + s + The one- or two-digit seconds. + + + ss + The two-digit seconds. Single digit values are preceded by a 0. + + + t + The one-letter A.M./P.M. abbreviation (A.M. is displayed as "A"). + + + tt + The two-letter A.M./P.M. abbreviation (A.M. is displayed as "AM"). + + + y + The one-digit year (2001 is displayed as "1"). + + + yy + The last two digits of the year (2001 is displayed as "01"). + + + yyyy + The full year (2001 is displayed as "2001"). + + + { + Starts the nested date-time group inside of the control. Note that nested groups must always be closed. + Nested date-time groups can be used to represent range of input date/time values in the control + To access nested values use Values property. For example to have control represent the input from two time values you could set + CustomFormat to 'from' {HH:mm} 'to' {HH:mm} which will create two nested date/time groups that represent the time value. Entered + time values can be accessed through Values property which return an array of all input values. + + + } + Ends the nested date-time input group. + + + + + + + Gets or sets the CultureInfo for the culture used by the DateTime Input controls and Month Calendar controls. + Default value is null which indicates that controls will use CurrentUICulture. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets whether check box shown using ShowCheckBox property which locks/unlocks the control update is checked. + + + + + Gets the object that describes the settings for the button that shows drop-down calendar when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the button that switches the control into the free-text entry mode when clicked. + + + + + Gets or sets whether input part of the control is read-only. When set to true the input part of the control becomes + read-only and does not allow the typing. However, drop-down part if visible still allows user to change the value of the control + Use this property to allow change of the value through drop-down picker only. + + + + + Gets or sets whether empty input values (year, month or day) are set to defaults while user is entering data. Default value is true. + + + + + Gets the reference to the internal MonthCalendarItem control which is used to display calendar when drop-down is open. + + + + + Gets or sets whether first day in month is automatically selected on popup date picker when month or year is changed. + + + + + Gets or sets whether input focus is automatically advanced to next input field when input is complete in current one. + + + + + List of characters that when pressed would select next input field. For example if you are + allowing time input you could set this property to : so when user presses the : character, + the input is forwarded to the next input field. + + + + + Gets or sets the date-time selectors visibility on popup. Default value is Auto which will select selector visibility based on Format property setting. + + + + + Returns reference to internal time selector item which is used on drop-down to select time when control is used in time entry mode. + + + + + Gets or sets the popup time selector time format used to present time by the selector i.e. 12H or 24H format. + + + + + Indicates the type of popup time selector used. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Occurs if Free-Text entry value is not natively recognized by the control and provides you with opportunity to convert that value to the + value control expects. + + + + + Occurs when Free-Text button is clicked and allows you to cancel its default action. + + + + + Gets or sets whether free text entries are attempted to be auto-resolved to dates like Today to today's date or Now to date and time now etc. Default value is true. + + + + + Gets or sets whether free-text entry is automatically turned off when control loses input focus. Default value is false. + + + + + Gets or sets whether control input is in free-text input mode. Default value is false. + + + + + Initializes a new instance of the DateTimeCellEditor class. + + + + + Represents cell display class. + + + + + Represents information necessary to paint the cell on canvas. + + + + + Initializes the tree color tables. + + + + + Provides data for RenderColumnHeader event. + + + + + Gets the column header that is rendered. + + + + + Target Graphics canvas. + + + + + Gets the bounds of the column header. + + + + + Gets the effective style for the column. + + + + + Gets the AdvTree control header is rendered for. + + + + + Gets or sets the color of the column sort indicator. + + + + + Initializes a new instance of the ColumnHeaderRendererEventArgs class. + + + + + Initializes a new instance of the ColumnHeaderRendererEventArgs class. + + + + + + + + + Represents helper class for node connector display. + + + + + From node reference. + + + + + From node style reference. + + + + + To node reference. + + + + + To node style reference. + + + + + Graphics object used for drawing. + + + + + Node offset since some node coordinates are relative. + + + + + Indicates whether from node is a root node. + + + + + Reference to node connector object that describes connector type. + + + + + Gets or sets whether connector is link connector. + + + + + Reference to the collection of the connector path points. Default value is null indicating there are no path points. + + + + + Provides data for the NodeRenderer.RenderDragDropMarker event. + + + + + Gets or sets reference to Graphics object, canvas node is rendered on. + + + + + Gets or sets the selection bounds. + + + + + Initializes a new instance of the DragDropMarkerRendererEventArgs class. + + + + + Initializes a new instance of the DragDropMarkerRendererEventArgs class. + + + + + + + Represents the line connector display class. + + + + + Base class for drawing node connectors. + + + + + Creates new instance of the object. + + + + + Draws connector line between two nodes. + + Connector context information. + + + + Returns new instance of pen object for node connector line. Caller is responsible for + disposing of this object. + + Node connector display info. + New instance of Pen object. + + + + Draws connector line between two nodes. + + Connector context information. + + + + Provides information for cell rendering methods and events. + + + + + Summary description for NodeRendererEventArgs. + + + + + Gets or sets reference to Graphics object, canvas node is rendered on. + + + + + Gets or sets the reference to Node object being rendered. + + + + + Gets or sets the absolute node bounds. + + + + + Gets or sets the reference to element style for rendered node or cell. Style provided here is the style + for current node or cell state. + + + + + Gets or sets color that is passed to renderer. May be Color.Empty. + + + + + Creates new instance of the class. + + + + + Gets or sets the cell being rendered. + + + + + Gets or sets absolute cell bounds. + + + + + Gets or sets the internal cell offset. + + + + + Gets or sets the color scheme. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class and initializes it with default values. + + Reference to graphics object. + Reference to context node. + Reference to node bounds + Reference to cell style + Reference to cell + Reference to cell bounds + + + + Represents custom connector path info. + + + + + Summary description for NodeDisplay. + + + + Creates new instance of the class + Object to initialize class with. + + + + Paints the layout on canvas. + + + + + Sets locked offset to specific value. Point.Empty means there is no locked offset set. + + New locked offset. + + + + + + + + + + Gets or sets the offset of the tree content relative to the size of the container control. + + + + Gets or sets whether offset is locked, i.e. cannot be changed. + + + + Returns the default offset for the tree content relative to the size of the container. + + + + + Gets or sets the reference to the tree control managed by display class. + + + + + Base class for node expand button display. + + + + Creates new instance of the class + + + Draws expand button. + Context parameters for drawing expand button. + + + + Represents class that paints elliptical expand button. + + + + Draws ellipse type expand button. + Expand context drawing information. + + + + Represents expand button display using predefined images. + + + + + Draws image type expand button. + + Expand context information + + + + Represents event arguments for RenderExpandPart event. + + + + + Gets or sets reference to Graphics object, canvas node is rendered on. + + + + + Gets or sets the reference to Node object being rendered. + + + + Expand part bounds + + + Expand part border color + + + Expand part line color + + + Expand part background color + + + Expand part target gradient background color + + + Gradient angle + + + Expand part image when node is expanded + + + Expand part image when node is collapsed + + + Internal support for expand button types + + + Gets whether mouse is over expand part + + + + Creates new instance of the class and initializes it with default values. + + Reference to graphics object. + + + + Represents class that paints rectangular expand button. + + + + + Draw rectangular type expand button. + + Expand button context information. + + + + Draw triangular type expand button. + + Expand button context information. + + + + Represent class that paints selection around node. + + + + + Represents default system node and cell renderer. + + + + + Represents abstract renderer class for node objects. + + + + + Draws node background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNodeBackground method so events can occur. + + Information provided for rendering. + + + + Raises RenderNodeBackground event. + + Event arguments. + + + + Draws node expand part. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNodeExpandPart method so events can occur. + + Information provided for rendering. + + + + Raises RenderNodeExpandPart event. + + + + + + Draws cell background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellBackground method so events can occur. + + Information provided for rendering. + + + + Raises RenderCellBackground event. + + Event arguments + + + + Draws cell check box. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellCheckBox method so events can occur. + + Information provided for rendering. + + + + Raises RenderCellCheckBox event. + + Event arguments + + + + Draws cell image. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellImage method so events can occur. + + Information provided for rendering. + + + + Raises RenderCellImage event. + + Event arguments + + + + Draws cell text. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellText method so events can occur. + + Information provided for rendering. + + + + Raises RenderCellImage event. + + Event arguments + + + + Draws selection for SelectedNode. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSelection method so events can occur. + + Information provided for rendering. + + + + Raises RenderSelection event. + + Event data. + + + + Draws hot-tracking marker for mouse over node. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderHotTracking method so events can occur. + + Information provided for rendering. + + + + Raises RenderHotTracking event. + + Event data. + + + + Draws connector between nodes. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderConnector method so events can occur. + + Information provided for rendering. + + + + Raises RenderConnector event. + + Event data. + + + + Draws the tree background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderTreeBackground method so events can occur. + + Information provided for rendering. + + + + Raises RenderTreeBackground event. + + Event data. + + + + Draws the drag & drop marker that indicates the insertion point for the node. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderDragDropMarker method so events can occur. + + Information provided for rendering. + + + + Raises RenderDragDropMarker event. + + Event data. + + + + Draws the column header. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderColumnHeader method so events can occur. + + Information provided for rendering. + + + + Raises RenderDragDropMarker event. + + Event data. + + + + Draws node group line when in tile view. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderTileGroupLine method so events can occur. + + Information provided for rendering. + + + + Raises RenderNodeBackground event. + + Event arguments. + + + + Occurs when node background is being drawn. + + + + + Occurs when node expand part is being drawn. + + + + + Occurs when cell background is being drawn. + + + + + Occurs when cell check-box is being drawn. + + + + + Occurs when cell image is being drawn. + + + + + Occurs when cell text is being drawn. + + + + + Occurs when node selection marker is rendered. + + + + + Occurs when node hot-tracking marker is rendered. + + + + + Occurs when node connector is being drawn. + + + + + Occurs when tree background is rendered. + + + + + + Renders the Column Header. + + + + + Occurs when node group line is being rendered while control is in tile view. + + + + + Gets or sets the color table used by the renderer. + + + + + Gets or sets the color table used by the renderer. + + + + + Returns ElementStyleDisplayInfo class that provides information for ElementStyle rendering. + + Reference to style. + Reference to graphics object. + Style bounds + New instance of ElementStyleDisplayInfo + + + + Draws node background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNodeBackground method so events can occur. + + Information provided for rendering. + + + + Draws node expand part. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNodeExpandPart method so events can occur. + + Information provided for rendering. + + + + Draws cell background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellBackground method so events can occur. + + Information provided for rendering. + + + + Draws cell check box. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellCheckBox method so events can occur. + + Information provided for rendering. + + + + Draws cell image. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellImage method so events can occur. + + Information provided for rendering. + + + + Draws cell text. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCellText method so events can occur. + + Information provided for rendering. + + + + Draws selection for SelectedNode. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSelection method so events can occur. + + Information provided for rendering. + + + + Draws hot-tracking marker for mouse over node. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderHotTracking method so events can occur. + + Information provided for rendering. + + + + Draws connector between nodes. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderConnector method so events can occur. + + Information provided for rendering. + + + + Draws the tree background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderTreeBackground method so events can occur. + + Information provided for rendering. + + + + Draws the drag & drop marker that indicates the insertion point for the node. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderDragDropMarker method so events can occur. + + Information provided for rendering. + + + + Draws the column header. If you need to provide custom rendering this is the method that you should override in your custom renderer. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderColumnHeader method so events can occur. + + Information provided for rendering. + + + + Draws node group line when in tile view. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderTileGroupLine method so events can occur. + + Information provided for rendering. + + + + Summary description for NodeTreeDisplay. + + + + Creates new instance of the class + Object to initialize class with. + + + + Paints the tree on canvas. + + + + + Defines the color table for tree selection. + + + + + Gets or sets the outer border for the selection. + + + + + Gets or sets the outer border corner radius. + + + + + Gets or sets the inner border for the selection. + + + + + Gets or sets the selection fill. + + + + + Gets or sets the selection text color. + + + + + Data form RenderSelection event. + + + + + Gets or sets reference to Graphics object, canvas node is rendered on. + + + + + Gets or sets the reference to selected Node object. + + + + + Gets or sets the selection bounds. + + + + + Gets or sets the node selection box style. + + + + + Gets or sets whether tree control is active, focused. + + + + + Provides data for tree background rendering events. + + + + + Gets or sets reference to Graphics object, canvas tree background is rendered on. + + + + + Gets or sets the reference to AdvTree control. + + + + + Creates new instance of the class and initializes it with default values. + + Reference to graphics object. + + + + Defines the Tree color table. + + + + + Gets or sets the color table used for the node selection display. + + + + + Gets or sets the color for node drag & drop marker. + + + + + Gets or sets the color of tree expand button type of rectangle. + + + + + Gets or sets the color of tree expand button type of Ellipse. + + + + + Gets or sets the color of tree expand button type of Triangle. + + + + + Gets or sets the color for tree grid lines. + + + + + Gets or sets the color of the column sort indicator which is rendered on columns when sorted. + + + + + Defines the color table for node expand button. + + + + + Gets or sets the border for the expand button which expands the node. + + + + + Gets or sets the expand button fill for button that expands the node. + + + + + Gets or sets the expand button foreground for button that expands the node. + + + + + Gets or sets the border for the expand button which expands the node. + + + + + Gets or sets the expand button fill for button that expands the node. + + + + + Gets or sets the expand button foreground for button that expands the node. + + + + + Gets or sets the border for the expand button which collapses the node. + + + + + Gets or sets the expand button fill for button that collapses the node. + + + + + Gets or sets the expand button foreground for button that expands the node. + + + + + Gets or sets the border for the expand button which collapses the node. + + + + + Gets or sets the expand button fill for button that collapses the node. + + + + + Gets or sets the expand button foreground for button that expands the node. + + + + + Defines the color table for tree selection. + + + + + Gets or sets the color table for FullRowSelect selection type. + + + + + Gets or sets the color table for FullRowSelect selection type when tree control is inactive. + + + + + Gets or sets the color table for HighlightCells selection type. + + + + + Gets or sets the color table for HighlightCells selection type when tree control is inactive. + + + + + Gets or sets the color table for NodeMarker selection type. + + + + + Gets or sets the color table for NodeMarker selection type when tree control is inactive. + + + + + Gets or sets the color table used for node hot-tracking. + + + + + Creates the pen for the border. + + Returns pen or null if pen cannot be created. + + + + Gets or sets the border width. Default value is 0. + + + + + Represents Collection for the ColorStop objects. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds array of new objects to the collection. + + Array of object to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the ColorStop array. + + Array to copy to. + + + + Creates ColorBlend object based on the members of the collection. ColorBlend object will be valid only if all members of the collection + represents relative/percentage based color blends. + + + + + + Adds the ColorStop objects from the collection. + + Collection to copy objects from + + + + Initializes the collection with the two color blend. + + Collection to initialize. + Start color. + End color. + + + + Returns reference to the object in collection based on it's index. + + + + + Defines single color blend point for the multicolor gradient fills. + + + + + Creates new instance of the class. When defining multicolor gradient blends and using the percentage positions the positions created + must start with 0f and end with 1f. + + + + + Creates new instance of the class and initialize it with default values. + + + + + Gets or sets Color to use in multicolor gradient blend at specified position. + + + + + Gets or sets the color position in multicolor gradient blend. Values less or equal to 1 are used as percentage specifing percentages of distance along the gradient line. + Values greater than 1 are used as absolute pixel values of distance along the gradient line. + + + + + Represents BackgroundColorBlend object converter. + + + + + Creates the brush for fill. + + Bounds for the brush + Returns brush or null if brush cannot be created for given bounds or colors are not set. It is responsibility of caller to Dispose the brush. + + + + Creates a pen based on fill parameters. + + Width of the pen to create + new instance of pen or null if pen cannot be created. + + + + Initializes a new instance of the GradientFill class. + + + + + Initializes a new instance of the GradientFill class. + + + + + + + Initializes a new instance of the GradientFill class. + + + + + + + + Initializes a new instance of the GradientFill class. + + + + + + Initializes a new instance of the GradientFill class. + + + + + + Creates the brush for fill. + + Bounds for the brush + Returns brush or null if brush cannot be created for given bounds or colors are not set. It is responsibility of caller to Dispose the brush. + + + + Gets whether property should be serialized. + + true if property should be serialized + + + + Sets the property to its default value. + + + + + Gets whether property should be serialized. + + true if property should be serialized + + + + Sets the property to its default value. + + + + + Creates a pen based on fill parameters. + + Width of the pen to create + new instance of pen or null if pen cannot be created. + + + + Gets or sets the starting gradient fill color. + + + + + Gets or sets the end gradient fill color. + + + + + Gets the collection that defines the multicolor gradient background. + + + Setting this property creates a multicolor gradient with one color at each position along the gradient line. Setting this property nullifies all previous color, position, and falloff settings for this gradient fill. + + + + + Gets or sets the gradient fill angle. Default value is 90. + + + + + Defines a visual shape. + + + + + Renders shape on canvas. + + Target graphics to render shape on. + Shape bounds. + + + + Gets or sets the single piece of content inside of the shape. + + + + + Gets or sets whether to clip the Content of this shape. Default value is false. + + + + + Renders rectangle on canvas. + + Target graphics to render shape on. + Shape bounds. + + + + Gets whether property should be serialized. + + + + + Resets the property to its default value. + + + + + Gets or sets shape border. + + + + + Gets or sets the shape fill. + + + + + Gets or sets the CornerRadius. + + + + + Initializes a new instance of the SolidBorder class. + + + + + + + Initializes a new instance of the SolidBorder class. + + + + + + Initializes a new instance of the SolidBorder class. + + + + + Creates the pen for the border. + + Returns pen or null if pen cannot be created. + + + + Gets whether property should be serialized. + + true if property should be serialized + + + + Sets the property to its default value. + + + + + Gets or sets the fill color. + + + + + Initializes a new instance of the SolidFill class. + + + + + + Initializes a new instance of the SolidFill class. + + + + + Creates the brush for fill. + + Bounds for the brush + Returns brush or null if brush cannot be created for given bounds or colors are not set. It is responsibility of caller to Dispose the brush. + + + + Gets whether property should be serialized. + + true if property should be serialized + + + + Sets the property to its default value. + + + + + Gets or sets the fill color. + + + + + Specifies layout of the items in AdvTree control. + + + + + Standard TreeView layout. + + + + + ListView style tile layout. + + + + Specifies the way background image is displayed on background. + + + Image is stretched to fill the background + + + Image is centered inside the background + + + Image is tiled inside the background + + + + Image is drawn in top left corner of container space. + + + + + Image is drawn in top right corner of container space. + + + + + Image is drawn in bottom left corner of container space. + + + + + Image is drawn in bottom right corner of container space. + + + + Indicates alignment of a part of the cell like image or check box in relation to the text. + + + + Part is aligned to the left center of the text assuming left-to-right + orientation. + + + + + Part is aligned to the right center of the text assuming left-to-right + orientation. + + + + + Part is aligned to the top left of the text assuming left-to-right + orientation. + + + + Part is aligned above the text and centered. + + + + Part is aligned to the top right of the text assuming left-to-right + orientation. + + + + + Part is aligned to the bottom left of the text assuming left-to-right + orientation. + + + + Part is aligned below the text and centered. + + + + Part is aligned to the bottom right of the text assuming left-to-right + orientation. + + + + + Part has default alignment that depends on the parent control view. + + + + + Specifies how to trim characters from a text that does not completely fit into a element's shape. + + + + + Specifies that the text is trimmed to the nearest character. + + + + + Specifies that the text is trimmed to the nearest character, and an ellipsis is inserted at the end of a trimmed line. + + + + + The center is removed from trimmed lines and replaced by an ellipsis. The algorithm keeps as much of the last slash-delimited segment of the line as possible. + + + + + Specifies that text is trimmed to the nearest word, and an ellipsis is inserted at the end of a trimmed line. + + + + + Specifies no trimming. + + + + + Specifies that text is trimmed to the nearest word. + + + + + Indicates absolute vertical alignment of the content. + + + + + Content is aligned to the top + + + + + Content is aligned in the middle + + + + + Content is aligned at the bottom + + + + + Indicates absolute horizontal alignment + + + + + Content is left aligned + + + + + Content is centered + + + + + Content is right aligned + + + + + Indicates prefered node layout position on Map tree layout when node is the child node of the top-level root node. + + + + + Node is positioned based on default algorithm. + + + + + Sub-root node and all nodes after it are positioned to the left of the root. + + + + + Sub-root node and all nodes before it are positioned to the right of the root. + + + + + Specifies the column header visibility for the node. + + + + + Column header is automatically shown/hidden based on the node's position in the tree. When + Node is first child node i.e. with index=0 the header will be shown, otherwise header will + be hidden. + + + + + Column header is always displayed regardless of node's position. + + + + + Column header is always hidden regardless of node's position. + + + + + Indicates the part of the node. + + + + + Bounds of complete node content except expand button. This also includes the child node bounds if node is expanded. + + + + + Bounds of the expand button which collapses/expands the node. + + + + + Hit test bounds of the expand button which collapses/expands the node used by mouse routines to trigger node expansion/collapse. + + + + + Bounds of all child nodes of give node. + + + + + Bounds for cells inside a node. + + + + + Complete node bounds including expand button. + + + + + Bounds of the command button. + + + + + Bounds of child node columns if node has columns defined. + + + + + Indicates the part of the cell. + + + + + Bounds of check box or Rectangle.Empty if there is no check-box. + + + + + Bounds of image inside the cell or Rectangle.Empty if there is no image. + + + + + Text bounds inside of cell. + + + + + Cell bounds + + + + + Indicates part of the node mouse is placed over. + + + + + Mouse is not over any node part. + + + + + Mouse is placed over the node. + + + + + Mouse is placed over node expand button. + + + + + Mouse is placed over the cell. + + + + + Mouse is placed over the command button. + + + + + Indicates the visibility of node expand part which allows user to expand/collaps node. + + + + + Default setting which indicates that when node has child nodes expand part is visible otherwise it is hidden. + + + + + Expand part is always visible regardless of whether child nodes are present or not. + + + + + Expand part is always hidden regardless of whether child nodes are present or not. + + + + + Specifies the action that raised a AdvTreeEventArgs event + + + + + The event was caused by a keystroke. + + + + + The event was caused by a mouse operation. + + + + + The event was caused by the Node collapsing. + + + + + The event was caused by the Node expanding. + + + + + The event is caused programmatically from user code. + + + + + Specifies node connector type. Node connector is the type of the line/connection that is drawn to connect child node to it's parent node. + + + + + Straight line connector type. + + + + + Specifies the layout type used to position the cells within the nodes. + + + + + Specifies that default setting is to be used for cell layout. Default is Horizontal. When set to default on the Node, setting from Tree control is used. + + + + Horizontal layout positions the cells horizontally next to each other. + + + + Vertical layout positions cell vertically on top of each other. + + + + + Specifies the layout type used to position the parts of the cell like image, checkbox and text. + + + + + Specifies that default setting is to be used for cell parts layout. Default is Horizontal. When set to default on the Cell, setting from Tree control is used. + + + + Horizontal layout positions the parts of the cell horizontally next to each other. + + + + Vertical layout positions parts of the cell vertically on top of each other. + + + + + Specifies the color scheme loaded by ColorScheme object. + + + + + Indicates Office 2003 like color scheme. + + + + + Indicates VS.NET 2005 like color scheme. + + + + + Indicates Office 2007 like color scheme. + + + + + Specifies the currently selected system color scheme if running on Windows XP. + + + + + Color scheme cannot be determined. + + + + + Blue color scheme. + + + + + Olive green color scheme. + + + + + Silver color scheme. + + + + + Specifies the flow of diagram layout related to the root node. + + + + + Nodes are positioned from left to right with root node being the left-most node. + + + + + Nodes are positioned from right to left with root node being the right-most + node. + + + + + Nodes are positioned from top to bottom with root node being the top node. + + + + + Nodes are positioned from bottom to top with root node being bottom node. + + + + + Specifies the flow of the map layout. + + + + + Nodes are arranged around the root node. + + + + + Nodes are arranged from below the root node. + + + + + Nodes are arranged above the root node. + + + + + Nodes are arranged to the right of the root node. + + + + + Nodes are arranged to the left of the root node. + + + + + Specifies the type of the expand button. + + + + + Indicates elliptical expand button. + + + + + Indicates rectangular expand button. + + + + + Indicates that images are used for expand button. + + + + + Indicates the Windows Vista style expand button. + + + + + Specifies the visual style for the tree control. + + + + + Indicates default visual style. + + + + + Specifies the layout type for the nodes. + + + + + Nodes are arranged around root node in map format. + + + + + Nodes are arranged from left-to-right in diagram format. + + + + + Specifies renderer type used to render nodes. + + + + + Specifies default renderer which allows most customization through AdvTree + properties. Default renderer integrates with the Style architecture to provide + customization on renderer behavior. + + + + + Specifies that custom renderer is used. When set you must also set NodeRenderer + to renderer you want to use. + + + + + Specifies the node selection style. + + + + + Node selector highlights the complete node row when node is selected. + + + + + Node selector draws the rectangle that highlights the node content. Appearance similar to system tree view in Windows Vista. + + + + + Node selector draws hollow selection rectangle around the node. + + + + + Specifies the rule for multi-node selection. + + + + + Allows multiple selection of nodes with same parent node only. + + + + + Allows multiple selection of any node. + + + + + Gets or sets the image alignment inside of column header. + + + + + Image is left aligned. + + + + + Image is right aligned. + + + + + Specifies the editor type used when cell is edited. + + + + + Indicates default, text based editor. + + + + + Indicates that Integer numeric editor will be used for editing the value of the cell or column. + + + + + Indicates that Double numeric editor will be used for editing the value of the cell or column. + + + + + Indicates that Currency numeric editor will be used for editing the value of the cell or column. + + + + + Indicates that date editor will be used for editing the value of the cell or column. + + + + + Indicates that time editor will be used for editing the value of the cell or column. + + + + + Indicates that date and time editor will be used for editing the value of the cell or column. + + + + + Indicates that cell will use custom editor that you provide by handling AdvTree.ProvideCustomCellEditor event. + + + + + Specifies the sort direction for the column header. + + + + + No sort is specified. + + + + + Ascending sorting is in effect, i.e. A-Z + + + + + Descending sorting is in effect, i.e. Z-A + + + + + Defines the delegate for AdvTree cell based action events. + + + + + Defines the delegate for AdvTree cell based action events. + + + + + Defines the delegate for AdvTree node based action events that can be cancelled. + + + + + Defines the delegate for AdvTree node based action events. + + + + + Defines delegate for Command button events. + + + + + Defines delegate for label editing events. + + + + + Defines the delegate for AdvTree node based action events. + + + + + Defines the delegate for BeforeNodeDrop and AfterNodeDrop events + + + + + Defines the delegate for NodeDragFeedback event. + + + + + Defines the delegate for mouse based node events + + + + + Defines delegate for node rendering events. + + + + + Defines delegate for cell rendering events. + + + + + Defines delegate for RenderExpandPart event. + + + + + Defines delegate for RenderExpandPart event. + + + + + Defines delegate for RenderConnector event. + + + + + Defines delegate for TreeBackgroundRenderer events. + + + + + Defines delegate for RenderDragDropMarker event. + + + + + Defines delegate for RenderColumnHeader event. + + + + + Provides data for the ProvideCustomCellEditor event. + + + + + Gets or sets the cell editor. You must set this property in your event handler to the custom + editor to be used for cell editing. + + + + + Gets the cell editor will be used for. + + + + + Initializes a new instance of the CustomCellEditorEventArgs class. + + + + + + Defines delegate for ProvideCustomCellEditor event. + + + + + Provides more information about MarkupLinkClick event. + + + + + Gets the value of href attribute from the markup link that was clicked. + + + + + Gets the value of name attribute from the markup link that was clicked. + + + + + Creates new instance of the object. + + Value of name attribute. + Value of href attribute. + + + + Defines delegate for MarkupLinkClick event. + + + + + Represents arguments for SerializeNode event which allows you to add custom serialization data to definitions saved by control. + + + + + Gets reference to the node being serialized or de-serialized. + + + + + Gets reference to instance of XmlElement that item is serialized to or is being de-serialized from. You should not change any data directly on this element. + + + + + Gets the reference to XmlElement that you can serialize to or de-serialize any custom data from. You can add child elements or set the attributes on + this XmlElement when handling SerializeItem event. When handling DeserializeItem event you can load your data from this element. + + + + + Defines delegate for SerializeItem event. + + + + + Represents the table header. + + + + + Default constructor. + + + + + Gets the reference to the collection that contains the columns associated with header. + + + + + Gets or sets the name associated with this header definition. + + + + + Represents collection for HeaderDefinition objects. + + + + + Sets the node collection belongs to. + + HeaderDefinition that is parent of this collection. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the HeaderDefinition array. + + Array to copy to. + + + + Gets or sets the node this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Provides WinApi functions to rest of the application. + + + + + Resets Hoover timer for specified control. + + + + + Provides AdvTree Keyboard handling. + + + + + Represents class for Node's cell layout. + + + + + Offset cell bounds, check box bounds, image bounds and text bounds by specified offset. + + Cell to offset. + Horizontal offset in pixels. + Vertical offset in pixels. + + + + Returns spacing between check box and image if both are displayed + + + + + Returns spacing between image or checkbox and text + + + + + Returns vertical spacing between cells in a node + + + + + Spacing between different parts of the cell, like image, option button, text and expand button area + + + + + Initializes a new instance of the CellTileLayout class. + + + + + Class that is used to layout column header. + + + + + Gets or sets the vertical spacing between nodes in pixels. + + + + + Gets or sets the horizontal spacing between nodes in pixels. + + + + + Returns horizontal spacing between cells in a node + + + + + Returns width of the expand button area. Default is 24 pixels. + + + + + Gets or sets the size of the expand part that is expanding/collapsing the node. Default value is 8,8. + + + + + Gets or sets width of command button area. Default is 8 pixels. + + + + + Summary description for NodeLayout. + + + + + Performs layout of the nodes inside of the tree control. + + + + + Performs layout for single unassigned node. Node does not have to be part of the tree control. + + Node to perform layout on. + + + + Resizes all styles and prepares them for layout. + + + + + Returns default top-level columns for tree control. + + Returns array list of ColumnInfo objects. + + + + Returns column information for a given node. + + Node to return column information for + Returns array list of ColumnInfo objects or null if there are no columns defined. + + + + Returns column header collection for the given column template name. + + Name of the column template. + Column header collection or null if template name cannot be found. + + + + Sets the position and size of the node command button. + + Node layout context information + + + + Determines the rectangle of the +/- part of the tree node that is used to expand node. + + Node layout context information + + + + Returns the size of the node expand part. + + Size of the expand part, default 8,8. + + + + Provides the layout for single node. + + Layout information. + + + + Returns true if given node has expand part. + + Layout context information. + + + + + Returns whether given node has command part. + + Layout context information. + True if command part should be drawn otherwise false. + + + + Returns class responsible for cell layout. + + Cell layout class. + + + + Offsets node location and location of it's child nodes bounds. + + Node to offset. + Horizontal offset. + Vertical offset. + + + + Gets or sets layout settings. + + + + + Gets or sets the child node indent in pixels. + + + + + Returns true if root node should have expanded part + + + + + Returns true if expand part space should be accounted for even if they expand part is not visible or need to be displayed. Default value is false. + + + + + Initializes a new instance of the NodeColumnInfo structure. + + + + + + + Gets or sets the list of column info object for the columns. + + + + + Gets or sets whether columns have auto-size column. + + + + + Used to pass node contextual information used for layout of the node. + + + + + Performs ListView Tile style layout. + + + + + Returns default top-level columns for tree control. + + Returns array list of ColumnInfo objects. + + + + Gets whether the expand part of the node +/- is aligned to the left of the node in left-to-right layout. + + Node to get expand part alignment for + true if node expand part is aligned to the left in left-to-right layout. + + + + Returns column information for a given node. + + Node to return column information for + Returns array list of ColumnInfo objects or null if there are no columns defined. + + + + Returns true if given node has expand part. + + Layout context information. + + + + + Returns class responsible for cell layout. + + Cell layout class. + + + + Returns true if expand part space should be accounted for even if they expand part is not visible or need to be displayed. Default value is false. + + + + + Gets or sets whether parent/child node relationship is displayed as groups. + + + + + Performs classic TreeView layout. + + + + + Gets whether the expand part of the node +/- is aligned to the left of the node in left-to-right layout. + + Node to get expand part alignment for + true if node expand part is aligned to the left in left-to-right layout. + + + + Returns true if expand part space should be accounted for even if they expand part is not visible or need to be displayed. Default value is false. + + + + + Represents the Node in Tree control. + + + + Default Constructor. + + + + Creates node and initializes its text. + + + + + Creates node and initializes its text and Style property. + + + + + Sets the bounds of the node. + + New location and size of the node. + + + + Sets the content bounds of the node. Content bound is bound for the the cells inside the node + and it excludes the expand rectangle. Bounds also include the node style padding and + reflect node margin. + + New location and size of the node. + + + + Sets cell bounds. + + New cells bounds. + + + + Sets node parent. + + Parent node object. + + + + Called when Parent of the node has changed. + + + + + Sets the bounds of the expand part. + + New part bounds. + + + + Sets the Checked or CheckState properties. + + New value for checked state. + Action source. + + + + Sets the Checked or CheckState properties. + + New value for checked state. + Action source. + + + + Sets whether node is in edit mode or not. + + True indicating that node is in edit mode false otherwise. + + + + Sets selected cell and provides information on the action that caused the selection change. + + New selected cell. + Action source. + + + + Resets image to its default value. Windows Forms designer support. + + + + + Resets image to its default value. Windows Forms designer support. + + + + + Resets ImageMouseOver to its default value. Windows Forms designer support. + + + + + Resets ImageExpanded to its default value. Windows Forms designer support. + + + + + Called after node has been deselected. + + Provides information on how selection was performed + + + + Called after node has been selected. + + Provides information on how selection was performed + + + + Returns cell within a node which contains specified coordinates. + + + + Cell which contains specified coordinates or null/nothing if no cell contains coordinates. + + + + Invalidates the layout for this node and causes the layout to be performed on next layout request. + + + + + Invalidates the layout for this node and causes the layout to be performed on next layout request. + + Indicates whether to invalidate layout for all child nodes as well. + + + + Invalidates node and causes a paint message to be sent to the tree. + + + + Initiates the editing of node text. + + This method by default edits text stored in Node.Text. Call to this method is + same as calling the overload method BeginData(0) with zero as parameter. Use BeginData + overload method to begin editing the specific column for multi-column nodes. + + + + Initiates the editing of node text. + + The initial text to be entered into the edit TextBox. Specify null to use existing text. + + + + Initiates text editing of certain Node column. + + Zero based index of a column to begin editing for. Column 0 always corresponds to + Node.Text property. + + + + Initiates text editing of certain Node column. + + Zero based index of a column to begin editing for. Column 0 always corresponds to + Node.Text property. + + + The initial text to be entered into the edit TextBox. Specify null to edit existing text. + + + + + Creates new instance of the node for the Copy() and DeepCopy() methods. Allows you to returns your own node type copy if you inherit from node to add custom properties. + + New instance of a node. + + + Makes a "shallow" copy of a Node. + + Shallow copy of a Node is a exact copy of Node but without copy + of all child nodes in Nodes collection. + + + + + Copies this node properties to a node. + + Node top copy properties to. + + + Makes a "deep" copy of a node. + + Deep copy of Node is a exact copy of Node including exact copies of all child nodes + in this node's Nodes collection. + + + + + Collapses the tree node. + + + + + Collapses the tree node. + + Action that caused the event + + + + Collapses all the child tree nodes. + + + + + Ends the editing of the node text or column. + + true if the editing of the tree node label text was canceled without being saved; otherwise, false. + + + + Ensures that the node is visible, expanding nodes and scrolling the control as necessary. + + + + + Expands the node. + + + The Expand method expands the current Node down to the next level of nodes. + The state of a Node is persisted. For example, if the next level of child nodes was not collapsed previously, when the Expand method is called, the child nodes appear in their previously expanded state. + + + + + Expands the node. + + + The Expand method expands the current Node down to the next level of nodes. + The state of a Node is persisted. For example, if the next level of child nodes was not collapsed previously, when the Expand method is called, the child nodes appear in their previously expanded state. + + Action that caused the event. + + + + Expands all the child tree nodes. + + + + + Expands all the child tree nodes. + + + + + Removes the current node from the control. + + + When the Remove method is called, the node and any child nodes assigned to the Node are removed from the Tree. The removed child nodes are removed from the Tree, but are still attached to this node. + + + + + Removes the current node from the control and provides information about source of action + + + When the Remove method is called, the node and any child nodes assigned to the Node are removed from the Tree. The removed child nodes are removed from the Tree, but are still attached to this node. + + + + + Toggles the node to either the expanded or collapsed state. + + + + + Toggles the node to either the expanded or collapsed state. + + Action that caused the event. + + + Returns string representation of the Node. + + + + Called after new cell has been added to Cells collection. + + Reference to the new cell added. + + + + Called after cell has been removed from Cells collection. + + Reference to the removed cell. + + + + Occurs when property on the node has changed that influences the size of the node. + + + + + Occurs when any image property for the cell has changed. + + + + + Occurs when size of the child nodes has changed. + + + + + Called before Expanded state of the node has changed. + + New Expand State + Action Source + + + + Called when visual part of the node has changed due to the changes of its properties or properties of the cells contained by node. + + + + + Called after new node has been added to Nodes collection. + + Reference to the new node. + + + + Called after node has been removed from Nodes collection. + + Reference to the node that is removed. + + + + Creates new cells based on the columns defined on either parent node or the columns in tree control. Node + must be parented so it can get reference to a parent tree control. + + + + + Raises the Click event on node and parent tree if available. + + + + + Provides implementation for IComparable interface. This is used for sorting and it compares the Text property on nodes. + + + + + + + Occurs when the mouse pointer is over the node and a mouse button is pressed. + + + + + Occurs when the mouse pointer is over the node and a mouse button is released. + + + + + Occurs when the mouse pointer is moved over the node. + + + + + Occurs when the mouse enters the node. + + + + + Occurs when the mouse leaves the node. + + + + + Occurs when the mouse hovers over the node. + + + + + Occurs when the node is clicked with left mouse button. If you need to know more information like if another mouse button is clicked etc. use + NodeMouseDown event. + + + + + Occurs when the node is double-clicked. + + + + + Occurs when hyperlink in text-markup is clicked. + + + + + Gets whether node has child nodes. + + + + + Gets or sets the context menu assigned to this node. Standard Context Menus, VS.NET 2005 Context Menus and DotNetBar Suite context menus are supported. + Default value is null (Nothing) which indicates that no context menu is assigned. + + + + + Gets whether any of the cells inside the node has HostedControl property set. + + + + + Gets or sets custom node renderer. You can set this property to your custom renderer. When set the RenderMode should be set to custom to enable + your custom renderer. To choose one of the system renderer use RenderMode property. Default value is null. + + + + + Gets or sets the render mode used to render the node. Default value is eNodeRenderMode.Default which indicates that system default renderer is used. + Note that if you specify custom renderer you need to set either AdvTree.NodeRenderer or Node.NodeRenderer property. + + + + + Gets or sets whether node is expanded. Expanded node shows it's child nodes. + + + + + Returns name of the node that can be used to identify it from the code. + + + + + Gets or sets whether node can be dragged and dropped. Default value is true. + + + + + Gets or sets visibility of the expand button. Default value is Auto meaning that + expand button is displayed only if node has at least one child node. + + + You can use this property for example to dynamically load the child nodes when user + tries to expand the node. You could for example handle BeforeExpand event to load child + nodes into the node. + + + + + Gets or sets whether any operation on the node has been performed that would affect node's size. Size changed flag + internally indicates that node's size needs to be recalculated because it has changed + due to the changes in data. + + + + + Gets the relative bounds of the tree node including the expand part of the node. + + + + + Gets the absolute bounds of the tree node including the expand part of the node. + + + + + Gets the node content bounds. + + + + + Gets the bounds for all the cells inside the node. The bounds do not include the expand part. + + + + + Gets the bounds for all the cells inside the node. The bounds do not include the expand part. + + + + + Gets or sets the bounds of child nodes. + + + + + Gets the expand part rectangle. Expand part is used to expand/collapse node. + + + + + Gets the expand part rectangle. Expand part is used to expand/collapse node. + + + + + Gets or sets the Command part bounds if command part is visible. + + + + + Gets or sets a value indicating whether the tree node is in a checked state. + + + + + Gets or sets the checkbox alignment in relation to the text displayed by first default cell. + + + + + Gets or sets whether check box is visible inside the cell. + + + + + Gets or sets the appearance style of the item. Default value is CheckBox. Item can also assume the style of radio-button. + + + + + Gets or sets a value indicating whether the CheckBox will allow three check states rather than two. If the ThreeState property is set to true + CheckState property should be used instead of Checked property to set the extended state of the control. + + + + + Specifies the state of a control, such as a check box, that can be checked, unchecked, or set to an indeterminate state. + + + + + Gets or sets whether first cell content is editable when cell editing is enabled on tree control. Default value is true. + + + + + Gets the path from the root tree node to the current tree node. The path consists of the labels of all the tree nodes that must be navigated to get to this tree node, starting at the root tree node. The node labels are separated by the delimiter character specified in the PathSeparator property of the Tree control that contains this node. + + + + + Gets the zero based index of position of the tree node in the tree node collection. -1 is returned if node is not parented. If node is root node + the index of node in AdvTree.Nodes collection is returned. + + + + + Gets a value indicating whether the tree node is in an editable state. true if the tree node is in editable state; otherwise, false. + + + + + Gets whether left mouse button is pressed on any cell contained by this node. + + + + + Gets whether mouse cursor is over on any cell contained by this node. + + + + + Gets a value indicating whether the tree node is in the selected state. true if the tree node is in the selected state; otherwise, false. + + + + + Gets or sets whether node can be selected by user by clicking it with the mouse or using keyboard. Default value is true. + + + + + Gets whether node can be selected. Node must be Visible, Enabled and Selectable in order for it to be selected. + + + + + Gets or sets a cell that is in selected state otherwise it returns null. + + + + + Gets a value indicating whether the tree node is visible. Node is considered to be visible when it's Visible property is set to true and path to the node is available i.e. all parent nodes are expanded. + + + + + Returns whether node is displayed on the screen and visible to the user. When node is outside of the viewable area this property will return false. It will also return false if node is not visible. + + + + + Gets the last child tree node. The LastNode is the last child Node in the NodeCollection stored in the Nodes property of the current tree node. If the Node has no child tree node, the LastNode property returns a null reference (Nothing in Visual Basic). + + + + + Gets the next sibling tree node. The NextNode is the next sibling Node in the NodeCollection stored in the Nodes property of the tree node's parent Node. If there is no next tree node, the NextNode property returns a null reference (Nothing in Visual Basic). + + + + + Gets the next visible tree node. The NextVisibleNode can be a child, sibling, or a tree node from another branch. If there is no next tree node, the NextVisibleNode property returns a null reference (Nothing in Visual Basic). + + + + + Gets the zero-based depth of the tree node in the tree control. The root node is considered the first level of nesting and returns 0. + + + + + Gets the collection of Node objects assigned to the current tree node. The Nodes property can hold a collection of other Node objects. Each of the tree node in the collection has a Nodes property that can contain its own NodeCollection. Nesting of tree nodes can make it difficult to navigate a tree structure. The FullPath property makes it easier to determine your location in a tree. + + + + + Gets whether there is at least one child node that has its Visible property set to true. + + + + + Gets the parent tree node of the current tree node. If the tree node is at the root level, the Parent property returns a null reference (Nothing in Visual Basic). + + + + + Gets the previous sibling tree node. The PrevNode is the previous sibling Node in the NodeCollection stored in the Nodes property of the tree node's parent Node. If there is no previous tree node, the PrevNode property returns a null reference (Nothing in Visual Basic). + + + + + Gets the previous visible tree node. The PrevVisibleNode can be a child, sibling, or a tree node from another branch. If there is no previous tree node, the PrevVisibleNode property returns a null reference (Nothing in Visual Basic). + + + + + Gets or sets the object that contains data about the tree node. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the object that contains data about the tree node. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the Binding index in CurrencyManager list if node is bound. You should not change this value directly since + it is used internally by the control for data binding scenarios. + + + + + Gets or sets the object that contains additional data about the tree node. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + This property has same function as Tag property and provides you with additional separate storage of data. + + + + + Gets or sets the object that contains additional data about the tree node. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + This property has same function as Tag property and provides you with additional separate storage of data. + + + + + Gets or sets the format that is applied to the value of Text property for display purposes (applies to first cell in a node, i.e. Cells[0]). See "Formatting Overview" in MSDN + for description on available format strings. For example you can specify "C" to format text as currency, or "D" to format text as decimal number etc. + + + + + + Gets or sets the text displayed in the tree node. + + + + + Gets or sets the control hosted inside of the first node cell. + + + When control is hosted inside of the cell, cell size is determined by the + size of the control hosted inside of it. The cell will not display its text but it will display any image assigned + or check box when control is hosted inside of it. The Style settings like Margin + and Padding will still apply. + + + + + Gets or sets the item hosted inside of the first cell. Only items that do not generate + popups are supported. Note that cell can only host either HostedItem or HostedControl but not both. + + + + + Gets the parent tree control that the tree node is assigned to. + + + + + Gets or sets the layout of the cells inside the node. Default value is Horizontal layout which + means that cell are positioned horizontally next to each other. + + + + + Gets or sets the cell alignment when CellLayout=Vertical. Default value is center which means that cells are center aligned. + + + + + Gets or sets the layout of the cell parts like check box, image and text. Layout can be horizontal (default) + where parts of the cell are positioned next to each other horizontally, or vertical where + parts of the cell are positioned on top of each other vertically. + Alignment of the each part is controlled by alignment properties. This property affects only the first cell inside of the node. + Use Cell.Layout property to change the part layout on each cell contained by node. + + + + + Gets/Sets informational text (tooltip) for the cell. + + + + + Gets the collection of all Cells assigned to this node. There should be always at least one cell in a node which is default cell. Default + collection contains a single cell. + + + + + Gets or sets whether column header for child nodes if defined is visible. Default value is true. + + + + + Gets whether node has child nodes columns defined. + + + + + Get collection of child node columns. + + + + Gets or sets the style of the cells when node is expanded. + + Reference to the style assigned to the node/cell or null value indicating that + default style setting from tree control is applied. Default value is null. + + + When node is expanded the style specified here will be used on all cells + associated with this node instead of the + Cell.StyleNormal. That way you can give + different appearance to your node's cells when node is expanded. + When property is set to null value the style setting from parent tree + controls is used. NodeStyleExpanded on + AdvTree control is a root style for a cell. + + + + + Gets or sets the expanded style name used by node. This member is provided for internal use only. To set or get the style use StyleExpanded property instead. + + + + + Gets or sets the style used when Node is selected. Default value is NULL (VB + Nothing) + + + + + Gets or sets the selected style name used by node. This member is provided for internal use only. To set or get the style use StyleSelected property instead. + + + + + Gets or sets the style used when mouse is over the Node. Default value is NULL + (VB Nothing) + + + + + Gets or sets the mouse over style name used by node. This member is provided for internal use only. To set or get the style use StyleMouseOver property instead. + + + + + Gets or sets the node style. + + + Reference to the style assigned to the node or null value indicating that default + style setting from tree control is applied. Default value is null. + + + Style specified by this property will be used as default style for the node. + Each cell within the node can also specify it's own style. Since node contains the + cells using this style property can you for example create a border around all cell + contained by the node. + When this property is set to null value (default value) NodeStyle + property on AdvTree control is used. + + + + + Gets or sets the style name used by node. This member is provided for internal use only. To set or get the style use Style property instead. + + + + + Gets or sets the part of the node mouse is over. + + + + + Gets or sets the node horizontal offset from the position determined by the layout manager. + + + + + Gets or sets the image alignment in relation to the text displayed by cell. This property affects only first default cell inside the node. + Property with same name is available on each cell and you can use it to affect each cell individually. + + + + + Gets or sets whether node is enabled. Default value is true. Setting this value to false will set Enabled=false on all child cells. + + + + + Gets or sets the image displayed when the tree node is disabled. If image is not specified control will create + gray-scale disabled image automatically. + + + Image specified will be used as image when node is disabled. + + + + + Gets or sets the image-list index value of the disabled image. + + + + + Gets or sets the image displayed when the tree node is in the unselected state. + + + Image specified will be used as a default image for any other node state where + different image is not specified. + + + + + Gets or sets the image-list key value of the default image that is displayed by the tree nodes. + + + + + Gets or sets the image-list index value of the default image that is displayed by the tree nodes. + + + + + Gets or sets the image displayed when mouse is over the tree node. + + + + + Gets or sets the image-list index value of the image that is displayed by the tree nodes when mouse is over the node. + + + + + Gets or sets the image-list key value of the image that is displayed by the tree nodes when mouse is over the node. + + + + + Gets or sets the image displayed when node is expanded. + + + + + Gets or sets the image-list index value of the image that is displayed by the tree nodes when node is expanded. + + + + + Gets or sets the image-list key value of the image that is displayed by the tree nodes when node is expanded. + + + + + Property Editor support for ImageIndex selection + + + + + Gets or sets the NodeConnector object that describes the type of the connector used for + displaying connection between current node and its parent node. + Default value is null which means that settings from AdvTree control are used. + + RootConnector Property (DevComponents.AdvTree.AdvTree) + NodesConnector Property (DevComponents.AdvTree.AdvTree) + + + + Gets or sets whether node is visible. + + + + + Gets or sets whether command button is visible. Default value is false. + Command button can be used to display for example popup menu with commands for node, + or to display the list of linked nodes. + + + + + Gets or sets internal value that indicates that node is on "path" of the selected node. + + + + + + Gets or sets whether node selection is visible in UI when node is selected. Default value is true. You can + set this value to false to temporary disable the display of selection for a node. + + + + + Gets or sets the additional indent for the child nodes that is added to the AdvTree.Indent value when performing child node layout. Default value i 0. + + + + + Gets or sets whether Left/Right navigation through the cells when SingleCellSelection on tree is set is enabled. Default value is true. + + + + + Gets or sets whether style background that is applied to the node is drawn across the width of the tree control instead of only + behind the node content. Default value is false. + + + + + Gets or sets the child column header height. + + + + + Gets the AccessibleObject assigned to the item. + + + + + Gets or sets the default action description of the control for use by accessibility client applications. + + + + + Gets or sets the description of the control used by accessibility client applications. + + + + + Gets or sets the name of the control used by accessibility client applications. + + + + + Gets or sets the accessible role of the item. + + + + + Gets or sets a value indicating whether the node is visible to accessibility applications. + + + + + Represents collection for Node objects. + + + + + Sets the node collection belongs to. + + Node that is parent of this collection. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds new object to the collection and provides information about the source of the command + + Node to add + Source action + + + + + Adds an array of objects to the collection. + + Array of Node objects. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + Action that is causing the event + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Removes specified object from the collection and provides information about source of the command + + Node to remove + Source action + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Node array. + + Array to copy to. + + + + Sorts the elements in the entire collection using the IComparable implementation of each element. + + + + + Sorts the elements in the entire collection using the specified comparer. + + The IComparer implementation to use when comparing elements.-or- null to use the IComparable implementation of each element. + + + + Sorts the elements in a range of elements in collection using the specified comparer. + + + + + + + + Finds the tree nodes with specified key, optionally searching sub-nodes. + + The name of the tree node to search for. + true to search child nodes of tree nodes; otherwise, false. + An array of Node objects whose Name property matches the specified key. + + + + Gets or sets the node this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Creates new instance of NodeComparer class. You can use NodeComparer to sort the nodes by specific column/cell by calling + NodeCollection.Sort method and pass new instance of NodeComparer class. + + + + + Creates new instance of NodeComparer class. You can use NodeComparer to sort the nodes by specific column/cell by calling + NodeCollection.Sort method and pass new instance of NodeComparer class. + + Column/Cell index to use for sorting. + + + + Gets or sets the Column/Cell index that is used for sorting. + + + + + Reverse sort nodes. + + + + + Creates new instance of NodeComparer class. You can use NodeComparer to sort the nodes by specific column/cell by calling + NodeCollection.Sort method and pass new instance of NodeComparer class. + + Column/Cell index to use for sorting. + + + + Sort by flat node index. + + + + + Creates new instance of NodeComparer class. You can use NodeComparer to sort the nodes by specific column/cell by calling + NodeCollection.Sort method and pass new instance of NodeComparer class. + + + + + Represents node connector. Node connector is the line that is drawn to indicate connection between child and parent node. + + + + + Default Constructor. + + + + + Creates new instance of the object with specified parameters. + + Connector line width. + Connector type. + + + + Returns true if editor should serialize LineColor property. + + + + + Occurs when appearance of the connector has changed as result of changed settings on the connector. + + + + + Gets or sets the connector line width. + + + + + Gets or sets the color of the connector line. + + + + + Gets or sets the type of the connector. + + + See eNodeConnectorType enum for list of + available connectors. + + eNodeConnectorType Enumeration + + + + Gets or sets the DashStyle for the connector line. Default value is DashStyle.Dot. + + + + + Represents node operations. + + + + + Returns full path to the given node. + + Node to return path to. + Full path to the node. + + + + Gets the last child tree node. The LastNode is the last child Node in the NodeCollection stored in the Nodes property of the current tree node. If the Node has no child tree node, the LastNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Last node if found or null if there is no last node. + + + + Returns last rendered node on screen. + + Tree control. + Last rendered node or null + + + + Returns first rendered node on screen. + + Tree control. + Last rendered node or null + + + + Gets first visible node. + + Reference to tree. + Last visible node found or null + + + + Gets last visible node in tree control. + + Reference to tree. + Last visible node found or null + + + + Gets last visible top-level node in tree control. + + Reference to tree. + Last visible node found or null + + + + Gets the next sibling tree node. The NextNode is the next sibling Node in the NodeCollection stored in the Nodes property of the tree node's parent Node. If there is no next tree node, the NextNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Returns next visible sibling tree node. + + Reference node + Node object or null if next visible node cannot be found + + + + Gets the next visible tree node. The NextVisibleNode can be a child, sibling, or a tree node from another branch. If there is no next tree node, the NextVisibleNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Gets the next visible tree node. The NextVisibleNode can be a child, sibling, or a tree node from another branch. If there is no next tree node, the NextVisibleNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Gets a value indicating whether the tree node is visible. Node is considered to be visible when it's Visible property is set to true and path to the node is available i.e. all parent nodes are expanded. + + + + + + + Returns whether node is displayed on the screen and visible to the user. When node is outside of the viewable area this property will return false. It will also return false if node is not visible. + + + + + + + Gets the zero based index of position of the tree node in the tree node collection. -1 is returned if node is not added to the nodes collection. + + Reference node. + Zero based index or -1 if node is not in collection. + + + + Gets the previous sibling tree node. The PrevNode is the previous sibling Node in the NodeCollection stored in the Nodes property of the tree node's parent Node. If there is no previous tree node, the PrevNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Gets the previous visible tree node. The PrevVisibleNode can be a child, sibling, or a tree node from another branch. If there is no previous tree node, the PrevVisibleNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Gets the previous tree node. The Previous Node can be a child, sibling, or a tree node from another branch. If there is no previous tree node, the PrevNode property returns a null reference (Nothing in Visual Basic). + + Reference node. + Node object or null if node cannot be found. + + + + Returns true if node passed is considered root node for display purposes. + + Reference to the tree control. + Node to test. + true if node is root node for display purposes otherwise false. + + + + Ensures that the cell is visible, expanding nodes and scrolling the control as necessary. + + Cell to be made visible. + + + + Ensures that the node is visible, expanding nodes and scrolling the control as necessary. + + Node to be made visible. + + + + Returns number of visible child nodes for given node. + + Reference node. + Number of visible child nodes. + + + + Returns true if node has at least single visible child node. + + Reference node. + True if at least single child node is visible otherwise false. + + + + Retrieves the tree node that is at the specified location. + + The Node at the specified point, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The Point to evaluate and retrieve the node from. + Tree control to find node at. + + + + Retrieves the tree node that is at the specified location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The X position to evaluate and retrieve the node from. + The Y position to evaluate and retrieve the node from. + Tree control to find node at. + + + + Retrieves the tree node that is at the specified location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + Tree control to find node at. + The X position to evaluate and retrieve the node from. + The Y position to evaluate and retrieve the node from. + Enumerates rendered nodes only. + + + + Retrieves the tree node that is at the specified location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + Tree control to find node at. + The X position to evaluate and retrieve the node from. + The Y position to evaluate and retrieve the node from. + Enumerates rendered nodes only. + + + + Retrieves the tree node that is at the specified vertical location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The Y position to evaluate and retrieve the node from. + Tree control to find node at. + + + + Retrieves the tree node that is at the specified vertical location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The Y position to evaluate and retrieve the node from. + Tree control to find node at. + Enumerates rendered nodes only. + + + + Retrieves the tree node that is at the specified vertical location. + + The TreeNode at the specified location, in tree view coordinates. + + You can pass the MouseEventArgs.X and MouseEventArgs.Y coordinates of the + MouseDown event as the x and y parameters. + + The Y position to evaluate and retrieve the node from. + Tree control to find node at. + Enumerates rendered nodes only. + + + + Gets the count of visible child nodes (Visible=true) for given node. + + Reference to Node object. + Number of visible nodes. + + + + Gets the first visible child node or returns null if node cannot be found. + + Reference to Node object. + First visible node or null if node cannot be found. + + + + Gets the last visible child node or returns null if node cannot be found. + + Reference to Node object. + Last visible node or null if node cannot be found. + + + + Gets whether any node from array is child node of parent on any level. + + Reference to parent node. + Reference to child nodes. + + + + + Gets whether node is child node of parent on any level. + + Reference to parent node. + Reference to child node. + + + + + Returns true if child node is child of any parent node at any level. + + Parent nodes array + Child node + true if child otherwise false + + + + Finds the node based on the Node.Name property. + + Reference to a tree control. + Reference to a node with given name or null if node cannot be found. + + + + Finds the node based on the Node.DataKey property. + + Reference to a tree control. + Reference to a node with given key or null if node cannot be found. + + + + Finds the node based on the Node.BindingIndex property. + + Reference to a tree control. + Index to look for + + + + Returns next visible cell in node. + + Reference to a node + The index at which to start search. + Reference to cell or null if there are no visible cells + + + + Returns previous visible cell in node. + + Reference to a node + The index at which to start search. + Reference to cell or null if there are no visible cells + + + + Returns the zero based flat index of the node. Flat index is the index of the node as if tree structure + has been flattened into the list. + + Reference to parent tree control. + Reference to the node to return index for. + Zero based node index or -1 if index cannot be determined. + + + + Returns node based on the flat index. Flat index is the index of the node as if tree structure + has been flattened into the list. + + Parent tree control. + Index to return node for. + Reference to a node or null if node at specified index cannot be found. + + + + Finds the first node that starts with the specified text. Node.Text property is searched. + + Parent tree control. + Partial text to look for + Reference node to start searching from + Gets or sets whether search ignores the letter case + Reference to a node or null if no node is found. + + + + Returned as information about the node or its column header at given coordinates. + + + + + Class that provides predefined styles for the nodes. Styles are defined as static memeber of the class + + + + + Returns Apple element style + + + + + Returns Blue element style + + + + + Returns BlueLight element style + + + + + Returns BlueNight element style + + + + + Returns BlueMist element style + + + + + Returns Cyan element style + + + + + Returns Green element style + + + + + Returns Lemon element style + + + + + Returns Magenta element style + + + + + Returns Orange element style + + + + + Returns OrangeLight element style + + + + + Returns Purple element style + + + + + Returns PurpleMist element style + + + + + Returns Red element style + + + + + Returns Silver element style + + + + + Returns SilverMist element style + + + + + Returns Tan element style + + + + + Returns Teal element style + + + + + Returns Yellow element style + + + + + Returns Gray element style + + + + + Indicates predefined element style. + + + + + Represents the selected nodes collection. + + + + + Initializes a new instance of the SelectedNodesCollection class. + + + + + Adds new object to the collection and provides information about the source of the command + + Node to add + Source action + + + + + Adds an array of objects to the collection. + + Array of Node objects. + + + + Represents the text box for editing cell's text. + + + + + Gets or sets whether the editing is in word-wrap mode. + + + + + Gets or sets whether control prevents Beep sound when Enter key is pressed. + + + + + Summary description for TreeAreaInfo. + + + + + Reference to parent node in which child bounds the coordinates are. Can be null if no parent node contains given coordinates. + + + + + Node which contains specified coordinates. Can be null if no node contains coordinates. + + + + + Previous reference node for given coordinates. If coordinates fall between two nodes this will indicate previous node or null. + + + + + Next reference node for given coordinates. If coordinates fall between two nodes this will indicate next node or null. + + + + + Gets or sets the parent node drag node will be added to. When null the drag node is being added as top-level node. + + + + + Gets or sets the insert index of drag node into the parent's node Nodes collection. + + + + + Initializes a new instance of the NodeDragInfo class. + + + + + Initializes a new instance of the NodeDragInfo class. + + + + + + + Provides data for AdvTree Cell events that can be canceled. + + + + + Provides data for AdvTree Cell events. + + + + + Default constructor for event data. + + Type of the action event is raised for. + Cell that event is raised for. + + + + Indicates the type of the action performed on a cell. + + + + + Indicates the cell that action is performed on. + + + + + Default constructor for event data. + + Type of the action event is raised for. + Cell that event is raised for. + + + + Indicates that event action should be canceled. + + + + + Provides data for AdvTree.BeforeCheck event. + + + + + Initializes a new instance of the AdvTreeCellBeforeCheckEventArgs class. + + + + + + Represents event arguments for BeforeNodeDrop and AfterNodeDrop events + + + + + Provides data for AdvTree Node events that can be cancelled. + + + + + Provides data for AdvTree Node events that can be cancelled. + + + + + Provides data for AdvTree Node events. + + + + + Default constructor. + + Default action + Default node. + + + + Indicates the type of the action performed on a node. + + + + + Indicates the node that action is performed on. + + + + + Default constructor. + + Default action + Default node. + + + + Indicates that event action should be canceled. + + + + + Default constructor. + + Default action + Default node. + + + + Indicates the array of nodes that action is performed on. + + + + + Returns reference to the old parent node. + + + + + Reference to the new parent node if event is not cancelled. + + + + + Gets or sets whether drag node is being copied instead of moved. + + + + + Gets or sets the new insert position inside of NewParentNode.Nodes collection for the node being dragged. If InsertPosition is -1 + the ParentNode refers to the current mouse over node and drag & drop node will be added as child node to it. + + + + + Defines the data for NodeDragFeedback event. + + + + + Gets or sets whether this drop location is accepted. Default value is true. You can set this to false to disable drop at this location. + + + + + Gets or sets the parent node for the node that is being dragged. This can be null/nothing value to indicate a root top-level node that + is in AdvTree.Nodes collection. + + + + + Gets or sets the new insert position inside of ParentNode.Nodes collection for the node being dragged. If InsertPosition is -1 + the ParentNode refers to the current mouse over node and drag & drop node will be added as child node to it. + + + + + Initializes a new instance of the TreeDragFeedbackEventArgs class. + + + + + + + Initializes a new instance of the TreeDragFeedbackEventArgs class. + + + + + + + Initializes a new instance of the TreeDragFeedbackEventArgs class. + + + + + Gets reference to the node being dragged. + + + + + Gets or sets the drop effect for the drag-drop operation. + + + + + Initializes a new instance of the TreeDragFeedbackEventArgs class. + + + + + + + Initializes a new instance of the TreeDragFeedbackEventArgs class. + + + + + + + Gets reference to the node being dragged. + + + + + Represents event arguments for NodeCollection based events, like BeforeNodeInsert, AfterNodeInsert etc. + + + + + Creates new instance of the class. + + Source action + Affected node + Parent of the node if any + + + + Indicates parent node of the affected node. For example if event handled is BeforeNodeInsert parent of the Node is has + not been set yet so this property provides information on the node that will become parent. If this property returns null + then node is being added or removed from the main AdvTree.Nodes collection. + + + + + Represents event arguments for node mouse based events. + + + + + Gets node affected by mouse action. + + + + + Gets which mouse button was pressed. + + + + + Gets the number of times the mouse button was pressed and released. + + + + + Gets a signed count of the number of detents the mouse wheel has rotated. A detent is one notch of the mouse wheel. + + + + + Gets the x-coordinate of the mouse. + + + + + Gets the y-coordinate of the mouse. + + + + + Provides means for AdvTree serialization. + + + + + Saves Nodes to specified file. + + AdvTree to save + Target file name + + + + Saves Nodes to stream. + + AdvTree to save + Stream to save nodes to. + + + + Saves Nodes to TextWriter + + AdvTree to save + TextWriter to write nodes to. + + + + Saves nodes to XmlWriter. + + AdvTree to save + XmlWriter to write nodes to + + + + + Saves AdvTree to an existing XmlDocument. New node AdvTree is created in document and Nodes are serialized into it. + + AdvTree to serialize + XmlDocument instance. + + + + Serializes AdvTree object to XmlElement object. + + Instance of AdvTree to serialize. + XmlElement to serialize to. + + + + Serializes Node and all child nodes to XmlElement object. + + Node to serialize. + Provides serialization context. + + + + Load AdvTree Nodes from file. + + Reference to AdvTree to populate + File name. + + + + Load AdvTree Nodes from stream. + + Reference to AdvTree to populate + Reference to stream + + + + Load AdvTree Nodes from reader. + + Reference to AdvTree to populate + Reference to reader. + + + + Load AdvTree Nodes from reader. + + Reference to AdvTree to populate + Reference to reader. + + + + Load AdvTree from XmlDocument that was created by Save method. + + Tree Control to load + XmlDocument to load control from + + + + Load nodes from XmlElement. + + Reference to AdvTree to be populated. + XmlElement that tree was serialized to. + + + + Load single node and it's child nodes if any. + + New instance of node that is populated with loaded data. + Provides deserialization context. + + + + Provides context information for serialization. + + + + + Gets or sets reference to context parent XmlElement when serializing or actual Node element when deserializing. + + + + + Gets or sets whether SerializeNode event handler has been defined and whether event should be fired. + + + + + Gets or sets whether DeserializeNode event handler has been defined and whether event should be fired. + + + + + Provides access to serializer. + + + + + Represents class for static tree utilities. + + + + + Initializes control with default settings for connectors and nodes. + + Control to initialize. + + + + Initializes control with default settings for connectors and nodes. + + Control to initialize. + Factory to use to create new instances of objects. + + + + Creates new style and adds it to styles collection + + Tree to assign style to + Style factory + + + + + + + + Returns reference to a node that is hosting given control. + + Reference to the AdvTree control instance + Control instance to look for + Reference to a node hosting control or null if node could not be found + + + + Represents internal component factory with design-time support. + + + + + Creates new instance of the class. + + Reference to DesignerHost to use for creation of new components. + + + + Creates new instance of the class. + + + + + Creates component and returns reference to the new instance. + + Type that identifies component to create. + New instance of the component. + + + + Represents class that holds padding information for user interface elements. + + + + + Gets or sets padding on left side. Default value is 0 + + + + + Gets or sets padding on right side. Default value is 0 + + + + + Gets or sets padding on top side. Default value is 0 + + + + + Gets or sets padding on bottom side. Default value is 0 + + + + + Creates new instance of the class and initializes it. + + Left padding + Right padding + Top padding + Bottom padding + + + + Gets amount of horizontal padding (Left+Right) + + + + + Gets amount of vertical padding (Top+Bottom) + + + + + Gets whether Padding is empty. + + + + + Analog clock control. + + + + + Resets the property to default value. + + + + + Raises ValueChanging event. + + Provides event arguments. + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Resets the property to default value. + + + + + Initializes a new instance of the ClockControl class + + + + + Releases all resources used by the class. + + + + + Renders the clock's center cap. + + Graphics object used for rendering. + Bounding rectangle. + + + + Renders the clock's glass overlay. + + Graphics object used for rendering. + Bounding rectangle. + + + + Renders the clock's hands. + + Graphics object used for rendering. + Bounding rectangle. + True if this is the rending pass after the cap has been rendered. + + + + Renders the clock's numeric hour indicators. + + Graphics object used for rendering. + Bounding rectangle. + + + + Renders the clock's tick hour/minute indicators. + + Graphics object used for rendering. + Bounding rectangle. + + + + Called when TimeZone property has changed. + + Old property value + New property value + + + + Default minimum size. Defaults to 100, 100. + + + + + Gets or sets whether anti-aliasing is used when rendering the control. Default value is true. + + + + + Gets or sets the state for automatic mode. When true the clock will auto redraw once a second and display the current date/time. Default value is false. + + + + + Gets or sets clock style for this control. + + + + + Gets or sets the clock style data elements for this control. + + + + + Gets or sets a the indicator style the clock control. Default value is Ticks. + + + + + Gets or sets whether the time can be changed by moving the clock hands. Default value is false. + + + + + Gets or sets a value indicating whether to display the glass overlay on the clock control. Default value is true. + + + + + Gets or sets a value indicating whether to display the second hand on the clock control. Default value is true. + + + + + Occurs while user is dragging the mouse in order to change time. + + + + + Occurs when Value i.e. time clock is displaying has changed. + + + + + Gets or sets the current date/time value for this control. + + + + + Gets or sets the time-zone string identifier that is used to display the time when AutomaticMode=true and clock is displaying current time. + + + + + Enumeration containing the available hour/minute indicators. + + + + + Control will use ticks for hour/minute indicators. + + + + + Control will use numbers for hour indicators. + + + + + Enumeration containing the available mouse edit states. + + + + + Control is not currently in an edit state. + + + + + Control is currently in an hour edit state. + + + + + Control is currently in an minute edit state. + + + + + Control is currently in an second edit state. + + + + + Provides event arguments for TimeValueChanging event. + + + + + Gets the current time represented by the control. + + + + + Initializes a new instance of the TimeValueChangingEventArgs class. + + + + + + Defines delegate for TimeValueChanging event. + + Source of event. + Event arguments + + + + Data storage class for clock hand visual style. + + + + + Resets the property to default value. + + + + + Initializes a new instance of the ClockHand class. + + + + + Initializes a new instance of the ClockHand class. + + The hand style for this item. + The length of this clock hand as a percentage value ranging from 0.0 to 1.0, with 1.0 being half the width/height of the bounding rectangle + The width of this clock hand as a percentage value ranging from 0.0 to 1.0, with 1.0 being half the width/height of the bounding rectangle. + + + + Indicates whether the specified point is contained within the bounds of this hand. + + The bounding rectangle of the parent clock control. + The clockwise angle for this clock hand in degrees from the 12 o'clock position. + A Point that represents the point to test. + + + + + Generates a scaled and rotated graphics path based on the given style, rectangle and angle. + + The bounding rectangle of the parent clock control. + The clockwise angle for this clock hand in degrees from the 12 o'clock position. + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Gets or sets a value indicating whether the hand is drawn over the cap. + + + + + Gets or sets the hand color data for this hand. + + + + + Gets or sets the hand style for this clock hand. Default value is Style1. + + + + + Gets or sets the length of this clock hand as a percentage value ranging from 0.0 to 1.0, with 1.0 being half the width/height of the bounding rectangle. Default value is 1.0. + + + + + Gets or sets the width of this clock hand as a percentage value ranging from 0.0 to 1.0, with 1.0 being half the width/height of the bounding rectangle. Default value is 0.1. + + + + + Occurs when property value has changed. + + + + + Enumeration containing the available hand styles. + + + + + Style 1. + + + + + Style 2. + + + + + Style 3. + + + + + Style 4. + + + + + Data storage class for clock visual styles. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Resets the property to default value. + + + + + Initializes a new instance of the ClockStyle class. + + + + + Initializes a new instance of the ClockStyle class. + + Predefined style from the PredefinedStyles enum. + + + + Initializes a new instance of the ClockStyle class. + + Predefined style from the PredefinedStyles enum. + + + + Releases all resources used by the class. + + + + + Loads a predefined style + + The predefined style to load. + + + + Raises the PropertyChanged event. + + Event arguments + + + + Gets or sets the PredefinedStyles value for this style. + + + + + Gets or sets the clock shape value for this style. + + + + + Gets or sets the bezel color data for this style. + + + + + Gets or sets the width of clock bezel as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the face color data for this style. + + + + + Gets or sets the face background image for this style. + + + + + Gets or sets the hour hand style for this style. + + + + + Gets or sets the minute hand style for this style. + + + + + Gets or sets the second hand style for this style. + + + + + Gets or sets the center cap color data for this style. + + + + + Gets or sets the center cap diameter as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the face number color for this style. + + + + + Gets or sets the center cap color data for this style. + + + + + Gets or sets the large tick color data for this style. + + + + + Gets or sets the large tick length as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the large tick width as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the small tick color data for this style. + + + + + Gets or sets the small tick length as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the small tick width as a percentage value ranging from 0.0 to 1.0. + + + + + Gets or sets the overlay glass angle, in degrees for this style. + + + + + Occurs when property value has changed. + + + + + Gets the parent of the style. + + + + + Enumeration containing the predefined clock styles. + + + + + Style 1. Default style, + + + + + Style 2. + + + + + No predefined style. + + + + + Enumeration containing the predefined clock shapes. + + + + + Round clock shape. + + + + + Data storage and utility class for defining gradient colors. + + + + + Creates new instance of the object. + + + + + Creates new instance of the object. + + The first color for this entry. + The second color for this entry. + + + + Creates new instance of the object. + + The first color for this entry. + The second color for this entry. + The border color for this entry. + The border width for this entry. + + + + Creates new instance of the object. + + The first color for this entry. + The second color for this entry. + The border color for this entry. + The border width for this entry. + The gradient angle. + + + + Creates new instance of the object. + + The first color for this entry. + The second color for this entry. + The border color for this entry. + The border width for this entry. + The focus for the SigmaBellShape. + The scale for the SigmaBellShape. + + + + Loads data into the class, called by constructors. + + The first color for this entry. + The second color for this entry. + The border color for this entry. + The border width for this entry. + The focus for the SigmaBellShape. + The scale for the SigmaBellShape. + + + + Creates Pen object using the BorderColor and BorderWidth properties. + + + + + Creates a brush of the type specified by BrushType. + + The graphics path used to construct the brush. + + + + Creates a brush of the type specified by BrushType. + + The graphics path used to construct the brush. + The angle used for the gradients, allowing an override of BrushAngle + + + + Creates a brush of the type specified by BrushType. + + The graphics path used to construct the brush. + The center point of the gradient as a percentage value typically ranging from 0.0 to 1.0. + + + + Creates a brush of the type specified by BrushType. + + The graphics path used to construct the brush. + The center point of the gradient as a percentage value typically ranging from 0.0 to 1.0. + The angle used for the gradients, allowing an override of BrushAngle + + + + Creates SolidBrushObject using Color1. + + + + + Creates a LinearGradientBrush object. + + The graphics path used to construct the brush. + The gradient angle. + + + + Creates a PathGradientBrush object. + + The graphics path used to construct the brush. + The center point of the gradient. + + + + Creates a LinearGradientBrush object. + + The graphics path used to construct the brush. + The gradient angle. + + + + Creates a LinearGradientBrush object. + + The graphics path used to construct the brush. + The gradient angle. + The focus for the SigmaBellShape. + + + + Creates a LinearGradientBrush object. + + The graphics path used to construct the brush. + The gradient angle. + The focus for the SigmaBellShape. + The scale for the SigmaBellShape. + + + + Raises the PropertyChanged event. + + Event arguments + + + + Gets or sets the border color for this item. Default value is white. + + + + + Gets or sets the border width for this item. Default value is 0. + + + + + Gets or sets the brush angle for this item. Only applies to Linear and Reflected brush types. Default value is 0. + + + + + Gets or sets the brush SigmaBellShape focus for this item. Only applies to Reflected brush types. Default value is 0.5. + + + + + Gets or sets the brush SigmaBellShape scale for this item. Only applies to Reflected brush types. Default value is 0.5. + + + + + Gets or sets the brush type for this item. Default value is Solid. + + + + + Gets or sets the first color for this item. Default value is white. + + + + + Gets or sets the second color for this item. Default value is white. + + + + + Occurs when property value has changed. + + + + + Enumeration containing predefined brush types for the ColorData class. + + + + + Solid brush. + + + + + Linear gradient brush. + + + + + Centered path gradient brush. + + + + + Reflected linear gradient brush. + + + + + Math helper class + + + + + Converts radians to degrees. + + Value to be converted in radians. + Converted value in degrees. + + + + Converts degrees to radians. + + Value to be converted in degrees. + Converted value in radians. + + + + Raises AnimationCompleted event. + + Provides event arguments. + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Stops animation if one is currently running. + + + + + Sets the method which is called each time value on target object property is set. This method may execute the visual updates on animation client. + + Method to call + + + + Occurs after animation has completed. + + + + + Gets or sets whether animation is auto-disposed once its completed. Default value is false. + + + + + Gets whether animation run is complete. + + + + + Gets the animation duration in milliseconds. + + + + + Gets the animation easing function. + + + + + Gets or sets the number of fixed steps animation will perform from star to finish instead of using the easing function in time. + Stepped animation executes specified number of steps always with Duration specifying delays between each step. + + + + + Initializes a new instance of the AnimationRequest class. + + Target object for animation. + Target property name for animation. + From value. + To value. + + + + Initializes a new instance of the AnimationRequest class. + + Target object for animation. + Target property name for animation. + From value. + To value. + + + + Target object for animation. + + + + + Animation from value. + + + + + Animation to value. + + + + + Specifies the animation easing function + + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Initializes a new instance of the Animation class. + + Target object for animation + Target property name for animation + + + + Runs all animations from Animations list. + + + + + Returns whether Storyline is disposed. + + + + + Gets the list of animations to run using this storyline. + + + + + Gets or sets number of times storyline is repeated. Default value is 0 which indicates that storyline is run only once meaning not repeated. + + + + + Gets or sets whether storyline is auto-disposed when finished. + + + + + Clean up any resources being used. + + + + + Returns the reference to DockContainerItem tab if any under specified coordinates. + + X - client mouse coordinate + Y - client mouse coordinate + Reference to DockContainerItem whose tab is at specified coordinates or null if there is no tab at given coordinates + + + + Sets bars position on the auto-hide panel. + + Bar for which position should be changed. + New indexed position of the bar. + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets the timeout in milliseconds for auto hide/show action. + When timeout has elapsed and mouse has left the bar the bar will be automatically hidden. + If mouse is hovering over the collapsed bar and timeout has elapsed the bar will be displayed. + + + + + Gets or sets whether bars on auto-hide panel are displayed when mouse hovers over the tab. + + + + + Gets or sets whether bars that have focus are collapsed automatically or not. + + + + + Gets or sets the style of auto-hide panel. + + + + + Gets or sets the ColorScheme object used by this panel. Default value is null which means that ColorScheme is + automatically created as specified by Style property. Note that if your DotNetBarManager has UseGlobalColorScheme set to true + ColorScheme from DotNetBarManager will be used. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class. + + + + + Indicates the Balloon tip position. + + + + + Tip is on the top. + + + + + Tip is on the left side. + + + + + Tip is on the right side. + + + + + Tip is on the bottom. + + + + + Indicates the style of the balloon. + + + + + Indicates type of Alert animation performed when alert is displayed. + + + + + No animation take place when alert is displayed. + + + + + Alert is animated from bottom to top. (Default) + + + + + Alert is animated from top to bottom. + + + + + Alert is animated from left to right. + + + + + Alert is animated from right to left. + + + + + Delegate for custom paint event handler. + + + + + Summary description for Balloon. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Auto resize balloon to the content. Balloon width is calculated so image and caption text can fit in single line. + + + + + Recalculates layout of the balloon. + + + + + Displays balloon using control to automatically calculate balloon location. Method is usually used display balloon that is showing information for the certain control. + + Control used for balloon positioning. + + + + Displays balloon using control to automatically calculate balloon location. Method is usually used display balloon that is showing information for the certain control. + + Control used for balloon positioning. + Indicates whether balloon receives input focus. + + + + Displays balloon using rectangle to automatically calculate balloon location. Method is usually used display balloon that is showing information for the certain screen region. + + Rectangle in screen coordinates used for balloon positioning. + Indicates whether balloon receives input focus. + + + + Displays balloon using item to automatically calculate balloon location. Method is usually used display balloon that is showing information for the certain item. + + Item used for balloon positioning. + Indicates whether balloon receives input focus. + + + + Display balloon. + + Indicates whether balloon receives input focus. + + + + Displays balloon. + + + + + Called when balloon is hidden. + + + + + Hides balloon. + + + + + Occurs when background is redrawn. + + + + + Occurs when caption image is redrawn. + + + + + Occurs when caption text is redrawn. + + + + + Occurs when text is redrawn. + + + + + Occurs when close button is clicked. + + + + + Occurs when TipPosition property has changed. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets the minimum balloon width when auto sizing balloon. Default value is 180. + + + + + Gets or sets the target gradient background color. + + + + + Gets or sets gradient fill angle. + + + + + Specifies the transparency of background image. + + + + + Specifies background image position when container is larger than image. + + + + + Gets or sets the border color.. + + + + + Specifies balloon style. + + + + + Gets or sets whether the Close button is displayed. + + + + + Gets or sets the animation type used to display Alert type balloon. + + + + + Gets or sets the total time in milliseconds alert animation takes. + Default value is 200. + + + + + Gets or sets whether balloon will close automatically when user click the close button. + + + + + Gets or sets time period in seconds after balloon closes automatically. + + + + + Gets or sets the custom image for Close Button. + + + + + Gets or sets the custom image for Close Button when mouse is over the button. + + + + + Gets or sets the custom image for Close Button when button is pressed. + + + + + Gets or sets the Caption image. + + + + + Gets or sets the Caption icon. Icon is used to provide support for alpha-blended images in caption. + + + + + Gets or sets the Caption font. + + + + + Gets or sets text displayed in caption. + + + + + Gets or sets color of caption text. + + + + + Gets or set position of the balloon tip. + + + + + Gets or sets tip distance from the edge of the balloon. + + + + + Returns length of the tip. + + + + + Gets/Sets whether Balloon is visible. + + + + + Represents a balloon style pop-up window that displays a brief description of a control's purpose when the mouse hovers over the control or when controls receives input focus. + + + + + Initializes a new instance of the BalloonTip class. + + + + + Clean up any resources being used. + + + + + Retrieves the Balloon Caption text associated with the specified control. + + + + + Associates Balloon Caption text with the specified control. + + The Control to associate the Balloon Caption text with. + The Balloon Caption text to display on the Balloon. + + + + Retrieves the Balloon text associated with the specified control. + + + + + Associates Balloon text with the specified control. + + The Control to associate the Balloon text with. + The Balloon text to display on the Balloon. + + + + Removes all Balloon texts currently associated with the BalloonTip control. + + + + + Removes specific Balloon texts currently associated with the BalloonTip control. + + Control that has Balloon texts associated. + + + + Shows Balloon for specific control. Control must have Balloon already assigned to it. + + Control that has Balloon already assigned. + + + + Closes Balloon control if visible. + + + + + Occurs before balloon is displayed. + + + + + Occurs before balloon is closed and allows to cancel the action. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets a value indicating whether the BalloonTip is currently active. + true if the BalloonTip is currently active; otherwise, false. The default is true. + + + + + Returns reference to the control that triggered balloon. + + + + + Gets or sets the minimum balloon width when auto sizing balloon. Default value is 180. + + + + + Gets or sets a value indicating whether Balloon receives input focus when displayed. + Default value is false. + + + + + Gets or sets the time (in milliseconds) that passes before the BalloonTip appears. + + + + + Gets or sets a value indicating whether a Balloon window is displayed even when its parent form is not active. Default value is false. + + + + + Gets or sets the internal Balloon control that is used to display Balloon. + This property will have valid value only during time Balloon is actually + displayed on the screen. Value will also be valid during BalloonDisplaying event. + You can use this property to further customize Balloon control before it is + displayed to the user. You can also set it to your own instance of the Balloon + control (or the control that is inheriting it) for ultimate customization options. + Note that new instance of Balloon control is created each time Balloon needs to be displayed. + Once Balloon is closed control is disposed. + + + + + Specifies balloon style. + + + + + Gets or sets the animation type used to display Alert type balloon. + + + + + Gets or sets the total time in milliseconds alert animation takes. + Default value is 200. + + + + + Gets or sets whether balloon will close automatically when user click the close button. + + + + + Gets or sets time period in seconds after balloon closes automatically. + + + + + Gets or sets whether Balloon is shown after control receives input focus. Default value is false. When set to true Balloon will not be displayed on mouse hover. + + + + + Gets or sets whether the Balloon Close button is displayed. + + + + + Gets or sets default balloon width. Usually the width of the balloon is calculated based on the width of the caption text. If caption text is not set then this value will be used as default width of the balloon. + + + + + Gets or sets the Balloon Caption image. + + + + + Gets or sets the Balloon Caption icon. Icon is used to provide support for alpha-blended images in caption. + + + + + Represents bar control. + + + + + Interface used for docking support. + + + + + Returns Minimum docked size of the control. + + + + + Returns Preferrred size of the docked control. + + + + + Sets the dock line for the control. Used internaly by dock manager. + + New Dock line. + + + + Indicated whether control can be docked on top dock site. + + + + + Indicated whether control can be docked on bottom dock site. + + + + + Indicated whether control can be docked on left dock site. + + + + + Indicated whether control can be docked on right dock site. + + + + + Indicates whether control can be docked as document i.e. middle (fill) dock site. + + + + + Indicates whether control can be docked as tab to another bar. + + + + + Indicated whether control can be stretched to fill dock site. + + + + + Holds the left position (dock offset) of the control. + + + + + Specifies the dock line for the control. + + + + + Specifies current dock orientation. + + + + + Gets whether control is docked. + + + + + Returns the dock site of the control. + + + + + Gets or sets the control dock side. + + + + + Gets or sets whether bar is locked to prevent docking below it. + + + + + Interface implemented by target Bar interested in access to designer. + + + + + Gets or sets the BarBaseControlDesigner instance. + + + + + Desribes interface that provides custom serialization support for items. + + + + + Invokes SerializeItem event. + + Provides data for the event. + + + + Invokes DeserializeItem event. + + Provides data for the event. + + + + Occurs after an item has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data with the item and load it back up in DeserializeItem event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeItemEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an item has been de-serialized (load) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrive any data you saved in SerializeItem event. + + + + + Gets whether any handlers have been defined for SerializeItem event. If no handles have been defined to optimize performance SerializeItem event will not be attempted to fire. + + + + + Gets whether any handlers have been defined for DeserializeItem event. If no handles have been defined to optimize performance DeserializeItem event will not be attempted to fire. + + + + + Raises BarStateChanged event. + + Provides event arguments. + + + + Initializes a new instance of the Bar class. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Initializes a new instance of the Control class. + + Bar Caption + + + + Releases the focus from the bar and selects the control that had focus before bar was selected. If control that had focus could not be determined focus will stay on the bar. + This method is used by internal DotNetBar implementation and you should not use it. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Raises the PreRender event. + + Provides the event arguments + + + + Raises the PostRender event. + + Provides the event arguments + + + + Drawns bar grab handle if one specified. + + Context information. + + + + Paints bar side bar. + + Reference to graphics object. + + + + Recalculates the layout of the Bar, resizes the Bar if necessary and repaints it. + + + + + Recalculates the layout of the Bar and repaints it. This will not change the size of the Bar it will only force the recalculation of the size for each contained item and it will repaint the bar. To ensure that Bar is resized if necessary as well call RecalcLayout method. + + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Method is called by DotNetBarManager when bar is being moved and Escape key is pressed. + + + + + Called when IsMaximized property has changed. + + Old property value + New property value + + + + Closes the DockContainerItem with event source set to Code. + + DockContainerItem to close. + + + + Closes the DockContainerItem. + + DockContainerItem to close. + Source of the event. + + + + Raises the ItemClick event. + + Item that was clicked. + Event arguments. + + + + Suspends normal layout logic. + + + + + Resumes normal layout logic. + + + + + Resumes normal layout logic. Optionally forces an immediate layout of pending layout requests. + + + + + Invokes SerializeItem event. + + Provides data for the event. + + + + Invokes DeserializeItem event. + + Provides data for the event. + + + + Saves the Bar definition to file. + + Definition file name. + + + + Loads the Bar definition from file. + + Definition file name. + + + + Saves the Bar layout to file. + + Definition file name. + + + + Loads the Bar definition from file. + + Definition file name. + + + + Sets the client size of the bar excluding caption. This method is useful when setting the size of the bars with layout type DockContainer. + + Width of bar in pixels. + Height of bar in pixels. + + + + Sets the client size of the bar excluding caption. This method is useful when setting the size of the bars with layout type DockContainer. + + New bar size + + + + Returns true if Font property should be serialized by Windows Forms designer. + + + + + Designer method to reset the property to its default value. + + + + + Resets the ColorScheme property to its default value. + + + + + Called when CanMaximizeFloating property has changed. + + Old property value + New property value + + + + Makes the Bar display by setting the visible property to true. + + + + + Hides the Bar. + + + + + Returns whether Size property should be serialized. + + + + + Returns the first child item with specified name regardless of it's hierarchy. + + Item name. + + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. This member is not implemented and should not be used. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns AutoHidePanel that bar is on if in auto-hide state otherwise returns null. + + AutoHidePanel object or null if bar is not in auto-hide state. + + + + Raises BeforeAutoHideDisplayed event. + + + + + + Raises BeforeAutoHideHidden event. + + + + + + Destroys tooltip window. + + + + + Shows tooltip for this item. + + + + + Re-docks the floating bar to its previous docking position. + + + + + Invokes CaptionButtonClick event. + + + + + Displays or hides the automatic caption button popup menu. + + + + + Called when DockTabStripHeight property has changed. + + Old property value + New property value + + + + Returns the Minimum Size for specified orientation. + + Orientation to return minimum size for. + + + + + Returns the preferred size of the Bar when docked. + + Orientation to return preferred size for. + + + + + Sets the dock line but it does not forces the Bar to change position. The position will be changed on next layout request or when dock site needs to recalculate the layout of the bat. Used internally only. + + + + + ISupportInitialize.BeginInit implementation. + + + + + ISupportInitialize.EndInit implementation. + + + + + Returns Minimum docked size of the control. + + + + + Returns Preferrred size of the docked control. + + + + + Sets the dock line for the control. Used internaly by dock manager. + + New Dock line. + + + + Occurs after bar state has changed, like selected dock tab has changed, bar has closed, bar has been docked or undocked etc. + + + + + Occurs when Item is clicked. + + + + + Occurs after Bar is docked. + + + + + Occurs after Bar is undocked. + + + + + Occurs after Bar definition is loaded. + + + + + Occurs when current Dock tab has changed. + + + + + Occurs when bar visibility has changed as a result of user action. + + + + + Occurs when bar auto hide state has changed. + + + + + Occurs when Bar is about to be closed as a result of user clicking the Close button on the bar. + + + + + Occurs when Bar in auto-hide state is about to be displayed. + + + + + Occurs when popup item is closing. Event is fired only when Bar is used independently of DotNetBarManager. + + + + + Occurs when popup of type container is loading. Event is fired only when Bar is used independently of DotNetBarManager. + + + + + Occurs when popup of type container is unloading. Event is fired only when Bar is used independently of DotNetBarManager. + + + + + Occurs when popup item is about to open. Event is fired only when Bar is used independently of DotNetBarManager. + + + + + Occurs just before popup window is shown. Event is fired only when Bar is used independently of DotNetBarManager. + + + + + Occurs before dock tab is displayed. + + + + + Occurs when caption button is clicked. Caption button is button displayed on bars with grab handle style task pane. + + + + + Occurs on dockable bars when end-user attempts to close the individual DockContainerItem objects using system buttons on dock tab. + Event can be canceled by setting the Cancel property of event arguments to true. This even will occur only after user presses the + X button on tab that is displaying the dockable windows/documents. + + + + + Occurs on dockable bars after DockContainerItem is closed by end-user. This action cannot be cancelled. + + + + + Occurs after an item has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data with the item and load it back up in DeserializeItem event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeItemEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an item has been de-serialized (load) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrive any data you saved in SerializeItem event. + + + + + Occurs after the TabStrip style which used on dockable windows has changed. This event gives you opportunity to + change the style of the tab strip by accessing Bar.DockTabControl.Style property. + + + + + Occurs before the bar control is rendered. This event is fired once for each part of the bar control being rendered. Check the Part property of the event arguments to identify the part being rendered. + You can cancel internal rendering by setting Cancel property. + + + + + Occurs after the bar control is rendered and allows you to render on top of the default rendering provided by the control. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Gets/Sets the owner of the Bar object. + + + + + Gets or sets the item default accessibility action will be performed on. + + + + + Returns the reference to the control that last had input focus. This property should be used to + determine which control had input focus before bar gained the focus. Use it to apply + the menu command to active control. + + + + + Indicates the array of colors that when set are used to draw the border of the item. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets whether caption of floating bar will be drawn using themes. + + + + + Gets/Sets the parent item of the Bar. The parents item sub-items are displayed on the bar. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Gets or sets docked bar caption height. Default value is 0 which means system predefined height is used. + + + + + Gets or sets whether bar when changed over to floating state is hidden instead of shown. This property is used + internally to optimize loading of hidden floating bars. You should not use this property in your code. It is for internal DotNetBar + infrastructure use only. + + + + + Returns true if bar is being moved/dragged by user. + + + + + Gets or sets whether floating dockable window is maximized. + + + + + Specifies the bar behavior when its title is double-clicked + + + + + Returns whether popup bar should display shadow. + + + + + Returns whether popup bar shadow should be alpha-blended. + + + + + Gets/Sets the popup animation that will be applied when popup is shown. + + + + + Gets whether any handlers have been defined for SerializeItem event. If no handles have been defined to optimize performance SerializeItem event will not be attempted to fire. + + + + + Gets whether any handlers have been defined for DeserializeItem event. If no handles have been defined to optimize performance DeserializeItem event will not be attempted to fire. + + + + + Gets/Sets Bar definition as XML string. + + + + + Gets or sets whether layout changes are saved for this bar when DotNetBarManager.SaveLayout method is used to save layout for all bars. Default value is true which means that layout changes are saved. + + + + + Gets/Sets Bar layout as XML string. + + + + + Specifies background image position when container is larger than image. + + + + + Specifies the transparency of background image. + + + + + Sets/Gets the side bar image structure. + + + + + Gets/Sets the caption of the Bar. This text is displayed in title of the Bar when Bar is floating. + + + + + Specifies whether Bar is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Returns current Bar state. + + + + + Returns the collection of sub-items hosted on the Bar. + + + + + Returns the reference to the container that containing the sub-items. + + + + + Gets/Sets whether the items that could not be displayed on the non-wrap Bar are displayed on popup menu or popup Bar. + + + + + Gets/Sets the spacing in pixels between the sub-items. + + + + + Gets/Sets the padding in pixels. This represents the spacing between the top edge of the bar and the top of the item. + + + + + Gets/Sets the padding in pixels. This represents the spacing between the bottom edge of the bar and the bottom of the item. + + + + + Gets/Sets the padding in pixels. This represents the spacing between the left edge of the bar and the left side of the first item. + + + + + Gets/Sets the padding in pixels. This represents the spacing between the right edge of the bar and the right side of the last item. + + + + + Sets/Gets whether bar is menu bar. Menu bar will show system icons + for Maximized forms in MDI Applications. Only one bar can be a Menu bar in an application. + + + + + Gets or sets the visual type of the bar. The type specified here is used to determine the appearance of the bar. + + + + + Gets or sets Bar Color Scheme. + + + + + Gets or sets Caption (Title bar) background color. + + + + + Gets or sets Caption (Title bar) text color. + + + + + Gets or sets whether toolbars with appropriate style appear with rounded corners. Default value is true. + + + + + Gets/Sets the visual style of the Bar. + + + + + Gets/Sets whether the items will be wrapped into next line when Bar is full. Applies to both docked and floating Bar states. + + + + + Gets/Sets whether the items will be wrapped into next line when Bar is full. Applies only to Bars that are docked. + + + + + Gets/Sets whether the items will be wrapped into next line when Bar is full. Applies only to Bars that are floating. + + + + + Gets/Sets the grab handle style of the docked Bars. + + + + + Gets the grab handle client rectangle. + + + + + Returns CanClose based on the selected dock-container item. + + + + + Gets/Sets whether the Bar can be hidden by end-user. Applies to Document docked bars only. + + + + + Indicates whether Maximize button is visible on floating dock windows. + + + + + Gets/Sets border style when Bar is docked. + + + + + Gets/Sets whether floating bar is hidden when application loses focus. + + + + + Gets/Sets whether tab navigation buttons are shown for tabbed dockable bars. + + + + + Gets or sets the border line color when docked border is a single line. + + + + + Gets/Sets whether Bar is visible or not. + + + + + Returns number of items that have Visible property set to true. + + + + + Gets or sets whether bar is valid drop target for end-user bar customization. Default value is true. + When bar is used as dock container then you can use this property to prevent docking of other bars as dock tabs. + + + + + Gets or sets whether items on the Bar can be customized. + + + + + Specifies whether Bar was created by user using Customize dialog. + + + + + Gets/Sets the Bar name used to identify Bar from code. + + + + + Gets/Sets the Image size for all sub-items on the Bar. + + + + + Gets or sets the layout type. + + + + + Gets or sets whether all buttons are automatically resized to the largest button in collection. + + + + + Gets or sets rounded corner size for styles that use rounded corners. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets whether mouse over fade effect is enabled for buttons. Default value is false. Note that Fade effect + will work only when Office2007 style is used. For other styles this property has no effect and fade animation is not used regardless + this property setting. + + + + + Gets whether fade effect should be in use. + + + + + Gets or sets the Bar back color. + + + + + Gets or sets the Bar customize menu (Applies to the bars with LayoutType set to DockWindow only). + + + + + Indicates the auto-hide side of the parent form where bar is positioned. + + + + + Gets or sets whether tab text is always visible while bar is in auto-hide state. Default value is false which indicates that only text for the active dock tab is visible. + + + + + Indicates whether Bar is in auto-hide state. Applies to non-document dockable bars only. + + + + + Gets or sets the visibility of the bar when bar is in auto-hide state. + + + + + Indicates whether Bar can be auto hidden. + + + + + Gets or sets the global parent control used as part of Global Items feature when bar is used as context menu bar. This property is used internally by + DotNetBar and should not be set directly. + + + + + Gets or sets how long it takes to play the auto-hide animation, in milliseconds. Maximum value is 2000, 0 disables animation. + + + + + Occurs before the bar in auto-hide state is displayed on popup and allows you to cancel display by setting Cancel=true on event arguments. + + + + + Occurs before the bar in auto-hide state is hidden and allows you to cancel display by setting Cancel=true on event arguments. + + + + + Gets whether tooltip is visible or not. + + + + + Indicates whether dock tabs are visible when bar is acting as dock-container and it needs to display tabs to represents multiple DockContainerItem objects hosted by the bar. Default value is true. + + + + + Gets or sets height of the docked bar tab strip which displays docked tabs. + + + + + Returns the reference to internal TabStrip control used to display contained DockContainerItems. + + + + + Gets or sets the selected DockContainerItem if bar represents dockable window. + + + + + Gets or sets the tab (DockContainerItem) index for Bars with LayoutType set to eLayoutType.DockContainer. Index corresponds to the index of the DockContainerItem in Bar.Items collection. + + + + + Indicates Bar background image. + + + + + Gets or sets whether caption button menu for bars with grab handle task pane is automatically created. + Caption menu when automatically created will display the list of all items from Items collection + and it will maintain only one item from the list as visible item. + To create custom caption menu that is displayed when user clicks the caption button handle CaptionButtonClick event. + + + + + Gets or sets whether caption (text) of the bars with dock container layout is automatically set to the + selected dock container item text. + + + + + Specifies whether Bar can be undocked. Does not apply to stand alone bars. + + + + + Specifes whether end-user can tear-off (deattach) the tabs on dockable window. + + + + + Specifes whether end-user can reorder the tabs on dockable window. + + + + + Gets or sets whether bar or DockContainerItem that is torn-off this bar can be docked + as tab to another bar. Default value is true which indicates that bar can be docked as tab to another bar. + + + + + Gets or sets whether dock bar can be moved by dragging its caption using the mouse. + + + + + Specifies whether Bar can be docked on Top dock site or not. Does not apply to stand alone bars. + + + + + Specifies whether Bar can be docked on Bottom dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked on Left dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked on Right dock site or not. Does not apply to stand alone bars. + + + + + Specifies whether Bar can be docked as document. Default value is false. See DotNetBarManager.EnableDocumentDocking for more details. + + + + + Specifies whether Bar will stretch to always fill the space in dock site. Applies to the dockable bars only. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Gets/Sets the distance from the far left/top side of the docking site or suggests the order of the docked bar. Upon serialization this property + will contain actual left/top position of the bar. You can use it to re-order the bars docked on the same line. Property value is relative to the other + bars docked on the same line when it is used to change the order. For example setting DockOffset value to 10 will place the bar just after the last bar on the + same line that has DockOffset value less than 10. If there is no bar with DockOffset value less than 10 the bar will be placed in first position. + + + + + Gets/Sets the dock line. + + + + + Gets or sets the dock tab alignment. + + + + + Gets or sets whether selected dock tab is closed when Bar caption close button is pressed. Default value is false which indicates that whole bar will be hidden when bars close button is pressed. + + + + + Gets or sets whether close button is displayed on each dock tab that allows closing of the tab. Default value is false. + + + + + Gets or sets whether tab that shows all dock containers on the bar is visible all the time. By default + tab is hidden when there is only one item displayed. + + + + + Gets or sets whether bar is locked to prevent docking below it. Applies to undockable bars only. + + + + + Gets/Sets the orientation of the Bar. + + + + + Returns whether Bar is docked or not. + + + + + Returns the Bars dock site. + + + + + Gets/Sets the dock side for the Bar. + + + + + Gets or sets the inital floating location. This location will be used when DockSide is set to None. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Gets or sets whether control is selected in designer. + + + + + Gets or sets whether accelerator letters for menu or toolbar commands are underlined regardless of + current Windows settings. Accelerator keys allow easy access to menu commands by using + Alt + choosen key (letter). Default value is false which indicates that system setting is used + to determine whether accelerator letters are underlined. Setting this property to true + will always display accelerator letter underlined. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Gets or sets whether hooks are used for internal DotNetBar system functionality. Using hooks is recommended only if DotNetBar is used in hybrid environments like Visual Studio designers or IE. + + + + + Indicates whether mnemonic keys, accelerator keys, which are set through item Text property used ampersand character are processed by control. + + + + + Specifes whether Bar can be docked on Top dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked on Bottom dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked on Left dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked on Right dock site or not. Does not apply to stand alone bars. + + + + + Specifes whether Bar can be docked as document. Default value is false. See DotNetBarManager.EnableDocumentDocking for more details. + + + + + Indicated whether control can be stretched to fill dock site. + + + + + Holds the left position (dock offset) of the control. + + + + + Specifies the dock line for the control. + + + + + Specifies current dock orientation. + + + + + Gets whether control is docked. + + + + + Returns the dock site of the control. + + + + + Gets or sets the control dock side. + + + + + Gets or sets whether bar is locked to prevent docking below it. + + + + + Defines delegate for the PreRender and PostRender Bar control events. + + + + + Represents event arguments for PreRender and PostRender Bar control event. + + + + + Gets the reference to the Bar being rendered. + + + + + Gets or sets the rectangle of the part being rendered. Certain parts of bar like the title buttons allow you to set this property to the custom size of your button. + Default value is the system size of the part being rendered. + + + + + Gets the Bar part being rendered. + + + + + When used in PreRender event allows you to cancel the default rendering by setting this property to true. + + + + + Gets the reference to the Graphics object to render the tab on. + + + + + Creates new instance of the class and initializes it with default values. + + + + + Defines the part of the Bar control for custom rendering. + + + + + Indicates the Bar background and border. + + + + + Indicates the Bar caption. + + + + + Indicates the Bar close button displayed inside of caption. + + + + + Indicates the Bar customize button displayed inside of caption. + + + + + Indicates the Bar caption text. + + + + + Indicates the Bar grab handle. + + + + + Indicates the Bar resize handle. + + + + + Indicates the Bar auto-hide button displayed inside of caption. + + + + + Indicates the Bar caption task pane. + + + + + Indicates the Bar maximize button displayed inside of caption. + + + + + Indicates the complete bar area. This part is used for the PostRender event. + + + + + Defines delegate for BarStateChanged event. + + + + + + + Provides event arguments for ActiveDockContainerChanged event. + + + + + Gets the Bar that is changed. + + + + + Gets the type of the change that affected the bar. + + + + + Provides any optional context information about the state change. + + + + + Initializes a new instance of the BarStateChangedEventArgs class. + + + + + + + Initializes a new instance of the BarStateChangedEventArgs class. + + + + + + + + Defines bar state changes for BarStateChanged event. + + + + + Indicates that Bar selected dock tab is about to change. + + + + + Indicates that Bar selected dock tab has changed. + + + + + Indicates that bar docking has changed and bar was docked. + + + + + Indicates that bar has been undocked from dock site. + + + + + Indicates that bar dock tab has closed. + + + + + Indicates that bar in auto-hide state has been folded, i.e. returned to collapsed state. + + + + + Indicates that bar in auto-hide state has been open, shown. + + + + + Indicates that bar AutoHide property has changed meaning that bar has been either placed in auto-hide mode or taken out of auto-hide mode. + + + + + Indicates that tab has been moved within a bar tab-strip by end user. + + + + + Specifies the behavior of bar when its title is double clicked. + + + + + Double clicking bar title does not do anything. + + + + + Double clicking bar title when bar is docked will float the bar if CanUndock=true + + + + + Double clicking floating bar title will re-dock it if any of CanDock*** properties is true. + + + + + Double clicking will toggle bar state between float and dock state if all CanDock*** and CanUndock properties allow it. + + + + + Represents base control for bars. + + + + + Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control. + + The AccessibleEvents object to notify the accessibility client applications of. + The child Control to notify of the accessible event. + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Invokes the DotNetBar Customize dialog. + + + + + Invokes ItemDoubleClick event. + + Reference to item double-clicked + Event arguments + + + + Clean up any resources being used. + + + + + Applies design-time defaults to control. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Called after control has painted its content and allows painting on top of the controls content. + + Paint arguments. + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Applies any layout changes and repaint the control. + + + + + Occurs when Checked property of an button has changed. + + + + + Occurs when Item is clicked. + + + + + Occurs when Item is clicked. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when user changes the item position, removes the item, adds new item or creates new bar. + + + + + Occurs after an Item is removed from SubItemsCollection. + + + + + Occurs after an Item has been added to the SubItemsCollection. + + + + + Occurs when ControlContainerControl is created and contained control is needed. + + + + + Occurs when Text property of an Item has changed. + + + + + Use this event if you want to serialize the hosted control state directly into the DotNetBar definition file. + + + + + Use this event if you want to deserialize the hosted control state directly from the DotNetBar definition file. + + + + + Occurs after DotNetBar definition is loaded. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Occurs before tooltip for an item is shown. Sender could be the BaseItem or derived class for which tooltip is being displayed or it could be a ToolTip object itself it tooltip is not displayed for any item in particular. + + + + + Occurs after main application form is activated. + + + + + Occurs after main application form is deacticated. + + + + + Occurs on application wide mouse down event. + + + + + Gets or sets the form SideBar is attached to. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Gets or sets the item default accessibility action will be performed on. + + + + + Specifies the background style of the Explorer Bar. + + + + + Indicates whether shortucts handled by items are dispatched to the next handler or control. + + + + + Gets or sets Bar Color Scheme. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Specifies whether SideBar is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Represents the method that will handle the ItemRemoved event. + + + + + Represents class for Accessibility support. + + + + + Creates new instance of the object and initializes it with owner control. + + Reference to owner control. + + + + Returns number of child objects. + + Total number of child objects. + + + + Returns reference to child object given the index. + + 0 based index of child object. + Reference to child object. + + + + Gets accessible role. + + + + + Gets parent accessibility object. + + + + + Returns bounds of the control. + + + + + Returns current accessible state. + + + + + Summary description for BarFunctions. + + + + + Tries to invoke the RecalcLayout method on the control and return true if such method was invoked. + + Reference to the control + Indicates whether to invalidate control if no recalc layout method is found + return true if method is invoked. + + + + Creates copy of a bar to be used as new dock bar. This function is used to create new bar for tabs that are torn off the existing dock bars. + + Original base bar to base the new bar on. + New instance of a bar. Note that bar is not added to the DotNetBarManager.Bars collection and DockSide is not set. + + + + Returns if passed control is ready for painting. + + Control to test. + true if handle is valid otherwise false + + + + XML element is expected to be something like Image data Base64 encoded + + Image data + + + + + Collection of Bar objects. + + + + + Releases the resources used by the Component. + + + + + Adds an Bar to the end of Bars collection. + + The Bar to be added to the end of the Bars collection. + + + + Removes specified bar from collection. + + Bar to remove + + + + Determines whether an Bar is in the collection. + + The Bar to locate in the collection. + true if item is found in the collection; otherwise, false. + + + + Determines whether bar with given name is in collection. + + Name of the bar + True if bar is part of this collection, otherwise false. + + + + Returns the zero-based index of the Bar in the collection. + + Bar to locate. + + + + + Gets the Bar at the specified index. + + + + + Gets the Bar with the specified name. + + + + + Holds the XML element and attribute names for bar serialization. + + + + + Represents class with static functions that provide commonly used utility functions when working with + Bar objects and items hosted by Bar object. + + + + + Sets Bar visible property and remembers the auto-hide state. + + Bar to set visibility for. + true if visible otherwise false + + + + Sets the visible property of DockContainerItem and hides the bar if the given item is the last visible item on the bar. + It will also automatically display the bar if bar is not visible. + + DockContainerItem to set visibility for. + Indicates the visibility of the item + + + + Creates new instance of the bar and sets its properties so bar can be used as Document bar. + + Returns new instance of the bar. + + + + Sets the properties on a bar so it can be used as Document bar. + + Bar to set properties of. + + + + Changes the MDI Client border edge to remove 3D border or to add it. + + Reference to MDI Client object. + Indicates whether to remove border. + + + + Changes the MDI Client border edge to remove 3D border or to add it. + + Reference to MDI parent form. + Indicates whether to remove border. + + + + Disposes image reference and sets it to null. + + Reference to image to dispose. + + + + Disposes image reference and sets it to null. + + Reference to image to dispose. + + + + Invokes the method asynchronously using the WinForms Timer. + + Method to invoke. + + + + Invokes the method asynchronously using the WinForms Timer. + + Method to invoke. + Time in milliseconds after which method is invoked. + + + + Gets or sets whether Fade Animation is enabled on system level for DotNetBar items which use this. Default value is true. + + + + + Gets or sets whether StringFormat internally used by all DotNetBar controls to render text is GenericDefault. Default value is false + which indicates that GenericTypographic is used. + + + + + Gets or sets the anti-alias text rendering hint that will be used to render text on controls that have AntiAlias property set to true. + + + + + Gets or sets whether .NET Framework TextRenderer class is used for text rendering instead of Graphics.DrawString. + Default value is false. + Using TextRenderer will disable the Fade and Animation effects on controls because of issues in TextRenderer when drawing text on transparent + surfaces. + + + + + Gets or sets whether items always generate the Focus accessibility event when mouse enters the item. Default value is false which indicates + that focus event will be raised only when item is on menu bar. + + + + + Gets or sets whether Application Message Filter that is registered by popup controls + is automatically unregistered when last control is disposed. Default value is false and + in most cases should not be changed. + + + + + Get or sets the text-markup padding for text measurement when running on Japanese version of Windows. + + + + + Gets or sets whether Image and Icon resources assigned to items and controls are automatically disposed when + control or item is disposed. Default value is false. + + + + + Defines the base class for items that are used by DotNetBar. + + + + + Represents a content block interface. + + + + + Gets or sets the bounds of the content block. + + + + + Gets or sets whether content block is visible. + + + + + Gets or sets the block margins. + + + + + Creates new instance of BaseItem. + + + + + Creates new instance of BaseItem and assigns item name. + + Item name. + + + + Creates new instance of BaseItem and assigns item name and item text. + + Item Name + Item Text + + + + Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Deserialize the Item from the XmlElement. + + Source XmlElement. + + + + Indicates whether SubItems collection is serialized. Default value is true. + + + + + Called when item container has changed. If you override this method you must call the base implementation to allow default processing to occur. + + Previous container of the item. + + + + Called when item parent has changed. + + + + + Returns whether item is enabled including the parent control item is on. + + + + + + Returns whether item is enabled including the parent control item is on. + + + + + + Called when size of the item is changed externally. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Called when item Display state has changed. + + + + + Called when item owner has changed. + + + + + Raises SubItemsChanged event. + + + + + + Occurs after an item has been added to the container. This procedure is called on both item being added and the parent of the item. To distinguish between those two states check the item parameter. + + When occurring on the parent this will hold the reference to the item that has been added. When occurring on the item being added this will be null (Nothing). + + + + Occurs after an item has been removed. + + Item being removed. + + + + Occurs just before Click event is fired. + + + + + Occurs after SubItems Collection has been cleared. + + + + + Occurs before an item is removed. + + Item being removed. + + + + Occurs when IsOnCustomizeMenu property has changed. + + + + + Occurs when IsOnCustomizeDialogChanged property has changed. + + + + + Occurs when item enter or exists the design mode. + + + + + Occurs when tooltip is about to be shown or hidden. + + Specifies whether tooltip is shown or hidden. + + + + Occurs after item has received the input focus. + + Item that received the focus. + + + + Occurs after item has lost the input focus. + + Item that lost the input focus. + + + + Indicates whether the item enabled property has changed. + + + + + Called after TopInternal property has changed + + + + + Called after LeftInternal property has changed + + + + + Occurs when the mouse pointer enters the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer hovers the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer leaves the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is released. This is used by internal implementation only. + + + + + Occurs when a key is pressed down while the item has focus. This is used by internal implementation only. + + + + + Processes the MouseLeave for the current mouse over item. + + + + + Occurs when the mouse pointer is moved over the item. This is used by internal implementation only. + + + + + Occurs when the item is clicked. This is used by internal implementation only. + + + + + Raises the click event and provide the information about the source of the event. + + + + + + Raises the Click event with default source as Code. + + + + + Occurs when the item is double clicked. This is used by internal implementation only. + + + + + Invokes DoubleClick event. + + + + + Occurs when the item receives focus. If overridden base implementation must be called so default processing can occur. + + + + + Occurs when the item has lost the focus. If overridden base implementation must be called so default processing can occur. + + + + + Sets the input focus to the item. If overridden base implementation must be called so default processing can occur. + + + + + Releases the input focus. If overridden base implementation must be called so default processing can occur. + + + + + Occurs when item container has lost the input focus. If overridden base implementation must be called so default processing can occur. + + + + + Occurs when item container receives the input focus. If overridden base implementation must be called so default processing can occur. + + + + + Indicates that item size has changed. It must be called by child item to let the parent know that its size + has been changed. + + + + + Return Sub Item at specified location + + + + + Gets the current expanded subitem. + + + + + + Gets the item that has input focus. + + Item that has focus or Null (Nothing) if none of the subitems have focus. + + + + Gets the owner of the item. + + DotNetBarManager that owns the item. + + + + Recalculate the size of the item. If overridden base implementation must be called so default processing can occur. + + + + + Must be overridden by class that is inheriting to provide the painting for the item. + + + + + Must be overridden by class that is inheriting to provide the method to + return copy of an item. + + + + + Internal Copy implementation. + + Item to copy to. + + + + Returns copy of the item. + + Copy of the item. + + + + Forces the repaint the item. + + + + + Occurs when Expanded state changes. If overridden base implementation must be called so default processing can occur. + + + + + Raises ExpandChange event. + + Event arguments + + + + Occurs when sub item expanded state has changed. + + Sub item affected. + + + + Releases all resurces used in this control. After calling Dispose() + object is not in valid state and cannot be recovered to the valid state. + Recreation of the object is required. + + + + + Occurs after item visual style has changed. + + + + + Occurs after text has changed. + + + + + Returns if passed control is valid. + + Control to test. + + + + + Resets Hoover timer. + + + + + Returns true if any subitem is contained on the control with a given handle. + + Container handle to test. + + + + + Occurs after Tooltip text has changed. + + + + + Sets orientation of the item but it does not cause the recalculate layout flag setting on the parent item. + + New orientation value. + + + + Destroys tooltip window. + + + + + Called when HotSubItem has changed. + + New value. + Old value. + + + + Shows tooltip for this item. + + + + + Returns the shortcut string that is displayed on tooltip. + + + + + + Collapses all sub items by setting their Expanded property to false. + + Item to collapse. + + + + Collapses all sub items by setting their Expanded property to false. Enumerates all child items as well. + + Item to collapse. + + + + Collapses whole tree for the item starting with its parent. + + Item to collapse. + + + + Returns whether item is hosted on popup menu or bar. + + Item to get information for. + + + + + Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table. + + Hash code. + + + + Called when DragStartPoint property has changed. + + Old property value + New property value + + + + Called when Command property value changes. + + + + + Occurs when text markup link is clicked. + + + + + Updates data bindings for item and its sub-items in response to binding context change on parent control. + + + + + Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. + This property calls directly the ContainerControl.Invoke and is provided as shortcut convenience property only. + + A delegate to a method that takes parameters of the same number and type that are contained in the args parameter. + An array of objects to pass as arguments to the specified method. This parameter can be null reference (Nothing in Visual Basic) if the method takes no arguments. + An Object that contains the return value from the delegate being invoked, or nullNothingnullptra null reference (Nothing in Visual Basic) if the delegate has no return value. + + + + Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. + This property calls directly the ContainerControl.Invoke and is provided as shortcut convenience property only. + + A delegate to a method that takes parameters of the same number and type that are contained in the args parameter. + An Object that contains the return value from the delegate being invoked, or nullNothingnullptra null reference (Nothing in Visual Basic) if the delegate has no return value. + + + + Executes the specified delegate, on the thread that owns the control's underlying window handle, with the specified list of arguments. + This property calls directly the ContainerControl.BeginInvoke and is provided as shortcut convenience property only. + + A delegate to a method that takes parameters of the same number and type that are contained in the args parameter. + An Object that contains the return value from the delegate being invoked, or nullNothingnullptra null reference (Nothing in Visual Basic) if the delegate has no return value. + + + + Occurs when Item is clicked. + + + + + Occurs when Item is double-clicked. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when copy of the item is made. + + + + + Occurs when Text property of an Item has changed. + + + + + Occurs when Visible property of an Item has changed. + + + + + Occurs when Enabled property of an Item has changed. + + + + + Occurs when item's tooltip visibility has changed. + + + + + Occurs when content of SubItems collection has changed. + + + + + Gets or sets whether item is rendered. + + + + + Gets or sets whether item is selectable at design-time. Default value is true. + + + + + Control Container (System.Windows.Forms.Control or its descendant) + + + + + Returns the Parent of the item. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Gets or sets whether item separator is shown before this item. + + + + + Gets or sets Left position of this item + + + + + Gets or sets Top position of this item + + + + + Gets or sets Width of this item + + + + + Gets whether item is in right-to-left layout mode. + + + + + Gets or sets Height of this item + + + + + Gets or sets a value indicating whether the item is visible. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Gets or sets whether item will auto expand when mouse is over the item or not. + + + + + Gets the rectangle that represents the display area of the item. + + + + + Gets or sets the size of the item. + + + + + IBlock member implementation + + + + + Specifies whether this item is visual container or not. For example + Tool Menu is not container since it drops-down its items and they are + not "visualy" contained. Also, the pop-up menus, drop-down Bars etc. are not containers. + + + + + Returns true if this item is currently displayed. This property should not be set directly since it is managed by system and container of the item. + + + + + Gets the mouse down coordinates. + + + + + Gets whether item is on context menu created using ContextMenuBar + + + + + Gets whether RaiseClick method will generate a click event give current item state. + + + + + Indicates whether RaiseClick method collapses parent popups before raising click event. Default value is true. + + + + + Gets whether item has input focus. + + + + + Indicates that item is recalculating its size. + + + + + Suspends all layout for the item including painting. Use this property carefully and only to improve performace. + + + + + Gets whether item has been disposed through Dispose method call. + + + + + Returns the collection of sub items. + + + + + Returns count of sub items in SubItems collection that have Visible property set to true. + + + + + Unique ID that indentifies the item. + + + + + Allows the user to associate custom user data with the item. + + + + + Applies new visual style to this the item and all of its sub-items. + + + + + Gets the effective item style. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets item alignment inside the container. + + + + + Gets or sets item description. This description is displayed in + Customize dialog to describe the item function in an application. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets/Sets informational text (tooltip) for the item. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Returns name of the item that can be used to identify item from the code. + + + + + Gets or sets the global name of the item that is used to synchronize the Global properties for the item across all instances with same + global name. Note that only instances that belong to the same control are synchronized. GlobalItem must be set to true to perform the synchronization. + You can find more information and list of + properties that are synchronized in help file. + + + + + Gets whether global properties should synchronized. + + + + + Gets orientation within container that is supported by this item. If item does not support certain orientation the container automatically hides it when container switches into that orientation. + + + + + Gets or sets whether item is global or not. + This flag is used to propagate property changes to all items with the same name. + Setting for example Visible property on the item that has GlobalItem set to true will + set visible property to the same value on all items with the same name. + + + + + Gets or sets orientation inside the container. Do not change the value of this property. It is managed by system only. + + + + + Gets whether tooltip for the item is displayed. + + + + + Gets whether tooltip is visible or not. + + + + + Gets or sets the name of the bar this item originated on. This is used to remember the + originating bar when user is moving the items from bar to bar. + + + + + Gets or sets item's original position (index) if item position has changed due to the user customization. + + + + + Gets or sets flag that indicates whether item was customize by the end-user. + + + + + Gets reference to the tooltip control if tooltip is displayed for this item. + + + + + Gets or sets the Key Tips access key or keys for the item when on Ribbon Control or Ribbon Bar. Use KeyTips property + when you want to assign the one or more letters to be used to access an item. For example assigning the FN to KeyTips property + will require the user to press F then N keys to select an item. Pressing the F letter will show only keytips for the items that start with letter F. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets whether item can be customized by end user. + + + + + Returns whether item is hosted on Customize menu. + + + + + Returns whether item is hosted on Customize Dialog. + + + + + Returns whether item is hosted on menu or not. + + + + + Returns whether item is hosted on menu bar or not. + + + + + Returns whether item is hosted on bar or not. + + + + + Returns whether item is in design mode or not. + + + + + Get or sets whether item has been changed in a way that it needs its size recalculated. This is internal + property and it should not be used by your code. + + + + + Returns whether item is System item. + + + + + Indicates whether access key processing set using ampersand key in Text is enabled. When enabled, and access key is pressed, item will raise Click event. + + + + + Return Access key for the item. + + + + + Gets or sets the collection of shortcut keys associated with the item. + + + + + Returns text representation of shortcut for this item. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets the design-marker orientation for the item. + + + + + + Specifes the mouse cursor displayed when mouse is over the item. + + + + + Indicates whether item will be Serialized. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets the AccessibleObject assigned to the item. + + + + + Gets or sets the default action description of the control for use by accessibility client applications. + + + + + Gets or sets the description of the control used by accessibility client applications. + + + + + Gets or sets the name of the control used by accessibility client applications. + + + + + Gets or sets the accessible role of the item. + + + + + Gets or sets a value indicating whether the item is visible to accessibility applications. + + + + + Gets the item state inside of the parent container. + + + + + Gets or sets item margin only used by certain items in certain containers. Provided only for internal DotNetBar use. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that for ButtonItem instances if this property is set to null and command was assigned previously, Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets plain text without text-markup if text-markup is used in Text. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets a value indicating whether the caller must call an invoke method when making method calls to the item because the caller is on a different thread than the one the item was created on. + This property calls directly the ContainerControl.InvokeRequired and is provided as shortcut convinience property only. + + + + + Defines item parent container states. + + + + + State is not set. + + + + + Item in on the NavigationPane in normal size. + + + + + Represents the controller which allows single BaseItem to be hosted on the control. + + + + + Initializes a new instance of the BaseItemController class. + + + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Defines class which described single binding. + + + + + Raises Format event. + + Provides event arguments. + + + + Initializes a new instance of the BindingDef class. + + + + + Initializes a new instance of the BindingDef class. + + + + + + + Updates specified item PropertyName with the data from data object property specified by DataMember. + + Item to set PropertyName on. + Data to retrieve DataMember value from. + + + + Updates specified item PropertyName with the data from data object property specified by DataMember. + + CurrencyManager to use + Item to set PropertyName on. + Data to retrieve DataMember value from. + + + + Called when PropertyName property has changed. + + Old property value + New property value + + + + Called when DataMember property has changed. + + Old property value + New property value + + + + Called when FormattingEnabled property has changed. + + Old property value + New property value + + + + Called when FormatString property has changed. + + Old property value + New property value + + + + Called when FormatInfo property has changed. + + Old property value + New property value + + + + Called when NullValue property has changed. + + Old property value + New property value + + + + Raises the PropertyChanged event. + + Provides event arguments. + + + + Gets or sets the property name binding is attached to. + + + + + Gets the reference to BindingMemberInfo created based on DataMember. + + + + + Gets or sets the data member name which holds data that PropertyName is populated with. + + + + + Gets or sets whether type conversion and formatting is applied to the property data. + + + + + Gets or sets format specifier characters that indicate how a value is to be displayed. + For more information, see Formatting Overview: http://msdn.microsoft.com/en-us/library/26etazsy%28v=vs.71%29.aspx + + + + + Gets or sets the IFormatProvider that provides custom formatting behavior. + + + + + Gets or sets the Object to be set as the target property when the data source contains a DBNull value. + The data source must contain DBNull for the NullValue property to be correctly applied. + If the data source type is a type such as a string or integer the value of the NullValue property will be ignored. + Also, the NullValue property is ignored if it is set to null. + + + + + Occurs when property on BindingDef object has changed. + + + + + Represents the method that will handle converting for bindings. + + + + + + + Gets the reference to the item being converted. + + + + + Get the reference to the name of the field or property on the item that needs conversion. + + + + + Represents BindingDefConverer converter. + + + + + Creates new instance of the class. + + + + + Checks whether conversion can be made to specified type. + + Context Information. + Destination type. + + + + + Converts object to specified type. + + Context information. + Culture information. + Object to convert. + Destination type. + Object converted to destination type. + + + + Represents the toolbar control with the magnifying (bubbling) buttons. + + + + + Creates new instance of the control. + + + + + Indicates whether property should be serialized. Used by the Windows Forms design-time support. + + + + + Resets the property to default value. Used by the Windows Forms design-time support. + + + + + Indicates whether property should be serialized. Used by the Windows Forms design-time support. + + + + + Resets the property to default value. Used by the Windows Forms design-time support. + + + + + Returns whether property should be serialized by Windows Forms designer. + + True if property is different than default value otherwise false. + + + + Returns whether property should be serialized by Windows Forms designer. + + True if property is different than default value otherwise false. + + + + Recalculates the layout of the control. This method should be called after all changes to the tabs, buttons are completed so + layout of the control recalculated. + + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Returns reference to the button at specified location + + x - coordinate + y - coordinate + Reference to the button or null if no button could be found at given coordinates. + + + + Returns reference to the button at specified location + + Location coordinates + Reference to the button or null if no button could be found at given coordinates. + + + + Returns tab at specific location. + + Coordinates to get the tab from. + Reference to the tab object or null if tab cannot be found at specified location + + + + Returns tab at specific location. + + x - coordinate + y - coordinate + Reference to the tab object or null if tab cannot be found at specified location + + + + Invokes BubbleStart event. + + + + + Invokes BubbleEnd event. + + + + + Invokes ButtonClick event on the control. + + Reference to the button that was clicked. + + + + Called after overlay window became inactive. + + + + + Stops the bubble animation effect is one is applied currently. + + + + + Internal processing of MouseMove event. + + Move move event arguments. + + + + Internal processing for MouseLeave event. + + Event arguments + + + + Called after all buttons have been removed. + + Tab from which all buttons were removed. + + + + Called after specified button has been removed. + + Tab from which button was removed. + Button that was removed. + + + + Called after new button is added to the Buttons collection. + + Tab to which button was added. + Reference to the button added. + + + + Called when Visible property of Button has changed. + + Button affected. + + + + Returns the button background rectangle for display purposes. Applies setting for the ButtonBackgroundStretch property. + + Background rectangle. + + + + Called after tab has been removed from the collection. + + Tab that was removed. + + + + Called after tab has been added to the collection. + + Newly added tab. + + + + Called after all tabs are removed from the collection. + + + + + Called after text of a tab has changed. + + Tab which text has changed. + + + + Called after Visible property of the tab has changed. + + Tab affected. + + + + Sets the tab mouse is placed over. + + Tab that mouse is currently over or null if mouse is not over any tab. + + + + Occurs when active tab is about to change. + + + + + Occurs when any of the buttons is clicked. Sender object should be casted to BubbleButton to get the button that was actually clicked. + + + + + Occurs when mouse first enters the control and bubble effect is employed to provide feedback. + + + + + Occurs when mouse leaves the control and bubble effect is ended. + + + + + Gets or sets the bubble button tooltip text color. Default value is White color. + + + + + Gets or sets the bubble button tooltip text outline color. Default value is Black color. + + + + + Gets or sets the spacing in pixels between buttons. Default value is 0. + + + + + Gets or sets whether background for the buttons is stretched to consume complete width of the control. Default value is true. + + + + + Gets the style for the background of the control. + + + + + Gets the style for the background of the buttons. + + + + + Gets the bounds of the buttons back area. + + + + + Gets the bounds of the tabs area. + + + + + Gets or sets the duration of animation that is performed when mouse enters a button for the first time or when mouse has left the control. + + + + + Gets or sets whether bubble animation is enabled. Default value is true. + + + + + Gets or sets whether anti-alias smoothing is used while painting. + + + + + Gets or sets ImageList for images used on buttons. These images will be used as images for the buttons that are not magnified. + Use ImagesLarge to specify the magnified images for the coresponding images based on the index in this list. + + + + + Gets or sets ImageList for large-sized images used on buttons when button is magnified. + + + + + Gets or sets whether tooltips are displayed for the buttons. + + + + + Gets or sets size of the images when button is enlarged, default value is 48 by 48 pixels. Note that you should provide the + images in the same size for the buttons through the image properties on the buttons or through ImagesLarge property. + If the large images are not provided the regular button image will be automatically enlarged. + + + + + Gets or sets the normal image size for the buttons, default value is 24 by 24 pixels. This should be set to the default image size that you will use on the + buttons. If the images specified for the buttons are not of the same size as the size specified here then they will + be automatically resized. Normal size must always be smaller than the size specified by ImageSizeLarge property. + + + + + Gets or sets the font that is used to display tooltips. + + + + + Gets or sets the selected tab. + + + + + Gets the reference to the colors that are used when tab is selected. + + + + + Gets the reference to the colors that are used when mouse is over the tab. + + + + + Gets the collection of all tabs. + + + + + Gets or sets the button alignment. + + + + + Gets or sets whether tabs are visible. Default value is true. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Delegate for tab change events. + + + + + Represents the event arguments tab changing events. + + + + + Cancels the operation. + + + + + Specifies the event source. + + + + + Specifies newly selected tab. + + + + + Specifies currently selected tab. + + + + + Default Constructor. + + + + + Represents overlay class to support bubble effects on BubbleBar control. + + + + + Called just before window is shown. + + + + + Called after window is closed. + + + + + Summary description for BubbleBarGroup. + + + + + Represents interface for simple text only tab. + + + + + Returns the font used for tab text. + + Reference to font object. + + + + Gets or sets the text displayed on the tab. + + + + + Gets or sets whether tab is visible. + + + + + Gets the display bounds of the tab. + + + + + Gets or sets the background color of the tab when inactive. + + + + + Gets or sets the target gradient background color of the tab when inactive. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the light border color when tab is inactive. + + + + + Gets or sets the dark border color when tab is inactive. + + + + + Gets or sets the border color when tab is inactive. + + + + + Gets or sets the text color when tab is inactive. + + + + + Gets or sets name of the tab item that can be used to identify item from the code. + + + + + Gets or sets the predefined tab color. + + + + + Returns true if tab is selected tab. + + + + + Returns true if mouse is over the tab. + + + + + Gets the tab alignment. + + + + + Default constructor. + + + + + Default constructor. + + Container object. + + + + Returns the font for the tab text. + + Reference to the font object. + + + + Sets the parent of the tab. + + Reference to the tab parent object or null. + + + + Called after new button is added to the Buttons collection. + + Reference to the added button. + + + + Called after specified button has been removed. + + Button that was removed. + + + + Called after all buttons have been removed. + + + + + Gets the collection of the buttons associated with the tab. + + + + + Gets or sets the text displayed on the tab. + + + + + Gets or sets whether tab is visible. + + + + + Gets the display bounds of the tab. + + + + + Gets or sets the object that contains data about the tab. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the object that contains data about the tab. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the background color of the tab when inactive. + + + + + Gets or sets the target gradient background color of the tab when inactive. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the light border color when tab is inactive. + + + + + Gets or sets the dark border color when tab is inactive. + + + + + Gets or sets the border color when tab is inactive. + + + + + Gets or sets the text color when tab is inactive. + + + + + Gets or sets name of the tab item that can be used to identify item from the code. + + + + + Gets or sets the predefined tab color. + + + + + Returns true if tab is selected tab. + + + + + Returns true if mouse is over the tab. + + + + + Gets the tab alignment. + + + + + Returns reference to parent object or null if tab does not have parent. + + + + + Gets or sets whether tab has design-time focus. + + + + + Gets or sets the bounds of the content block. + + + + + Gets or sets item margin only used by certain items in certain containers. Provided only for internal DotNetBar use. + + + + + Represents collection for BubbleBarTab objects. + + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the IBlock array. + + Array to copy to. + + + + Copies contained items to the ISimpleTab array. + + Array to copy to. + + + + Returns next visible tab from the reference tab. + + Reference tab. + Next visible tab or null if next visible tab cannot be determined. + + + + Returns previous visible tab from the reference tab. + + Reference tab. + Previous visible tab or null if Previous visible tab cannot be determined. + + + + Returns reference to the object in collection based on it's index. + + + + + Represents a button used on BubbleBar control. + + + + + Creates new instance of button object. + + + + + Sets the display rectangle of the button. + + New display rectangle of the button. + + + + Sets the magnified display rectangle of the button. + + New magnified display rectangle. + + + + Sets whether mouse is over the button. + + True if mouse is over the button otherwise false. + + + + Raises the MouseEnter event. + + + + + Raises the MouseLeave event. + + + + + Sets whether left mouse button is pressed over this button. + + True if left mouse button is pressed otherwise false. + + + + Sets the parent collection button belongs to. + + Parent collection of the item. + + + + Returns the reference to the BubbleBar that contains this button. + + + + + + Invokes button's Click event. + + Indicates source of the event. + + + + Raises click event. + + Default event arguments. + + + + Occurs when user clicks the button. + + + + + Occurs when mouse enters the button. + + + + + Occurs when mouse leaves the button. + + + + + Gets or sets the shortcut key to expand/collapse splitter. + + + + + Gets or sets the tooltip for the button. + + + + + Gets or sets the default image used on the button. Note that for improved appearance of the buttons when enlarged + you should set the ImageIndexLarge to the large version of the image specified here. The image size should be the same size + that is specified by the image size properties on BubbleBar object. + + + + + Gets reference to the internal cached image loaded from the ImageIndex. + + + + + Gets reference to the internal cached image loaded from the ImageIndex. + + + + + Specifies the Button image. + + + + + Specifies enlarged the Button image. + + + + + Gets or sets the image index of the enlarged image for the button. Note that if large image is not specified the + default image will be enlarged which might not result in perfect image appearance. + + + + + Property for Property Editor support for ImageIndex selection. + + + + + Gets or sets a value indicating whether button is enabled. + + + + + Gets the display rectangle occupied by the button. + + + + + Gets or sets the magnified display rectangle of the button. + + + + + Gets whether mouse is over the button. + + + + + Gets whether left mouse button is pressed on the button. + + + + + Returns name of the button that can be used to identify it from the code. + + + + + Gets or sets a value indicating whether button is visible. + + + + + Gets or sets the object that contains data about the tab. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Gets or sets the object that contains data about the tab. Any Object derived type can be assigned to this property. If this property is being set through the Windows Forms designer, only text can be assigned. + + + + + Returns the reference to parent tab. + + + + + Gets or sets whether button has design-time focus. + + + + + Gets or sets the mouse cursor that is displayed when mouse is over the button. + + + + + Gets or sets the bounds of the content block. + + + + + Gets or sets item margin only used by certain items in certain containers. Provided only for internal DotNetBar use. + + + + + Represents event arguments for Click event. + + + + + Gets the action that caused the event, event source. + + + + + Represents typed collection of BubbleButton objects. + + + + + Copies contained items to the IBlock array. + + Array to copy to. + + + + Creates new instance of the collection. + + Parent of the collection. + + + + Adds new item to the collection but it does not raise internal events. + + New item to add. + Index of newly added item. + + + + Adds new item to the collection at specified location but it does not raise internal events. + + New item to add. + Position to add item to. + + + + Clears the collection but it does not raise internal events. + + + + + Performs additional custom processes before setting a value in the CollectionBase instance. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at index. + + + + Performs additional custom processes after setting a value in the CollectionBase instance. + + The zero-based index at which oldValue can be found. + The value to replace with newValue. + The new value of the element at index. + + + + Performs additional custom processes before inserting a new element into the CollectionBase instance. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional custom processes after inserting a new element into the CollectionBase instance. + + The zero-based index at which to insert value. + The new value of the element at index. + + + + Performs additional custom processes when removing an element from the CollectionBase instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Performs additional custom processes after removing an element from the CollectionBase instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Removes an item without raising internal events. + + Item to remove. + + + + Performs additional custom processes when clearing the contents of the CollectionBase instance. + + + + + Copies the collection to the ArrayList object. + + Target ArrayList. + + + + Adds new item to the collection. + + New item to add. + Index of newly added item. + + + + Adds new item to the collection at specified location. + + New item to add. + Position to insert item at. Position of -1 will append the item to the end of the collection. + Index of the newly added item. + + + + Inserts new item at the specified position. + + Position to insert item at. + Item to insert. + + + + Returns index of an item. + + Item to return index for. + Item at the specified position. + + + + Returns index of an item with given the item's name. + + Name of the item. + Index of the Item with the specified name or -1 if item is not found. + + + + Returns true if given item is contained by this collection. + + Item to test. + True if item is part of this collection otherwise false. + + + + Returns true if item with given name is part of this collection. + + Item name. + True if item is part of this collection otherwise false. + + + + Removes an item from the collection. + + Item to remove. + + + + Removes an item from collection at specified index. + + Index of the item to remove. + + + + Removes item from the collection with specified name. + + Name of the item to remove. + + + + Adds array of the items to the collection. + + Array of items to add. + + + + Copy the collection to the array. + + Array to copy collection to. + The zero-based relative index in array at which copying begins. + + + + Gets the parent of the collection. + + + + + Accesses items inside of the collection based on the index. + + + + + Accesses items inside of the collection based on the name. + + + + + Represents class for displaying BubbleButton objects on canvas. + + + + + Paints button on given canvas. + + Painting information. + + + + Represents class that holds information for BubbleButton painting. + + + + + Graphics object. + + + + + Button to paint. + + + + + Reference to BubbleBar control. + + + + + Gets or sets whether magnified version of the button is painted. + + + + + Gets or sets the button alignment inside of the bar. + + + + + Represents class for default layout of the BubbleButton objects. + + + + + Represents block layout manager responsible for sizing the content blocks. + + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + Content size available for the block in the given line. + + + + Performs layout finalization + + + + + + + + + Gets or sets the graphics object used by layout manager. + + + + + Creates new instance of the class. + + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + + + + Represents class that provides mangification for the BubbleMar control + + + + + Represents the serial content layout manager that arranges content blocks in series next to each other. + + + + + Represents interface for block layout. + + + + + Performs layout of the content block. + + Container bounds to layout content blocks in. + Content blocks to layout. + Block layout manager that resizes the content blocks. + The bounds of the content blocks within the container bounds. + + + + Creates new instance of the class. + + + + + Performs layout of the content block. + + Container bounds to layout content blocks in. + Content blocks to layout. + Block layout manager that resizes the content blocks. + The bounds of the content blocks within the container bounds. + + + + Occurs when X, Y position of next block is calcualted. + + + + + Occurs before new block is layed out. + + + + + Gets or sets the spacing in pixels between content blocks. Default value is 0. + + + + + Gets or sets whether content blocks are forced to fit the container bounds if they + occupy more space than it is available by container. Default value is false. + + + + + Gets or sets whether content blocks are resized to fit the container bound if they + occupy less space than it is available by container. Default value is false. + + + + + Gets or sets whether content blocks are resized (Width) to fit container bounds if they + occupy less space than the actual container width. Applies to the Vertical orientation only. Default value is false. + + + + + Gets or sets whether content blocks are resized (Height) to fit container bounds if they + occupy less space than the actual container height. Applies to the Horizontal orientation only. Default value is false. + + + + + Gets or sets the content orientation. Default value is Horizontal. + + + + + Gets or sets the content vertical alignment. Default value is Middle. + + + + + Gets or sets the block line vertical alignment. Default value is Middle. + + + + + Gets or sets the content horizontal alignment. Default value is Left. + + + + + Gets or sets whether all content blocks are resized so they have same height which is height of the tallest content block. Default value is false. + + + + + Gets or sets whether oversized blocks are resized based on the percentage reduction instead of based on equal pixel distribution. Default value is false. + + + + + Gets or sets whether content is wrapped into new line if it exceeds the width of the container. + + + + + Gets or sets whether layout is right-to-left. + + + + + Performs layout of the content block. + + Container bounds to layout content blocks in. + Content blocks to layout. + Block layout manager that resizes the content blocks. + The bounds of the content blocks within the container bounds. + + + + Gets or sets the bubble size for the mouse over item. + + + + + Gets or sets magnification factor for the item that is at the position MouseOverIndex-1 + + + + + Gets or sets magnification factor for the item that is at the position MouseOverIndex-2 + + + + + Gets or sets magnification factor for the item that is at the position MouseOverIndex+1 + + + + + Gets or sets magnification factor for the item that is at the position MouseOverIndex+2 + + + + + Gets or sets the index of the item mouse is over. + + + + + Gets or sets new X coordinate of the mouse over item when in horizontal layout or Y + coordinate when in vertical layout. + + + + + Summary description for ButtonItem. + + + + + PopupItem Class can pop-up it's subitems on either the popup Bar + or menu. + + + + + Adds neccessary functions to base item so it supports images properly. + If your item implements images you should derive from this class instead of BaseItem + + + + + Create new instance of ImageItem. + + + + + Create new instance of ImageItem and assigns the item name. + + Item name. + + + + Create new instance of ImageItem and assigns the item name and text. + + Item name. + Item text. + + + + Must be called by any sub item that implements the image when image has changed + + + + + Called after image on an item has changed. + + + + + Refreshes internal image size structure. + + + + + Occurs after an item has been removed. + + Item being removed. + + + + Refreshes internal image size structure. + + + + + When parent items does recalc size for its sub-items it should query + image size and store biggest image size into this property. + + + + + Provides design-time support for DotNetBar items. + + + + + Creates new instance of PopupItem. + + + + + Creates new instance of PopupItem and assigns the name to it. + + Item name + + + + Creates new instance of PopupItem and assigns the name and text to it. + + Item name. + Item text. + + + + Copies the PopupItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Occurs when the mouse pointer is moved over the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is released. This is used by internal implementation only. + + + + + Displays the sub-items on popup menu. + + Popup location. + + + + Invokes PopupOpen event. + + + + + + Displays the sub-items on popup menu. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Displays the sub-items on popup menu. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + Indicates whether screen position of the menu is verified so the menu always appears on the screen. + + + + Raises PopupShowing event. + + Event arguments. + + + + Displays the sub-items on popup toolbar. + + Popup location. + + + + Displays the sub-items on popup toolbar. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Displays popup container. + + Popup location. + + + + Creates the popup container control which is a parent/holder control for the controls you want to display on the popup. + This method can be used if you do not wish to handle the PopupContainerLoad to add controls to the popup container. + After calling this method you can access PopupContainerControl property to add your controls to be displayed on the popup. + + Indicates whether PopupContainerLoad events are fired. + + + + Displays popup container. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Displays the sub-items on popup specified by PopupType. + + Popup location. + + + + Displays the sub-items on popup specified by PopupType. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Raises PopupClose event. + + Event arguments. + + + + Queries whether popup can be closed. + + Source of closing request. + true if popup can be closed otherwise false. + + + + Closes the currently open popup. + + + + + Raises PopupFinalized event. + + Event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Sets the SourceControl for popup menu or toolbar. + + Control that popup menu or toolbar was invoked for. + + + + Occurs when popup container is loading. Use this event to assign control to the popup container. If you want to use same control + that you added to the popup container after popup is closed you must handle the PopupContainerUnload event and remove the control + from the popup container so it is not disposed with the container. + + + + + Occurs when popup container is unloading. Use this event to save any state associated with the control that was contained by the container or + to remove the control from the container so it is not disposed with container. + + + + + Occurs when popup item is about to open. + + + + + Occurs while popup item is closing. + + + + + Occurs while popup item is closing. + + + + + Occurs after popup item has been closed. + + + + + Occurs just before popup window is shown. + + + + + Gets the size of the popup before it is displayed. + + + + + Gets or sets whether popup on-screen position is verified and popup location adjusted so it does not cross boundaries of the screen. + + + + + Indicates whether sub-items are shown on popup Bar or popup menu. + + + + + Indicates the font that will be used on the popup window. + + + + + Indicates side bar for pop-up window. + + + + + Gets or sets the location of popup in relation to it's parent. + + + + + Gets or sets the popup offset. + + + + + Gets or sets the popup location. + + + + + Indicates when menu items are displayed when MenuVisiblity is set to VisibleIfRecentlyUsed and RecentlyUsed is true. + + + + + Indicates Animation type for Popups. + + + + + Specifies the inital width for the Bar that hosts pop-up items. Applies to PopupType.Toolbar only. + + + + + Gets the control that is displaying the context menu. + + + + + Gets the reference to the internal host PopupContainerControl control. + + + + + Provides support for personalized menu items. + + + + + Creates new instance of ButtonItem. + + + + + Creates new instance of ButtonItem and assigns the name to it. + + Item name. + + + + Creates new instance of ButtonItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Overloaded. Deserializes the Item from the XmlElement. + + Source XmlElement. + + + + Called when NotificationMarkText property has changed. + + Old property value + New property value + + + + Called when NotificationMarkPosition property has changed. + + Old property value + New property value + + + + Called when NotificationMarkSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when NotificationMarkOffset property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Called when button image has changed. + + + + + Called when container of the item has changed. + + Previous item container. + + + + Overriden. Draws the item. + + Item paint arguments. + + + + Resets ImageFixedSize property to its default value. + + + + + Gets whether ImageFixedSize property should be serialized. + + + + + Gets whether FixedSize property should be serialized. + + + + + Resets the property to default value. + + + + + Overridden. Recalculates the size of the item. + + + + + Overloaded. Called when size of the item is changed externally. + + + + + Starts the button pulse effect which alternates slowly between the mouse over and the default state. The pulse effect + continues indefinitely until it is stopped by call to StopPulse method. + + + + + Starts the button pulse effect which alternates slowly between the mouse over and the default state. Pulse effect + will alternate between the pulse state for the number of times specified by the pulseBeatCount parameter. + + Specifies the number of times button alternates between pulse states. 0 indicates indefinite pulse + + + + Stops the button Pulse effect. + + + + + Indicates whether the item enabled property has changed. + + + + + Provides internal implementation for ButtonItem mouse down events. + + Mouse event arguments. + + + + Occurs when the item is double clicked. This is used by internal implementation only. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Called after Checked property has changed. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Sets Checked property without firing any events or performing any built-in logic. + + + + + Fires CheckedChanged event. + + + + + Fires OptionGroupChanging event. + + + + + Occurs just before Click event is fired. + + + + + Returns the shortcut string that is displayed on tooltip. + + + + + + Gets or sets the current font for the button. + + + + + Occurs when Checked property has changed. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Indicates whether images assigned to the button are disposed when button is disposed. Default value is false. + + + + + Specifies maximum of 2 character text displayed inside of the notification mark on top of the button. + + + + + Indicates the position of the notification marker within the bounds of the button. + + + + + Specifies diameter of notification mark. When set to 0 system default value is used. + + + + + Gets or sets background color of the notification mark. + + + + + Specifies the offset for the notification mark relative to its position. + + + + + Gets/Sets the image position inside the button. + + + + + Gets or sets the custom color name. Name specified here must be represented by the corresponding object with the same name that is part + of the Office2007ColorTable.RibbonTabItemColors collection. See documentation for Office2007ColorTable.RibbonTabItemColors for more information. + If color table with specified name cannot be found default color will be used. Valid settings for this property override any + setting to the Color property. + Applies to items with Office 2007 style only. + + + + + Gets or sets the predefined color of the button. Color specified applies to buttons with Office 2007 style only. It does not have + any effect on other styles. Default value is eButtonColor.Default + + + + + Gets/Sets the button style which controls the appearance of the button elements. Changing the property can display image only, text only or image and text on the button at all times. + + + + + Indicates whether the item will auto-expand when clicked. + When item is on top level bar and not on menu and contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this property to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or sets the color of the Symbol. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Specifies the Button icon. Icons support multiple image sizes and alpha blending. + + + + + Specifies the Button image which is used when button background is black or very dark. Image is used when button text is white. This is provided for Metro style applications. + + + + + Specifies the Button image. + + + + + Specifies the small Button image used by Ribbon control when small image variant is needed because of the automatic button resizing or + because the button is on the Quick Access Toolbar. + + + + + Gets or sets the image size that is used by the button when multiple ImageList controls are used as source for button image. + By default ImageList assigned to Images property of parent control is used. Using this property you can selection ImagesMedium or + ImagesLarge ImageList to be used as source for image for this button. + + + + + Gets or sets whether button uses the ImageSmall as source of the image displayed on the button if ImageSmall is set to valid image. Default value is false. + + + + + Specifies the index of the image for the button if ImageList is used. + + + + + Specifies the image for the button when mouse is over the item. + + + + + Specifies the index of the image for the button when mouse is over the item when ImageList is used. + + + + + Specifies the image for the button when mouse left button is pressed. + + + + + Specifies the index of the image for the button when mouse left button is pressed and ImageList is used. + + + + + Specifies the image for the button when items Enabled property is set to false. + + + + + Specifies the index of the image for the button when items Enabled property is set to false and ImageList is used. + + + + + Sets fixed size of the image. Image will be scaled and painted it size specified. + + + + + Gets or sets the fixed size of the button. Both width and height must be set to value greater than 0 in order for button to use fixed size. + Setting both width and height to 0 (default value) indicates that button will be sized based on content. + + + + + Gets whether fade effect is enabled. + + + + + Gets whether Pulse function is enabled. + + + + + Gets whether the button is currently pulsing, alternating slowly between the mouse over and default state. + + + + + Gets or sets whether pulse effect started with StartPulse method stops automatically when mouse moves over the button. Default value is true. + + + + + Gets or sets the pulse speed. The value must be greater than 0 and less than 128. Higher values indicate faster pulse. Default value is 12. + + + + + Gets or sets whether button auto-expands on mouse hover when button is used as menu-item and displayed on menu. Default value is true. + + + + + Indicates whether button should popup when clicked automatically. + + + + + Gets or sets whether Checked property is automatically inverted, button checked/unchecked, when button is clicked. Default value is false. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or set the alternative shortcut text. + + + + + Returns shortcut text if any that needs to be displayed. + + + + + Gets or sets the image bounds. + + + + + Gets or sets sub items bounds. + + + + + Gets or sets text bounds. + + + + + Gets or set the Group item belongs to. The groups allows a user to choose from mutually exclusive options within the group. The choice is reflected by Checked property. + + + + + Gets or sets the text color of the button. + + + + + Gets or sets the text color of the button when mouse is over the item. + + + + + Gets or sets whether the font used to draw the item text is underlined when mouse is over the item. + + + + + Gets or sets whether the font used to draw the item text is bold when mouse is over the item. + + + + + Gets or sets whether the font used to draw the item text is bold. + + + + + Gets or sets whether the font used to draw the item text is italic. + + + + + Gets or sets whether the font used to draw the item text is underlined. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Returns the collection of sub items. + + + + + Gets or sets whether button appears as split button. Split button appearance divides button into two parts. Image which raises the click event + when clicked and text and expand sign which shows button sub items on popup menu when clicked. Button must have both text and image visible (ButtonStyle property) in order to appear as a full split button. + Use AutoExpandOnClick=true if you want to make complete surface of the button display popup when clicked. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the amount of padding added horizontally to the button images when not on menus. Default value is 10 pixels. + + + + + Gets or sets the amount of padding added vertically to the button images when not on menus. Default value is 6 pixels. + + + + + Gets or sets an shape descriptor for the button which describes the shape of the button. Default value is null + which indicates that system default shape is used. + + + + + Indicates item's visibility when on pop-up menu. + + + + + Indicates whether item was recently used. + + + + + Indicates whether mouse is over the item. + + + + + Indicates whether mouse is over the expand part of the button. + + + + + Indicates whether mouse is pressed. + + + + + Indicates the way item is painting the picture when mouse is over it. Setting the value to Color will render the image in gray-scale when mouse is not over the item. + + + + + Gets or sets whether the button text is automatically wrapped over multiple lines when button is used on RibbonBar control. Default value is true. + + + + + Gets or sets whether image animation is enabled + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Represents accessible interface for ButtonItem object. + + + + + Represents accessible interface for ButtonItem object. + + + + + Delegate for OptionGroupChanging event. + + + + + Represents event arguments for OptionGroupChanging event. + + + + + Set to true to cancel the checking on NewChecked button. + + + + + Button that will become checked if operation is not canceled. + + + + + Button that is currently checked and which will be unchecked if operation is not canceled. + + + + + Default constructor. + + + + + Stores all information for side bar images that are used by Bar or Popup menu. + + + + + Gets or sets the side bar image. + + + + + Gets or sets the side bar back color. + + + + + Gets or sets the gradient staring color. + + + + + Gets or sets the gradient ending color. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the gradient staring color. + + + + + Gets or sets whether image is stretched so it fills the side bar or not if image is smaller than current side bar size. + + + + + Summary description for ButtonItemLayout. + + + + + Arranges the button inner parts when button size has changed externally. + + Button to arrange inner parts for. + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Creates new accessibility instance. + + Reference to AccessibleObject. + + + + Starts the button pulse effect which alternates slowly between the mouse over and the default state. The pulse effect + continues indefinitely until it is stopped by call to StopPulse method. + + + + + Starts the button pulse effect which alternates slowly between the mouse over and the default state. Pulse effect + will alternate between the pulse state for the number of times specified by the pulseBeatCount parameter. + + Specifies the number of times button alternates between pulse states. 0 indicates indefinite pulse + + + + Stops the button Pulse effect. + + + + + Gets whether ImageFixedSize property should be serialized. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Notifies a control that it is the default button so that its appearance and behavior is adjusted accordingly. + + true if the control should behave as a default button; otherwise false. + + + + Generates a Click event for the control. + + + + + Displays the sub-items on popup specified by PopupType. + + Popup location. + + + + Displays the sub-items on popup specified by PopupType. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Called when Command property value changes. + + + + + Occurs when Checked property has changed. + + + + + Gets or sets whether text-markup support is enabled for controls Text property. Default value is true. + Set this property to false to display HTML or other markup in the control instead of it being parsed as text-markup. + + + + + Gets whether the button is currently pulsing, alternating slowly between the mouse over and default state. + + + + + Gets or sets whether pulse effect started with StartPulse method stops automatically when mouse moves over the button. Default value is true. + + + + + Gets or sets the pulse speed. The value must be greater than 0 and less than 128. Higher values indicate faster pulse. Default value is 12. + + + + + Sets fixed size of the image. Image will be scaled and painted it size specified. + + + + + Gets or sets the text alignment. Applies only when button text is not composed using text markup. Default value is center. + + + + + Gets or sets whether during painting OnPaintBackground on base control is called when BackColor=Transparent. + + + + + Gets or sets whether button is focused when pressed using left mouse button. Default value is true. + + + + + Gets whether command is executed when button is clicked. + + + + + Gets or sets the color of the Symbol. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Specifies the Button image which is used when button background is black or very dark. Image is used when button text is white. This is provided for Metro style applications. + + + + + Specifies the Button image. + + + + + Specifies the image for the button when mouse is over the item. + + + + + Specifies the image for the button when items Enabled property is set to false. + + + + + Specifies the image for the button when mouse left button is pressed. + + + + + Gets or sets the location of popup in relation to it's parent. + + + + + Returns the collection of sub items. + + + + + Gets or sets whether button appears as split button. Split button appearance divides button into two parts. Image which raises the click event + when clicked and text and expand sign which shows button sub items on popup menu when clicked. Button must have both text and image visible (ButtonStyle property) in order to appear as a full split button. + + + + + Gets or sets whether button displays the expand part that indicates that button has popup. + + + + + Gets/Sets the image position inside the button. + + + + + Gets or sets whether mouse over fade effect is enabled. Default value is true. + + + + + Indicates the way button is rendering the mouse over state. Setting the value to Color will render the image in gray-scale when mouse is not over the item. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Gets or sets the text associated with this button. + + + + + Gets/Sets informational text (tooltip) for the button. + + + + + Gets or sets whether mnemonic character assigned to button is processed only if Alt key is pressed. Default value is false which indicate that Alt key is not required. + + + + + + Indicates whether the button will auto-expand when clicked. + When button contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this property to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or sets whether Checked property is automatically inverted, button checked/unchecked, when button is clicked. Default value is false. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets an shape descriptor for the button which describes the shape of the button. Default value is null + which indicates that system default shape is used. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the custom color name. Name specified here must be represented by the corresponding object with the same name that is part + of the Office2007ColorTable.ButtonItemColors collection. See documentation for Office2007ColorTable.ButtonItemColors for more information. + If color table with specified name cannot be found default color will be used. Valid settings for this property override any + setting to the Color property. + Applies to items with Office 2007 style only. + + + + + Gets or sets the predefined color of the button. Color specified applies to buttons with Office 2007 style only. It does not have + any effect on other styles. Default value is eButtonColor.Default + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets the mode by which the Button automatically resizes itself. + + + + + Gets or sets the amount of spacing between button image if specified and text. + + + + + Gets or sets the text color. + + + + + Gets or sets the value returned to the parent form when the button is clicked. + + + + + Gets or sets a value indicating whether the button is expanded (displays drop-down) or not. + + + + + Gets or sets the collection of shortcut keys associated with the button. When shortcut key is pressed button Click event is raised. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents class for Accessibility support. + + + + + Creates new instance of the object and initializes it with owner control. + + Reference to owner control. + + + + Returns number of child objects. + + Total number of child objects. + + + + Returns reference to child object given the index. + + 0 based index of child object. + Reference to child object. + + + + Gets accessible role. + + + + + Gets parent accessibility object. + + + + + Returns bounds of the control. + + + + + Returns current accessible state. + + + + + Gets or sets the value of an accessible object. + + + + + Summary description for ThemedButtonItemPainter. + + + + + Represents the Check-box item. Use a CheckBox to give the user an option, such as true/false or yes/no. + + + + + Creates new instance of CheckBoxItem. + + + + + Creates new instance of CheckBoxItem and assigns the name to it. + + Item name. + + + + Creates new instance of CheckBoxItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the CheckBoxItem specific properties to new instance of the item. + + New CheckBoxItem instance. + + + + Copies the CheckBoxItem specific properties to new instance of the item. + + New CheckBoxItem instance. + + + + Raises the click event and provide the information about the source of the event. + + + + + + Sets the Checked property of the item, raises appropriate events and provides the information about the source of the change. + + New value for Checked property + Source of the change. + + + + Called when Command property value changes. + + + + + Sets the Checked property of the item, raises appropriate events and provides the information about the source of the change. + + New value for Checked property + Source of the change. + + + + Raises CheckState changed event. + + Event arguments. + + + + Raises CheckedBindableChanged changed event. + + Event arguments. + + + + Called after Checked property has changed. + + + + + Raises the CheckedChanging event. + + + + + Raises the CheckedChanged event. + + + + + Occurs before Checked property is changed and allows you to cancel the change. + + + + + Occurs after Checked property is changed. Action cannot be cancelled. + + + + + Occurs when CheckState property has changed. + + + + + Occurs when CheckedBindable property has changed. + + + + + Gets or set whether the Checked values and the item appearance are automatically changed when the Check-Box is clicked. Default value is true. + + + + + Gets or sets the size of the check or radio sign. Default value is 13x13. Minimum value is 6x6. + + + + + Gets or sets the text associated with this item. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets whether text assigned to the check box is visible. Default value is true. + + + + + Gets or sets the text color. Default value is Color.Empty which indicates that default color is used. + + + + + Gets or sets the appearance style of the item. Default value is CheckBox. Item can also assume the style of radio-button. + + + + + Gets or sets the check box position relative to the text. Default value is Left. + + + + + Gets whether mouse is over the item. + + + + + Gets whether left mouse button is pressed on the item. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets a value indicating whether the CheckBox will allow three check states rather than two. If the ThreeState property is set to true + CheckState property should be used instead of Checked property to set the extended state of the control. + + + + + Specifies the state of a control, such as a check box, that can be checked, unchecked, or set to an indeterminate state. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is checked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is unchecked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is in indeterminate state. + + + + + Delegate for OptionGroupChanging event. + + + + + Represents event arguments for OptionGroupChanging event. + + + + + Set to true to cancel the checking on NewChecked button. + + + + + Check-box that will become checked if operation is not cancelled. + + + + + Check-box that is currently checked and which will be unchecked if operation is not cancelled. This property will have only valid values for eCheckBoxStyle.RadioButton style CheckBoxItems. + + + + + Indicates the action that has caused the event. + + + + + Default constructor. + + + + + Represents painter for CheckBoxItem. + + + + + Paints CheckBoxItem. + + Provides arguments for the operation. + + + + Gets or sets color table used by renderer. + + + + + Represents circular progress indicator. + + + + + Creates new instance of circular progress indicator. + + + + + Creates new instance of circular progress indicator and assigns the name to it. + + Item name. + + + + Creates new instance of circular progress indicator and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the ProgressBarItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Copies the ProgressBarItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Called when property on CircularProgressBar changes. + + Property Change Arguments + + + + Starts the progress bar loop for endless type progress bar. Progress bar will continue to run until Stop() method is called. + + + + + Stops the progress bar loop for endless type progress bar. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when ProgressTextFormat property has changed. + + Old property value + New property value + + + + Gets or sets the circular progress bar type. + + + + + Gets or sets the maximum value of the progress bar. + + + + + Gets or sets the minimum value of the progress bar. + + + + + Gets or sets the color of the progress percentage text. + + + + + Gets or sets whether text that displays the progress bar completion percentage text is visible. Default value is false. + + + + + Gets or sets the text displayed on top of the circular progress bar. + + + + + Gets or sets the current value of the progress bar. + + + + + Occurs when Value property has changed. + + + + + Gets or sets whether endless type progress bar is running. + + + + + Gets or sets the color of the color of progress indicator. + + + + + Gets or sets circular progress indicator diameter in pixels. + + + + + Gets or sets the text position in relation to the circular progress indicator. + + + + + Gets or sets whether text/label displayed next to the item is visible. + + + + + Gets or sets the suggested text-width. If you want to make sure that text you set wraps over multiple lines you can set suggested text-width so word break is performed. + + + + + Gets or sets text padding. + + + + + Gets or sets the color of the text label. + + + + + Gets or sets the color of the pie progress bar dark border. + + + + + Gets or sets the color of the pie progress bar light border. + + + + + Gets or sets the color of the spoke progress bar dark border. + + + + + Gets or sets the color of the spoke progress bar light border. + + + + + Gets or sets format string for progress value. + + + + + Gets or sets the animation speed for endless running progress. Lower number means faster running. + + + + + Defines available circular progress bar types. + + + + + Line spokes progress bar. + + + + + Dot type/FireFox progress bar. + + + + + Donut type progress bar. + + + + + Spoke type progress bar. + + + + + Pie type progress bar. + + + + + Summary description for ColorFunctions. + + + + + Provides popup color picker. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the reference to the IWindowsFormsEditorService interface used for Windows Forms design time support. + + + + + Gets or sets the ColorScheme object for Scheme colors. + + + + + Gets or sets currently selected color. + + + + + Gets the selected color color scheme name if color scheme color is selected otherwise it returns an empty string. + + + + + Returns true if color selection was cancelled. + + + + + Represents the color comb control that allows color choice from pre-defined color comb palette. + + + + + Raises SelectedColorChanged event. + + Provides event arguments. + + + + Required designer variable. + + + + + Creates new instance of the control. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Raises MouseOverColorChanged event. + + Provides event arguments. + + + + Occurs when SelectedColor has changed. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Gets the color mouse is currently over. If mouse is not over any color in comb Color.Empty is returned. + + + + + Gets or sets the selected color. When setting the color note that color must be already present in the color comb otherwise the selected color will be reset to Color.Empty. + + + + + Occurs when MouseOverColor property has changed. + + + + + Represents the color selection control. + + + + + Raises SelectedColorChanged event. + + Provides event arguments. + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when SelectedColor has changed. + + + + + Gets or sets the selected color. + + + + + Represents color item used for color picker control. Color item can only be used as part of the color picker DotNetBar feature. + + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + + Gets or sets the color represented by this item. Default value is Color.Black. + + + + + Gets or sets the size of the item when displayed. Default value is 13x13 pixels. + + + + + Gets or sets border drawn around the item. Default value is eColorItemBorder.All which indicates that border is drawn + on all four sides. + + + + + Gets whether mouse is over the item. + + + + + Represents the color picker drop down button. + + + + + Creates new instance of ButtonItem. + + + + + Creates new instance of ButtonItem and assigns the name to it. + + Item name. + + + + Creates new instance of ButtonItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Raises the ColorPreview event. + + Provides the data for the event. + + + + Invokes the ColorPreview event. + + Provides data for the event. + + + + Indicates whether SubItems collection is serialized. ColorPickerDropDown does not serialize the sub items. + + + + + Gets whether property should be serialized. + + + + + Resets the property to its default value. + + + + + Displays the Colors dialog that allows user to choose the color or create a custom color. If new color is chosen the + SelectedColorChanged event is raised. + + + + + Raises the BeforeColorDialog event. + + + + + + Update the selected color image if the SelectedColorImageRectangle has been set and button is using Image property to display the image. + + + + + Gets collection of ColorItem[] arrays that represent themed colors. Each ColorItem[] array is used to represent single line of theme colors. + + Collection of ColorItem[] arrays. + + + + Returns an array that represents the standard colors. Usually instances of ColorItem are included. + + ArrayList containing objects that describe standard colors. + + + + Invokes SelectedColorChanged event. + + + + + Occurs when color is chosen from drop-down color picker or from Custom Colors dialog box. Selected color can be accessed through SelectedColor property. + + + + + Occurs when mouse is moving over the colors presented by the color picker. You can use it to preview the color before it is selected. + + + + + Occurs before color picker dialog is shown. Data property of the event arguments will hold the reference to the Form about to be shown. + + + + + Gets or sets the last selected color from either the drop-down or Custom Color dialog box. Default value is + Color.Empty. You can use SelectedColorChanged event to be notified when this property changes. + + + + + Gets or sets whether theme colors are displayed on drop-down. Default value is true. + + + + + Gets or sets whether standard colors are displayed on drop-down. Default value is true. + + + + + Gets or sets more colors menu item is visible which allows user to open Custom Colors dialog box. Default value is true. + + + + + Gets or sets the rectangle in Image coordinates where selected color will be painted. Setting this property will + have an effect only if Image property is used to set the image. Default value is an empty rectangle which indicates + that selected color will not be painted on the image. + + + + + Gets whether internal representation of color items on popup has been initialized. + + + + + Gets or sets the Owner Window that will be used as owner for the colors modal dialog when displayed. + + + + + Gets or sets the array of ColorItem objects that will be used as theme colors instead of built-in color palette. + See: http://www.devcomponents.com/kb2/?p=79 for instructions. + + + + + Gets or sets the array of ColorItem objects that will be used as standard colors instead of built-in color palette. + See: http://www.devcomponents.com/kb2/?p=79 for instructions. + + + + + Indicates whether button should popup when clicked automatically. + + + + + Represents custom color blend selection control. + + + + + Raises SelectedColorChanged event. + + Provides event arguments. + + + + Occurs when SelectedColor has changed. + + + + + Gets or sets the color selected by the control. Color that is assigned must be visible on the face of the control otherwise the SelectedColor will be set to Color.Empty + + + + + Represents the form in Office style with custom borders and caption. + + + + + Represents the form class that should be used instead of standard Form when form caption is provided by Ribbon control + and custom form look and feel in style of Office 2007 is required. This form does not have standard form caption. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Called when EnableCustomStyle property has changed. + + + + + Gets whether custom form styling is enabled. + + true if custom styling is enabled otherwise false. + + + + Gets the array of LinearGradientColorTable objects that describe the border colors. The colors with index 0 is used as the outer most + border. + + Array of LinearGradientColorTable + + + + Returns form custom region. + + New instance of the custom region. + + + + Gets the form path for the given input bounds. + + Represent the form bounds. + + + + + Paints the non-client area of the form. + + + + + Called when WM_NCACTIVATE message is received. + + Reference to message data. + Return true to call base form implementation otherwise return false. + + + + Invalidates non client area of the form. + + Indicates whether complete form is invalidated. + + + + Redraws the non-client area of the form. + + + + + Called when BackgroundImageUnderCaption property has changed. + + Old property value + New property value + + + + Called when RenderFormIcon property has changed. + + Old property value + New property value + + + + Called when RenderFormText property has changed. + + Old property value + New property value + + + + Gets or sets whether Windows Vista Glass support is enabled when form is running on Windows Vista with Glass support. + Default value is true. + + + + + Gets or sets the RibbonControl that is hosted by this form. This property is for internal use only. + + + + + Gets whether Vista glass effect extension over the ribbon control caption is enabled. + + + + + Gets or sets the form's window state. + + + + + Gets or sets whether custom style for the form is enabled. Default value is true. + + + + + Gets or sets top left rounded corner size. Default value is 6. + + + + + Gets or sets top right rounded corner size. Default value is 6. + + + + + + Gets or sets bottom left rounded corner size. Default value is 6. + + + + + Gets or sets bottom right rounded corner size. Default value is 6. + + + + + Gets whether client border is painted in OnPaint method. + + + + + Gets whether ribbon control caption is painted + + + + + Gets or sets whether 3D MDI border is removed. Default value is true. + + + + + Gets whether form uses custom region + + + + + Gets whether Windows Glass effect is rendered on the form when supported by Operating System and enabled using EnableGlass. + + + + + Returns whether form is sizable given form state (maximized, minimized, normal) and FormBorderStyle setting. + + + + + Gets or sets whether non-client area of the form rendering is enabled. + + + + + Indicates whether form BackgroundImage is pulled up and rendered under form caption as well. + + + + + Indicates whether form icon is drawn. This is different from ShowIcon property which when set to false also removes the form icon from task-bar. Setting this property to false will keep form icon in task-bar but will hide on the form. + + + + + Indicates whether form Text is rendered in form caption. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Raises TitleTextMarkupLinkClick event. + + Provides event arguments. + + + + Gets whether custom form styling is enabled. + + true if custom styling is enabled otherwise false. + + + + Invalidates non client area of the form. + + Indicates whether complete form is invalidated. + + + + Called when WM_NCACTIVATE message is received. + + Reference to message data. + Return true to call base form implementation otherwise return false. + + + + Gets the form path for the give input bounds. + + Represents the form bounds. + + + + + Updates the form title bar text. Usually calling this method is not necessary but under certain conditions when form is used as MDI parent form + calling it to update combined text is necessary. + + + + + Called when CloseEnabled property value has changed. + + + + + Paints the non-client area of the form. + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + + Occurs when text-markup link in TitleText is clicked. + + + + + Gets or sets the font for the form caption text when CaptionVisible=true. Default value is NULL which means that system font is used. + + + + + Gets whether Vista glass effect extension over the ribbon control caption is enabled. + + + + + Gets or sets the icon for the form. + + + + + Gets or sets a value indicating whether the form enables auto scrolling. + + + + + Gets or sets the Office 2007 Renderer global Color Table. Setting this property will affect all controls in application that are using Office 2007 global renderer. + + + + + Gets whether client border is painted in OnPaint method. + + + + + Gets whether ribbon control caption is painted + + + + + Gets or sets whether anti-alias smoothing is used while painting form caption. Default value is true. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets the tooltip for the form system icon. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Initializes a new instance of the MetroForm class. + + + + + Gets the array of LinearGradientColorTable objects that describe the border colors. The colors with index 0 is used as the outer most + border. + + Array of LinearGradientColorTable + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Gets the form path for the given input bounds. + + Represent the form bounds. + + + + + Called when HelpButtonText property has changed. + + Old property value + New property value + + + + Called when SettingsButtonText property has changed. + + Old property value + New property value + + + + Raises SettingsButtonClick event. + + Provides event arguments. + + + + Raises HelpButtonClick event. + + Provides event arguments. + + + + This property is not applicable for MetroForm. + + + + + + + Gets or sets the HELP button text. + + + + + Gets or sets the SETTINGS button text. + + + + + Occurs when SETTINGS button, if displayed, is clicked. + + + + + Occurs when HELP button, if displayed, is clicked. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represents the Color scheme used by items on the Bar. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + VS.NET 2005 Blue Color Scheme + + + + + Converts hex string to Color type. + + Hexadecimal color representation. + Reference to Color object. + + + + Converts hex string to Color type. + + Color representation as 32-bit RGB value. + Reference to Color object. + + + + Converts hex string to Color type. + + Color representation as 32-bit RGB value. + Reference to Color object. + + + + Specifies Dock Site BackColor. + + + + + Specifies Dock Site BackColor2. + + + + + Specifies the gradient angle. + + + + + Specifies the menu bar background color. + + + + + Specifies the target menu bar gradient background color. + + + + + Specifies the gradient angle. + + + + + Specifies the background color for the bar when floating or when docked. + + + + + Specifies the target gradient background color for the bar when floating or when docked. + + + + + Specifies the gradient angle. + + + + + Specifies the background color for the bar Caption. + + + + + Specifies the target gradient background color for the bar Caption. + + + + + Specifies the gradient angle. + + + + + Specifies the color for text of the Caption. + + + + + Specifies the Bar Caption inactive (lost focus) background color. + + + + + Specifies the target background gradient Bar Caption inactive (lost focus) color. + + + + + Specifies the gradient angle. + + + + + Specifies the Bar inactive (lost focus) text color. + + + + + Specifies the background color for popup bars. + + + + + Specifies the border color for popup bars. + + + + + Specifies the border color for docked bars. + + + + + Specifies the color of the grab handle stripes. + + + + + Specifies the border color for floating bars. + + + + + Specifies the item background color. + + + + + Specifies the target item background gradient color. + + + + + Specifies the gradient angle. + + + + + Specifies the item text color. + + + + + Specifies the background color for the item that is disabled. + + + + + Specifies the text color for the item that is disabled. + + + + + Specifies the background color when mouse is over the item. + + + + + Specifies the target gradient background color when mouse is over the item. + + + + + Specifies the gradient angle. + + + + + Specifies the text color when mouse is over the item. + + + + + Specifies the border color when mouse is over the item. + + + + + Specifies the background color when item is pressed. + + + + + Specifies the target gradient background color when item is pressed. + + + + + Specifies the gradient angle. + + + + + Specifies the text color when item is pressed. + + + + + Specifies the border color when item is pressed. + + + + + Specifies the color for the item group separator. + + + + + Specifies the color for the item group separator shade. + + + + + Specifies the background color for the shadow of expanded item. + + + + + Specifies the background color for the expanded item. + + + + + Specifies the target gradient background color for the expanded item. + + + + + Specifies the gradient angle. + + + + + Specifies the text color for the expanded item. + + + + + Specifies the border color for the expanded item. + + + + + Specifies the background color for the checked item. + + + + + Specifies the target gradient background color for the checked item. + + + + + Specifies the gradient angle. + + + + + Specifies the border color for the checked item. + + + + + Specifies the text color for the checked item. + + + + + Specifies the customize item background color. Applies to Office2003 style only. + + + + + Specifies the customize item target gradient background color. Applies to Office2003 style only. + + + + + Specifies the customize item background color gradient angle. Applies to Office2003 style only. + + + + + Specifies the customize item text color. Applies to Office2003 style only. + + + + + Specifies the color of the menu border. + + + + + Specifies the background color of the menu. + + + + + Specifies the target gradient background color of the menu. + + + + + Specifies the angle of the gradient fill for the menu background. + + + + + Specifies the background color of the menu part (left side) that is showing the images. + + + + + Specifies the target gradient background color of the menu part (left side) that is showing the images. + + + + + Specifies the angle of the gradient fill for the menu part (left side) that is showing the images. + + + + + Specifies the background color for the items that were not recently used. + + + + + Specifies the side bar color for the items that were not recently used. + + + + + Specifies the target gradient side bar color for the items that were not recently used. + + + + + Specifies the angle of the gradient fill for the menu part (left side) that is showing the images. + + + + + Specifies the border color for focused design-time item. + + + + + Gets or sets predefined color scheme. By default DotNetBar will automatically change and generate color scheme depending on system colors. + + + + + Specifies the background color of the panel. + + + + + Specifies the target background gradient color of the panel. + + + + + Specifies the angle of the gradient fill for the panel background. + + + + + Specifies border color of the panel. + + + + + Specifies color of the text on the panel. + + + + + Specifies the background color of the explorer bar. + + + + + Specifies the target gradient background color of the explorer bar. + + + + + Specifies the angle of the gradient fill for the explorer bar background. + + + + + Specifies the foreground color of MDI System Item buttons. + + + + + Specifies the background color of the Splitter. + + + + + Specifies the target background gradient color of the Splitter. + + + + + Specifies the angle of the gradient fill for the Splitter background. + + + + + Specifies border color of the Splitter. + + + + + Specifies color of the text on the Splitter. + + + + + Indicates auto-hide panel background image if any. + + + + + Gets or sets the color of the auto-hide panel background. + + + + + Gets or sets the color of the auto-hide panel background. + + + + + Gets or sets the color of the auto-hide tab. + + + + + Gets or sets the color of the auto-hide tab. + + + + + Gets or sets the auto-hide tab background gradient angle. + + + + + Gets or sets the color of the auto-hide tab text. + + + + + Gets or sets the color of the auto-hide tab border. + + + + + Gets or sets the color of the auto-hide tab. + + + + + Gets or sets the color of the auto-hide tab. + + + + + Gets or sets the color of the auto-hide tab text. + + + + + Gets or sets the color of the tab border. + + + + + Specifies the type of predefined color scheme in ColorScheme object. + + + + + Default value. DotNetBar will automatically change and generate color scheme depending on system colors. + + + + + Blue Office 2003 Color Scheme. This setting specifies that this color scheme will be used regardless of system color setting on user machine. + + + + + Olive Green Office 2003 Color Scheme. This setting specifies that this color scheme will be used regardless of system color setting on user machine. + + + + + Silver Office 2003 Color Scheme. This setting specifies that this color scheme will be used regardless of system color setting on user machine. + + + + + Always use system colors to auto-generate color scheme. + + + + + Specifies a color scheme member. + + + + + Summary description for ColorSchemeEditor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Summary description for ColorSchemeVSEditor. + + + + + Represents Color type editor with support for color schemes. + + + + + Edits the value of the specified object using the editor style indicated by GetEditStyle. + + An ITypeDescriptorContext that can be used to gain additional context information. + An IServiceProvider that this editor can use to obtain services. + The object to edit. + The new value of the object. + + + + Gets the editor style used by the EditValue method. + + An ITypeDescriptorContext that can be used to gain additional context information. + A UITypeEditorEditStyle value that indicates the style of editor used by EditValue. If the UITypeEditor does not support this method, then GetEditStyle will return None. + + + + + Provides command related utility methods that register and unregister commands. + + + + + Connects the Command Source to the Command. + + Command source to connect to the command. + Reference to the command. + + + + Disconnects command source from the command. + + Reference to command source. + Reference to the command. + + + + Unregister command from all subscribers. Called when command is disposed. + + Command to unregister. + + + + Gets an array of Command Sources that are connected with the command. + + Reference to command + An array of command sources. + + + + Gets or sets whether commands use Reflection to find the property names when applying value to the unknown types. Default value is true. + Setting this value to false will increase performance if Unknown types are used but it will at same time disable the + command setting value for these types. + + + + + Gets or sets whether layout on the items of type BaseItem is automatically updated when command text or other property changes which requires layout updated. Default value is true. + + + + + Represents the bound data navigator in current DotNetBar style. + + + + + Creates new instance of BindingNavigatorEx + + + + + Creates new instance of BindingNavigatorEx + + + + + Creates new instance of BindingNavigatorEx + + + + + Creates new instance of BindingNavigatorEx + + + + + Adds default items that make up the binding navigation control. + + + + + Gets or sets the reference to Add New record button. + + + + + Gets or sets the binding source for the navigator. + + + + + Gets or sets the label which represents the items count. + + + + + Indicates the format string for the label which displays the number of items bound. + + + + + Gets or sets the item which deletes current record. + + + + + Gets or sets the item which moves to first record. + + + + + Gets or sets the item which moves to last record. + + + + + Gets or sets the item which moves to next record. + + + + + Gets or sets the item which moves to previous record. + + + + + Gets or sets the text-box which shows current position. + + + + + Represents the class for the BaseItem non-popup based control host. + + + + + Creates new instance of the object. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrieved from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Paints the control focus cues. + + Paint event information. + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Resets style to default value. Used by windows forms designer. + + + + + Called when visual property of the control has changed so the control can be updated. + + + + + Forces the button to perform internal layout. + + + + + Recalculates the size of the internal item. + + + + + Indicates to control that all further update operations should not result in layout and refresh of control content. + Use this method to optimize the addition of new items to the control. This method supports nested calls meaning + that multiple calls are allowed but they must be ended with appropriate number of EndUpdate calls. + IsUpdateSuspended property returns whether update is suspended. + + + + + Indicates that update operation is complete and that control should perform layout and refresh to show changes. See BeginUpdate + for more details. + + + + + Indicates that update operation is complete and that control should perform layout and refresh to show changes. See BeginUpdate + for more details. + + + + + Gets or sets the instance of BaseItem object hosted by this control. + + + + + Gets or sets whether during painting OnPaintBackground on base control is called when BackColor=Transparent. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Specifies the background style of the control. + + + + + Gets or sets Bar Color Scheme. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets/Sets the visual style for the control. + + + + + Gets whether control layout is suspended becouse of the call to BeginUpdate method. + + + + + Initializes a new instance of the CircularProgress class. + + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when Value property has changed. + + + + + Gets or sets the circular progress bar type. + + + + + Gets or sets the maximum value of the progress bar. + + + + + Gets or sets the minimum value of the progress bar. + + + + + Gets or sets the color of the progress percentage text. + + + + + Gets or sets whether text that displays the progress bar completion percentage text is visible. Default value is false. + + + + + Gets or sets the text displayed on top of the circular progress bar. + + + + + Gets or sets the current value of the progress bar. + + + + + Gets or sets whether endless type progress bar is running. + + + + + Gets or sets the color of the color of progress indicator. + + + + + Gets or sets the color of the pie progress bar dark border. + + + + + Gets or sets the color of the pie progress bar light border. + + + + + Gets or sets the color of the spoke progress bar dark border. + + + + + Gets or sets the color of the spoke progress bar light border. + + + + + Gets or sets format string for progress value. + + + + + Gets or sets the animation speed for endless running progress. Lower number means faster running. + + + + + Initializes a new instance of the CollapsibleSplitContainer class. + + + + + Raises BeforeNearCollapseButtonClick event. + + Provides event arguments. + + + + Raises NearCollapseButtonClick event. + + Provides event arguments. + + + + Raises BeforeFarCollapseButtonClick event. + + Provides event arguments. + + + + Raises FarCollapseButtonClick event. + + Provides event arguments. + + + + Called when ButtonPosition property has changed. + + Old property value + New property value + + + + Called when CollapseMode property has changed. + + Old property value + New property value + + + + + Occurs after near collapse button is clicked. + + + + + Occurs before far collapse button is clicked and allows you to cancel its action. + + + + + Occurs after far collapse button is clicked. + + + + + Indicates position of buttons inside container. + + + + + Specifies how panels are collapsed when collapse buttons are pressed. + + + + + Defines available positions for buttons inside CollapsibleSplitterContainer. + + + + + Buttons are positioned on left or top side depending on orientation. + + + + + Buttons are positioned in center of container. + + + + + Buttons are positioned on right or bottom side depending on orientation. + + + + + Defines collapse mode for the CollapsibleSplitContainer control. + + + + + When buttons are pressed the splitter is positioned at the PanelMinSize. + + + + + When buttons are pressed associated panel is collapsed through Panel1Collapsed or Panel2Collapsed properties. + + + + + Represents the color picker button control. + + + + + Creates new instance of the object. + + + + + Displays the Colors dialog that allows user to choose the color or create a custom color. If new color is chosen the + SelectedColorChanged event is raised. + + + + + Raises the ColorPreview event. + + Provides event data. + + + + Raises the SelectedColorChanged event. + + Provides event data. + + + + Indicates whether SubItems collection is serialized. ColorPickerDropDown does not serialize the sub items. + + + + + Gets whether property should be serialized. + + + + + Resets the property to its default value. + + + + + Invokes the ColorPreview event. + + Provides data for the event. + + + + Update the selected color image if the SelectedColorImageRectangle has been set and button is using Image property to display the image. + + + + + Occurs when color is chosen from drop-down color picker or from Custom Colors dialog box. Selected color can be accessed through SelectedColor property. + + + + + Occurs when mouse is moving over the colors presented by the color picker. You can use it to preview the color before it is selected. + + + + + Gets or sets the array of ColorItem objects that will be used as standard colors instead of built-in color palette. + See: http://www.devcomponents.com/kb2/?p=79 for instructions. + + + + + Gets or sets the array of ColorItem objects that will be used as theme colors instead of built-in color palette. + See: http://www.devcomponents.com/kb2/?p=79 for instructions. + + + + + Gets whether command is executed when button is clicked. + + + + + Gets or sets the Owner Window that will be used as owner for the colors modal dialog when displayed. + + + + + Gets or sets more colors menu item is visible which allows user to open Custom Colors dialog box. Default value is true. + + + + + Gets or sets the last selected color from either the drop-down or Custom Color dialog box. Default value is + Color.Empty. You can use SelectedColorChanged event to be notified when this property changes. + + + + + Gets or sets whether theme colors are displayed on drop-down. Default value is true. + + + + + Gets or sets whether standard colors are displayed on drop-down. Default value is true. + + + + + Gets or sets the rectangle in Image coordinates where selected color will be painted. Setting this property will + have an effect only if Image property is used to set the image. Default value is an empty rectangle which indicates + that selected color will not be painted on the image. + + + + + Represents enhanced Windows combo box control. + + + + + Creates new instance of ComboBoxEx. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Clean up any resources being used. + + + + + Loads all fonts available on system into the combo box. + + + + + Releases the focus from combo box. The control that last had focus will receive focus back when this method is called. + + + + + Called when DropDownColumns property has changed. + + Old property value + New property value + + + + Called when DropDownColumnsHeaders property has changed. + + Old property value + New property value + + + + Raises BeforeMultiColumnPopupOpen event. + + Provides event arguments. + + + + Raises the DataColumnCreated event. + + Provides event arguments. + + + + Raises SelectionChanging event. + + Provides event arguments. + + + + Called when Command property value changes. + + + + + Occurs when drop down portion of combo box is shown or hidden. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets whether control is stand-alone control. Stand-alone flag affects the appearance of the control in Office 2007 style. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + Note that WatermarkText is not compatible with the auto-complete feature of .NET Framework 2.0. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the combo box background color. Note that in Office 2007 style back color of the control is automatically managed. + + + + + Gets or sets whether the BackColor value you set is used instead of the style back color automatically provided by the control. Default + value is false which indicates that BackColor property is automatically managed. Set this property to true and then set BackColor property + to make control use your custom back color. + + + + + Gets or sets value indicating whether system combo box appearance is used. Default value is false. + + + + + Gets or sets value indicating whether the combo box is draw using the Windows XP Theme manager when running on Windows XP or theme aware OS. + + + + + Disables internal drawing support for the List-box portion of Combo-box. Default value is false which means that internal drawing code is used. If + you plan to provide your own drawing for combo box items you must set this property to True. + + + + + Gets or sets whether combo box generates the audible alert when Enter key is pressed. + + + + + The ImageList control used by Combo box to draw images. + + + + + Determines the visual style applied to the combo box when shown. Default style is Office 2007. + + + + + Gets or sets whether ComboBoxEx thumb button that displays drop-down is rendered. Default value is true. + + + + + Gets or sets whether ComboBoxEx border is rendered. Default value is true. + + + + + Indicates whether ItemHeight property is set automatically based on the current font when DrawMode=OwnerDrawFixed + + + + + Gets or sets the text color for the text in combo-box when control Enabled property is set to false. + Setting this property is effective only for DropDownList ComboBox style. + + + + + Gets or sets the control background color when control is disabled. Default value is an empty color which indicates that system background color is used when control is disabled. + + + + + Gets the window handle that the drop down list is bound to. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Gets or sets comma separated list of field names that are displayed on drop down. When set it activates ComboBoxEx multi-column drop-down mode. + DataSource must be set in order for drop-down to display data. + + + + + Indicates custom column names with each column separated by new line, i.e. \r\n escape sequence. + + + + + Occurs before the multi-column popup is opened and it allows canceling of popup by setting CancelEventArgs.Cancel=true. + + + + + Occurs when ColumnHeader is automatically created by control as result of data binding for multi-column drop-down and provides you with opportunity to modify it. + + + + + Occurs before selection on multi-column drop-down has changed and allows canceling of the change. Applies to multi-column drop-down only. + + + + + Gets or sets whether selection change on multi-column drop-down closes the popup. Default value is true. Applies to multi-column drop-down only. + + + + + Indicates whether multi-column popup size is preserved between popup displays if popup is resized by end-user. Applies to multi-column drop-down only. + + + + + Indicates whether multi-column popup can be resized by end user. Applies to multi-column drop-down only. + + + + + Indicates whether multi-column popup close button is visible. + + + + + Gets or sets whether multi-column popup window is open. Applies to multi-column drop-down only. + + + + + Gets the reference to the control which is used to display multi-column data on popup. Control is created just before the popup is opened. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents the method that will handle the DropDownChange event. + + + + + Summary description for ComboBoxItem. + + + + + Creates new instance of ComboBoxItem. + + + + + Creates new instance of ComboBoxItem and assigns item name. + + Item Name. + + + + Creates new instance of ComboBoxItem and assigns item name and item text. + + Item Name + Item Text. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Returns whether property should be serialized. + + + + + Overridden. Releases the input focus. + + + + + Raises the ComboBoxTextChanged event. + + Provides event arguments. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Occurs when underlining control ComboBox.Text property has changed. + + + + + Occurs when selected item on combo box has changed. + + + + + Gets or sets the accessible role of the item. + + + + + Gets or sets whether combo box generates the audible alert when Enter key is pressed. + + + + + Gets or sets the text color of the combo box label. + + + + + IBlock member implementation + + + + + Gets or sets the width of the of the drop-down portion of a combo box. + + + + + Gets or sets the height of the of the drop-down portion of a combo box. + + + + + Indicates the Width of the combo box part of the item. + + + + + Indicates whether control automatically releases its input focus when selection is made using keyboard. + + + + + Returns the reference to the inner combo box control. + + + + + Indicates whether item caption is always shown. + + + + + Gets an object representing the collection of the items contained in inner ComboBoxEx. + + + + + Gets or sets a value specifying the style of the combo box. + + + + + Gets or sets the starting index of text selected in the combo box. + + + + + Gets or sets the number of characters selected in the editable portion of the combo box. + + + + + Gets or sets the text that is selected in the editable portion of a combo box. + + + + + Gets or sets currently selected item in the combo box. + + + + + Gets or sets the index specifying the currently selected item. + + + + + Gets or sets the value indicating whether the item automatically loads all the fonts available into the combo box. + + + + + Gets or sets the height of an item in the combo box. + + + + + Indicates item's visibility when on pop-up menu. + + + + + Gets or sets the value that indicates whether the item was recently used. + + + + + Overridden. Gets or sets the text associated with this item. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the item caption text displayed next to the combo box. + + + + + Gets or sets a string that specifies the property of the data source whose contents you want to display. When ComboBoxItem is used in DropDown mode + and objects like ComboItem are added to ComboBoxItems.Items collection DisplayMembers should be set to the name of the property you would + like to use as text representation in editable portion of ComboBox. For example in case of ComboItem objects property should be set to Text. + + + + + Specifies whether combo box is drawn using themes when running on OS that supports themes like Windows XP + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + Note that WatermarkText is not compatible with the auto-complete feature of .NET Framework 2.0. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets whether control is stand-alone control. Stand-alone flag affects the appearance of the control in Office 2007 style. + + + + + Summary description for ComboItem. + + + + + Creates new instance of ComboItem. + + + + + Initializes a new instance of the ComboItem class. + + + + + + Initializes a new instance of the ComboItem class. + + + + + + + Initializes a new instance of the ComboItem class. + + + + + + + + Initializes a new instance of the ComboItem class. + + + + + + + Overridden. Returns a human-readable string representation of this object. + + A string that represents this object. + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the index value of the image assigned to the item. + + + + + Gets or sets the text alignment.. + + + + + Gets or sets the line alignment for the item. + + + + + Gets or sets the value that encapsulates text layout information (such as alignment, orientation, tab stops, and clipping) and display manipulations. + + + + + Gets or sets the image horizontal image position. + + + + + Gets or sets the font name used to draw the item text. + + + + + Gets or sets the text color. + + + + + Gets or sets the background color of the item. + + + + + Specifies style information applied to text. + + + + + Gets the em-size of this Font object in design units. + + + + + Gets or sets the image assigned to this item. + + + + + Gets or sets an object that contains data to associate with the item. + + + + + Serves as integration of regular Image class and Icon class + + + + + Specifies orientation of content. + + + + + Indicates Horizontal orientation of the content. + + + + + Indicates Vertical orientation of the content. + + + + + Specifies content horizontal alignment. + + + + + Content is left aligned.UI + + + + + Content is right aligned. + + + + + Content is centered. + + + + + Specifies content vertical alignment. + + + + + Content is top aligned. + + + + + Content is bottom aligned. + + + + + Content is in the middle. + + + + + Represents a extended content block interface for advanced layout information. + + + + + Returns whether element is an container so it receives full available size of parent control for layout. + + + + + Represents event arguments for SerialContentLayoutManager.NextPosition event. + + + + + Gets or sets the block that is layed out. + + + + + Gets or sets the current block position. + + + + + Gets or sets the calculated next block position. + + + + + Cancels default position calculation. + + + + + Represents event arguments for the SerialContentLayoutManager layout events. + + + + + Gets or sets the reference block object. + + + + + Gets or sets the position block will assume. + + + + + Cancel the layout of the block, applies only to BeforeXXX layout event. + + + + + Gets or sets the visibility index of the block. + + + + + Creates new instance of the class and initializes it with default values. + + + + + Delegate for SerialContentLayoutManager.NextPosition event. + + + + + Delegate for the SerialContentLayoutManager layout events. + + + + + Summary description for ContextExMenuTypeEditor. + + + + + Gets the editor style used by the EditValue method. + + An ITypeDescriptorContext that can be used to gain additional context information. + A UITypeEditorEditStyle value that indicates the style of editor used by EditValue. If the UITypeEditor does not support this method, then GetEditStyle will return None + + + + Represents the context menu bar that provides the context menus for the System.Windows.Forms.Control inherited controls on the form. + + + + + Returns the instance of the BaseItem that is assigned as context menu to the control. + + Control to return context menu for. + Instance of the BaseItem used as context menu for the control. + + + + Assigns the context menu to a control. + + Control to assign the context menu to. + Instance of PopupItem derived class usually ButtonItem to act as context menu for a control. The SubItems collection of the item specified here actually defines the visible context menu items. + + + + Gets/Sets whether Bar is visible or not. + + + + + Summary description for Popups. + + + + + Summary description for ControlContainerItem. + + + + + Creates new instance of ControlContainerItem and assigns item name. + + + + + Creates new instance of ControlContainerItem and assigns item name. + + Item name. + + + + Creates new instance of ControlContainerItem and assigns item name and item text. + + Item name. + Item text. + + + + Overridden. Returns the copy of the ControlContainerItem. + + Copy of the ControlContainerItem. + + + + Overridden. Draws the item. + + Target Graphics object. + + + + Overridden. Recalculates the size of the item. + + + + + Called when size of the item is changed externally. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Occurs when container control needs to be assigned to the item. + + + + + Indicates item's visiblity when on pop-up menu. + + + + + Indicates whether item was recently used. + + + + + Gets/Sets informational text (tooltip) for the item. + + + + + Gets or sets the reference to the control that is managed by the item. + + + + + IBlock member implementation + + + + + Specifies whether contained control can be automatically resized to fill the item container. + + + + + Represents the Check Box control with extended styles. + + + + + Invokes the CheckedChanged event. + + + + + Invokes CheckedChanging event. + + + + + Called when Command property value changes. + + + + + Occurs before Checked property is changed and allows you to cancel the change. + + + + + Occurs after Checked property is changed with extended information. + + + + + Occurs after Checked property is changed. This event is provided for the Windows Forms data binding support. You can use CheckedChangedEx to get extended information about the changed. + + + + + Occurs after Checked property is changed. This event is provided for the Windows Forms data binding support. You can use CheckedChangedEx to get extended information about the changed. + + + + + Gets or sets the size of the check or radio sign. Default value is 13x13. Minimum value is 6x6. + + + + + Gets or sets whether text-markup support is enabled for controls Text property. Default value is true. + Set this property to false to display HTML or other markup in the control instead of it being parsed as text-markup. + + + + + Gets or sets the appearance style of the item. Default value is CheckBox. Item can also assume the style of radio-button. + + + + + Gets or sets the check box position relative to the text. Default value is Left. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets whether text assigned to the check box is visible. Default value is true. + + + + + Gets or sets the text color. Default value is Color.Empty which indicates that default color is used. + + + + + Gets or sets the text associated with the control. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets a value indicating whether the CheckBox will allow three check states rather than two. If the ThreeState property is set to true + CheckState property should be used instead of Checked property to set the extended state of the control. + + + + + Specifies the state of a control, such as a check box, that can be checked, unchecked, or set to an indeterminate state. + + + + + Gets the underlying CheckBoxItem + + + + + Gets or sets whether mnemonic character assigned to control is processed only if Alt key is pressed. Default value is false which indicate that Alt key is not required. + + + + + Gets or set whether the Checked values and the item appearance are automatically changed when the Check-Box is clicked. Default value is true. + + + + + Gets or sets the object that represents the Checked state of control. + + + + + Gets or sets whether empty string is consider as null value during CheckValue value comparison. Default value is true. + + + + + Gets or sets the value that represents the Indeterminate state of check box when CheckValue property is set to that value. Default value is null. + + + + + Gets or sets the value that represents the Checked state of check box when CheckValue property is set to that value. Default value is null. + + + + + Gets or sets the value that represents the Unchecked state of check box when CheckValue property is set to that value. Default value is null. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is checked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is unchecked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is in indeterminate state. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Delegate for OptionGroupChanging event. + + + + + Represents event arguments for OptionGroupChanging event. + + + + + Set to true to cancel the checking on NewChecked button. + + + + + Check-box that will become checked if operation is not cancelled. + + + + + Check-box that is currently checked and which will be unchecked if operation is not cancelled. This property will have only valid values for eCheckBoxStyle.RadioButton style CheckBoxItems. + + + + + Indicates the action that has caused the event. + + + + + Default constructor. + + + + + Represents the combo box like control which shows the AdvTree control on popup. Tree control + can be configured to display multiple columns as well. + + + + + Initializes a new instance of the TextBoxDropDown class. + + + + + Raises FormattingEnabledChanged event. + + Event arguments. + + + + Raises FormatStringChanged event. + + Event arguments. + + + + Raises FormatInfoChanged event. + + Event arguments. + + + + Raises the DataSourceChanged event. + + An EventArgs that contains the event data. + + + + Raises the DisplayMemberChanged event. + + An EventArgs that contains the event data. + + + + When overridden in a derived class, resynchronizes the item data with the contents of the data source. + + + + + When overridden in a derived class, sets the specified array of objects in a collection in the derived class. + + An array of items. + + + + Raises the DataColumnCreated event. + + Provides event arguments. + + + + Raises the DataNodeCreated event. + + Provides event arguments. + + + + Creates a new node for the data item. + + Item to create node for. + New instance of the node. + + + + Raises the DataNodeCreated event. + + Provides event arguments. + + + + When overridden in a derived class, sets the object with the specified index in the derived class. + + The array index of the object. + The object. + + + + Called when ParentFieldName property has changed. + + + + + Called when GroupingMembers property has changed. + + + + + Raises the Format event. + + Event parameters + + + + Raises the SelectedIndexChanged event. + + Event arguments. + + + + Raises the ValueMemberChanged event. + + Event arguments. + + + + Raises the SelectedValueChanged event. + + Event arguments. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Renders the selected node inside the combo box. + + Graphics reference. + Render bounds. + + + + Updates popup tree size based on its content. + + + + + Shows drop-down popup. Note that popup will be shown only if there is a DropDownControl assigned or DropDownItems collection has at least one item. + + + + + Closes the drop-down popup if it is open. + + + + + Called when PopupLocation property has changed. + + Old property value + New property value + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Command property value changes. + + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows popup is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + Occurs when the text alignment in text box has changed. + + + + + Occurs before Node has been selected by user or through the SelectedNode property. Event can be canceled. + + + + + Occurs after node has been selected by user or through the SelectedNode property. + + + + + Occurs when the DataSource changes. + + + + + Occurs when the DisplayMembers property changes. + + + + + Occurs when the control is bound to a data value that need to be converted. + + + + + Occurs when FormattingEnabled property changes. + + + + + Occurs when FormatString property changes. + + + + + Occurs when FormatInfo property has changed. + + + + + Occurs when a Node for an data-bound object item has been created and provides you with opportunity to modify the node. + + + + + Occurs when a group Node is created as result of GroupingMembers property setting and provides you with opportunity to modify the node. + + + + + Occurs when value of ValueMember property has changed. + + + + + Occurs when value of SelectedValue property has changed. + + + + + Occurs when value of SelectedIndex property has changed. + + + + + Occurs when ColumnHeader is automatically created by control as result of data binding and provides you with opportunity to modify it. + + + + + Gets or sets the tree node that is currently selected in the tree control. + + + If no Node is currently selected, the + SelectedNode property is a null reference (Nothing in Visual + Basic). + + + + + Gets or sets whether selection change on popup tree closes the popup. Default value is true. + + + + + Gets or sets the field name that holds the text that will be displayed in the control for selected item. When not set all items set in DisplayMembers will be displayed in control. + + + + + Gets or sets the field name that holds the text that will be displayed in the control for selected item. When not set all items set in DisplayMembers will be displayed in control. + + + + + Gets or sets the comma separated list of property or column names to display on popup tree control. + + + + + Gets or sets the data source for the ComboTree. Expected is an object that implements the IList or IListSource interfaces, + such as a DataSet or an Array. The default is null. + + + + + Gets or sets a value indicating whether formatting is applied to the DisplayMembers property of the control. + + + + + Gets or sets the format-specifier characters that indicate how a value is to be displayed. + + + + + Gets or sets the IFormatProvider that provides custom formatting behavior. + + + + + Gets or sets comma separated field or property names that holds the value that is used to identify node and parent node. Format expected is: FieldNodeId,ParentNodeFieldId. For example if your table represents departments, you have DepartmentId field which uniquely identifies a department and ParentDepartmentId field which identifies parent of the department if any you would set this property to DepartmentId,ParentDepartmentId. + Note that you can only use ParentFieldNames or GroupingMembers property but not both. If both are set ParentFieldName take precedence. + + + + + Gets or sets comma separated list of field or property names that are used for grouping when data-binding is used. + + + + + Gets or sets style for automatically created group nodes when data-binding is used and GroupingMembers property is set. + + + Name of the style assigned or null value indicating that no style is used. + Default value is null. + + + + + Gets or sets the index specifying the currently selected item. + + + + + Gets or sets the property to use as the actual value for the items in the control. Applies to data-binding scenarios. SelectedValue property will return the value of selected node as indicated by this property. + + + + + Gets or sets the value of the member property specified by the ValueMember property. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is displayed if set for the input items. Default value is true. + + + + + Gets or sets the watermark text displayed on the input control when control is empty. + + + + + Gets or sets the watermark text alignment. Default value is left. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Indicates whether Enter key when pressed while control has input focus toggles the popup. Default value is true. + + + + + Gets or sets whether keyboard incremental search is enabled. Default value is true. + + + + + Gets or sets whether during keyboard search selected node can be set to nothing/null if there is no match found. + Default value is true. + + + + + Gets or sets the keyboard search buffer expiration timeout. Default value is 1000 which indicates that + key pressed within 1 second will add to the search buffer and control will be searched for node text + that begins with resulting string. Setting this value to 0 will disable the search buffer. + + + + + Indicates the custom popup location for the ComboTree popup + + + + + Gets or sets the reference of the control that will be displayed on popup that is shown when drop-down button is clicked. + + + + + Gets the collection of BaseItem derived items displayed on popup menu. + + + + + Gets the reference to internal AdvTree control that is displayed on popup Use it to get access to the AdvTree events and properties. + + + + + Gets or sets the height in pixels of the drop-down portion of the ComboTreeBox control. + + + + + Gets or sets the width in pixels of the drop-down portion of the ComboTreeBox control. + + + + + Gets or sets a value indicating whether the combo box is displaying its drop-down portion. + + + + + Gets the collection of tree nodes that are assigned to the popup tree view control. + + + A NodeCollection that represents the tree nodes + assigned to the tree control. + + + The Nodes property holds a collection of Node objects, each of which has a + Nodes property that can contain its own NodeCollection. + + + + + Gets the collection of column headers that appear in the popup tree. + + + By default there are no column headers defined. In that case tree control + functions as regular tree control where text has unrestricted width. + If you want to restrict the horizontal width of the text but not display + column header you can create one column and set its width to the width desired and + set its Visible property to false. + + + + + Gets or sets whether column headers are visible if they are defined through Columns collection. Default value is true. + + + + + Gets or sets whether grid lines are displayed when columns are defined. Default value is true. + + + + + Gets or sets the grid lines color. + + + + + Gets or sets whether horizontal grid lines between each row are displayed. Default value is false. + + + + + Gets or sets whether node is highlighted when mouse enters the node. Default value is false. + + + There are two ways to enable the node hot-tracking. You can set the HotTracking property to true in which case the + mouse tracking is enabled using system colors specified in TreeColorTable. You can also define the NodeStyleMouseOver + style which gets applied to the node when mouse is over the node. + + + + + Gets or sets the node selection box style for popup tree control. + + SelectionBox Property + SelectionBoxSize Property + SelectionBoxFillColor Property + SelectionBoxBorderColor Property + + + + Gets or sets the ImageList that contains the Image objects used by the tree nodes. + + + + + Gets or sets the image-list index value of the default image that is displayed by the tree nodes. + + + + + Gets or sets the control background color when control is disabled. Default value is an empty color which indicates that system background color is used when control is disabled. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents the method that will handle converting for ComboTree control. + + + + + + + Gets the reference to the item being converted. + + + + + Get the reference to the name of the field or property on the item that needs conversion. + + + + + Defines delegate for data node based events. + + + + + Defines event arguments for data node based events. + + + + + Gets or sets the node that is created for data item. + + + + + Gets the data-item node is being created for. + + + + + Initializes a new instance of the DataNodeEventArgs class. + + + + + + + Defines delegate for data column based events. + + + + + Defines event arguments for data column based events. + + + + + Gets or sets the column header that is created for data. + + + + + Initializes a new instance of the DataColumnEventArgs class. + + + + + + Initializes a new instance of the ControlWithBackgroundStyle class. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Specifies the background style of the control. + + + + + Represents the DataGridView control with enhanced Office 2007 style. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Gets or sets the scroll-bar visual style. + + + + + Gets or sets whether selected column header is highlighted. Default value is true. + + + + + Gets or sets whether select all sign displayed in top-left corner of the grid is visible. Default value is true. + + + + + Gets or sets whether enhanced selection for the cells is painted in Office 2007 style. Default value is true. + + + + + Indicates whether BackgroundColor property set on DataGridView is obeyed instead of using system color scheme color. + + + + + GetContentBounds + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the Button background + + + + + + + + Paints the button background and content + + + + + + + + + + + OnMouseEnter + + + + + + Establishes the given rowIndex as the + ActiveRowIndex. + + + + + + Processes MouseLeave events + + + + + + Processes MouseMove events + + + + + + Processes MouseDown events + + + + + + Processes MouseUp events + + + + + + Determines if the given part is set + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + + GetValue + + + + + + + Initiates the refresh of the cell button + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Gets whether the Column cells will fully paint + their cell background and content + + + + + Constructor + + + + + Gets whether ImageFixedSize property should be serialized. + + + + + Hooks or unhooks our system events + + + + + + Processes Button expand changes + + + + + + + ButtonItem_Click + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Gets or sets the active row index + + + + + Gets the Control Button + + + + + Gets or sets the Current row index + + + + + Gets or sets a expanded button + was just closed + + + + + Gets or sets the cell callback state + + + + + Gets or sets whether Checked property is automatically inverted, button checked/unchecked, when button is clicked. Default value is false. + + + + + Indicates whether the button will auto-expand when clicked. + When button contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this property to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets button Color Scheme. ColorScheme does not apply to Office2007 styled buttons. + + + + + Gets or sets the predefined color of the button. Color specified applies to buttons with Office 2007 style only. It does not have + any effect on other styles. Default value is eButtonColor.BlueWithBackground + + + + + Gets or sets the custom color name. Name specified here must be represented by the corresponding object with the same name that is part + of the Office2007ColorTable.ButtonItemColors collection. See documentation for Office2007ColorTable.ButtonItemColors for more information. + If color table with specified name cannot be found default color will be used. Valid settings for this property override any + setting to the Color property. Applies to items with Office 2007 style only. + + + + + Specifies the image for the button when items Enabled property is set to false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Indicates the way button is rendering the mouse over state. Setting the value to + Color will render the image in gray-scale when mouse is not over the item. + + + + + Specifies the image for the button when mouse is over the item. + + + + + Specifies the Button image. + + + + + Sets fixed size of the image. Image will be scaled and painted it size specified. + + + + + Gets/Sets the image position inside the button. + + + + + Gets or sets the amount of spacing between button image if specified and text. + + + + + Gets or sets the location of popup in relation to it's parent. + + + + + Specifies the image for the button when mouse left button is pressed. + + + + + Gets or sets an shape descriptor for the button + which describes the shape of the button. Default value is null + which indicates that system default shape is used. + + + + + Gets or sets whether button displays the expand part that indicates that button has popup. + + + + + Gets or sets whether button appears as split button. Split button appearance + divides button into two parts. Image which raises the click event when clicked + and text and expand sign which shows button sub items on popup menu when clicked. + Button must have both text and image visible (ButtonStyle property) in order to + appear as a full split button. + + + + + Gets/Sets the visual style for the button. + + + + + Returns the collection of sub items. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Gets or sets the default Text to display on the Button + + + + + Gets or sets the text alignment. Applies only when button text is not composed using text markup. Default value is center. + + + + + Gets the Cell paint setting for the ButtonX control + + + + + BeforeCellPaintEventArgs + + + + + RowIndex of cell being painted + + + + + ColumnIndex of cell being painted + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the Button background + + + + + + + + Paints the button background and content + + + + + + + + + + + OnMouseEnter + + + + + + Processes MouseLeave events + + + + + + Processes MouseMove events + + + + + + Processes MouseDown events + + + + + + Processes MouseUp events + + + + + + Determines if the given part is set + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the Content bounds for the given cell + + + + + + + Initiates the refresh of the cell + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + HookEvents + + + + + + CheckBoxItem_Click + + + + + + + CheckBoxItem_DoubleClick + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Gets or sets the active row index + + + + + Gets the Control Button + + + + + Gets or sets the Current row index + + + + + Gets or sets the MouseDown row index + + + + + Gets or sets the cell callback state + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is checked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is unchecked. + + + + + Gets or sets the custom image that is displayed instead default check box representation when check box is in indeterminate state. + + + + + Gets or sets the check box position relative to the text. + Default value is Left. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Specifies the state of the control, that can be + checked, unchecked, or set to an indeterminate state. + + + + + CheckValue + + + + + Gets or sets the value that represents the Checked state value of the check + box when CheckValue property is set to that value. Default value is null. + + + + + Gets or sets the value that represents the Indeterminate state of the check + box when CheckValue property is set to that value. Default value is null. + + + + + Gets or sets the value that represents the Unchecked state value of check + box when CheckValue property is set to that value. Default value is 'N'. + + + + + Gets or sets whether empty string is consider as null value + during CheckValue value comparison. Default value is true. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets whether text-markup support is enabled for controls + Text property. Default value is true. Set this property to false to + display HTML or other markup in the control instead of it being parsed as text-markup. + + + + + Gets or sets the default Text to display + + + + + Gets or sets the text color. Default value is + Color.Empty which indicates that default color is used. + + + + + Gets or sets whether text assigned to the check box is visible. + Default value is true. + + + + + Gets or sets a value indicating whether the CheckBox will allow + three check states rather than two. If the ThreeState property is + set to true CheckState property should be used instead of Checked + property to set the extended state of the control. + + + + + Gets the Cell paint setting for the ButtonX control + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + Click + + + + + + + DrawItem + + + + + + + DropDownChange + + + + + + + MeasureItem + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + ParseFormattedValue + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + + DrawControl + + + + + + + + + + + DrawText + + + + + + + + + MustRenderVisibleControl + + + + + + + OnMouseEnter + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + Constructor + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + HookEvents + + + + + + ComboBoxEx_DataSourceChanged + + + + + + + DoComboBoxEx_Click + + + + + + + DoComboBoxEx_DrawItem + + + + + + + DoComboBoxEx_DropDownChange + + + + + + + DoComboBoxEx_MeasureItem + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Occurs right before a ComboBox Cell is painted + + + + + Occurs when the ComboBox is clicked + + + + + Occurs when a visual aspect of an owner-drawn ComboBox changes + + + + + Occurs when drop down portion of the ComboBox is shown or hidden. + + + + + Occurs each time an owner-drawn ComboBox item needs + to be drawn and when the sizes of the list items are determined + + + + + Gets the underlying ComboBoxEx control + + + + + Gets or sets the ComboBox CurrencyManager + + + + + Gets or sets a custom System.Collections.Specialized.StringCollection + to use when the AutoCompleteSource property is set to CustomSource. + + + + + Gets or sets an option that controls how automatic completion works for the ComboBox. + + + + + Gets or sets a value specifying the source of complete strings used for automatic completion. + + + + + Gets or sets the data source that populates the selections for the combo box + + + + + Gets or sets a string that specifies the property or column + from which to retrieve strings for display in the combo box. + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets a value indicating whether user code or + operating system code will handle drawing of elements in the list. + + + + + Gets or sets a value specifying the style of the combo box. + + + + + Gets or sets the height in pixels of the drop-down portion of the ComboBox. + + + + + Gets or sets the width of the drop-down lists of the combo box. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the flat style appearance of the column's cells. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the format-specifier + characters that indicate how a value is to be displayed. + + + + + Gets or sets a value indicating whether formatting is applied to the DisplayMember property. + + + + + Gets or sets the ImageList control used by Combo box to draw images. + + + + + Gets or sets the Input Method Editor (IME) mode of the control. + + + + + Gets or sets a value indicating whether + the control should resize to avoid showing partial items. + + + + + Gets or sets whether control is stand-alone control. + Stand-alone flag affects the appearance of the control in Office 2007 style. + + + + + Gets or sets the height of an item in the combo box. + + + + + Gets the collection of objects used as selections in the combo box. + + + + + Gets or sets the maximum number of items + in the drop-down list of the cells in the column. + + + + + Gets or sets the number of characters a user can type into the ComboBox. + + + + + Gets or sets a value indicating whether control's + elements are aligned to support locales using right-to-left fonts. + + + + + Gets or sets whether the items in the combo box are sorted. + + + + + Determines the visual style applied to + the combo box when shown. Default style is Office 2007. + + + + + Gets or sets the text associated with this control. + + + + + Gets or sets a string that specifies the property or column + from which to get values that correspond to the selections in the drop-down list. + + + + + Gets or sets the watermark hiding behaviour. Default value + indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is + displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text + is not set and control does not have input focus. This property supports text-markup. + Note that WatermarkText is not compatible with the auto-complete feature of .NET Framework 2.0. + + + + + Gets the Cell paint setting for the control + + + + + DropDownChangeEventArgs + + + + + ColumnIndex + + + + + Expanded state + + + + + RowIndex + + + + + Handles OnTextChanged events + + + + + + OnSelectedIndexChanged + + + + + + NotifyDataGridViewOfValueChange + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + ButtonFreeTextClick + + + + + + + ConvertFreeTextEntry + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + DrawControl + + + + + + + + DrawText + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetHorizontalAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + DoButtonFreeTextClick + + + + + + + DoConvertFreeTextEntry + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Occurs right before a DateTimeInput Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button that shows calendar + is clicked and allows you to cancel showing of the popup + + + + + Occurs when Free-Text button is clicked + and allows you to cancel its default action + + + + + Occurs if Free-Text entry value is not natively recognized by + the control and provides you with opportunity to convert that + value to the value the control expects + + + + + Gets the underlying DateTimeInput control + + + + + Gets or sets whether empty null/nothing state of the control is + allowed. Default value is true which means that IsEmpty property may + return true if input value is resets or ValueObject set to null/nothing. + + + + + Gets or sets whether input focus is automatically advanced + to next input field when input is complete in current one. + + + + + Gets or sets whether first day in month is automatically + selected on popup date picker when month or year is changed. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. + When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button + that switches the control into the free-text entry mode when clicked. + + + + + Gets or sets the custom date/time format string. + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets whether empty input values (year, month or day) are + set to defaults while user is entering data. Default value is true. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the format date/time is displayed in. To specify + custom format set this value to Custom and specify custom format + using CustomFormat property. + + + + + Gets or sets the input field alignment inside the control + + + + + Gets or sets whether input part of the control is read-only. When set + to true the input part of the control becomes read-only and does not allow + the typing. However, drop-down part if visible still allows user to change + the value of the control. Use this property to allow change of the value + through drop-down picker only. + + + + + Gets or sets whether check box shown using ShowCheckBox + property which locks/unlocks the control update is checked. + + + + + Gets or sets the maximum date and time that can be selected in the control. + + + + + Gets or sets the minimum date and time that can be selected in the control. + + + + + Gets the reference to the internal MonthCalendarItem control which is used to display calendar when drop-down is open. + + + + + List of characters that when pressed would select next input field. For example if you are + allowing time input you could set this property to : so when user presses the : character, + the input is forwarded to the next input field. + + + + + Gets or sets a value indicating whether a check box is + displayed to the left of the input value. Set to true if a check box + is displayed to the left of the input value; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed + to the left of the input in the control. When the check box is selected, the value + can be updated. When the check box is cleared, the value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked + and unchecked. Use LockUpdateChecked property to get or sets whether check box is checked. + + + + + + Gets or sets a value indicating whether a spin button control + (up-down control) is used to adjust the current value. The default is false. + + When the ShowUpDown property is set to true, a spin button control + is shown to adjust value of currently focused input item. The value can + be adjusted by using the up and down buttons to change the value. + + + + + + Gets the Cell paint setting for the control + + + + + Handles OnValueChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the Edit state + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + ButtonFreeTextClick + + + + + + + ConvertFreeTextEntry + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + DrawControl + + + + + + + + DrawText + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetHorizontalAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + DoButtonFreeTextClick + + + + + + + DoConvertFreeTextEntry + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Occurs right before a DoubleInput Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button that shows calendar + is clicked and allows you to cancel showing of the popup + + + + + Occurs when Free-Text button is clicked + and allows you to cancel its default action + + + + + Occurs if Free-Text entry value is not natively recognized by + the control and provides you with opportunity to convert that + value to the value the control expects + + + + + DoubleInput + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button + that switches the control into the free-text entry mode when clicked. + + + + + Gets or sets the Numeric String Format that is used to format + the numeric value entered for display purpose. Read more about + available formats in MSDN under "Standard Numeric Format Strings" + and "Custom Numeric Format Strings" topics. + + The format specified here indicates the format for display purpose + only, not for the input purpose. For example to display the number + in system Currency format set the DisplayFormat to 'C'. + + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the value to increment or decrement the value of the + control when the up or down buttons are clicked. + + + + + Gets or sets the input field alignment inside the control + + + + + Gets or sets whether check box shown using ShowCheckBox + property which locks/unlocks the control update is checked. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets a value indicating whether a check box is + displayed to the left of the input value. Set to true if a check box + is displayed to the left of the input value; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed + to the left of the input in the control. When the check box is selected, the value + can be updated. When the check box is cleared, the value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked + and unchecked. Use LockUpdateChecked property to get or sets whether check box is checked. + + + + + + Gets or sets a value indicating whether a spin button control + (up-down control) is used to adjust the current value. The default is false. + + When the ShowUpDown property is set to true, a spin button control + is shown to adjust value of currently focused input item. The value can + be adjusted by using the up and down buttons to change the value. + + + + + + Gets the Cell paint setting for the control + + + + + Handles OnValueChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the Edit state + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + ButtonFreeTextClick + + + + + + + ConvertFreeTextEntry + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + DrawControl + + + + + + + + DrawText + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetHorizontalAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + DoButtonFreeTextClick + + + + + + + DoConvertFreeTextEntry + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Occurs right before a DateTimeInput Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button that shows calendar + is clicked and allows you to cancel showing of the popup + + + + + Occurs when Free-Text button is clicked + and allows you to cancel its default action + + + + + Occurs if Free-Text entry value is not natively recognized by + the control and provides you with opportunity to convert that + value to the value the control expects + + + + + IntegerInput + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button + that switches the control into the free-text entry mode when clicked. + + + + + Gets or sets the Numeric String Format that is used to format + the numeric value entered for display purpose. Read more about + available formats in MSDN under "Standard Numeric Format Strings" + and "Custom Numeric Format Strings" topics. + + The format specified here indicates the format for display purpose + only, not for the input purpose. For example to display the number + in system Currency format set the DisplayFormat to 'C'. + + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the value to increment or decrement the value of the + control when the up or down buttons are clicked. + + + + + Gets or sets the input field alignment inside the control + + + + + Gets or sets whether check box shown using ShowCheckBox + property which locks/unlocks the control update is checked. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets a value indicating whether a check box is + displayed to the left of the input value. Set to true if a check box + is displayed to the left of the input value; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed + to the left of the input in the control. When the check box is selected, the value + can be updated. When the check box is cleared, the value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked + and unchecked. Use LockUpdateChecked property to get or sets whether check box is checked. + + + + + + Gets or sets a value indicating whether a spin button control + (up-down control) is used to adjust the current value. The default is false. + + When the ShowUpDown property is set to true, a spin button control + is shown to adjust value of currently focused input item. The value can + be adjusted by using the up and down buttons to change the value. + + + + + + Gets the Cell paint setting for the control + + + + + Handles OnValueChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the Edit state + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + DrawControl + + + + + + + + DrawText + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetHorizontalAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Occurs right before a IpAddressInput Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button that shows calendar + is clicked and allows you to cancel showing of the popup + + + + + Gets the underlying IpAddressInput control + + + + + Gets or sets whether empty null/nothing state of the control + is allowed. Default value is true which means that Text property + may return null if there is no input value. + + + + + Gets or sets whether free-text entry is automatically + turned off when control loses input focus. Default value is false. + + + + + Gets or sets whether auto-overwrite functionality for input + is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets whether free text entries are attempted to be + auto-resolved to IP address as host/domain names. Default value is true. + + + + + Gets or sets the Background color. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets the reference of the control that will be + displayed on popup that is shown when the drop-down button is clicked. + + + + + Returns the collection of DropDownItems. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the color used as background color to highlight + the text box when it has input focus and FocusHighlight is enabled. + + + + + Gets or sets whether FocusHighlightColor is used as + background color to highlight the text box when it has + input focus. Default value is false. + + + + + Gets or sets the foreground color. + + + + + Gets or sets whether control input is in + free-text input mode. Default value is false. + + + + + Gets or sets the Input Method Editor (IME) mode of the control. + + + + + Gets or sets whether input part of the control is read-only. When + set to true the input part of the control becomes read-only and does + not allow the typing. However, drop-down part if visible still allows + user to possibly change the value of the control through the method you + can provide on drop-down. Use this property to allow change of the value + through drop-down button only. + + + + + Gets or sets whether check box shown using ShowCheckBox + property which locks/unlocks the control update is checked. + + + + + Gets or sets a value indicating whether control's + elements are aligned to support locales using right-to-left fonts. + + + + + List of characters that when pressed would select next input field. For example if you are + allowing time input you could set this property to : so when user presses the : character, + the input is forwarded to the next input field. + + + + + Gets or sets a value indicating whether a check box is displayed to + the left of the input value. Set to true if a check box is displayed + to the left of the input value; otherwise, false. The default is false. + + + + + Gets or sets the text as it is currently displayed to the user. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is + displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark (tip) text displayed inside of + the control when Text is not set and control does not have + input focus. This property supports text-markup. + + + + + Gets the Cell paint setting for the control + + + + + Control for input of the integer value. + + + + + Initializes a new instance of the IpAddressInput class. + + + + + Copies the current value in the control to the Clipboard. + + + + + Pastes the current Clipboard content if possible as the value into the control. + + + + + Moves the current control value to the Clipboard. + + + + + Shows drop-down popup. Note that popup will be shown only if there is a DropDownControl assigned or DropDownItems collection has at least one item. + + + + + Closes the drop-down popup if it is open. + + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Raises the LockUpdateChanged event. + + Provides event data./ + + + + Raises ValueChanged event. + + Provides event arguments. + + + + + + + + + + Called when Command property value changes. + + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows calendar is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ShowCheckBox property is set to true and user changes the lock status of the control by clicking the check-box. + + + + + Occurs when Value property has changed. + + + + + Gets the object that describes the settings for the button that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the button that switches the control into the free-text entry mode when clicked. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets whether empty null/nothing state of the control is allowed. Default value is true which means that Text property + may return null if there is no input value. + + + + + Gets or sets the reference of the control that will be displayed on popup that is shown when drop-down button is clicked. + + + + + Gets the collection of BaseItem derived items displayed on popup menu. + + + + + Gets or sets whether input part of the control is read-only. When set to true the input part of the control becomes + read-only and does not allow the typing. However, drop-down part if visible still allows user to possibly change the value of the control + through the method you can provide on drop-down. + Use this property to allow change of the value through drop-down button only. + + + + + Gets or sets a value indicating whether a check box is displayed to the left of the input value. + Set to true if a check box is displayed to the left of the input value; otherwise, false. The default is false. + + When the ShowCheckBox property is set to true, a check box is displayed to the left of the input in the control. When the check box is selected, the value can be updated. When the check box is cleared, the value is unable to be changed. + You can handle the LockUpdateChanged event to be notified when this check box is checked and unchecked. Use LockUpdateChecked property + to get or sets whether check box is checked. + + + + + + Gets or sets whether check box shown using ShowCheckBox property which locks/unlocks the control update is checked. + + + + + List of characters that when pressed would select next input field. For example if you are + allowing time input you could set this property to : so when user presses the : character, + the input is forwarded to the next input field. + + + + + Gets or sets the IP Address value represented by the control. + + + + + Occurs if Free-Text entry value is not natively recognized by the control and provides you with opportunity to convert that value to the + value control expects. + + + + + Occurs when Free-Text button is clicked and allows you to cancel its default action. + + + + + Gets or sets whether free text entries are attempted to be auto-resolved to IP address as host/domain names. Default value is true. + + + + + Gets or sets whether free-text entry is automatically turned off when control loses input focus. Default value is false. + + + + + Gets or sets whether control input is in free-text input mode. Default value is false. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Handles OnTextChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the Edit state + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + GetAdjustedEditingControlBounds + + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the Label background + + + + + + + + Paints the Label background and content + + + + + + + + + + + OnMouseEnter + + + + + + Processes MouseLeave events + + + + + + Processes MouseMove events + + + + + + Processes MouseDown events + + + + + + Processes MouseUp events + + + + + + CellAlignPoint + + + + + + + Determines if the given part is set + + + + + + + + Gets the background bounds for the given cell + + + + + + + + GetValue + + + + + + + GetHorizontalAlignment + + + + + + + Initiates the refresh of the cell label + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + Gets whether property should be serialized. + + + + + Resets the SingleLineColor property to its default value. + + + + + Hooks or unhooks our system events + + + + + + LabelItem_Click + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the LabelX Column + + + + + + Dispose + + + + + + Button FlatStyle + + + + + Button UseColumnTextForButtonValue + + + + + InCallBack + + + + + Gets the Control LabelX + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the border sides that are displayed. + Default value specifies border on all 4 sides. + + + + + Gets or sets the type of the border drawn around the label. + + + + + Specifies label image. + + + + + Gets/Sets the image position inside the label. + + + + + Gets or sets the bottom padding in pixels. + + + + + Gets or sets the left padding in pixels. + + + + + Gets or sets the top padding in pixels. + + + + + Gets or sets the right padding in pixels. + + + + + Gets or sets the border line color when border is single line. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the horizontal text alignment. + + + + + Gets or sets the vertical text alignment. + + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Gets the Cell paint setting for the ButtonX control + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + KeyDown routine forwards all DataGridView sent keys to + the underlying focusable control + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + + DrawControl + + + + + + + + + + + DrawText + + + + + + + + + MustRenderVisibleControl + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetTextAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Occurs right before a MaskedTextBoxAdv Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button is clicked and allows you to cancel showing of the popup + + + + + Gets the underlying MaskedTextBoxAdv control + + + + + Gets or sets a value indicating whether PromptChar can be entered as valid data. + + + + + Gets or sets a value indicating whether characters outside of the ASCII character set will be accepted. + + + + + Gets or sets the Background color. + + + + + Specifies the background style of the control. + + + + + Gets or sets a value indicating whether the masked text box + control raises the system beep for each user key stroke that it rejects. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets or sets the culture information associated with the masked text box. + + + + + Gets or sets a value that determines whether + literals and prompt characters are copied to the clipboard + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets the reference of the control that will be + displayed on popup that is shown when the drop-down button is clicked. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the color used as background color to highlight + the text box when it has input focus and FocusHighlight is enabled. + + + + + Gets or sets whether FocusHighlightColor is used as + background color to highlight the text box when it has + input focus. Default value is false. + + + + + Gets or sets the foreground color. + + + + + Gets or sets a value indicating whether the prompt characters + in the input mask are hidden when the masked text box loses focus. + + + + + Gets or sets the Input Method Editor (IME) mode of the control. + + + + + Gets or sets the text insertion mode of the masked text box control. + + + + + Gets or sets the input mask to use at run time. + + + + + Gets or sets the character to be displayed in substitute for user input. + + + + + Gets or sets the character used to represent the absence of user input. + + + + + Gets or sets a value indicating whether the parsing of + user input should stop after the first invalid character is reached. + + + + + Gets or sets a value that determines how an input + character that matches the prompt character should be handled. + + + + + Gets or sets a value that determines how + a space input character should be handled. + + + + + Gets or sets a value indicating whether control's + elements are aligned to support locales using right-to-left fonts. + + + + + Gets or sets a value indicating + whether the user is allowed to reenter literal values. + + + + + Gets or sets the text as it is currently displayed to the user. + + + + + Gets or sets how text is aligned in a masked text box control. + + + + + Gets or sets a value that determines whether literals + and prompt characters are included in the formatted string. + + + + + Gets or sets a value indicating whether + the operating system-supplied password character should be used. + + + + + Gets or sets the data type used to verify the data input by the user. + + + + + Gets or sets the watermark hiding behaviour. Default value + indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is + displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark (tip) text displayed inside of + the control when Text is not set and control does not have + input focus. This property supports text-markup. + + + + + Gets the Cell paint setting for the control + + + + + Initializes a new instance of the MaskedTextBoxAdv class. + + + + + Initializes a new instance of the MaskedTextBoxAdv class using the specified input mask. + + A custom mask language provider, derived from the MaskedTextProvider class. + + + + Initializes a new instance of the MaskedTextBoxAdv class using the specified input mask. + + Initializes a new instance of the MaskedTextBox class using the specified input mask. + + + + Raises TypeValidationCompleted event. + + + + + Raises the TextAlignChanged event. + + + + + Raises MaskInputRejected event. + + + + + + Raises the MaskChanged event. + + + + + Raises IsOverwriteModeChanged event. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Shows drop-down popup. Note that popup will be shown only if there is a DropDownControl assigned or DropDownItems collection has at least one item. + + + + + Closes the drop-down popup if it is open. + + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Gets whether property should be serialized by Windows Forms designer. + + + + + Converts the user input string to an instance of the validating type. + + If successful, an Object of the type specified by the ValidatingType property; otherwise, null to indicate conversion failure. + + + + Returns a string that represents the current masked text box. This method overrides ToString. + + A String that contains information about the current MaskedTextBox. The string includes the type, a simplified view of the input string, and the formatted input string. + + + + Called when Command property value changes. + + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows popup is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + Occurs after the insert mode has changed + + + + + Occurs after the input mask is changed. + + + + + Occurs when the user's input or assigned character does not match the corresponding format element of the input mask. + + + + + Occurs when the text alignment is changed. + + + + + Occurs when MaskedTextBox has finished parsing the current value using the ValidatingType property. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets or sets the reference of the control that will be displayed on popup that is shown when drop-down button is clicked. + + + + + Gets the collection of BaseItem derived items displayed on popup menu. + + + + + Gets the reference to internal MaskedTextBox control. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets a value indicating whether PromptChar can be entered as valid data by the user. Default value is true. + + + + + Gets or sets a value indicating whether the MaskedTextBox control accepts characters outside of the ASCII character set. + true if only ASCII is accepted; false if the MaskedTextBox control can accept any arbitrary Unicode character. The default is false. + + + + + Gets or sets a value indicating whether the masked text box control raises the system beep for each user key stroke that it rejects. + + + + + Gets or sets the culture information associated with the masked text box. + + + + + Gets or sets a value that determines whether literals and prompt characters are copied to the clipboard. + + + + + Gets or sets the IFormatProvider to use when performing type validation. + + + + + Gets or sets a value indicating whether the prompt characters in the input mask are hidden when the masked text box loses focus. + + + + + Gets or sets the text insertion mode of the masked text box control. + + + + + Gets or sets the input mask to use at run time. The default value is the empty string which allows any input + + + + + Gets a value indicating whether all required inputs have been entered into the input mask. Returns true if all required input has been entered into the mask; otherwise, false. + + + + + Gets a clone of the mask provider associated with this instance of the masked text box control. Returns masking language provider of type MaskedTextProvider. + + + + + Gets a value indicating whether all required and optional inputs have been entered into the input mask. Returns true if all required and optional inputs have been entered; otherwise, false. + + + + + Gets or sets the character to be displayed in substitute for user input. + + + + + Gets or sets the character used to represent the absence of user input in MaskedTextBox. Returns character used to prompt the user for input. The default is an underscore (_). + + + + + Gets or sets whether text in control is read only. Default value is false. + + + + + Gets or sets a value indicating whether the parsing of user input should stop after the first invalid character is reached. Returns true if processing of the input string should be terminated at the first parsing error; otherwise, false if processing should ignore all errors. The default is false. + + + + + Gets or sets a value that determines how an input character that matches the prompt character should be handled. Returns true if the prompt character entered as input causes the current editable position in the mask to be reset; otherwise, false to indicate that the prompt character is to be processed as a normal input character. The default is true. + + + + + Gets or sets a value that determines how a space input character should be handled. Returns true if the space input character causes the current editable position in the mask to be reset; otherwise, false to indicate that it is to be processed as a normal input character. The default is true. + + + + + Gets or sets a value indicating the currently selected text in the control. + + + + + Gets or sets the number of characters selected in the text box. + + + + + Gets or sets the starting point of text selected in the text box. + + + + + Gets or sets a value indicating whether the defined shortcuts are enabled. + + + + + Gets or sets the text as it is currently displayed to the user. + + + + + Gets or sets how text is aligned in a masked text box control. + + + + + Gets the length of the displayed text. + + + + + Gets or sets a value that determines whether literals and prompt characters are included in the formatted string. + + + + + Gets or sets a value indicating whether the operating system-supplied password character should be used. + + + + + Gets or sets the data type used to verify the data input by the user. Returns Type representing the data type used in validation. The default is null. + + + + + Gets the preferred height for a masked text box. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Handles OnTextChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the Button background + + + + + + + + Paints the button background and content + + + + + + + + + + + OnMouseEnter + + + + + + Processes MouseLeave events + + + + + + Processes MouseMove events + + + + + + Processes MouseDown events + + + + + + Processes MouseUp events + + + + + + Determines if the given part is set + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the content bounds for the given cell + + + + + + + + GetValue + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + FormattedValueType + + + + + Constructor + + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Hooks or unhooks our system events + + + + + + ProgressBarItem_Click + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Button FlatStyle + + + + + Button UseColumnTextForButtonValue + + + + + InCallBack + + + + + Gets the Control ProgressBarX + + + + + Gets or sets the color of the progress chunk. + + + + + Gets or sets the target gradient color of the progress chunk. + + + + + Gets or sets the gradient angle of the progress chunk. + + + + + Gets or sets the predefined color state table for progress bar. Color + specified applies to items with Office 2007 style only. It does not have + any effect on other styles. You can use ColorTable to indicate the state + of the operation that Progress Bar is tracking. Default value is eProgressBarItemColor.Normal. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets/Sets the visual style for the control. + + + + + Gets or sets the default Text to display on the Progress Bar + + + + + Gets or sets whether the text inside the progress bar is displayed. + + + + + Gets or sets the current position of the progress bar. + + + + + Gets the Cell paint setting for the ButtonX control + + + + + GetAdjustedEditingControlBounds + + + + + + + + GetPreferredSize + + + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the Slider background + + + + + + + + Paints the Slider content + + + + + + + + + + + OnMouseEnter + + + + + + Process MouseEnter state + + + + + + + Processes MouseLeave events + + + + + + Processes MouseMove events + + + + + + Processes MouseDown events + + + + + + Processes MouseUp events + + + + + + CellAlignPoint + + + + + + + + GetSliderValue + + + + + + + Determines if the given part is set + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the content bounds for the given cell + + + + + + + Initiates the refresh of the cell slider + + + + + + + Gets the Type of the editing control associated with the cell + + + + + Gets the type of the underlying data + (i.e., the type of the cell's Value property) + + + + + Constructor + + + + + Returns whether property should be serialized. Used by Windows Forms designer. + + + + + Resets the property to default value. Used by Windows Forms designer. + + + + + Hooks or unhooks our system events + + + + + + SliderItem_Click + + + + + + + SliderItem_ValueChanged + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Occurs right before a Slider Cell is painted + + + + + Gets or sets the active row index + + + + + Gets or sets the DataBindingComplete state + + + + + Gets the Control Slider + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets the text label position in relationship to the slider. Default value is Left. + + + + + Gets or sets whether the text label next to the slider is displayed. + + + + + Gets or sets the width of the label part of the item in pixels. Value must be greater than 0. Default value is 38. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the amount by which a call to the PerformStep method increases the current position of the slider. Value must be greater than 0. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the color of the label text. + + + + + Gets or sets whether vertical line track marker is displayed on the slide line. Default value is true. + + + + + Gets or sets the current position of the slider. + + + + + Gets the Cell paint setting for the ButtonX control + + + + + InitializeEditingControl + + + + + + + + DetachEditingControl + + + + + ButtonClearClick + + + + + + + ButtonCustomClick + + + + + + + ButtonCustom2Click + + + + + + + ButtonDropDownClick + + + + + + + KeyDown routine forwards all DataGridView sent keys to + the underlying focusable control + + + + + + + PositionEditingControl + + + + + + + + + + + + + + GetAdjustedEditingControlBounds + + + + + + + + Cell painting + + + + + + + + + + + + + + + + Paints the cell background + + + + + + + + Paints the cell content + + + + + + + + + + + + DrawControl + + + + + + + + + + DrawText + + + + + + + + + Gets the background bounds for the given cell + + + + + + + + Gets the button bounds for the given cell + + + + + + + GetValue + + + + + + + GetTextAlignment + + + + + + + Determines if the given part is set + + + + + + + + Gets the Type of the editing control associated with the cell + + + + + Constructor + + + + + Resets style to default value. Used by windows forms designer. + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Appends text to the current text of a text box. + + The text to append to the current contents of the text box. + + + + Clears all text from the text box control. + + + + + Clears information about the most recent operation from the undo buffer of the text box. + + + + + Copies the current selection in the text box to the Clipboard. + + + + + Moves the current selection in the text box to the Clipboard. + + + + + Specifies that the value of the SelectionLength + property is zero so that no characters are selected in the control. + + + + + Retrieves the character that is closest to the specified location within the control. + + The location from which to seek the nearest character. + The character at the specified location. + + + + Retrieves the index of the character nearest to the specified location. + + The location to search. + The zero-based character index at the specified location. + + + + Retrieves the index of the first character of a given line. + + The line for which to get the index of its first character. + The zero-based character index in the specified line. + + + + Retrieves the index of the first character of the current line. + + The zero-based character index in the current line. + + + + Retrieves the line number from the specified character position within the text of the control. + + The character index position to search. + The zero-based line number in which the character index is located. + + + + Retrieves the location within the control at the specified character index. + + The index of the character for which to retrieve the location. + The location of the specified character. + + + + Replaces the current selection in the text box with the contents of the Clipboard. + + + + + Selects a range of text in the text box. + + The position of the first character in the current text selection within the text box. + The number of characters to select. + + + + Selects all text in the text box. + + + + + Undoes the last edit operation in the text box. + + + + + Replaces the specified selection in the TextBox with the contents of the Clipboard. + + The text to replace. + + + + DoButtonClearClick + + + + + + + DoButtonCustomClick + + + + + + + DoButtonCustom2Click + + + + + + + DoButtonDropDownClick + + + + + + + Gets the cell paint bitmap + + + + + + + Invokes BeforeCellPaint user events + + Row index + Column index + + + + Clones the ButtonX Column + + + + + + Dispose + + + + + + Occurs right before a TextBoxDropDown Cell is painted + + + + + Occurs when Clear button is clicked and allows you + to cancel the default action performed by the button + + + + + Occurs when ButtonCustom control is clicked + + + + + Occurs when ButtonCustom2 control is clicked + + + + + Occurs when Drop-Down button is clicked and allows you to cancel showing of the popup + + + + + Gets the underlying TextBoxDropDown control + + + + + Gets or sets a custom StringCollection to use when + the AutoCompleteSource property is set to CustomSource. + A StringCollection to use with AutoCompleteSource. + + + + + Gets or sets an option that controls + how automatic completion works for the TextBox. + One of the values of AutoCompleteMode. The values are Append, + None, Suggest, and SuggestAppend. The default is None. + + + + + Gets or sets a value specifying the source of complete strings used for automatic completion. + One of the values of AutoCompleteSource. The options are AllSystemSources, AllUrl, FileSystem, HistoryList, RecentlyUsedList, CustomSource, and None. The default is None. + + + + + Gets or sets the Background color. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button + that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button + that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the button + that shows drop-down when clicked. + + + + + Gets or sets whether the TextBox control + modifies the case of characters as they are typed. + One of the CharacterCasing enumeration values that specifies + whether the TextBox control modifies the case of characters. + The default is CharacterCasing.Normal. + + + + + Gets or sets whether the control + will be displayed for the current cell only. + + + + + Gets or sets the reference of the control that will be + displayed on popup that is shown when the drop-down button is clicked. + + + + + Gets or sets whether the control can respond to user interaction + + + + + Gets or sets the color used as background color to highlight + the text box when it has input focus and FocusHighlight is enabled. + + + + + Gets or sets whether FocusHighlightColor is used as + background color to highlight the text box when it has + input focus. Default value is false. + + + + + Gets or sets the foreground color. + + + + + Gets or sets a value indicating whether the selected text in + the text box control remains highlighted when the control loses focus. + true if the selected text does not appear highlighted when the + text box control loses focus; false, if the selected text remains + highlighted when the text box control loses focus. The default is true. + + + + + Gets or sets the Input Method Editor (IME) mode of the control. + + + + + Gets or sets the maximum number of characters the user can type or paste into the text box control. + The number of characters that can be entered into the control. The default is 32767. + + + + + Gets or sets the character to be displayed in substitute for user input. + + + + + Gets or sets a value indicating whether control's + elements are aligned to support locales using right-to-left fonts. + + + + + Gets or sets a value indicating the currently selected text in the control. + A string that represents the currently selected text in the text box. + + + + + Gets or sets the number of characters selected in the text box. + The number of characters selected in the text box. + + + + + Gets or sets the starting point of text selected in the text box. + The starting position of text selected in the text box. + + + + + Gets or sets the text as it is currently displayed to the user. + + + + + Gets or sets how text is aligned in a masked text box control. + + + + + Gets the length of text in the control. + Returns number of characters contained in the text of the control. + + + + + Gets or sets a value indicating whether + the operating system-supplied password character should be used. + + + + + Gets or sets the watermark hiding behaviour. Default value + indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets whether watermark text is + displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark (tip) text displayed inside of + the control when Text is not set and control does not have + input focus. This property supports text-markup. + + + + + Gets the Cell paint setting for the control + + + + + Represents single line text box control with the drop down button to display custom control on popup and additional custom buttons. + + + + + Raises BeforeMultiColumnPopupOpen event. + + Provides event arguments. + + + + Initializes a new instance of the TextBoxDropDown class. + + + + + Raises the TextAlignChanged event. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Shows drop-down popup. Note that popup will be shown only if there is a DropDownControl assigned or DropDownItems collection has at least one item. + + + + + Closes the drop-down popup if it is open. + + + + + Raises the ButtonClearClick event. + + + + + + Raises the ButtonDropDownClick event. + + + + + + Called when DropDownControl property has changed. + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Called when Command property value changes. + + + + + Returns a string that represents the current text in text box. This method overrides ToString. + + A String that contains information about the current TextBox. The string includes the type, a simplified view of the input string, and the formatted input string. + + + + Appends text to the current text of a text box. + + The text to append to the current contents of the text box. + + + + Clears all text from the text box control. + + + + + Clears information about the most recent operation from the undo buffer of the text box. + + + + + Copies the current selection in the text box to the Clipboard. + + + + + Moves the current selection in the text box to the Clipboard. + + + + + Specifies that the value of the SelectionLength property is zero so that no characters are selected in the control. + + + + + Retrieves the character that is closest to the specified location within the control. + + The location from which to seek the nearest character. + The character at the specified location. + + + + Retrieves the index of the character nearest to the specified location. + + The location to search. + The zero-based character index at the specified location. + + + + Retrieves the index of the first character of a given line. + + The line for which to get the index of its first character. + The zero-based character index in the specified line. + + + + Retrieves the index of the first character of the current line. + + The zero-based character index in the current line. + + + + Retrieves the line number from the specified character position within the text of the control. + + The character index position to search. + The zero-based line number in which the character index is located. + + + + Retrieves the location within the control at the specified character index. + + The index of the character for which to retrieve the location. + The location of the specified character. + + + + Replaces the current selection in the text box with the contents of the Clipboard. + + + + + Selects a range of text in the text box. + + The position of the first character in the current text selection within the text box. + The number of characters to select. + + + + Selects all text in the text box. + + + + + Undoes the last edit operation in the text box. + + + + + Replaces the specified selection in the TextBox with the contents of the Clipboard. + + The text to replace. + + + + Occurs when Clear button is clicked and allows you to cancel the default action performed by the button. + + + + + Occurs when Drop-Down button that shows popup is clicked and allows you to cancel showing of the popup. + + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + Occurs when the text alignment is changed. + + + + + Occurs when the value of the Modified property has changed. + + + + + Occurs before the popup is opened and it allows canceling of popup by setting CancelEventArgs.Cancel=true. + + + + + Indicates whether all text is auto-selected when control gets input focus. Default value is false. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Specifies the background style of the control. + + + + + Gets the object that describes the settings for the button that shows drop-down when clicked. + + + + + Gets the object that describes the settings for the button that clears the content of the control when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets or sets a value indicating whether the drop-down is open. + + + + + Indicates whether DropDownControl is automatically focused when popup is open. + + + + + Gets or sets the reference of the control that will be displayed on popup that is shown when drop-down button is clicked. + + + + + Gets the collection of BaseItem derived items displayed on popup menu. + + + + + Gets the reference to internal TextBox control. Use it to get access to the text box events and properties. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets the watermark image displayed inside of the control when Text is not set and control does not have input focus. + + + + + Gets or sets the watermark image alignment. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Gets or sets the text as it is currently displayed to the user. + + + + + Gets the preferred height for a text box. + + + + + Gets or sets a custom StringCollection to use when the AutoCompleteSource property is set to CustomSource. + A StringCollection to use with AutoCompleteSource. + + + + + Gets or sets an option that controls how automatic completion works for the TextBox. + One of the values of AutoCompleteMode. The values are Append, None, Suggest, and SuggestAppend. The default is None. + + + + + Gets or sets a value specifying the source of complete strings used for automatic completion. + One of the values of AutoCompleteSource. The options are AllSystemSources, AllUrl, FileSystem, HistoryList, RecentlyUsedList, CustomSource, and None. The default is None. + + + + + Gets or sets whether the TextBox control modifies the case of characters as they are typed. + One of the CharacterCasing enumeration values that specifies whether the TextBox control modifies the case of characters. The default is CharacterCasing.Normal. + + + + + Gets or sets the character used to mask characters of a password in a single-line TextBox control. + The character used to mask characters entered in a single-line TextBox control. Set the value of this property to 0 (character value) if you do not want the control to mask characters as they are typed. Equals 0 (character value) by default. + + + + + Gets or sets how text is aligned in a TextBox control. + One of the HorizontalAlignment enumeration values that specifies how text is aligned in the control. The default is HorizontalAlignment.Left. + + + + + Gets or sets a value indicating whether the text in the TextBox control should appear as the default password character. + true if the text in the TextBox control should appear as the default password character; otherwise, false. + + + + + Gets or sets a value indicating whether the selected text in the text box control remains highlighted when the control loses focus. + true if the selected text does not appear highlighted when the text box control loses focus; false, if the selected text remains highlighted when the text box control loses focus. The default is true. + + + + + Gets or sets the maximum number of characters the user can type or paste into the text box control. + The number of characters that can be entered into the control. The default is 32767. + + + + + Gets or sets a value that indicates that the text box control has been modified by the user since the control was created or its contents were last set. + true if the control's contents have been modified; otherwise, false. The default is false. + + + + + Gets or sets a value indicating whether text in the text box is read-only. + true if the text box is read-only; otherwise, false. The default is false. + + + + + Gets or sets a value indicating the currently selected text in the control. + A string that represents the currently selected text in the text box. + + + + + Gets or sets the number of characters selected in the text box. + The number of characters selected in the text box. + + + + + Gets or sets the starting point of text selected in the text box. + The starting position of text selected in the text box. + + + + + Gets the length of text in the control.Returns number of characters contained in the text of the control. + + + + + Handles OnTextChanged events + + + + + + ApplyCellStyleToEditingControl + + + + + + Gets EditingControlFormattedValue + + + + + + + Gets whether the given key wants to be processed + by the Control + + + + + + + + PrepareEditingControlForEdit + + + + + + Gets or sets the DataGridView + + + + + Gets or sets the Control Formatted Value + + + + + Gets or sets the Control RoeIndex + + + + + Gets or sets the Control ValueChanged state + + + + + Gets the Panel Cursor + + + + + Gets whether to RepositionEditingControlOnValueChange + + + + + Displays the desktop alerts with optional image or symbol. Text on alerts supports text-markup. + + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Text-markup link click event handler. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Specifies alert color. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Specifies alert color. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Shows desktop alert at specific screen position. + + Text to show on the alert. Text supports text-markup. + Alert position on the screen. + + + + Shows desktop alert at specific screen position. + + Text to show on the alert. Text supports text-markup. + Alert position on the screen. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Shows desktop alert at specific screen position. + + Text to show on the alert. Text supports text-markup. + Image to display on alert. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Alert color. + Alert position on the screen. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Alert color + Alert position on the screen + Text-markup link click event handler. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Alert color + Alert position on the screen + Text-markup link click event handler. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Alert color + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Symbol to show on the alert, see http://www.devcomponents.com/kb2/?p=1347 + Symbol set to use + Symbol color or Color.Empty to use default text color + Alert color + Alert position on the screen + Duration of alert in the seconds. + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Symbol to show on the alert, see http://www.devcomponents.com/kb2/?p=1347 + Symbol set to use + Symbol color or Color.Empty to use default text color + Alert position on the screen + Alert color + Duration of alert in the seconds. + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + Text-markup link click event handler. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Symbol to show on the alert, see http://www.devcomponents.com/kb2/?p=1347 + Symbol set to use + Symbol color or Color.Empty to use default text color + Alert position on the screen + Alert color + Duration of alert in the seconds. + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + Text-markup link click event handler. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Image to display on the alert + Alert screen position + Alert color + Duration of alert in seconds + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Image to display on the alert + Alert screen position + Alert color + Duration of alert in seconds + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + Text-markup link click event handler. + + + + Shows desktop alert. + + Text to show on the alert. Text supports text-markup. + Image to display on the alert + Alert screen position + Alert color + Duration of alert in seconds + Alert ID used to recognize alert if clicked and specified Action is called + Action method to call if alert is clicked. + Text-markup link click event handler. + Specifies reference control which is used to find target screen alert is displayed on. + + + + Raises BeforeAlertDisplayed event. + + Provides event arguments. + + + + Indicates maximum alert size. + + + + + Specifies default alert screen position. + + + + + Specifies default alert color. + + + + + Gets or sets the total time in milliseconds alert animation takes. + Default value is 200. + + + + + Gets or sets time period in seconds after alert closes automatically. + + + + + Gets or sets whether text-markup can be used in alert text, default value is true. + + + + + Indicates whether alert plays exclamation sound when shown. + + + + + Occurs before alert is displayed and allows access to the alert Window through sender. + + + + + Defines predefined desktop alert colors. + + + + + Sets alert size based on its content, it respects MinimumSize and MaximumSize property settings. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Called when TextMarkupEnabled property has changed. + + Old property value + New property value + + + + Occurs when text markup link is clicked. + + + + + Raises MarkupLinkClick event. + + Provides event arguments. + + + + Display balloon. + + Indicates whether alert receives input focus upon showing. + + + + Displays balloon. + + + + + Called when alert needs to be hidden. + + + + + Hides balloon. + + + + + Gets or sets the color of the Symbol. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Indicates image displayed on alert. + + + + + Indicates optional Alert Id. + + + + + Indicates the method that will be invoked if user clicks the alert. + + + + + Gets or sets whether text-markup can be used in Text property. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets or sets the default alert size. + + + + + Gets or sets the total time in milliseconds alert animation takes. + Default value is 200. + + + + + Gets or sets whether balloon will close automatically when user click the close button. + + + + + Gets or sets time period in seconds after alert closes automatically. + + + + + Specifies the reference control which is used to find which screen the alert is displayed on. If not specified alert is displayed on primary screen. + + + + + Indicates spacing between alerts on the screen + + + + + Indicates the request screen position for the alert + + + + + Indicates spacing in pixels between image and text + + + + + Indicates whether alert plays exclamation sound when shown. + + + + + Indicates whether close button on alert is visible + + + + + Defines the alert positions. + + + + + Top-left screen position. + + + + + Top-right screen position. + + + + + Bottom-right screen position. + + + + + Bottom left screen position. + + + + + Component to display flyout popup. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Called when Content property has changed. + + Old property value + New property value + + + + Called when PointerSide property has changed. + + Old property value + New property value + + + + Called when TargetControl property has changed. + + Old property value + New property value + + + + Called when DeepControlIntegration property has changed. + + Old property value + New property value + + + + Called when DisplayMode property has changed. + + Old property value + New property value + + + + Called when CloseMode property has changed. + + Old property value + New property value + + + + Raises PrepareContent event. + + Provides event arguments. + + + + Shows flyout with the Content. + + + + + Returns the flyout size based on Content size. + + Proposed flyout size. + + + + Shows flyout at specified location and with specified size. Size can be empty (0,0) and flyout will be automatically sized based on the content. + + + + + + Raises FlyoutShowing event. + + Provides event arguments. + + + + Raises FlyoutShown event. + + Provides event arguments. + + + + Raises QueryShowFlyout event. + + Provides event arguments. + + + + Shows flyout at specified location and with specified size. Size can be empty (0,0) and flyout will be automatically sized based on the content. + + Screen bounds to display flyout at. + Side of the flyout which will have pointer triangle + Pointer position either x or y depending on which side pointer is displayed on. + Target item for the flyout. + + + + Raises FlyoutClosing event. + + Provides event arguments. + + + + Raises FlyoutClosed event. + + Provides event arguments. + + + + Closes the flyout form if it was open. + + + + + Called when ActivateOnShow property has changed. + + Old property value + New property value + + + + Called when TopMost property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when DropShadow property has changed. + + Old property value + New property value + + + + Called when Parent property has changed. + + Old property value + New property value + + + + Indicates a control, usually panel with other controls inside of it, that is displayed on the flyout popup. + + + + + Indicates the side of the flyout triangle pointer is displayed on. + + + + + Indicates the target control for the flyout display and positioning. + + + + + Indicates whether Flyout integrates on item level with DotNetBar controls it recognizes like SuperTabControl, AdvTree etc. + + + + + Specifies when the flyout is displayed. + + + + + Indicates when Flyout is automatically closed. + + + + + Occurs before the flyout is shown for specific target and allows you to prepare Content for it. Sender of event will be the targeted control or item. + + + + + Occurs after flyout has been shown. + + + + + Provides opportunity to cancel showing of the flyout before any objects are created and allocated. This is preferred event to cancel flyout showing. + + + + + Occurs before flyout is closed and allows you to cancel the closing. + + + + + Occurs after flyout is closed. + + + + + Indicates whether flyout is active/focused when its shown, default value is false. + + + + + Indicates whether flyout is made top-most window when shown + + + + + Gets or sets the background flyout color. Default value is Color.Empty which indicates that current color scheme will be used. + + + + + Gets or sets the flyout border color. Default value of Color.Empty indicates that color scheme will be used. + + + + + Indicates whether flyout displays drop shadow. + + + + + Gets or sets the parent control for the Flyout. Parent is used to find the parent form so flyout can be closed when form is de-activated. + + + + + Defines delegate for the FlyoutShowing event. + + + + + + + Gets the reference to the flyout form. + + + + + Gets the reference to the flyout target usually TargetControl. + + + + + Allows you to cancel showing of the flyout by setting this value to true. + + + + + Initializes a new instance of the FlyoutShowingEventArgs class. + + + + + + + Defines the modes for Flyout display. + + + + + Flyout is displayed manually using flyout.Show() method. + + + + + Flyout is displayed when mouse is over TargetControl. + + + + + Flyout is displayed when mouse is hovering over TargetControl. + + + + + Flyout is displayed when left mouse button is clicked on TargetControl. + + + + + Defines Flyout closing condition. + + + + + Flyout is closed manually using flyout.Close() method. + + + + + Flyout is closed when user clicks outside of flyout bounds. + + + + + Flyout is closed when TargetControl is hidden. + + + + + Flyout is closed when TargetControl loses focus. + + + + + Flyout is closed when parent forms deactivates. + + + + + Defines colors for the Flyout control. + + + + + Specifies Flyout background color. + + + + + Specifies Flyout border color. + + + + + Called when PointerOffset property has changed. + + Old property value + New property value + + + + Called when PointerSide property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Indicates whether flyout displays a drop shadow. + + + + + Gets or sets whether form is made active/focused when shown. + + + + + Gets or sets the pointer offset from the top-left corner + + + + + Gets or sets the side pointer triangle is displayed on. + + + + + Gets or sets the flyout border color. Default value of Color.Empty indicates that color scheme will be used. + + + + + Defines the side of triangle pointer displayed on flyout popup. + + + + + Represents graphical panel control with support for different visual styles and gradients. + + + + + Default constructor. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Applies any region related settings from style to control. + + + + + Applies color scheme colors to the style objects. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the current style of the control. + + Instance of ElementStyle object. + + + + Returns the current mouse down style of the control. + + Instance of ElementStyle object. + + + + Returns the current mouse over style of the control. + + Instance of ElementStyle object. + + + + Paints panel using Windows themes. + + Paint event arguments + + + + Prepares paint surface for paint operation. Called as first thing in Paint event. + + + + + + Paints panel given current style. + + Paint event arguments + + + + Paints insides of the control. + + Paint event arguments. + + + + Indicates whether CanvasColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CanvasColor to it's default value. Used by windows forms designer design-time support. + + + + + Resets the style to it's default value. + + + + + Resets the internal mouse tracking properties that track whether mouse is over the panel and whether is mouse pressed while over the panel. + + + + + Resets the style to it's default value. + + + + + Resets the style to it's default value. + + + + + Called after either ColorScheme or ColorSchemeStyle has changed. If you override make sure that you call base implementation so default + processing can occur. + + + + + Applies predefined Panel color scheme to the control. + + + + + Applies predefined Panel color scheme to the control. + + + + + Applies predefined Button color scheme to the control. + + + + + Applies predefined Label color scheme to the control. + + + + + Applies predefined lable style to the ElementStyle object. + + Reference to ElementStyle object. + + + + Notifies a control that it is the default button so that its appearance and behavior is adjusted accordingly. + + true if the control should behave as a default button; otherwise false. + + + + Generates a Click event for the control. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets Bar Color Scheme. + + + + + Gets or sets whether focus rectangle is displayed when control has focus. + + + + + Gets or sets the canvas color for the panel. Canvas color will be visible on areas of the control that do not get covered + by the style and it will also be used as a base color for style to be painted on. + + + + + Gets or sets the panel style. + + + + + Gets or sets the panel style when mouse hovers over the panel. + + + + + Gets or sets the panel style when mouse button is pressed on the panel. + + + + + Gets or sets whether anti-alias smoothing is used while painting. + + + + + Gets or sets color scheme style. + + + + + Gets or sets whether text rectangle painted on panel is considering docked controls inside the panel. + + + + + Gets or sets the text rectangle. This property is set by internal implementation and it should not be set by outside code. + + + + + Gets or sets whether painting of the control is suspended. + + + + + Gets or sets the value returned to the parent form when the button is clicked. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Calls base WndProc implementation + + Describes Windows Message + + + + Gets the ItemPaintArgs which provide information for rendering. + + Reference to Canvas + Returns the new ItemPaintArgs instance + + + + Paints the background of the control + + PaintEventArgs arguments + + + + Converts the client point into the screen point. + + Client point + Client point converted into screen coordinates. + + + + Adjusts the client rectangle for the control. + + Reference to new client rectangle. + + + + Adjusts the border rectangle before the non-client border is rendered. + + Border rectangle + + + + Occurs after non-client area is rendered and provides opportunity to render on top of it. + + Reference to Graphics object. + + + + Gets the reference to the BorderStyle used by the control if any. + + + + + Returns the Windows handle associated with the control. + + + + + Returns width of the control. + + + + + Returns the height of the control. + + + + + Returns whether handled for the control has been created. + + + + + Returns background color of the control. + + + + + Returns background color of the control when Enabled=false. + + + + + Returns whether control is enabled. + + + + + Invalidates non-client area of the control. + + + + + Paints insides of the control. + + Paint event arguments. + + + + Returns the size of the panel calculated based on the text assigned. + + Calculated size of the panel or Size.Empty if panel size cannot be calculated. + + + + Applies color scheme to the panel. + + + + + Applies default group panel style to the control. + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Gets or sets the panel color scheme. + + + + + Gets or sets the image that appears in title with text. + + + + + Gets or sets the position of the title image. Default value is left. + + + + + Gets or sets the scrollbar skining type when control is using Office 2007 style. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether box around the title of the group is drawn. Default value is true. + + + + + Gets or sets whether text rectangle painted on panel is considering docked controls inside the panel. + + + + + Gets or sets whether panel automatically provides shadows for child controls. Default value is false. + + + + + Specifies back color when Enabled=false + + + + + Defines predefined color schemes for panel control. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrived from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets whether custom styling (Office 2007 style) is enabled. Default value is true. + + + + + Recalculates the size of the internal item. + + + + + Gets whether property should be serialized. + + + + + Resets the SingleLineColor property to its default value. + + + + + Invokes the MarkupLinkClick event. + + Provides additional data about event. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Command property value changes. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Specifies spacing between label image and text. + + + + + Gets or sets whether text-markup support is enabled for controls Text property. Default value is true. + Set this property to false to display HTML or other markup in the control instead of it being parsed as text-markup. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the border sides that are displayed. Default value specifies border on all 4 sides. + + + + + Gets or sets the type of the border drawn around the label. + + + + + Specifies label image. + + + + + Gets/Sets the image position inside the label. + + + + + Gets or sets the border line color when border is single line. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the horizontal text alignment. + + + + + Gets or sets the text vertical alignment. + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Gets or sets the left padding in pixels. + + + + + Gets or sets the right padding in pixels. + + + + + Gets or sets the top padding in pixels. + + + + + Gets or sets the bottom padding in pixels. + + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets text-orientation. Default is horizontal. + + + + + Gets or sets how vertical text is rotated when TextOrientation = Vertical. + + + + + Gets the underlying LabelItem + + + + + Indicates the symbol displayed on label instead of the image. Setting the symbol overrides the image setting. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the color of the symbol. + + + + + Indicates whether label text is rendered using bold font unless the Font property is specifically set to different font. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + A single horizontal or vertical line control. + + + + + Initializes a new instance of the Line class. + + + + + Called when StartLineCap property has changed. + + Old property value + New property value + + + + Called when StartLineCapSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when EndLineCap property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Specifies the line alignment within control bounds. + + + + + Specifies distance from the start of a line to the beginning of a dash pattern. + + + + + Specifies the line dash style. + + + + + Gets or sets the line thickness in pixels. + + + + + Gets or sets whether vertical line is drawn. Default value is false which means horizontal line is drawn. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Indicates the start of the line cap. + + + + + Indicates the size of the start cap. + + + + + Indicates the start of the line cap. + + + + + Indicates end line cap size. + + + + + Defined line end types. + + + + + Provides data for CheckStateConvert event. + + + + + Initializes a new instance of the CheckStateConvertEventArgs class. + + + + + + Represents generic base control for items container control. + + + + + Represents base control for bars. + + + + + Provides interface for controls that support ribbon customization. + + + + + Called when item contained by the container is right-clicked. + + Instance of the item that was right-clicked. + + + + Creates new accessibility instance. + + Reference to AccessibleObject. + + + + Notifies the accessibility client applications of the specified AccessibleEvents for the specified child control. + + The AccessibleEvents object to notify the accessibility client applications of. + The child Control to notify of the accessible event. + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Invokes the DotNetBar Customize dialog. + + + + + Raises BeforeItemDrag event. + + Provides event arguments. + + + + + Called when DragInProgress property value has changed. + + + + + Releases the focus from the bar and selects the control that had focus before bar was selected. If control that had focus could not be determined focus will stay on the bar. + This method is used by internal DotNetBar implementation and you should not use it. + + + + + Invokes ItemDoubleClick event. + + Reference to item double-clicked + Event arguments + + + + Invokes the ItemClick event. + + Reference to the item that was clicked. + + + + Returns the item at specified coordinates or null if no item can be found. + + X - coordinate to test. + Y - coordinate to test. + + + + + Sets the height of the control to the automatically calcualted height based on content. + + + + + Returns automatically calculated height of the control given current content. + + Height in pixels. + + + + Returns automatically calculated width of the control given current content. + + Width in pixels. + + + + Clean up any resources being used. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Applies design-time defaults to control. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrived from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Indicates to control that all further update operations should not result in layout and refresh of control content. + Use this method to optimize the addition of new items to the control. This method supports nested calls meaning + that multiple calls are allowed but they must be ended with appropriate number of EndUpdate calls. + IsUpdateSuspended property returns whether update is suspended. + + + + + Indicates that update operation is complete and that control should perform layout and refresh to show changes. See BeginUpdate + for more details. + + + + + Indicates that update operation is complete and that control should perform layout and refresh to show changes. See BeginUpdate + for more details. + + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Invalidates the control layout and forces the control to recalculates the layout for the items it contains on next layout operation invoked using RecalcLayout method. + + + Call to this method is usually followed by the call to + RecalcLayout method to perform the control layout. + + + + + Applies any layout changes and repaint the control. + + + + + Sets up timer that watches when active window changes. + + + + + Called after change of active window has been detected. SetupActiveWindowTimer must be called to enable detection. + + + + + Releases and disposes the active window watcher timer. + + + + + Called when item on popup container is right-clicked. + + Instance of the item that is right-clicked. + + + + Called when item on popup container is right-clicked. + + Instance of the item that is right-clicked. + + + + Occurs when Checked property of an button has changed. + + + + + Occurs when Item is clicked. + + + + + Occurs when Item is clicked. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when user changes the item position, removes the item, adds new item or creates new bar. + + + + + Occurs after an Item is removed from SubItemsCollection. + + + + + Occurs after an Item has been added to the SubItemsCollection. + + + + + Occurs when ControlContainerControl is created and contained control is needed. + + + + + Occurs when Text property of an Item has changed. + + + + + Use this event if you want to serialize the hosted control state directly into the DotNetBar definition file. + + + + + Use this event if you want to deserialize the hosted control state directly from the DotNetBar definition file. + + + + + Occurs after DotNetBar definition is loaded. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Occurs before tooltip for an item is shown. Sender could be the BaseItem or derived class for which tooltip is being displayed or it could be a ToolTip object itself it tooltip is not displayed for any item in particular. + + + + + Gets or sets the form SideBar is attached to. + + + + + Gets or sets whether accelerator letters on buttons are underlined. Default value is false which indicates that system setting is used + to determine whether accelerator letters are underlined. Setting this property to true + will always display accelerator letter underlined. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + Occurs before an item drag & drop operation is started and allows cancellation. + + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Gets or sets whether hooks are used for internal DotNetBar system functionality. Using hooks is recommended only if DotNetBar is used in hybrid environments like Visual Studio designers or IE. + + + + + Gets whether control is in menu mode. + + + + + Returns the reference to the control that last had input focus. This property should be used to + determine which control had input focus before bar gained the focus. Use it to apply + the menu command to active control. + + + + + Returns whether control has any popups registered. + + + + + Gets or sets whether internal WM_GESTURENOTIFY handler is enabled. Default value is false. + + + + + Gets or sets whether ProcessDialogKey method calls base ContainerControl implementation. + By default base implementation is called but under certain conditions you might want to set + this property to true to receive KeyDown events for Arrow keys. + + + + + Gets or sets whether shortuct processing for the items hosted by this control is enabled. Default value is true. + + + + + Gets or sets the item default accessibility action will be performed on. + + + + + Gets or sets whether control height is set automatically based on the content. Default value is false. + + + + + Specifies the background style of the control. + + + + + Indicates whether shortucts handled by items are dispatched to the next handler or control. + + + + + Gets or sets Bar Color Scheme. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Specifies whether SideBar is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether Key Tips (accelerator keys) for items are displayed on top of them. + + + + + Gets or sets the font that is used to display Key Tips (accelerator keys) when they are displayed. Default value is null which means + that control Font is used for Key Tips display. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets whether mouse over fade effect is enabled. Default value is true. + + + + + Gets whether control layout is suspended becouse of the call to BeginUpdate method. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Gets/Sets the Image size for all sub-items on the Bar. + + + + + Gets or sets whether external ButtonItem object is accepted in drag and drop operation. UseNativeDragDrop must be set to true in order for this property to be effective. + + + + + Gets or sets whether native .NET Drag and Drop is used by control to perform drag and drop operations. AllowDrop must be set to true to allow drop of the items on control. + + + + + Gets or sets whether control supports drag & drop. Default value is false. + + + + + Represents the method that will handle the ItemRemoved event. + + + + + Defines notification interface for scrollable item controls. + + + + + Indicates that item has been selected via keyboard. + + Reference to item being selected + + + + Gets or sets whether selection is allowed. + + + + + Gets or sets the selected item index. + + + + + Gets or sets the BindingContext. + + + + + Invalidates non-client area of the control. This method should be used + when you need to invalidate non-client area of the control. + + + + + Scrolls the control so that item is displayed within the visible bounds of the control. AutoScroll must be set to true for this method to work. + + Item to ensure visibility for. Item must belong to this control. + + + + Indicates that item has been selected via keyboard. + + Reference to item being selected + + + + Called when an item should be selected as result of the keyboard action. + + Item that is being selected. + + + + Raises the DataSourceChanged event. + + An EventArgs that contains the event data. + + + + When overridden in a derived class, resynchronizes the item data with the contents of the data source. + + + + + Raises the DataNodeCreated event. + + Provides event arguments. + + + + Raises the SelectedIndexChanged event. + + Event arguments. + + + + Called when TouchEnabled property has changed. + + Old property value + New property value + + + + Indicates whether container responds to keyboard presses and changes the active/mouse over item. + + + + + Gets or sets the scroll-bar visual style. + + + + + Gets/Sets the visual style for items and color scheme. + + + + + Gets or sets spacing in pixels between items. Default value is 1. + + + + + Indicates whether control can be scrolled when client area is dragged using mouse. Default value is true. + + + + + Gets the reference to internal vertical scroll-bar control if one is created or null if no scrollbar is visible. + + + + + Gets the reference to internal horizontal scroll-bar control if one is created or null if no scrollbar is visible. + + + + + Gets or sets a value indicating whether the control enables the user to scroll to items placed outside of its visible boundaries. + + + + + Gets or sets the minimum size of the auto-scroll. Returns a Size that represents the minimum height and width of the scrolling area in pixels. + This property is managed internally by control and should not be modified. + + + + + Gets or sets the location of the auto-scroll position. + + + + + Gets or sets whether all painting in control is suspended. + + + + + Gets or sets the index specifying the currently selected item. + + + + + Returns collection of items on a bar for binding support. + + + + + Gets or sets the item template that is repeated for each data-row when using data binding. + + + + + Gets the collection of the binding applied to ItemTemplate visual when using data-binding. + + + + + Gets or sets whether external ButtonItem object is accepted in drag and drop operation. UseNativeDragDrop must be set to true in order for this property to be effective. + + + + + Gets or sets whether native .NET Drag and Drop is used by control to perform drag and drop operations. AllowDrop must be set to true to allow drop of the items on control. + + + + + Gets or sets whether automatic drag & drop support is enabled. Default value is false. + + + + + Gets or sets the data source for the ComboTree. Expected is an object that implements the IList or IListSource interfaces, + such as a DataSet or an Array. The default is null. + + + + + Occurs when the DataSource changes. + + + + + Occurs when a item for an data-bound object item has been created and provides you with opportunity to modify the created item. + + + + + Occurs when value of SelectedIndex property has changed. + + + + + Indicates whether touch support for scrolling is enabled. + + + + + Initializes a new instance of the ListBoxAdv class. + + + + + Called when CheckBoxesVisible property has changed. + + Old property value + New property value + + + + Called when ItemHeight property has changed. + + Old property value + New property value + + + + Called when SelectionMode property has changed. + + Old property value + New property value + + + + Selects or clears the selection for the specified item in a ListBoxAdv. Use this property to set the selection of items in a multiple-selection ListBoxAdv. To select an item in a single-selection ListBox, use the SelectedIndex property. + + The zero-based index of the item in a ListBox to select or clear the selection for. You can pass -1 to clear the selection. + true to select the specified item; otherwise, false. + + + + Selects or clears the selection for the specified item in a ListBoxAdv. Use this property to set the selection of items in a multiple-selection ListBoxAdv. To select an item in a single-selection ListBox, use the SelectedIndex property. + + The zero-based index of the item in a ListBox to select or clear the selection for. You can pass -1 to clear the selection. + true to select the specified item; otherwise, false. + Indicates the source of the change. + + + + Selects next visible list box item. + + + + + Selects previous visible list box item. + + + + + Gets ListBoxItem which represents an object value from Items collection when Items collection contains non ListBoxItem objects. + + Value to get ListBoxItem for. + + + + + Called when DisplayMember property has changed. + + Old property value + New property value + + + + Called when CheckStateMember property has changed. + + Old property value + New property value + + + + Raises CheckStateConvert event. + + Provides event arguments. + + + + Called when ValueMember property has changed. + + Old property value + New property value + + + + Clears internal property descriptors cache when data-binding is used. In most cases it is not needed that you call this method. Do so only if instructed by DevComponents support. + + + + + Finds the first item in the ListBox that starts with the specified string. The search starts at a specific starting index. + + The text to search for. + The zero-based index of the first item found; returns ListBox.NoMatches if no match is found. + + + + Finds the first item in the ListBox that starts with the specified string. The search starts at a specific starting index. + + The text to search for. + The zero-based index of the item before the first item to be searched. Set to negative one (-1) to search from the beginning of the control. + The zero-based index of the first item found; returns ListBox.NoMatches if no match is found. + + + + Finds the first item in the ListBox that exactly matches the specified string. The search starts at a specific starting index. + + The text to search for. + The zero-based index of the first item found; returns ListBox.NoMatches if no match is found. + + + + Finds the first item in the ListBox that exactly matches the specified string. The search starts at a specific starting index. + + The text to search for. + The zero-based index of the item before the first item to be searched. Set to negative one (-1) to search from the beginning of the control. + The zero-based index of the first item found; returns ListBox.NoMatches if no match is found. + + + + Raises ItemCheck event. + + Provides event arguments. + + + + Sets the check state of the item at the specified index. + + The index of the item to set the state for. + One of the CheckState values. + + + + Gets the list of items displayed in list box. + + + + + Indicates whether check-boxes are visible inside list box items. + + + + + Indicates fixed item height. Maybe set to 0 to indicate that each item should be sized based on its content. + + + + + Specifies the selection mode used by the control. + + + + + Gets or sets the zero-based index of the currently selected item in a ListBoxAdv. Negative one (-1) is returned if no item is selected. + + + + + Gets a collection that contains the zero-based indexes of all currently selected items in the ListBoxAdv. Do not modify items in this collection. To select or deselect list items while in multi-selection mode use SetSelected method. + + + + + Gets a collection containing the currently selected items in the ListBoxAdv. Do not modify items in this collection. To select or deselect list items while in multi-selection mode use SetSelected method. + + + + + Gets or sets the selected item. + + + + + Indicates property name which will provide the value to display for this list box when data-binding is used and DataSource is set. + + + + + Indicates property name which will provide the value for CheckState of the list box item when data-binding is used and DataSource is set. + + + + + Occurs when using data-binding with CheckStateMember specified and it allows you to convert a property value to CheckState. + + + + + Gets or sets the value of the member property specified by the ValueMember property. If ValueMember specifies property that cannot be found on selected object this property returns null. + + + + + Indicates property name which will return the value for the selected item when SelectedValue property is accessed. + + + + + Occurs when CheckState of an ListBoxItem changes and it allows you to cancel the change. + + + + + Gets collection of checked items in the list. Modifying this collection does not have any effect on actual checked items. Use SetItemCheckState to set checked state of an item or access ListBoxItem directly and set its CheckState property. + + + + + Defines selection modes for list control. + + + + + Items cannot be selected. + + + + + Only one item at the time can be selected. + + + + + Multiple items can be selected. A mouse click or pressing the SPACEBAR selects or deselects an item in the list. + + + + + Multiple items can be selected. Pressing SHIFT and clicking the mouse or pressing SHIFT and one of the arrow keys (UP ARROW, DOWN ARROW, LEFT ARROW, and RIGHT ARROW) extends the selection from the previously selected item to the current item. Pressing CTRL and clicking the mouse selects or deselects an item in the list. + + + + + Indicates that CheckState change of the item should be canceled. + + + + + Specifies the ListBoxItem that was changing. + + + + + When data-bound provides the object which was used to generate an ListBoxItem. + + + + + Initializes a new instance of the ListBoxAdvItemCheckEventArgs class. + + + + + + + Represents the ListBoxAdv item for internal use. Not for public usage. + + + + + Returns copy of the item. + + + + + Copies the ListBoxItem specific properties to new instance of the item. + + New ListBoxItem instance. + + + + Copies the ListBoxItem specific properties to new instance of the item. + + New item instance. + + + + Called when CheckState property has changed. + + Old property value + New property value + + + + Called when IsSelected property has changed. + + Old property value + New property value + + + + Sets selected state of the item including the source of the action that caused the change. + + + + + + + Called when HotTracking property has changed. + + Old property value + New property value + + + + Called when Image property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether mouse is over the item. + + + + + Gets the mouse state of the check box part of item if visible. + + + + + Indicates check-box state if visible. + + + + + Gets or sets whether item is selected. + + + + + Indicates whether item changes its background colors when mouse is over the item. + + + + + Specifies image displayed on the item. + + + + + Gets or sets the color of the Symbol. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Indicates the array of colors that when set are used to draw the background of the item. + + + + + Gets or sets the color of the text. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the text alignment. Default value is left. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Paints ListBoxItem. + + Provides arguments for the operation. + + + + Provides data for the Slider item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the ListBoxItem being rendered. + Reference to the graphics object. + + + + Defines color table for ListBoxItem. + + + + + Specifies default state color table. + + + + + Specifies mouse over state color table. + + + + + Specifies selected state color table. + + + + + Defines single state color table for ListBoxItem. + + + + + Initializes a new instance of the OfficeListBoxItemStateColorTable class. + + + + + Initializes a new instance of the OfficeListBoxItemStateColorTable class. + + + + + + + + + Initializes a new instance of the OfficeListBoxItemStateColorTable class. + + + + + + Indicates item text color. + + + + + Gets or sets the background colors for the item. + + + + + Gets or sets the back colors gradient angle if there is more than one color in BackColors array. + + + + + Gets or sets the gradient colors positions if there is more than one color in BackColors array. + + + + + Paints StepItem. + + Provides arguments for the operation. + + + + Represents the extended ListView control with the Office 2007 Style. + + + + + Called when ColumnHeaderFont property has changed. + + Old property value + New property value + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Resets internal Column Header handler. This method should be called after you change the View property + at run-time. If your control is always in single view there is no need to call this method. This method + will work only when controls handle has already been created. + + + + + Resets the internal color table reference. This method is usually called automatically by + + + + + Gets whether property should be serialized by VS.NET designer. + + + + + Resets property to its default value. + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrived from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Represents the extended ListView control with the Office 2007 Style. + + + + + Represents the extended ListView control with the Office 2007 Style. + + + + + Gets or sets the column header font. Default value is null which means controls Font property is used. + + + + + Gets or sets the item foreground color when control or item is disabled. By default SystemColors.Dark is used. + + + + + Gets or sets whether control displays focus cues when focused. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Specifies the control border style. Default value has Class property set so the system style for the control is used. + + + + + Specifies back color when Enabled=false + + + + + Summary description for MessageHandler. + + + + + Calculates the size of non-client area of the control. + + + + + Paints the non-client area of the control. + + + + + Draws the non-client area buffered. + + + + + Represents the PageNavigator control + + + + + Constructor + + + + + Hooks or unhooks our control events + + true to hook, false to unhook + + + + Handles NavigatePreviousPage events + + + + + + + Raises the NavigatePreviousPage event + + + + + Handles NavigateToday events + + + + + + + Raises the NavigateToday event + + + + + Handles NavigateNextPage events + + + + + + + Raises the NavigateNextPage event + + + + + Forces the button to perform internal layout. + + + + + Dispose + + + + + + Occurs when NavigateNextPage button is clicked + + + + + Occurs when NavigateToday button is clicked + + + + + Occurs when NavigatePreviousPage button is clicked + + + + + DefaultSize + + + + + Gets or sets the layout orientation. Default value is horizontal. + + + + + Gets or sets the tooltip for the PreviousPage button of the control + + + + + Gets or sets the tooltip for the Today button + + + + + Gets or sets the tooltip for the NextPage button + + + + + Gets/Sets the visual style for the control. + + + + + PageNavigator buttons + + + + + Previous page + + + + + Today + + + + + Next page + + + + + Represents the PageNavigate item + + + + + Creates new instance of PageNavigateItem + + + + + Creates new instance of PageNavigateItem and assigns the name to it + + Item name + + + + Handles size recalc + + + + + Handles external size changes + + + + + Lays out our control based upon its + vertical / horizontal orientation + + + + + Handles control rendering + + + + + + Draws the PreviousPage button + + Graphics + Office2007ScrollBarColorTable + + + + Gets the PreviousPage bitmap + + + + + + + + Creates the PreviousPage bitmap + + + + + + + + Draws the Today button + + Graphics + Office2007ScrollBarColorTable + + + + Gets the Today Bitmap + + + + + + + + Creates the Today Bitmap + + + + + + + + Draws the NextPage button + + + + + + + Gets the NextPage Bitmap + + + + + + + + Creates the NextPage Bitmap + + + + + + + + Centers the given rect + + + + + + + Processes InternalMouseMove events + + + + + + Returns the HitText area for the given point + + + + + + + Processes Mouse Leave events + + + + + Processes Mouse Down events + + + + + + Processes Mouse Up events + + + + + + Raises the NavigatePreviousPage event + + + + + Raises the NavigateToday event + + + + + Raises the NavigateNextPage event + + + + + Handles timer click events + + + + + + + Enables our click timer + + + + + Disposes of the click timer + + + + + OnTooltipChanged + + + + + Updates the control tooltip + + + + + Returns copy of the item + + + + + Copies the PageNavigatorItem specific properties to + new instance of the item + + New PageNavigatorItem instance + + + + Dispose + + + + + Releases the given bitmap + + Bitmap to release + + + + Occurs when NavigateNextPage button is clicked + + + + + Occurs when NavigateToday button is clicked + + + + + Occurs when NavigatePreviousPage button is clicked + + + + + Gets or sets the MouseOverPart + + + + + Gets or sets the MouseDownPart + + + + + Gets or sets the control orientation. Default value is Horizontal + + + + + Gets or sets whether Click event will be auto repeated + when mouse button is kept pressed over the item + + + + + Gets or sets the auto-repeat interval for the click event + when mouse button is kept pressed over the item + + + + + Gets or sets the tooltip for the PreviousPage button of the control + + + + + Gets or sets the tooltip for the Today button + + + + + Gets or sets the tooltip for the NextPage button + + + + + Defines the PageNavigator item parts + + + + + Indicates no part + + + + + Indicates the PreviousPage button of the control + + + + + Indicates the TodayPage button of the control + + + + + Indicates the NextPage button of the control + + + + + Initializes a new instance of the PageSlider class. + + + + + Raises SelectedPageChanged event. + + Provides event arguments. + + + + Called when IndicatorVisible property has changed. + + Old property value + New property value + + + + Returns array of all pages in control. + + Array of pages. + + + + Removes and disposes all pages within the control. + + + + + Called when SelectedPage property has changed. + + Old property value + New property value + + + + Called when AnimationTime property has changed. + + Old property value + New property value + + + + Called when SelectedPagePadding property has changed. + + Old property value + New property value + + + + Called when PageSpacing property has changed. + + Old property value + New property value + + + + Called when NextPageVisibleMargin property has changed. + + Old property value + New property value + + + + Called when Orientation property has changed. + + Old property value + New property value + + + + Called when ScrollBarVisibility property has changed. + + Old property value + New property value + + + + Called when TouchEnabled property has changed. + + Old property value + New property value + + + + Occurs when selected page has changed. + + + + + Gets or sets whether current page indicator is visible. Default value is true. + + + + + Indicates selected page. + + + + + Indicates the animation time in milliseconds for operations that perform visual animation of transition. Set to zero to disable animation. + + + + + Gets or sets zero based selected page index. If there is no page selected returns -1. + + + + + Gets the total number of pages displayed by the control. + + + + + Gets or sets the single page padding. + + + + + Gets or sets the spacing in pixels between pages. + + + + + Gets or sets the page layout orientation. Default is horizontal. + + + + + Indicates whether page can be dragged using mouse to change currently selected page + + + + + Indicates whether selected page can be changed by using mouse drag on PageSlider client area which is not covered by pages. + + + + + Indicates scrollbar visibility. + + + + + Gets or sets the time in milliseconds that scrollbar is kept visible when there is no activity in control and mouse is over the control. + + + + + Indicates whether native touch support in control is enabled if available on target system. + + + + + Specifies scrollbar visibility. + + + + + Scrollbars are not visible. + + + + + Scrollbars are visible only if mouse is inside of the control. + + + + + Scrollbars are always visible. + + + + + Specifies level of touch enabled on the control. + + + + + Touch is enabled control wide. + + + + + Touch is disabled control wide. + + + + + Touch is enabled but only for the direct control client content. If touch input occurs on any child control it is not processed. + + + + + Called when PageNumber property has changed. + + Old property value + New property value + + + + Gets or sets page number. Page number determines the order in which pages are displayed inside of the PageSlider control. + + + + + Represents control which visually indicates current step in a sequence. + + + + + Initializes a new instance of the StepIndicator class. + + + + + Called when StepCount property has changed. + + Old property value + New property value + + + + Called when CurrentStep property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Orientation property has changed. + + Old property value + New property value + + + + Gets or sets the total number of steps that control will track. Default value is 10. + + + + + Gets or sets the current step in sequence. Current step should be less or equal than StepCount. + + + + + Gets or sets the background color of the control. + + + + + Gets or sets the color of the current step indicator. + + + + + Indicates the control orientation. + + + + + Processes the resizing messages. + + The message. + true, if the WndProc method from the base class shouldn't be invoked. + + + + Gets whether popup has been resized by end-user. + + + + + Type of resize mode, grips are automatically drawn at bottom-left and bottom-right corners. + + + + + Gets or sets whether Close button is visible in fotter. Resize handle must also be visible in order for close button to render. + + + + + Gets resize grip bounds. + + + + + Initializes a new instance of the ResizeGripColors structure. + + + + + + + + Specifies the popup resize modes + + + + + Raises Closed event. + + Provides event arguments. + + + + Raises Closing event. + + Provides event arguments. + + + + Show control on popup at specified location. + + + + + Shows control on popup at specified location with specified popup resize edges. + + + + + Shows control on popup at specified location and size with specified popup resize edges. + + + + + Hides popup if visible. + + + + + Occurs after popup is closed. + + + + + Occurs before popup is closed and allows canceling. + + + + + Gets whether popup is visible. + + + + + Gets the control displayed on popup. + + + + + Gets or sets the popup padding. + + + + + Gets or sets popup margin. + + + + + Represents the stand-alone progress bar control. + + + + + Advances the current position of the progress bar by the amount of the Step property. + + + + + Advances the current position of the progress bar by the specified amount. + + The amount by which to increment the progress bar's current position. + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the current position of the progress bar. + + + + + Gets or sets the amount by which a call to the PerformStep method increases the current position of the progress bar. + + + + + Gets or sets the color of the progress chunk. + + + + + Gets or sets the target gradient color of the progress chunk. + + + + + Gets or sets the gradient angle of the progress chunk. + + + + + Gets or sets whether the text inside the progress bar is displayed. + + + + + Gets or sets the type of progress bar used to indicate progress. The Standard style displays the progress based on Minimum, Maximum and current Value. + The Marquee type is automatically moving progress bar that is used to indicate an ongoing operation for which the actual duration cannot be estimated. + + + + + Gets or sets the marquee animation speed in milliseconds. + + + + + Gets or sets the predefined color state table for progress bar. Color specified applies to items with Office 2007 style only. It does not have + any effect on other styles. You can use ColorTable to indicate the state of the operation that Progress Bar is tracking. Default value is eProgressBarItemColor.Normal. + + + + + Gets the underlying ProgressBarItem + + + + + Defines color table for the StepItem. + + + + + Gets or sets the default state StepItem colors. + + + + + Gets or sets the mouse over state StepItem colors. + + + + + Gets or sets the StepItem colors when mouse is pressed over the item. + + + + + Gets or sets the StepItem colors when Value property is greater than Minimum property value, i.e. item is reporting progress. + Note that only Background color is used when progress indicator is drawn. + + + + + Paints StepItem. + + Provides arguments for the operation. + + + + Paints StepItem. + + Provides arguments for the operation. + + + + Represents the color table for StepItem single state. + + + + + Initializes a new instance of the OfficeStepItemStateColorTable class. + + + + + Initializes a new instance of the OfficeStepItemStateColorTable class. + + + + + + + + Initializes a new instance of the OfficeStepItemStateColorTable class. + + + + + + + + + + Gets or sets the background colors for the step item. + + + + + Gets or sets the back colors gradient angle if there is more than one color in BackColors array. + + + + + Gets or sets the gradient colors positions if there is more than one color in BackColors array. + + + + + Gets or sets the text color for the step item. + + + + + Gets or sets the border colors of the step item. + + + + + Represents the progress steps control. + + + + + Initializes a new instance of the ProgressSteps class. + + + + + Returns collection of items on a bar. + + + + + Gets/Sets the visual style for items and color scheme. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets the arrow pointer width for the StepItem objects hosted within this container. + + + + + Represents a step item which is used to show single step in multi-step progress control. + + + + + Creates new instance of StepItem. + + + + + Creates new instance of StepItem and assigns the name to it. + + Item name. + + + + Creates new instance of StepItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the StepItem specific properties to new instance of the item. + + New StepItem instance. + + + + Copies the StepItem specific properties to new instance of the item. + + New StepItem instance. + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Called when Minimum property has changed. + + Old property value + New property value + + + + Called when Maximum property has changed. + + Old property value + New property value + + + + Called when Value property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Called when Image property has changed. + + Old property value + New property value + + + + Called when MinimumSize property has changed. + + Old property value + New property value + + + + Called when HotTracking property has changed. + + Old property value + New property value + + + + Called when ImageTextSpacing property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets the render path of the item. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the color of the Symbol. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Indicates the image that is displayed next to the item text label. + + + + + Gets or sets whether this is first item in StepControl. + + + + + Gets or sets whether this is laste item in StepControl. + + + + + Indicates minimum size of the item + + + + + Specifies whether item changes its appearance when mouse is moved over the item + + + + + Gets whether mouse is over the item. + + + + + Gets whether left mouse button is pressed on the item. + + + + + Indicates the spacing between image and text. + + + + + Gets or sets padding around content of the item. + + + + + Indicates the array of colors that when set are used to draw the current progress, i.e. Value>Minimum + + + + + Indicates the array of colors that when set are used to draw the background of the item. + + + + + Gets or sets the text alignment. Default value is left. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the color of the text. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Container for the StepItem objects. + + + + + Initializes a new instance of the StepContainer class. + + + + + Returns copy of the item. + + + + + Copies the StepContainer specific properties to new instance of the item. + + New StepContainer instance. + + + + Copies the StepContainer specific properties to new instance of the item. + + New StepContainer instance. + + + + Called when PointerSize property has changed. + + Old property value + New property value + + + + Gets or sets the arrow pointer width for the StepItem objects hosted within this container. + + + + + Provides data for the Slider item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the Slider item being rendered. + Reference to the graphics object. + + + + Represents Range Slider Control. + + + + + Raises ValueChanging event. + + Provides event arguments. + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Raises GetRangeTooltipText event. + + Provides event arguments. + + + + Forces the button to perform internal layout. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs before Value has changed and allow the cancellation of the change. + + + + + Occurs after Value property has changed + + + + + Occurs when control is about to display the range tooltip and it allows you to customize tooltip + + + + + Gets the RangeSliderItem. + + + + + Indicates whether clicking the area outside of the range change buttons moves the range change button to the clicked location if possible thus allowing range change. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Indicates image to be used as maximum range slider button instead of built-in button. Image is scaled to size set by RangeButtonSize. + + + + + Indicates image to be used as minimum range slider button instead of built-in button. Image is scaled to size set by RangeButtonSize. + + + + + Specifies minimum absolute range that user can select. Absolute range is defined as Abs(Value.Max-Value.Min) Applies to user performed selection through mouse only. + + + + + Gets current part that is pressed using mouse left button. + + + + + Gets mouse over part. + + + + + Gets bounds of maximum range sliding button. + + + + + Gets bounds of minimum range sliding button. + + + + + Indicates the size of the range change buttons. + + + + + Specifies the height of the range line + + + + + Gets or sets the string that is used to format the range value to be displayed while user moves the range buttons. Value set here is used in string.Format(RangeTooltipFormat, Value.Min, Value.Max). + + + + + Gets or sets the color of the range value. + + + + + Specifies whether range tooltip is shown while user is changing the range + + + + + Gets or sets the slider orientation. Default value is horizontal. + + + + + Gets tick marks bounds. + + + + + Gets tick marks bounds for second marker is visible. + + + + + Specifies the ticks position inside of Range Slider. + + + + + Indicates tick display period + + + + + Indicates whether tick lines are shown + + + + + Gets or sets the range displayed by the control. + + + + + Represents the Rating control. + + + + + Initializes a new instance of the Rating class. + + + + + Raises the ParseRating event. + + Provides event arguments. + + + + Raises the ParseAverageRatingValue event. + + Provides event arguments. + + + + Raises the AverageRatingChanged event. + + Event data. + + + + Raises the RatingChanged event. + + Event data. + + + + Raises RatingChanging event. + + Event data + + + + Called when Command property value changes. + + + + + Occurs when Rating property has changed. + + + + + Occurs when RatingValue property has changed. + + + + + Occurs when Rating property is about to be changed and provides opportunity to cancel the change. + + + + + Occurs when AverageRating property has changed. + + + + + Occurs when AverageRatingValue property has changed. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Occurs when RatingValue property is set and it allows you to provide custom parsing for the values. + + + + + Occurs when AverageRatingValue property is set and it allows you to provide custom parsing for the values. + + + + + Indicates number of stars used for the rating. Minium value is 2 stars. + + + + + Gets or sets the rating value represented by the control. Default value is 0 which indicates + that there is no rating set. Maximum value is 5. + + + + + Gets or sets the average rating shown by control. Control will display average rating (if set) when no explicit + Rating value is set through Rating property. Minimum value is 0 and Maximum value is 5. + + + + + Gets or sets the AverageRating property. This property is provided for Data-Binding with NULL value support. + + + + + Gets the reference to custom rating images. + + + + + Gets or sets whether text assigned to the check box is visible. Default value is true. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets whether rating can be edited. Default value is true. + + + + + Gets or sets the orientation of rating control. + + + + + Gets or sets the Rating property value. This property is provided for Data-Binding with NULL value support. + + + + + Gets or sets the text color. Default value is Color.Empty which indicates that default color is used. + + + + + Gets or sets the spacing between optional text and the rating. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents an image control with built-in reflection. + + + + + Initializes a new instance of the ReflectionImage class. + + + + + Gets or sets the image displayed on the control. + + + + + Gets or sets whether reflection effect is enabled. Default value is true. + + + + + Represents an single line of text label control with text-markup support and built-in reflection. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets whether reflection effect is enabled. Default value is true. + + + + + Represents control which handles scroll-bars. + + + + + Initializes a new instance of the ScrollbarControl class. + + + + + Called when ScrollOverrideControl property has changed. + + Old property value + New property value + + + + Gets or sets the scroll-bar visual style. + + + + + Initializes a new instance of the RichTextBoxEx class. + + + + + Raises AcceptsTabChanged event. + + Provides event arguments. + + + + Raises HideSelectionChanged event. + + Provides event arguments. + + + + Raises ModifiedChanged event. + + Provides event arguments. + + + + Raises MultilineChanged event. + + Provides event arguments. + + + + Raises ReadOnlyChanged event. + + Provides event arguments. + + + + Raises LinkClicked event. + + Provides event arguments. + + + + Raises Protected event. + + Provides event arguments. + + + + Raises SelectionChanged event. + + Provides event arguments. + + + + Raises HScroll event. + + Provides event arguments. + + + + Raises HScroll event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Appends text to the current text of a text box + + + + + Determines whether you can paste information from the Clipboard in the specified data format. + + + + + + + Clears all text from the text box control. + + + + + Clears information about the most recent operation from the undo buffer of the text box. + + + + + Copies the current selection in the text box to the Clipboard. + + + + + Moves the current selection in the text box to the Clipboard. + + + + + Specifies that the value of the SelectionLength property is zero so that no characters are selected in the control. + + + + + Searches the text in a RichTextBox control for a string. + + + + + + + Searches the text of a RichTextBox control for the first instance of a character from a list of characters. + + + + + + + Searches the text in a RichTextBox control for a string with specific options applied to the search. + + + + + + + + Searches the text of a RichTextBox control, at a specific starting point, for the first instance of a character from a list of characters. + + + + + + + + Searches the text in a RichTextBox control for a string at a specific location within the control and with specific options applied to the search. + + + + + + + + + Searches a range of text in a RichTextBox control for the first instance of a character from a list of characters. + + + + + + + + + Searches the text in a RichTextBox control for a string within a range of text within the control and with specific options applied to the search. + + + + + + + + + + Retrieves the character that is closest to the specified location within the control. + + + + + + + Retrieves the index of the character nearest to the specified location + + + + + + + Retrieves the index of the first character of a given line. (Inherited from TextBoxBase.) + + + + + + + Retrieves the index of the first character of the current line. (Inherited from TextBoxBase.) + + + + + + Retrieves the line number from the specified character position within the text of the RichTextBox control. + + + + + + + Retrieves the location within the control at the specified character index. + + + + + + + Loads a rich text format (RTF) or standard ASCII text file into the RichTextBox control. + + + + + + Loads the contents of an existing data stream into the RichTextBox control. + + + + + + + Loads a specific type of file into the RichTextBox control. + + + + + + + Replaces the current selection in the text box with the contents of the Clipboard. + + + + + Pastes the contents of the Clipboard in the specified Clipboard format. + + + + + + Reapplies the last operation that was undone in the control. + + + + + Saves the contents of the RichTextBox to a rich text format (RTF) file. + + + + + + Saves the contents of a RichTextBox control to an open data stream. + + + + + + + Saves the contents of the RichTextBox to a specific type of file. + + + + + + + Scrolls the contents of the control to the current caret position. + + + + + Activates the control. (Inherited from Control.) + + + + + Selects a range of text in the text box. + + + + + + + Selects all text in the text box. + + + + + Undoes the last edit operation in the text box. + + + + + Gets the reference to internal RichTextBox control. + + + + + Occurs when the value of the AcceptsTab property changes + + + + + Occurs when the value of the HideSelection property changes. + + + + + Occurs when the value of the Modified property changes. + + + + + Occurs when the value of the Multiline property changes. + + + + + Occurs when the value of the ReadOnly property changes. + + + + + Occurs when a hyperlink in the text is clicked. + + + + + Occurs when the user takes an action that would change a protected range of text. + + + + + Occurs when the current selection has changed. + + + + + Occurs when the horizontal scroll bar is clicked. + + + + + Occurs when the vertical scroll bar is clicked. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Gets or sets the back color of the RichTextBox. + + + + + Gets or sets whether tab characters are accepted as input + + + + + Gets or sets whether automatic word selection is enabled. + + + + + Gets or sets indent for bullets in the control. + + + + + Gets or sets whether URLs are automatically formatted as links. + + + + + Gets or sets whether drag/drop of text, pictures and other data is enabled. + + + + + Gets or sets whether selection should be hidden when the edit control loses focus. + + + + + Gets or sets lines of text in a multi-line edit, as an array of String values. + + + + + Gets or sets maximum number of characters that can be entered into the edit control. + + + + + Gets or sets whether the text in the control can span more than one line. + + + + + Gets or sets whether the text in the edit control can be changed or not. + + + + + Gets or sets right margin dimensions. + + + + + Gets or sets the text of the RichTextBox control, including all rich text format (RTF) codes. + + + + + Gets or sets for multi-line edit control, which scroll bars will be shown. + + + + + Gets or sets whether shortcuts defined for the control are enabled. + + + + + Gets or sets whether selection margin is visible. + + + + + Gets or sets whether lines are automatically word-wrapped. + + + + + Gets or sets current zoom factor for the control content. + + + + + Should be fired when non-client size of the control changes, i.e. when WM_NCCALCSIZE message is received. + + + + + Should be fired when scroll-bar value on child control changes. + + + + + Gets whether control is in design mode. + + + + + Raises NonClientSizeChanged event. + + Provides event arguments. + + + + Raises ScrollBarValueChanged event. + + Provides event arguments. + + + + Defines arguments for IScrollBarOverrideSupport.ScrollBarValueChanged event. + + + + + Initializes a new instance of the ScrollValueChangedEventArgs class. + + + + + + Defines information for IScrollBarOverrideSupport.ScrollBarValueChanged event. + + + + + Defines delegate for IScrollBarOverrideSupport.ScrollBarValueChanged event. + + Sender. + Event arguments + + + + Gets or sets the scroll-bar visual style. + + + + + Paints ListBoxItem. + + Provides arguments for the operation. + + + + Paints ListBoxItem. + + Provides arguments for the operation. + + + + Represents SideNav control to create "hamburger" menus. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Updates the control colors from the global color table. + + + + + Maximizes control width so it fills up space to the right of the control. + + Source of the event. + + + + Restores the control to previous size if it was maximized before. + + Source of event. + + + + Opens the control, i.e. expands it, selects specified item and shows its associated panel. + + Item to select. + Source of the event. + + + + Closes the control, i.e. unselects any selected item, hide its associated panel and folds the control. + + Source of the event. + + + + Raises IsMenuExpandedChanged event. + + Provides event arguments. + + + + Expands or collapses the control items menu. + + + + + + Called when AnimationTime property has changed. + + Old property value + New property value + + + + Raises BeforeMaximize event. + + Provides event arguments. + + + + Raises BeforeRestore event. + + Provides event arguments. + + + + Raises BeforeOpen event. + + Provides event arguments. + + + + Raises BeforeClose event. + + Provides event arguments. + + + + Raises SelectedItemChanged event. + + Provides event arguments. + + + + Indicates whether splitter that is located on right hand side of open control is visible and enabled. + + + + + Indicates whether button which folds/closes the control is visible. + + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether control is closed, i.e. whether selected item panel is shown or not. When closed + any selected item is unselected and selected panel hidden. + + + + + Indicates whether side menu is expanded, i.e. shows both image and text. When menu is collapsed only image is shown. + + + + + Occurs when IsMenuExpanded property has changed its value. + + + + + Indicates the animation time in milliseconds for operations that perform visual animation of transition. Set to zero to disable animation. + + + + + Occurs before the control is maximized and allows you to cancel that. + + + + + Occurs before the control is restored and allows you to cancel that. + + + + + Occurs before the control is opened and allows you to cancel that. + + + + + Occurs before the control is closed and allows you to cancel that. + + + + + Gets currently selected item. Only items with Panel assigned can be selected. + + + + + Occurs when SelectedItem changes. + + + + + Gets reference to internal SideNavStrip control. + + + + + Defines delegate for the CancelSource events. + + + + + + + Event arguments for CancelSourceEventHandler + + + + + Gets the source of the event. + + + + + Gets any optional data that is associated with the event. + + + + + Creates new instance of the object. + + Source of event + + + + Creates new instance of the object. + + Source of event + Optional data associated with the event. + + + + Initializes a new instance of the MetroTabItem class. + + + + + Selects the tab. + + + + + Called after Checked property has changed. + + + + + Occurs just before Click event is fired. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Occurs after item visual style has changed. + + + + + Gets or sets cached image rendering bounds. + + + + + Gets or sets cached text rendering bounds. + + + + + Gets or sets the panel assigned to this tab item. + + + + + Gets or set the Group item belongs to. The groups allows a user to choose from mutually exclusive options within the group. The choice is reflected by Checked property. + + + + + Returns the collection of sub items. + + + + + Indicates the array of colors that when set are used to draw the background of the item. + + + + + Indicates the array of colors that when set are used to draw the border of the item. + + + + + Gets or sets the additional padding added around the tab item in pixels. Default value is 0. + + + + + Indicates an optional title for the associated panel. If not set item text is used. + + + + + Gets or sets whether this item acts as the SideNav control system menu which collapses and expands the SideNav items. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Indicates whether the item will auto-expand when clicked. + When item is on top level bar and not on menu and contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this propert to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Indicates item's visiblity when on pop-up menu. + + + + + Indicates when menu items are displayed when MenuVisiblity is set to VisibleIfRecentlyUsed and RecentlyUsed is true. + + + + + Indicates Animation type for Popups. + + + + + Indicates the font that will be used on the popup window. + + + + + Indicates whether sub-items are shown on popup Bar or popup menu. + + + + + Specifies the inital width for the Bar that hosts pop-up items. Applies to PopupType.Toolbar only. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Gets or set the alternative shortcut text. + + + + + Gets or sets whether item separator is shown before this item. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets the text color of the button when mouse is over the item. + + + + + Indicates the way item is painting the picture when mouse is over it. Setting the value to Color will render the image in gray-scale when mouse is not over the item. + + + + + Gets/Sets the button style which controls the appearance of the button elements. Changing the property can display image only, text only or image and text on the button at all times. + + + + + Provides data for the SideNavItem rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Indicates whether to cancel system rendering of the item. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the ListBoxItem being rendered. + Reference to the graphics object. + + + + Defines color table for SideNav control. + + + + + Gets or sets the color table for SideNavItem + + + + + Gets or sets the background color of SideNav title bar. + + + + + Gets or sets the border color of the title of SideNav control. + + + + + Gets or sets the color of the strip which hosts the items. + + + + + Gets or sets the border color of the SideNav control. + + + + + Gets or sets the back color of panels that are attached to SideNavItem and displayed when SideNavItem is selected. + + + + + Defines color table for SideNavItem + + + + + Gets or sets the color table for Default state. + + + + + Gets or sets the color table for MouseOver state. + + + + + Gets or sets the color table for Pressed state. + + + + + Gets or sets the color table for Selected state. + + + + + Defines state color table for SideNavItem + + + + + Indicates item text color. + + + + + Gets or sets the background colors for the item. + + + + + Gets or sets the back colors gradient angle if there is more than one color in BackColors array. + + + + + Gets or sets the gradient colors positions if there is more than one color in BackColors array. + + + + + Gets or sets the border colors for the item. + + + + + Indicates the corner radius. + + + + + Represents a panel which hosts controls for the SideNavItem. + + + + + Raises NonClientSizeChanged event. + + Provides event arguments. + + + + Raises ScrollBarValueChanged event. + + Provides event arguments. + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Returns collection of items on a bar. + + + + + Gets currently selected item. + + + + + Represents the panel which can slide out and into the view. + + + + + Raises IsOpenChanged event. + + Provides event arguments. + + + + Called when SlideSide property has changed. + + Old property value + New property value + + + + Called when IsOpen property has changed. + + Old property value + New property value + + + + Slides panel into the view. + + + + + Waits for current slide animation to finish and then returns control. + + + + + Slides panel out of the view. + + + + + Called when AnimationTime property has changed. + + Old property value + New property value + + + + Called when SlideOutButtonVisible property has changed. + + Old property value + New property value + + + + Called when SlideOutButtonSize property has changed. + + Old property value + New property value + + + + Returns whether property should be serialized. + + + + + Resets property to default value. + + + + + Called when SlideOutActiveButtonSize property has changed. + + Old property value + New property value + + + + Returns whether property should be serialized. + + + + + Resets property to default value. + + + + + Called when SlideOutButtonStyle property has changed. + + Old property value + New property value + + + + Called when CenterContent property has changed. + + Old property value + New property value + + + + Occurs when IsOpen property value has changed, i.e. slide-panel is shown or hidden. + + + + + Gets or sets side panel slides into. + + + + + Gets or sets whether panel is open. When this property is changed panel will slide in or out of the view. + + + + + Gets or sets whether panel uses modal animation, meaning when IsOpen property is set the call is not returned until animation is complete. + + + + + Gets or sets the open panel bounds. When control IsOpen=false and panel is collapsed its original bounds are stored in OpenBounds property and restored once panel is open. + + + + + Gets or sets the animation duration time in milliseconds. Setting this property to 0 will disable slide animation. + + + + + Gets or sets whether slide out button is shown when panel is out of the view and which allows panel to be shown. + + + + + Gets or sets the slide-out buttton size in default state. + + + + + Gets or sets active (mouse over) slide out button size. + + + + + Gets or sets slide-out button style. + + + + + Gets or sets whether panel centers the Controls inside of it. Default value is false. + + + + + Defines the side SlidePanel slides into. + + + + + Represents the slider button that is used by SlidePanel when collapsed to slide it back into the view. + + + + + Initializes a new instance of the SliderButton class. + + + + + + Called when AutoTopMostEnabled property has changed. + + Old property value + New property value + + + + Called when SliderSize property has changed. + + Old property value + New property value + + + + Called when ActiveSliderSize property has changed. + + Old property value + New property value + + + + Called when IsActive property has changed. + + Old property value + New property value + + + + Called when IsMouseDown property has changed. + + Old property value + New property value + + + + Gets or sets whether slider button automatically checks whether its top-most control on the form, i.e. visible at all times on top of other controls + + + + + Gets or sets the slider size in default state. Notice that size specified here applies to Left and Right SlidePanel positions. For Top and Bottom positions the Width and Height are interchaged. + + + + + Gets or sets the slider size in active state. Notice that size specified here applies to Left and Right SlidePanel positions. For Top and Bottom positions the Width and Height are interchaged. + + + + + Gets or sets whether slider button is in active state. + + + + + Gets or sets the style associated with the control. + + + + + Represents the Slider control. + + + + + Raises the IncreaseButtonClick event. + + Provides event arguments + + + + Raises the DecreaseButtonClick event. + + Provides event arguments + + + + Raises the ValueChanged event. + + Provides event arguments + + + + Raises the ValueChanging event. + + + + + Advances the current position of the slider by the amount of the Step property. + + + + + Returns whether property should be serialized. Used by Windows Forms designer. + + + + + Resets the property to default value. Used by Windows Forms designer. + + + + + Forces the button to perform internal layout. + + + + + Called when Command property value changes. + + + + + Occurs after Value property has changed. + + + + + Occurs before Value property has changed. + + + + + Occurs when Increase button is clicked using mouse. + + + + + Occurs when Decrease button is clicked using mouse. + + + + + Gets or sets whether text-markup support is enabled for controls Text property. Default value is true. + Set this property to false to display HTML or other markup in the control instead of it being parsed as text-markup. + + + + + Gets or sets the text label position in relationship to the slider. Default value is Left. + + + + + Gets or sets whether the text label next to the slider is displayed. + + + + + Gets or sets the width of the label part of the item in pixels. Value must be greater than 0. Default value is 38. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the current position of the slider. + + + + + Gets or sets the amount by which a call to the PerformStep method increases the current position of the slider. Value must be greater than 0. + + + + + Gets or sets the color of the label text. + + + + + Gets or sets whether vertical line track marker is displayed on the slide line. Default value is true. + + + + + Gets or sets the tooltip for the Increase button of the slider. + + + + + Gets or sets the tooltip for the Decrease button of the slider. + + + + + Gets or sets the slider orientation. Default value is horizontal. + + + + + Gets the SliderItem. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents the control which displays symbol from symbols library. + + + + + Initializes a new instance of the SymbolBox class. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrieved from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Resets style to default value. Used by windows forms designer. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Specifies the background style of the control. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Gets or sets the color of the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Raises CommandKeyDown event. + + Provides event arguments. + + + + Invalidates non-client area of the text box as response to the border changes. + + + + + Calculates and sets the text-box height based on font and style. This method is used internally and should not be used. + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Invokes ButtonCustomClick event. + + + + + Invokes ButtonCustomClick2 event. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrived from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + Indicates whether all text is auto-selected when control gets input focus. Default value is false. + + + + + Gets or sets whether control prevents Beep sound when Enter key is pressed. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Occurs during preprocessing to handle command keys. Command keys are keys that always take precedence over regular input keys. Examples of command keys include accelerators and menu shortcuts. Set Handled=true to indicate that you handled the key and that it should not be passed for further processing. + + + + + Gets or sets the scrollbar skinning type when control is using Office 2007 style. + + + + + Specifies the control border style. Default value has Class property set so the system style for the control is used. + + + + + Gets or sets the rendering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark image displayed inside of the control when Text is not set and control does not have input focus. + + + + + Gets or sets the watermark image alignment. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Specifies back color when Enabled=false + + + + + Represents the Vertical Office 2007 Style Scroll Bar control. + + + + + Gets or sets whether custom styling (Office 2007 style) is enabled. Default value is true. + + + + + Class represents single token in TokenEditor control. + + + + + Initializes a new instance of the EditToken class. + + Indicates token value. + + + + Initializes a new instance of the EditToken class. + + Indicates token value + Indicates token text + + + + Initializes a new instance of the EditToken class. + + Indicates token value + Indicates token text + Indicates token image + + + + Called when Value property has changed. + + Old property value + New property value + + + + Called when Text property has changed. + + Old property value + New property value + + + + Called when Image property has changed. + + Old property value + New property value + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Tooltip property has changed. + + Old property value + New property value + + + + Called when MouseOverPart property has changed. + + Old property value + New property value + + + + Indicates the token value, for example an email token has email address as token Value and full name as token Text. + + + + + Indicates the token text, for example an email token has email address as token Value and full name as token Text. + + + + + Gets or sets custom data associated with the object. + + + + + Gets the display bounds of the token, if displayed, inside of TokenEditor control. + + + + + Indicates the image that is displayed next to the token + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the token instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Gets or sets the color of the Symbol. + + + + + Indicates tooltip that is displayed when mouse is over the token + + + + + Gets the part of the token mouse is over. Valid only when token is selected. + + + + + Gets the bounds of the remove button if displayed. Valid only when token is selected. + + + + + Gets the bounds of the image if displayed. Valid only when token is selected. + + + + + Indicates whether token is selected. + + + + + Indicates whether token is focused while selected. + + + + + Defines the token parts. + + + + + Identifies no token part. + + + + + Identifies the token body/text. + + + + + Identifies the remove token button. + + + + + Identifies the token image. + + + + + Initializes a new instance of the TokenEditor class. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrieved from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Resets style to default value. Used by windows forms designer. + + + + + Raises SelectedTokensChanged event. + + Provides event arguments. + + + + Called when RemoveTokenButtonVisible property has changed. + + Old property value + New property value + + + + Returns the token from SelectedTokens at specified position or null/nothing if no token is at given location. + + Location in client coordinates to test. + EditToken instance or null/nothing + + + + Raises TokenMouseEnter event. + + Provides event arguments. + + + + Raises TokenMouseLeave event. + + Provides event arguments. + + + + Raises TokenMouseClick event. + + Provides event arguments. + + + + Raises TokenMouseHover event. + + Provides event arguments. + + + + Raises RemovingToken event. + + Provides event arguments. + + + + Called when ReadOnly property has changed. + + Old property value + New property value + + + + Called when DropDownHeight property has changed. + + Old property value + New property value + + + + Called when DropDownWidth property has changed. + + Old property value + New property value + + + + Raises AutoCompletePopupOpened event. + + Provides event arguments. + + + + Raises BeforeAutoCompletePopupOpen event. + + Provides event arguments. + + + + Raises BeforePopupOpen event. + + Provides event arguments. + + + + Raises ValidateToken event. + + Provides event arguments. + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Called when TextSeparator property has changed. + + Old property value + New property value + + + + Called when DropDownButtonVisible property has changed. + + Old property value + New property value + + + + Called when CheckBoxesVisible property has changed. + + Old property value + New property value + + + + Gets or sets the location of the auto-scroll position. + + + + + Specifies the background style of the control. + + + + + Gets the collection of the selected tokens. + + + + + Occurs when SelectedTokens collection changes. + + + + + Gets the collection of the tokens available for selection. + + + + + Indicates whether remove token button is displayed on individual tokens so they can be removed from the selection. + + + + + Occurs when mouse enters one of the SelectedTokens token. + + + + + Occurs when mouse leaves one of the SelectedTokens token. + + + + + Occurs when mouse clicks one of the SelectedTokens token. + + + + + Occurs when mouse hovers one of the SelectedTokens token. + + + + + Occurs before token is removed from the SelectedTokens by end user. + + + + + Indicates whether tokens can be added or removed by end user. Default value is false. + + + + + Indicates the height of the auto-complete drop-down. + + + + + Indicates the width of the auto-complete drop-down. + + + + + Indicates whether when token text is entered into the text-box pressing the Enter key attempts to validate the token and converts the text to token. + + + + + Occurs before token auto-complete popup is displayed and allows cancelation of popup display. + + + + + Occurs after auto-complete popup is open. + + + + + Occurs before the auto-complete popup is displayed and allows you to adjust popup location. + + + + + Indicates how tokens are filtered based on the entered text + + + + + Indicates whether auto-complete popup size is preserved between popup displays if popup is resized by end-user. + + + + + Indicates whether auto-complete popup can be resized by end user. + + + + + Indicates whether multi-column popup close button is visible. + + + + + Gets or sets whether auto-complete popup window is open. + + + + + Gets the list of separators which are used to divide entered text into the tokens. + + + + + Occurs when an token is selected from the auto-complete list or when text entry by end user is parsed into token to validate it. + + + + + Indicates whether control automatically increases its height as more tokens are selected. MaxHeightLines property controls the maximum number of lines control will grow to before showing scroll-bar. + + + + + Indicates maximum number of lines control will grow to when AutoSizeHeight=true. Set to 0 to indicates unlimited growth. + Default value is 5. + + + + + Gets reference to internal text-box control that is used to input the token text. + + + + + Indicates whether any text entered into the token editor is validated and converted to token when control loses focus. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark image displayed inside of the control when Text is not set and control does not have input focus. + + + + + Gets or sets the watermark image alignment. + + + + + Gets or sets the watermark (tip) text displayed inside of the control when Text is not set and control does not have input focus. This property supports text-markup. + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Indicates the character separator that is used to separate tokens when controls Text property is updated or parsed. + + + + + Indicates whether drop-down button which shows available token popup is displayed + + + + + Indicates whether check-boxes are displayed on popup token selection list and used for token selection. + + + + + Delegate for the ValidateTokenEvent event. + + + + + Arguments for the ValidateTokenEvent event. + + + + + Indicates whether validated token is valid. Default value is true. When you set this property to false the token being validated will be discared. + + + + + Indicates the Token that will be accepted by the control if IsValid=true. + + + + + Indicates whether token is newly created. When false it means that token was taken from Tokens collection. + + + + + Initializes a new instance of the ValidateTokenEventArgs class. + + + + + + Delegate for RemovingToken event. + + + + + Defines event arguments for RemovingToken event. + + + + + Indicates the Token that will be removed. + + + + + Set to true to cancel removal of the token. + + + + + Indicates the source of the event. + + + + + Initializes a new instance of the RemovingTokenEventArgs class. + + + + + + Specifies the filter behavior on token editor popup list. + + + + + Token text is searched for the match. + + + + + Token value is searched for the match. + + + + + Both token text and value are searched for the match. + + + + + Delegate for TokenEditor.BeforePopupOpen event. + + + + + Defines event arguments for BeforePopupOpen event. + + + + + Gets or sets the screen location of the popup in relation to the TokenEditor control. + + + + + Gets the suggested popup size. + + + + + Initializes a new instance of the TokenEditorPopupEventArgs class. + + + + + + Represents the color table for TokenEditor control tokens. + + + + + Initializes a new instance of the TokenEditorColorTable class. + + + + + Initializes a new instance of the TokenEditorColorTable class. + + + + + Initializes a new instance of the TokenEditorColorTable class. + + + + + Gets or sets token default state colors. + + + + + Gets or sets token mouse over state colors. + + + + + Gets or sets token focused state colors. + + + + + Represents the state color table for token in TokenEditor control. + + + + + Initializes a new instance of the TokenColorTable class. + + + + + Initializes a new instance of the TokenColorTable class. + + + + + + + Initializes a new instance of the TokenColorTable class. + + + + + + + Gets or sets token text color. + + + + + Gets or sets the background color table. + + + + + Represents non-intrusive Warning Box control with Options and Close button. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Raises the CloseClick event. + + Event arguments. + + + + Raises the OptionsClick event. + + Event arguments. + + + + Updates control color scheme based on currently selected Office 2007 Color Table. Usually it is not necessary to + call this method manually. You need to call it to update the colors on control if you customize the Office2007ColorTable.WarningBox values. + + + + + Invokes the MarkupLinkClick event. + + Provides additional data about event. + + + + Called when AntiAlias property has changed. + + Old property value + New property value + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when Close button is clicked. + + + + + Occurs when Options button is clicked. + + + + + Occurs when warning text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets the text displayed on close button tooltip. + + + + + Gets or sets the text displayed on warning control label. Supports text-markup. + + + + + Gets or sets whether text is wrapped on multiple lines if it cannot fit the space allocated to the control. + + + + + Gets or sets the image displayed next to the warning label text. Default value is null. + + + + + Gets or sets the text for the Options buttons. + + + + + Gets or sets whether Options button is visible. Default value is true. + + + + + Gets or sets whether Close button is visible. Default value is true. + + + + + Gets or sets the timeout in seconds after which the control automatically closes itself. Default value is 0 which indicates that auto-close + is disabled. + + + + + Gets or sets the control's color scheme. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Defines available WarningBox control color schemes. + + + + + Represents compact tree bread-crumb control. + + + + + Initializes a new instance of the CrumbBar class. + + + + + Finds CrumbBarItem with specified name. + + Name of item to look for + Item or null if no item was found. + + + + Sets the currently selected item in the control. + + Reference to selected item. + Source of the event. + + + + Shows the selected item popup menu if it has menu items. + + true if popup was shown otherwise false + + + + Gets whether an item is in selected path to the currently selected item as either one of the parents of selected item + or selected item itself. + + Item to test. + true if item is in selected path otherwise false. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Raises the SelectedItemChanging event. + + Provides event arguments. + + + + Raises the SelectedItemChanged event. + + Provides event arguments. + + + + Returns full path to the given node. + + Node to return path to. + Full path to the node. + + + + Occurs before SelectedItem has changed and provides opportunity to cancel the change. Set Cancel property on event arguments to true to cancel the change. + + + + + Occurs after SelectedItem has changed. The change of the selected item at this point cannot be canceled. For that use SelectedItemChanging event. + + + + + Gets or sets currently selected item. + + + + + Gets collection of items assigned to the control. + + + + + Gets or sets the visual style of the control. Default value is Windows Vista style. + + + + + Gets the color table used by the Vista style renderer. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets the delimiter string that the tree node path uses. + + + + + Defines delegate for CrumbBar selection events. + + + + + Provides data for CrumbBar selection events. + + + + + Gets or sets newly selected item. + + + + + Initializes a new instance of the CrumbBarSelectionEventArgs class. + + + + + + Represents an item for CrumbBar control. + + + + + Gets whether item is selected item in CrumbBar control. + + + + + Returns the collection of sub items. + + + + + Gets the path from the root tree node to the current tree node. The path consists of the labels of all the tree nodes that must be navigated to get to this tree node, starting at the root tree node. The node labels are separated by the delimiter character specified in the PathSeparator property of the Tree control that contains this node. + + + + + Represents collection of CrumbBarItem buttons. + + + + + Initializes a new instance of the CrumbBarItemsCollection class. + + + + + + Sets the node collection belongs to. + + CrumbBarItem that is parent of this collection. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the CrumbBarItem array. + + Array to copy to. + + + + Gets or sets the node this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Represents a view of CrumbBarItem displayed inside of CrumbBar control. + + + + + Initializes a new instance of the CrumbBarItemView class. + + + + + Returns copy of ExplorerBarContainerItem item + + + + + Gets the item attached to the view. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets color table used by renderer. + + + + + Creates new instance of BaseItem. + + + + + Creates new instance of BaseItem and assigns item name. + + Item name. + + + + Creates new instance of BaseItem and assigns item name and item text. + + Item Name + Item Text + + + + Returns copy of ExplorerBarContainerItem item + + + + + Represents internal CrumbBar view container. + + + + + Initializes a new instance of the CrumbBarViewContainer class. + + + + + Recalculates the size of the item + + + + + Paints this base container + + + + + Returns copy of ExplorerBarContainerItem item + + + + + Occurs when sub item expanded state has changed. + + Sub item affected. + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Represents collection for Node objects. + + + + Creates new instance of the object. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Node array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Initializes a new instance of the DualButton class. + + + + + Called when ButtonSize property has changed. + + Old property value + New property value + + + + Called when Text2 property has changed. + + Old property value + New property value + + + + Called when MouseOverPart property has changed. + + Old property value + New property value + + + + Called when LeftMouseButtonDownPart property has changed. + + Old property value + New property value + + + + Called when Command property value changes. + + + + + Called when IsSelected property has changed. + + Old property value + New property value + + + + Called when Font property has changed. + + Old property value + New property value + + + + Gets or sets the second button part text. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that for ButtonItem instances if this property is set to null and command was assigned previously, Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Gets or sets the selected part of button. + + + + + Gets or sets the text font. + + + + + Standalone Calculator control. + + + + + Raises CalculatorDisplayChanged event. + + Provides event arguments. + + + + Invalidates control auto-size and resizes the control if AutoSize is set to true. + + + + + Called when FocusButtonsOnMouseDown property has changed. + + Old property value + New property value + + + + Called when DisplayVisible property has changed. + + Old property value + New property value + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when a calc button has been clicked + + + + + Occurs when the calculator value has changed + + + + + Indicates whether calculator displays only Integer values. + + + + + Gets or sets whether memory keys are visible. Default value is true. + + + + + Gets or sets visibility of the decimal calculator key. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Gets or sets whether calculator display is visible. Default value is true. + + + + + ButtonClickEventArgs + + + + + ButtonClickEventArgs + + + + + Gets the calc button that was clicked + + + + + ValueChangedEventArgs + + + + + ValueChangedEventArgs + + + + + + + Gets the input string value + + + + + Gets or sets calculator value + + + + + Represents a control that enables the user to select time using visual time display. + + + + + Raises SelectedTimeChanged event. + + Provides event arguments. + + + + Raises OkClick event. + + Provides event arguments. + + + + Initializes a new instance of the MonthCalendarAdv class. + + + + + Returns whether property should be serialized. + + + + + Resets property to default value. + + + + + Invalidates control auto-size and resizes the control if AutoSize is set to true. + + + + + Occurs after SelectedTime changes. + + + + + Occurs when OK button is clicked. + + + + + Gets or sets the text displayed on OK button. + + + + + Gets or sets whether Ok button is visible. + + + + + Gets or sets the selected date time. + + + + + Gets or sets selected time. Returns TimeSpan.Zero if there is no time selected. + + + + + Gets or sets the time format used to present time by the selector. + + + + + Gets or sets the format for the 12 Hour Time Display. + + + + + Gets or sets the format for the 24 Hour Time Display. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Indicates the type of the selector used to select time. + + + + + Gets or sets the text displayed on Clear button only when MonthCalendarStyle is used. + + + + + Gets or sets the text displayed on Hour label. + + + + + Gets or sets the text displayed on Minute label. + + + + + Represents the Time selector item. + + + + + Initializes a new instance of the TimeSelectionItem class. + + + + + Raises SelectedTimeChanged event. + + Provides event arguments. + + + + Raises OkClick event. + + Provides event arguments. + + + + Returns whether property should be serialized. + + + + + Resets property to default value. + + + + + Called when SelectedTime property has changed. + + Old property value + New property value + + + + Called when TimeFormat24H property has changed. + + Old property value + New property value + + + + Called when TimeFormat12H property has changed. + + Old property value + New property value + + + + Called when SelectedDateTime property has changed. + + Old property value + New property value + + + + Called when OkText property has changed. + + Old property value + New property value + + + + Called when ClearText property has changed. + + Old property value + New property value + + + + Called when TimeFormat property has changed. + + Old property value + New property value + + + + Called when OkButtonVisible property has changed. + + Old property value + New property value + + + + Called when ClearButtonVisible property has changed. + + Old property value + New property value + + + + Called when SelectorType property has changed. + + Old property value + New property value + + + + Called when HourText property has changed. + + Old property value + New property value + + + + Called when MinuteText property has changed. + + Old property value + New property value + + + + Occurs after SelectedTime changes. + + + + + Occurs when OK button is clicked. + + + + + Gets or sets selected time. Returns TimeSpan.Zero if there is no time selected. + + + + + Gets or sets the format for the 24 Hour Time Display. + + + + + Gets or sets the format for the 12 Hour Time Display. + + + + + Gets or sets the selected date time. + + + + + Gets or sets the text displayed on OK button. + + + + + Gets or sets the text displayed on Clear button only when MonthCalendarStyle is used. + + + + + Gets or sets the time format used to present time by the selector. + + + + + Gets or sets whether Ok button is visible. + + + + + Gets or sets whether Ok button is visible. + + + + + Indicates the type of the selector used to select time. + + + + + Gets or sets the text displayed on Hour label. + + + + + Gets or sets the text displayed on Minute label. + + + + + Defines time selector format. + + + + + Selector uses system format. + + + + + Selector uses 24-hour time format. + + + + + Selector uses 12-hour time format. + + + + + Defines the TimeSelector styles. + + + + + Time selector uses style similar to MonthCalendarStyle. + + + + + Time selector uses the touch style. + + + + + Represents the group of the input items with automatic and manual item focus change. + + + + + Raises the RenderInvalid event. + + + + + Raises the ArrangeInvalid event. + + + + + Raises the ResetMouseHover event. + + + + + Occurs when item arrange becomes invalid. + + + + + Occurs when item appearance becomes invalid and items needs to be repainted. + + + + + Occurs when item needs to signal to parent control that MouseHover needs to be reset usually in response to tooltip hiding. + + + + + Occurs when item is clicked. + + + + + Occurs when item is clicked using mouse. + + + + + Occurs when mouse button is pressed over the item. + + + + + Occurs when mouse button is pressed over the item. + + + + + Occurs when mouse hovers over the item. + + + + + Gets or sets whether item is Enabled. + + + + + Gets or sets whether visual is rendered. Default value is true. + + + + + Gets the parent of the item. + + + + + Gets the relative location of the element inside of its parent item. + + + + + Gets or sets the item horizontal alignment inside of the parent group. Default value is left. + + + + + Occurs when child item input is complete. Method should be used to forward the input focus onto the different field if desired. + + + + + Occurs when input stack on the child control has changed. + + Control on which input has changed + + + + Occurs when input stack on the child control has changed. + + Control on which input has changed + + + + Gets or sets the horizontal spacing in pixels between the items. + + + + + Gets or sets whether visual is root visual directly parented to the control. + + + + + Gets or sets group vertical alignment. Default value is middle. + + + + + Gets or sets input group horizontal alignment. Default value is left. + + + + + Resets the input position so the new input overwrites current value. + + + + + Updates the IsEmpty property value based on the contained input controls. + + + + + Gets or sets whether Tab key is used to navigate between the fields. Default value is true. + + + + + Gets or sets whether Enter key is used to navigate between input fields. Default value is true. + + + + + Gets or sets whether Arrow keys are used to navigate between input fields. Default value is true. + + + + + Gets or sets whether input focus is automatically advanced to next input field when input is complete in current one. + + + + + Gets or sets whether input items are read-only. + + + + + Gets or sets whether input group is empty i.e. it does not hold any value. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets whether current input is the user input. + + + + + List of characters that when pressed would select next input field. + + + + + Initializes a new instance of the IPAddressGroup class. + + + + + Describes the Elliptical Shape. + + + + + Returns the shape that fits given bounds. + + Bounds to fit shape in. + GraphicsPath representing shape or null if shape cannot be created. + + + + Returns the inner shape based on the specified border size. + + Bounds to fit shape in. + GraphicsPath representing shape or null if shape cannot be created. + + + + Returns whether shape can be drawn given the bounds. + + Bounds to test. + true if shape can be drawn inside of bounds otherwise false. + + + + Represents EllipticalShapeDescriptor object converter. + + + + + Initializes FormatHelper class. + + + + + Defines an interface that represents the Command associated with an BaseItem instance. + + + + + Executes the command without specifying the source of the command. + + + + + Executes the command and specifies the source of the command. + + + + + Called when CommandSource is registered for the command. + + CommandSource registered. + + + + Called when CommandSource is unregistered for the command. + + CommandSource unregistered. + + + + Sets an property value on the subscribers through the reflection. If subscriber does not have + specified property with value type its value is not set. + + Property name to set. + Property value. + + + + Executes the code associated with the command. + + + + + Provides the opportunity to cancel the execution of the command. This event occurs before the Executed event. + + + + + Gets or sets the text associated with the items that are using command. + + + + + Gets or sets the value of Checked property if item associated with the command support it. + + + + + Gets or sets the value of Visible property if item associated with the command support it. + + + + + Gets or sets the value of Image property if item associated with the command support it. + + + + + Gets or sets the value of small image (ImageSmall) property if item associated with the command support it. + + + + + Gets or sets the value of Enabled property for items associated with the command. + + + + + Defines an command that is associated with an instance of BaseItem + + + + + Initializes a new instance of the Command class with the specified container. + + An IContainer that represents the container for the command. + + + + Initializes a new instance of the Command class with the specified container. + + An IContainer that represents the container for the command. + + + + Initializes a new instance of the Command class with the specified execute event handler. + + + + + Initializes a new instance of the Command class. + + + + + Executes the command. + + + + + Executes the command. + + + + + Raises the Execute event. + + Provides event data. + + + + Raises the PreviewExecuted event. + + Provides event data. + + + + Called when Text property is set. + + + + + Sets the Text property on all subscribers to the command Text. + + + + + Sets an property value on the subscribers through the reflection. If subscriber does not have + specified property with value type its value is not set. + + Property name to set. + Property value. + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Gets whether property is set and whether it will be applied to items associated with the command. + + + + + + Resets the property to its default value and disables its propagation to items that are associated with command. + + + + + Called when CommandSource is registered for the command. + + CommandSource registered. + + + + Called when CommandSource is unregistered for the command. + + CommandSource unregistered. + + + + Executes the code associated with the command when an instance of BaseItem is clicked. + + + + + Occurs before the Executed event and allows you to cancel the firing of Executed event. + + + + + Gets or sets the Text that is assigned to all command sources that are using this command and have Text property. + + + + + Gets or sets the value for the Checked property that is assigned to the command subscribers using this command and have Checked property. + + + + + Gets whether the command is in process of syncing its state to all subscribers. + + + + + Gets or sets the value for the Visible property that is assigned to the command subscribers using this command and have Visible property. + + + + + Gets or sets the image that is assigned to the command subscribers using this command and have Image property. + + + + + Gets or sets the small image that is assigned to the command subscribers using this command and have ImageSmall property. + + + + + Gets or sets the value for Enabled property assigned to the command subscribers using this command and have Enabled property. + + + + + Returns name of the node that can be used to identify it from the code. + + + + + Defines an container where you can arrange child elements added to SubItems collection either horizontally or vertically, relative to each other using SetDock and GetDock methods. + + + + + Initializes a new instance of the ItemDockContainer class. + + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Recalculates the size of the container. Assumes that DisplayRectangle.Location is set to the upper left location of this container. + + + + + Called after TopInternal property has changed + + + + + Called after LeftInternal property has changed + + + + + Must be overridden by class that is inheriting to provide the painting for the item. + + + + + Retrieves the docking for specified item. + + + + + Sets the docking within container for specified item. + + Item to set docking for. + Docking value. + + + + Returns empty container default design-time size. + + Size of an empty container. + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Return Sub Item at specified location + + + + + Gets or sets a value that indicates whether the last child element within a ItemDockContainer stretches to fill the remaining available space. + + + + + IBlock member implementation + + + + + Provides binding support for ItemPanel control. + + + + + Initializes a new instance of the ItemVisualGenerator class. + + + + + + Called when Bindings property has changed. + + Old property value + New property value + + + + Called when VisualTemplate property has changed. + + Old property value + New property value + + + + When overridden in a derived class, sets the specified array of objects in a collection in the derived class. + + An array of items. + + + + Creates a new item from template for the data. + + Data to create item for. + New instance of the BaseItem. + + + + When overridden in a derived class, sets the object with the specified index in the derived class. + + The array index of the object. + The object. + + + + When overridden in a derived class, resynchronizes the item data with the contents of the data source. + + + + + Gets or sets the data source for the ComboTree. Expected is an object that implements the IList or IListSource interfaces, + such as a DataSet or an Array. The default is null. + + + + + Gets or sets the visual template that is generated for each data item. + + + + + + Defines delegate for data visual creation based events. + + + + + Defines event arguments for data visual creation based events. + + + + + Gets or sets the visual that is created for data item. + + + + + Gets the data-item node is being created for. + + + + + Initializes a new instance of the DataNodeEventArgs class. + + + + + + + Defines BorderColors structure used to define border colors. + + + + + Creates new instance of the object. + + Uniform BorderColors + + + + Creates new instance of the object. + + Left BorderColors + Top BorderColors + Right BorderColors + Bottom BorderColors + + + + Gets whether object equals to this instance. + + object to test. + returns whether objects are Equals + + + + Gets whether object equals to this instance. + + object to test. + returns whether objects are Equals + + + + Returns hash code for object. + + Hash code + + + + Returns string representation of object. + + string representing BorderColors + + + + Gets string representation of object. + + Culture info. + string representing BorderColors + + + + Returns whether all values are empty. + + + + + Returns whether all values are the same. + + + + + Gets or sets the left BorderColors. + + + + + Gets or sets the top BorderColors. + + + + + Gets or sets the Right BorderColors. + + + + + Gets or sets the Bottom BorderColors. + + + + + Provides BorderColors TypeConverter. + + + + + Gets or sets the background color. + + + + + Gets or sets the canvas light shade color. This property is not directly used but it is provided for reference. + + + + + Gets or sets the canvas lighter shade color. This property is not directly used but it is provided for reference. + + + + + Gets or sets the foreground color. + + + + + Gets or sets the base metro color. + + + + + Gets or sets background color of edit controls. + + + + + Gets or sets the color table for MetroAppForm. + + + + + Gets or sets the color table for MetroForm. + + + + + Gets or sets the color table for MetroTab. + + + + + Gets or sets color table for MetroStatusBar. + + + + + Gets or sets color table for MetroToolbar. + + + + + Gets or sets the color table used by MetroTile items. + + + + + Gets or sets the metro-part colors that define the metro UI color scheme. These colors are provided for you reference and reuse in your app. + + + + + Represents class that defines parameters for Metro style color scheme. + + + + + Initializes a new instance of the MetroStyleParameters class. + + Canvas color. + Base color. + + + + Initializes a new instance of the MetroColorGeneratorParameters structure. + + Canvas color. + Base color. + User friendly theme name. + + + + Returns array of all predefined Metro color themes. + + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets or sets the color of the Metro canvas. + + + + + Gets or sets the base color for the Metro style. + + + + + Gets or sets the user friendly theme name. + + + + + Initializes the Metro UI color table based on colors specified. + + + + + Defines base set of Metro UI color scheme. + + + + + Gets or sets the base canvas color, like form background. + + + + + Gets or sets the chrome base color, used for window border, selection marking etc. + + + + + Gets or sets the text color for text displayed over the BaseColor. + + + + + Gets or sets the text color displayed over the canvas color. + + + + + Gets or sets the lighter text color used for example for inactive non selected tab text etc. + + + + + Gets or sets the text color used for disabled text. + + + + + Gets or sets the text light color. + + + + + Gets or sets the color that lighter than canvas color unless canvas is white in which case this will be white as well. + + + + + Gets or sets the color that is in dark shade off of the canvas color. + + + + + Gets or sets the color that is in darker shade off of the canvas color. + + + + + Gets or sets the color that is in light shade off of the canvas color. + + + + + Gets or sets the color that is in lighter shade off of the canvas color. + + + + + Gets or sets the light base color shade. + + + + + Gets or sets the just a tad lighter base color. + + + + + Gets or sets the text color for light base color. + + + + + Gets or sets the lighter base color shade. + + + + + Gets or sets the lightest base color shade. + + + + + Gets or sets the dark base color shade. + + + + + Gets or sets the darker base color shade. + + + + + Gets or sets the base color analogous color 1 + + + + + Gets or sets the Analogous color light variant. + + + + + Gets or sets the text color for Analogous color light variant. + + + + + Gets or sets the Analogous color dark variant. + + + + + Gets or sets the Analogous color darker variant. + + + + + Gets or sets the Analogous color text color. + + + + + Gets or sets the off base color button gradient start. + + + + + Gets or sets the off base color button gradient start. + + + + + Gets or sets background color of edit controls. + + + + + Represents the MetroAppForm color table. + + + + + Gets or sets the border thickness. + + + + + Gets or sets the border thickness for form when it is running on Windows without Glass effect enabled. + + + + + Gets or sets the border colors. + + + + + Gets or sets the inactive form border colors. + + + + + Represents the MetroForm color table. + + + + + Gets or sets the border thickness. + + + + + Gets or sets the border thickness for form when it is running on Windows without Glass effect enabled. + + + + + Gets or sets the border colors. + + + + + Gets or sets the inactive form border colors. + + + + + Gets or sets the color array for the top-border lines. + + + + + Gets or sets the color array for the bottom-border lines. + + + + + Gets or sets status bar background style. + + + + + Gets or sets the resize handle marker light color. + + + + + Gets or sets the resize handle marker color. + + + + + Gets or sets the color table for MetroTabStrip. + + + + + Gets or sets tab panel background style. + + + + + Gets or sets the color table for MetroTabItem. + + + + + Gets or sets the color of the active form caption text displayed on metro strip. + + + + + Gets or sets the color of the inactive form caption text displayed on metro strip. + + + + + Gets or sets the text formatting for caption text. + + + + + Represents MetroTabItem color table. + + + + + Gets or sets the default state tab colors. + + + + + Gets or sets the mouse over state tab colors. + + + + + Gets or sets the selected state tab colors. + + + + + Gets or sets the pressed state tab colors. + + + + + Gets or sets the disabled state tab colors. + + + + + Initializes a new instance of the MetroTabItemStateColorTable class. + + + + + + + Gets or sets the background style. + + + + + Gets or sets tabstrip background style. + + + + + Gets or sets the tile check-mark background overlay color. + + + + + Gets or sets the tile check-mark foreground overlay color. + + + + + Gets or sets toolbar background style. + + + + + Initializes the Visual Studio 2012 color scheme Metro color table based on colors specified. + + + + + Gets or sets color hue. Hue is value from 0-1 which determines the degree on color wheel color is on, i.e. 0.5 = 180 degrees + + + + + Gets or sets the color saturation from 0-1, i.e. 0-100%. + + + + + Gets or sets the amount of white and black in color. + + + + + Initializes a new instance of the HSVColor structure. + + + + + + + + Gets whether values are close. + + First value. + Second value + true if values are close enough + + + + Gets whether value is zero + + value to check + true if value is considered zero + + + + Gets whether value is not an number. + + value to test + true if value is not an number + + + + Represents the Metro application button used on MetroTab control. + + + + + Initializes a new instance of the MetroAppButton class. + + + + + Processes the Escape key when Application Button is hosting the backstage tab and uses it to close the tab if open. + This method is called from ProcessDialogKey method of MetroForm. + + Key data + true if key was used to close backstage tab + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether control set on BackstageTab property is used on application menu popup. + + + + + Gets or sets the backstage tab that is displayed instead of popup menu. + + + + + Raises PrepareModalPanelBounds event. + + Provides event arguments. + + + + Initializes a new instance of the MetroForm class. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Shows the panel control in the center of the form and covers all non system controls making the panel effectively modal. + + Control to show. + + + + Shows the panel control in the center of the form by sliding it in from specified side and covers all non system controls making the panel effectively modal. + + Panel to show. + Side to slide panel into the view from. + + + + Shows the panel control in the center of the form by sliding it in from specified side and covers all non system controls making the panel effectively modal. + + Panel to show. + Side to slide panel into the view from. + Slide animation speed in milliseconds. + + + + Hides the panel control that was previously shown using ShowModalPanel method. + + Control to hide. + + + + Hides the panel control that was previously shown using ShowModalPanel method by sliding it out of the view to the specified side. + + Control to hide. + Side to slide control into. + + + + Gets effective Border Thickness for the form. + + Thickness + + + + Called when BorderThickness property has changed. + + Old property value + New property value + + + + Called when BorderColor property has changed. + + Old property value + New property value + + + + Called when WM_NCHITTEST message is received. + + Reference to message data. + Return true to call base form implementation otherwise return false. + + + + Called when WM_DWMCOMPOSITIONCHANGED message is received. + + Reference to message data. + Return true to call base form implementation otherwise return false. + + + + Called when WM_NCACTIVATE message is received. + + Reference to message data. + Return true to call base form implementation otherwise return false. + + + + Called when WM_NCCALCSIZE message is received. + + Message structure. + true to call base WndProc otherwise false. + + + + Occurs before modal panel is shown and allows change of modal panel bounds. + + + + + Gets or sets whether MetroShell is pre-rendered when form is shown to make first rendering smoother. Default value is true. + + + + + Gets whether at least one modal panel is displayed. + + + + + Indicates whether modal panel when displayed shows MetroStatusBar. + + + + + Returns whether Windows Glass effects are enabled. + + + + + Gets or sets the MetroTab that is hosted by this form. This property is for internal use only. + + + + + Gets or sets whether form can be resized. + + + + + Gets or sets the form border thickness. Default value is empty thickness which indicates that thickness is taken from MetroFormColorTable. + + + + + Gets or sets the form border colors. + + + + + Gets whether form is active. + + + + + Indicates the number of pixels subtracted from form's height or width (depending on taskbar position) when form is maximized and taskbar is in auto-hide state. Default value is 4. + + + + + This property is not to be used with MetroForm. + + + + + Gets or sets the size of the border on the edges of the form that when mouse is over allow for form resizing. + + + + + Indicates whether Close button in top-right corner of the form is visible. + + + + + This property cannot be used on MetroAppForm + + + + + This property cannot be used on MetroAppForm + + + + + This property cannot be used on MetroAppForm + + + + + This property cannot be used on MetroAppForm + + + + + Gets or sets text for form system menu Restore item. + + + + + Gets or sets text for form system menu Move item. + + + + + Gets or sets text for form system menu Size item. + + + + + Gets or sets text for form system menu Minimize item. + + + + + Gets or sets text for form system menu Maximize item. + + + + + Gets or sets text for form system menu Close item. + + + + + Initializes a new instance of the BorderOverlay class. + + + + + Delegate for PrepareModalPanelBounds event. + + + + + + + Provides data for PrepareModalPanelBounds event. + + + + + Gets or sets the bounds modal panel will occupy when shown. + + + + + Initializes a new instance of the ModalPanelBoundsEventArgs class. + + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets whether divider panel that divides message box buttons and text content is visible. Default value is true. + + + + + Gets or sets whether Text supports and renders text markup. Default value is true. + + + + + Gets or sets the anti-alias setting for text-pane. + + + + + Enumeration of available common system strings. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Loads the items for the customization from MetroTab control. Registered MetroToolbar controls are enumerated and items + are added if they have CanCustomize=true. + + MetroTab control that holds references to known MetroToolbars. + + + + Gets reference to the internal Quick Access Toolbar Customization panel. + + + + + Represents Metro Tab control, usually used as application tab but can be used as standard tab control as well. + + + + + Raises SettingsButtonClick event. + + Provides event arguments. + + + + Raises HelpButtonClick event. + + Provides event arguments. + + + + Gets the name of the QAT Customize Item which is used to display the QAT Customize Dialog box. + + + + + Gets the name of the Add to Quick Access Toolbar context menu item. + + + + + Gets the name of the Remove from Quick Access Toolbar context menu item. + + + + + Gets the name of the QAT placement change context menu item. + + + + + Gets the name of the label displayed on Quick Access Toolbar customize popup menu. + + + + + Gets the string that is used as starting name for the frequently used QAT menu items created when QAT Customize menu is displayed. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Performs the setup of the MetroTabPanel with the current style of the MetroShell Control. + + Panel to apply style changes to. + + + + Creates new Rendering Tab at specified position, creates new associated panel and adds them to the control. + + Specifies the text displayed on the tab. + Specifies the name of the tab + Specifies the position of the new tab inside of Items collection. + New instance of the MetroTabItem that was created. + + + + Creates new Rendering Tab and associated panel and adds them to the control. + + Specifies the text displayed on the tab. + Specifies the name of the tab + New instance of the MetroTabItem that was created. + + + + Recalculates layout of the control and applies any changes made to the size or position of the items contained. + + + + + Occurs when text markup link is clicked. + + + + + Called when right-mouse button is pressed over MetroTabStrip + + Reference to MetroTabStrip object. + + + + Displays popup customize context menu for given customization object. + + Object that should be customized, usually an instance of BaseItem. + Indicates whether customize menu is displayed over metro tab strip + + + + Removes an item from the Quick Access Toolbar. + + Reference to the item that is already part of Quick Access Toolbar. + + + + Adds an instance of base type BaseItem to the Quick Access Toolbar. Note that this method creates + new instance of the item or an representation of the item being added and adds that to the Quick Access Toolbar. + + Reference to the item to add, must be an BaseItem type. + + + + Raises the BeforeCustomizeMenuPopup event. + + Event arguments + + + + Raises the BeforeAddItemToQuickAccessToolbar event. + + Event arguments. + + + + Shows the quick access toolbar customize dialog. + + + + + Applies the Quick Access Toolbar customization changes made on QatCustomizePanel to the MetroShell Control Quick Access Toolbar. Note that QatCustomizePanel.DataChanged property indicates whether user made any changes to the data on the panel. + + Reference to the QatCustomizePanel + + + + Raises the AfterQatDialogChangesApplied event. + + + + + Returns the Metro Application Button. + + reference to Application Button or null if button is not found. + + + + Registers the MetroToolbar or any other DotNetBar container that implements IOwner interface so it can participate in Quick Access Toolbar serialization and customization. + + + + + + Registers the MetroToolbar or any other DotNetBar container that implements IOwner interface so it can participate in Quick Access Toolbar serialization and customization. + + + + + + Occurs just before the customize popup menu is displayed and provides the ability to cancel the menu display as well + as to add/remove the menu items from the customize popup menu. + + + + + Occurs before an item is added to the quick access toolbar as result of user action. This event provides ability to + cancel the addition of the item by setting the Cancel=true of event arguments. + + + + + Occurs before an item is removed from the quick access toolbar as result of user action. This event provides ability to + cancel the addition of the item by setting the Cancel=true of event arguments. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs when Item on metro tab strip or quick access toolbar is clicked. + + + + + Occurs before Quick Access Toolbar dialog is displayed. This event provides the opportunity to cancel the showing of + built-in dialog and display custom customization dialog. You can also set the Dialog property of the event arguments to + the custom dialog you want used instead of the DotNetBar system customization dialog. + + + + + Occurs after the Quick Access Toolbar dialog is closed. + + + + + Occurs after any changes done on the Quick Access Toolbar dialog are applied to the actual Quick Access Toolbar. + + + + + Occurs after selected Metro tab has changed. You can use + MetroShell.SelectedTab + property to get reference to newly selected tab. + + + + + Occurs when text markup link from TitleText markup is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Occurs when SETTINGS button, if displayed, is clicked. + + + + + Occurs when HELP button, if displayed, is clicked. + + + + + Gets the collection of the Quick Access Toolbar Frequently used commands. You should add existing buttons to this collection that + you already have on the MetroToolbar controls or on the application menu. The list will be used to construct the frequently used + menu that is displayed when Customize Quick Access Toolbar menu is displayed and it allows end-user to remove and add these + frequently used commands to the QAT directly from this menu. + Note that items you add here should not be items that are already on Quick Access Toolbar, i.e. in MetroShell.QuickToolbarItems collection. + + + + + Gets or sets whether KeyTips functionality is enabled. Default value is true. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Indicates whether Form.Icon is shown in top-left corner. + + + + + + Gets or sets the Context menu bar associated with the this control which is used as part of Global Items feature. The context menu + bar assigned here will be used to search for the items with the same Name or GlobalName property so global properties can be propagated when changed. + You should assign this property to enable the Global Items feature to reach your ContextMenuBar. + + + + + Gets or sets whether custom caption and quick access toolbar provided by the control is visible. Default value is false. + This property should be set to true when control is used on MetroAppForm. + + + + + Gets or sets the font for the form caption text when CaptionVisible=true. Default value is NULL which means that system font is used. + + + + + Gets or sets the explicit height of the caption provided by control. Caption height when set is composed of the TabGroupHeight and + the value specified here. Default value is 0 which means that system default caption size is used. + + + + + Gets or sets the font that is used to display Key Tips (accelerator keys) when they are displayed. Default value is null which means + that control Font is used for Key Tips display. + + + + + Specifies the background style of the control. + + + + + Gets or sets the currently selected MetroTabItem. MetroTabItems are selected using the Checked property. Only a single + MetroTabItem can be selected (Checked) at any given time. + + + + + Returns reference to internal metro tab-strip control. + + + + + Returns collection of items on a bar. + + + + + Returns collection of quick toolbar access and caption items. + + + + + Gets or sets whether mouse wheel scrolls through the Metro tabs. Default value is true. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Gets or sets a value indicating whether the user can give the focus to this control using the TAB key. Default value is false. + + + + + Gets or sets whether control can be customized and items added by end-user using context menu to the quick access toolbar. + Caption of the control must be visible for customization to be enabled. Default value is true. + + + + + Gets or sets whether external implementation for metro toolbar and menu item customization will be used for customizing the control. When set to true + it enables the displaying of MetroToolbar and menu item context menus which allow customization. You are responsible for + adding the menu items to context menu to handle all aspects of item customization. See "MetroShell Control Quick Access Toolbar Customization" topic in help file under How To. + Default value is false. + + + + + Gets or sets whether customize dialog is used to customize the quick access toolbar. You can handle the EnterCustomize event + to display your custom dialog instead of built-in dialog for customization. Default value is true. + + + + + Gets or sets the categorization mode for the items on Quick Access Toolbar customize dialog box. Default value categorizes + items by the toolbar they appear on. + + + + + Gets or sets the Quick Access Toolbar layout description. You can use the value obtained from this property to save + the customized Quick Access Toolbar into registry or into any other storage object. You can also set the saved layout description back + to restore user customize layout. + + + + + Gets or sets whether Quick Access Toolbar has been customized by end-user. You can use value of this property to determine + whether Quick Access Toolbar layout that can be accessed using QatLayout property should be saved. + + + + + Gets the reference to the Metro localization object which holds all system text used by the component. + + + + + Gets or sets the side tab-strip is docked to. + + + + + Gets or sets whether SETTINGS button is visible. + + + + + + Gets or sets the SETTINGS button text. + + + + + Gets or sets the HELP button text. + + + + + Gets or sets the font tab items are displayed with. + + + + + Describes the categorization mode used to categorize items on the Customize Metro dialog. + + + + + Items are automatically categorized by the toolbar they appear on. + + + + + Items are categorized by the Category property on each item. Category property should be set on each item. + + + + + Represents Metro-UI Status Bar control. + + + + + Initializes a new instance of the MetroStatusBar class. + + + + + Called when ResizeHandleVisible property has changed. + + Old property value + New property value + + + + Indicates whether items that cannot fit are displayed on popup. + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether resize handle used to resize the parent form is visible. + + + + + Gets or sets spacing between items, default value is 2. + + + + + Defines the internal container item for the ribbon strip control. + + + + + Creates new instance of the class and initializes it with the parent RibbonStrip control. + + Reference to parent RibbonStrip control + + + + Paints this base container + + + + + Returns copy of GenericItemContainer item + + + + + Return Sub Item at specified location + + + + + Called when SettingsButtonText property has changed. + + Old property value + New property value + + + + Called when HelpButtonText property has changed. + + Old property value + New property value + + + + Gets reference to internal ribbon strip container that contains tabs and/or other items. + + + + + Gets reference to internal caption container item that contains the quick toolbar, start button and system caption item. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + When parent items does recalc size for its sub-items it should query + image size and store biggest image size into this property. + + + + + Gets or sets whether Settings button is visible. + + + + + Gets or sets whether Help button is visible. + + + + + Gets or sets the Settings button text. + + + + + Represents Rendering Tab used on Metro Tab Control. + + + + + Initializes a new instance of the MetroTabItem class. + + + + + Selects the tab. + + + + + Called after Checked property has changed. + + + + + Occurs just before Click event is fired. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Occurs after item visual style has changed. + + + + + Gets or sets cached image rendering bounds. + + + + + Gets or sets cached text rendering bounds. + + + + + Gets or sets whether tab renders its state. Used internally by DotNetBar. Do not set. + + + + + Gets or sets the additional padding added around the tab item in pixels. Default value is 0. + + + + + Gets or sets whether size of the tab has been reduced below the default calculated size. + + + + + Gets or sets the predefined color of item. Color specified here applies to items with Office 2007 style only. It does not have + any effect on other styles. Default value is eMetroTabColor.Default + + + + + Gets or sets the panel assigned to this tab item. + + + + + Gets or set the Group item belongs to. The groups allows a user to choose from mutually exclusive options within the group. The choice is reflected by Checked property. + + + + + Returns the collection of sub items. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Indicates whether the item will auto-expand when clicked. + When item is on top level bar and not on menu and contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this propert to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Indicates item's visiblity when on pop-up menu. + + + + + Indicates when menu items are displayed when MenuVisiblity is set to VisibleIfRecentlyUsed and RecentlyUsed is true. + + + + + Indicates Animation type for Popups. + + + + + Indicates the font that will be used on the popup window. + + + + + Indicates whether sub-items are shown on popup Bar or popup menu. + + + + + Specifies the inital width for the Bar that hosts pop-up items. Applies to PopupType.Toolbar only. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Gets or set the alternative shortcut text. + + + + + Gets or sets whether item separator is shown before this item. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets the text color of the button when mouse is over the item. + + + + + Indicates the way item is painting the picture when mouse is over it. Setting the value to Color will render the image in gray-scale when mouse is not over the item. + + + + + Gets or sets the text color of the button. + + + + + Gets/Sets the button style which controls the appearance of the button elements. Changing the property can display image only, text only or image and text on the button at all times. + + + + + Specifies predefined color assigned to Metro Tab. + + + + + Represents simple item container which orders items horizontally and support all ItemAlignment settings. + + + + + Initializes a new instance of the SimpleItemContainer class. + + + + + Returns copy of the item. + + + + + Copies the item specific properties to new instance of the item. + + New instance. + + + + Copies the item specific properties to new instance of the item. + + New instance. + + + + Sets whether container is used as system container internally by DotNetBar. + + true or false to indicate whether container is system container or not. + + + + Called when ItemSpacing property has changed. + + Old property value + New property value + + + + Gets or sets the minimum size of the container. Either Width or Height can be set or both. Default value is 0,0 which means + that size is automatically calculated. + + + + + Returns whether instance of the item container is used as system container internally by DotNetBar. + + + + + Indicates the spacing between items. + + + + + Indicates additional spacing between item when its BeginGroup property is set. + + + + + Specifies the layout orientation + + + + + Indicates whether all items are resized to be of the size equal to largest item in the container + + + + + Represents panel used by MetroTabItem as a container panel for the control. + + + + + Creates new instance of the panel. + + + + + Indicates whether style of the panel is managed by tab control automatically. + Set this to true if you would like to control style of the panel. + + + + + Gets or sets TabItem that this panel is attached to. + + + + + Gets or sets which edge of the parent container a control is docked to. + + + + + Gets or sets the size of the control. + + + + + Gets or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. + + + + + Gets or sets a value indicating whether the control is displayed. + + + + + Gets or sets which edges of the control are anchored to the edges of its container. + + + + + Represents Metro-UI TabStrip control. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Occurs when text markup link is clicked. + + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrived from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Returns effective caption height. + + Caption height. + + + + Returns automatically calculated height of the control given current content. + + Height in pixels. + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Called when ShowKeyTips on RibbonBar contained by this Ribbon is set to true + + + + + Forces the control to exit Ribbon Key-Tips mode. + + + + + Called when item on popup container is right-clicked. + + Instance of the item that is right-clicked. + + + + Starts moving of the parent form action which happens when user attempts to drag the form caption. + + + + + Returns true if point is inside the caption area. + + Client point coordinates. + True if point is inside of caption area otherwise false. + + + + Occurs when text markup link from TitleText markup is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets or sets whether KeyTips functionality is enabled. Default value is true. + + + + + Gets or sets whether control can be customized and items added by end-user using context menu to the quick access toolbar. + Caption of the control must be visible for customization to be enabled. Default value is true. + + + + + Gets or sets the explicit height of the caption provided by control. Caption height when set is composed of the TabGroupHeight and + the value specified here. Default value is 0 which means that system default caption size is used. + + + + + Gets or sets whether custom caption line provided by the control is visible. Default value is false. + This property should be set to true when control is used on Office2007RibbonForm. + + + + + Gets or sets the font for the form caption text when CaptionVisible=true. Default value is NULL which means that system font is used. + + + + + Gets/Sets the visual style of the control. + + + + + Returns collection of items on a bar. + + + + + Returns currently selected MetroTabItem. MetroTabItems are selected using the Checked property. Only a single + MetroTabItem can be Checked at any given time. + + + + + Gets whether Ribbon is in key-tips mode including its child controls. + + + + + Indicates whether Form.Icon is shown in top-left corner. + + + + + Returns collection of items on a bar. + + + + + Gets the reference to the internal container item for the items displayed in control caption. + + + + + Gets the reference to the internal container for the ribbon tabs and other items. + + + + + Represents Metro Tile. + + + + + Raises CheckedChanged event. + + Provides event arguments. + + + + Raises OptionGroupChanging event. + + Provides event arguments. + + + + Creates new instance of metro tile. + + + + + Creates new instance of metro tile and assigns the name to it. + + Item name. + + + + Creates new instance of metro tile and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the MetroTileItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Copies the MetroTileItem specific properties to new instance of the item. + + New MetroTileItem instance. + + + + Called when NotificationMarkText property has changed. + + Old property value + New property value + + + + Called when NotificationMarkPosition property has changed. + + Old property value + New property value + + + + Called when NotificationMarkSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when NotificationMarkOffset property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs just before Click event is fired. + + + + + Called when TileSize property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when IsLeftMouseButtonDown property has changed. + + Old property value + New property value + + + + Called when IsMouseOver property has changed. + + Old property value + New property value + + + + Raises TitleTextMarkupLinkClick event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Checked property has changed. + + Old property value + New property value + + + + Called when CheckBehavior property has changed. + + Old property value + New property value + + + + Called when CurrentFrame property has changed. + + Old property value + New property value + + + + Called when AutoRotateFramesInterval property has changed. + + Old property value + New property value + + + + Called when DragStartPoint property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs after Checked property has changed. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Specifies maximum of 2 character text displayed inside of the notification mark on top of the button. + + + + + Indicates the position of the notification marker within the bounds of the button. + + + + + Specifies diameter of notification mark. When set to 0 system default value is used. + + + + + Gets or sets background color of the notification mark. + + + + + Specifies the offset for the notification mark relative to its position. + + + + + Gets or sets the tile size. + + + + + Gets or sets the predefined tile color for default tile frame. + + + + + Specifies the Tile style default tile frame. + + + + + Indicates the symbol displayed on face of the tile instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the color of the symbol. + + + + + Gets or sets the image displayed on the tile. + + + + + Gets or sets image alignment in relation to text. + + + + + Gets or sets the text associated with this item. + + + + + Gets whether left mouse button is pressed over the tile. + + + + + Gets whether mouse is over the item. + + + + + Gets or sets the tile title text displayed by default in lower left corner. + + + + + Occurs when an hyperlink in title text markup is clicked. + + + + + Gets or sets the title text font. + + + + + Gets or sets the color of the title text. + + + + + Gets or sets title text alignment. + + + + + Gets or sets the top-left location of the image. + + + + + Gets or sets whether tile is checked. + + + + + Gets or sets the automatic check behavior of metro tile. + + + + + Gets or set the Group item belongs to. The groups allows a user to choose from mutually exclusive options within the group. The choice is reflected by Checked property. + + + + + Gets the list of tile frames that are displayed when frame animation is enabled using AnimationEnabled property. + + + + + Gets or sets index of currently displayed frame in Frames collection. + + + + + Gets the index of last selected frame, i.e. before CurrentFrame was set with new value. + + + + + Gets or sets whether Frame animation is enabled when CurrentFrame has changed. Default value is true. + + + + + Gets or sets the frames animation duration in milliseconds. Default value is 800. + + + + + Gets or sets the automatic tile frame rotation interval in milliseconds. When set it will change the CurrentFrame property so each frame from Frames collection is displayed after interval set here. + + + + + Gets or sets tile background color when Enabled=false. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Specifies how MetroTileItem is checked. + + + + + Metro tile item inherits the check behavior from host control. + + + + + Metro tile item cannot be checked. + + + + + Metro tile item is checked using right mouse button. + + + + + Metro tile item is checked using middle mouse button. + + + + + Metro tile item is checked using left mouse button. + + + + + Defines single frame for metro-tile item. + + + + + Initializes a new instance of the MetroTileFrame class. + + + + + Called when TitleText property has changed. + + Old property value + New property value + + + + Raises TitleTextMarkupLinkClick event. + + Provides event arguments. + + + + Called when TitleTextFont property has changed. + + Old property value + New property value + + + + Called when TitleTextColor property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when TitleTextAlignment property has changed. + + Old property value + New property value + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Image property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Text property has changed. + + Old property value + New property value + + + + Called when Color property has changed. + + Old property value + New property value + + + + Called when FrameDisplayDuration property has changed. + + Old property value + New property value + + + + Occurs when text markup link is clicked. + + + + + Raises MarkupLinkClick event. + + Provides event arguments. + + + + Called when TextMarkupEnabled property has changed. + + Old property value + New property value + + + + Called when ImageTextAlignment property has changed. + + Old property value + New property value + + + + Raises the PropertyChanged event. + + Provides event arguments. + + + + Gets or sets the tile title text displayed by default in lower left corner. + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Occurs when an hyperlink in title text markup is clicked. + + + + + Gets or sets the title text font. + + + + + Gets or sets the color of the title text. + + + + + Gets or sets title text alignment. + + + + + Gets the effective style for the tile when TileColor property is set to predefined tile color. + + + + + Specifies the Tile style of the item. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the tile instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the color of the symbol. + + + + + Gets or sets the image displayed on the tile. + + + + + Gets or sets the top-left location of the image. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the predefined tile color. + + + + + Gets or sets the frame display duration in milliseconds during metro-tile frame animation. When not set then each frame will stay visible for duration set on MetroTileItem.AutoRotateFramesInterval. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets or sets whether text-markup can be used in Text property. + + + + + Gets or sets image alignment in relation to text. + + + + + Occurs when property on BindingDef object has changed. + + + + + Represents panel for Metro Tiles. + + + + + Represents generic item panel container control. + + + + + Returns first checked top-level button item. + + An ButtonItem object or null if no button could be found. + + + + Adds new item to the ItemPanel based on specified ItemTemplate and sets its Text property. + + Text to assign to the item. + reference to newly created item + + + + Gets or sets default layout orientation inside the control. You can have multiple layouts inside of the control by adding + one or more instances of the ItemContainer object and chaning it's LayoutOrientation property. + + + + + Gets or sets whether items contained by container are resized to fit the container bounds. When container is in horizontal + layout mode then all items will have the same height. When container is in vertical layout mode then all items + will have the same width. Default value is true. + + + + + Gets or sets whether ButtonItem buttons when in vertical layout are fit into the available width so any text inside of them + is wrapped if needed. Default value is false. + + + + + Gets or sets the item alignment when container is in horizontal layout. Default value is Left. + + + + + Gets or sets whether items in horizontal layout are wrapped into the new line when they cannot fit allotted container size. Default value is false. + + + + + Returns collection of items on a bar. + + + + + Gets or sets the index specifying the currently selected item. + + + + + Gets the list of ButtonItem or CheckBoxItem controls that have their Checked property set to true. + + + + + Gets or sets ButtonItem or CheckBoxItem item that have their Checked property set to true. + + + + + Initializes a new instance of the MetroTilePanel class. + + + + + Gets or sets a value indicating whether the control enables the user to scroll to items placed outside of its visible boundaries. + + + + + Gets or sets spacing in pixels between items. Default value is 1. + + + + + Gets or sets whether items contained by container are resized to fit the container bounds. When container is in horizontal + layout mode then all items will have the same height. When container is in vertical layout mode then all items + will have the same width. Default value is true. + + + + + Raises ExpandedChanging event. + + Provides event arguments. + + + + Raises ExpandedChanged event. + + Provides event arguments. + + + + Initializes a new instance of the MetroStatusBar class. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Registers toolbar with MetroTab so it can participate in Quick Access Toolbar operations. + + MetroTab + + + + Unregisters previously registered toolbar from MetroTab and removes it from Quick Access Toolbar operations. + + + + + Returns automatically calculated height of the control given current content. + + Height in pixels. + + + + Called after change of active window has been detected. SetupActiveWindowTimer must be called to enable detection. + + + + + Invokes the ItemClick event. + + Reference to the item that was clicked. + + + + Called when AutoCollapse property has changed. + + Old property value + New property value + + + + Called when AnimationSpeed property has changed. + + Old property value + New property value + + + + Called when ExpandDirection property has changed. + + Old property value + New property value + + + + Occurs before Expanded property has changed, i.e. control expanded or collapsed and allows you to cancel action by setting Cancel=true on event arguments. + + + + + Occurs after Expanded property value has changed, i.e. control was expanded or collapsed. + + + + + Returns collection of items on a bar. + + + + + Gets or sets spacing between items, default value is 0. + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether toolbar is attempted to be automatically registered with parent MetroShell control so it can participate in Quick Access Toolbar operations. Default value is true. + + + + + Gets or sets whether control is expanded or not. When control is expanded both main and extra toolbar items are visible. When collapsed + only main items are visible. Default value is false. + + + + + Gets or sets whether control is automatically collapsed, Expanded property set to False, if control was expanded and any button on the control was clicked or mouse is clicked elsewhere, parent form has lost input focus or some other control gains input focus. + + + + + Gets or sets the animation speed duration in milliseconds. Default value is 150 milliseconds. Set to zero, 0 to disable animation. + + + + + Gets or sets the expand direction for the toolbar. Default value is Auto. + + + + + Gets or sets whether Expand button is visible. Default value is true. + + + + + Gets or sets whether control height is set automatically based on the content. Default value is false. + + + + + Defines expand direction behavior for MetroToolbar. + + + + + Expand direction is automatically determined by the position of the control on the form. + + + + + Control is expanded up so bottom of the control is fixed. + + + + + Control sis expanded down so top of the control is fixed. + + + + + Defines the internal container item for the MetroToolbar control. + + + + + Creates new instance of the class and initializes it with the parent RibbonStrip control. + + Reference to parent MetroToolbar control + + + + Paints this base container + + + + + Returns copy of GenericItemContainer item + + + + + Called when ExpandButtonVisible property has changed. + + Old property value + New property value + + + + Gets or sets whether Expand button is visible. Default value is true. + + + + + Gets reference to container that host items. + + + + + Gets reference to container that hosts extra items. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + When parent items does recalc size for its sub-items it should query + image size and store biggest image size into this property. + + + + + Initializes Office Mobile 2014 color scheme Metro color table based on colors specified. + + + + + Draws the border. + + Graphics canvas. + Bounds for border. + Border thickness. + Border color. + + + + Draws background. + + Graphics canvas. + Background bounds. + Background color + + + + Deflates the rectangle by the border thickness. + + Rectangle. + Border thickness + Rectangle deflated by the border thickness + + + + Summary description for Office2003ButtonItemPainter. + + + + + Summary description for ButtonItemPainter. + + + + + Paints state of the button, either hot, pressed or checked + + + + + + + + Paints state of the button, either hot, pressed or checked + + + + + + + + Represents the painter for the Office 2007 SystemCaptionItem + + + + + Represents the base class for the SystemCaptionItem painter. + + + + + Paints the SystemCaptionItem as icon in left hand corner. + + + + + + Paints the SystemCaptionItem as set of buttons minimize, restore/maximize and close. + + + + + + Paints the background of the button using specified color table colors. + + Graphics object. + Background bounds + Color Table + + + + Gets or sets color table used by renderer. + + + + + Abstract renderer for rendering Metro-UI controls. + + + + + Renders the + + + + + + Gets or sets color table used by renderer. + + + + + Renders the MetroTileItem. + + MetroTileItem to render. + Rendering event arguments. + + + + Renders the MetroForm. + + Form to render. + Rendering event arguments. + + + + Renders the MetroForm. + + Form to render. + Rendering event arguments. + + + + Renders the MetroTabItem. + + Form to render. + Rendering event arguments. + + + + Renders the MetroTabStrip + + TabStrip to render. + Paint args + + + + Renders the MetroStatusBar. + + Status bar to render + Paint args + + + + Renders the MetroStatusBar. + + Status bar to render + Paint args + + + + Defines class for passing rendering information to renderer. + + + + + Gets or sets the control to render. + + + + + Gets or sets the paint event arguments to use to render out control. + + + + + Gets or sets the current color table. + + + + + Gets or sets default font. + + + + + Gets or sets default plain font. + + + + + Gets or sets right-to-left setting. + + + + + Gets or sets the paint information for items. + + + + + Represents the Office 2007 Ribbon Tab Group painter. + + + + + Paints ribbon tab group. + + Context information + + + + Paints SwitchButton. + + Provides arguments for the operation. + + + + Gets or sets color table used by renderer. + + + + + Defines Thickness structure used by borders and margins. + + + + + Creates new instance of the object. + + Uniform Thickness + + + + Creates new instance of the object. + + Left Thickness + Top Thickness + Right Thickness + Bottom Thickness + + + + Gets whether object equals to this instance. + + object to test. + returns whether objects are Equals + + + + Gets whether object equals to this instance. + + object to test. + returns whether objects are Equals + + + + Returns hash code for object. + + Hash code + + + + Returns string representation of object. + + string representing Thickness + + + + Gets string representation of object. + + Culture info. + string representing Thickness + + + + Returns whether object holds valid value. + + Specifies whether negative values are allowed. + Specifies whether NaN values are allowed. + Specifies whether positive infinity values are allowed + Specifies whether negative infinity values are allowed + true if object holds valid value + + + + Returns true if two objects are close. + + Thickness to test. + true if values are close. + + + + Returns true if two objects are close. + + Thickness 1 + Thickness 2 + true if values are close. + + + + Returns whether all values are zero. + + + + + Returns whether all values are the same. + + + + + Gets or sets the left Thickness. + + + + + Gets or sets the top Thickness. + + + + + Gets or sets the Right Thickness. + + + + + Gets or sets the Bottom Thickness. + + + + + Gets the total horizontal thickness i.e. Left+Right. + + + + + Gets the total vertical thickness i.e. Top+Bottom. + + + + + Provides Thickness TypeConverter. + + + + + Represents the base class each micro-chart implements + + + + + Creates the chart image. + + Rendering information. + Image of the chart. + + + + Defines the style for Area micro chart. + + + + + Initializes a new instance of the AreaMicroChartStyle class. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when style appearance changes. + + + + + Gets or sets the value of the zero line, i.e. where zero line is drawn. Default value is 0. + + + + + Gets or sets the chart area color. + + + + + Gets or sets the color of the high point dot on chart. + + + + + Gets or sets the color of the low point dot on chart. + + + + + Gets or sets the color of the first point dot on chart. + + + + + Gets or sets the color of the last point dot on chart. + + + + + Defines the style for the bar style micro charts. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when style appearance changes. + + + + + Gets or sets the minimum single bar width. + + + + + Gets or sets the color of positive bar value. + + + + + Gets or sets the color of negative bar value. + + + + + Gets or sets whether average line is drawn. + + + + + Gets or sets the value of the zero line, i.e. pivot point that determines negative and positive values. Default value is 0. + + + + + Gets or sets the color of the lowest value bar on graph. + + + + + Gets or sets the color of the highest value bar on graph. + + + + + Defines the style for 100% bar chart. + + + + + Initializes a new instance of the PieMicroChartStyle class. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when style appearance changes. + + + + + Gets or sets the minimum single bar width. + + + + + Gets the pre-defined slice colors for the pie chart. + + + + + Gets or sets the color of the slice outline. + + + + + Defines the style for the line micro chart. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets or sets the color of the chart line. + + + + + Gets or sets whether average line is drawn. + + + + + Gets or sets the color of the + + + + + Gets or sets whether zero-line is drawn on chart. + + + + + Gets or sets the value of the zero line, i.e. where zero line is drawn. Default value is 0. + + + + + Gets or sets the color of the + + + + + Occurs when style appearance changes. + + + + + Gets or sets the color of the high point dot on chart. + + + + + Gets or sets the color of the low point dot on chart. + + + + + Gets or sets the color of the first point dot on chart. + + + + + Gets or sets the color of the last point dot on chart. + + + + + Gets or sets whether control line is drawn. Default value is false. Control lines can be used to display for example low and high control bounds for the chart. + + + + + Gets or sets the color of the first control line. + + + + + Gets or sets starting value that is used to draw first control line. + + + + + Gets or sets end value that is used to draw first control line. + + + + + Gets or sets whether control line is drawn. Default value is false. Control lines can be used to display for example low and high control bounds for the chart. + + + + + Gets or sets the color of the second control line. + + + + + Gets or sets starting value that is used to draw second control line. + + + + + Gets or sets end value that is used to draw second control line. + + + + + Represents Micro-Chart Control. + + + + + Initializes a new instance of the MicroChart class. + + + + + Forces the button to perform internal layout. + + + + + Raises MouseOverDataPointChanged event. + + Provides event arguments. + + + + Invalidates the chart display and requests the re-paint. + + Indicates whether to animate transition to new chart + + + + Called when Command property value changes. + + + + + Gets or sets whether mouse over tooltip for data point is enabled. Default value is true. + + + + + Gets the index of data point (DataPoints collection) that mouse is over or returns -1 if mouse is not over any data-point. + + + + + Occurs when MouseOverDataPointIndex property changes due to user moving the mouse and pointing it to different data point on chart. + + + + + Gets or sets the tooltips for each data-point assigned through DataPoints property. If not set control will automatically + show tooltip based on the data-point value. + + + + + Gets or sets the chart data points. Note that if you are adding or removing points directly from this collection you must call + Refresh() method on the control to refresh the display. + + + + + Gets or sets the format string for the value when it is displayed as tool-tip for data point. + + + + + Gets or sets whether chart is tracking mouse movement to show data-point and its value on tooltip. Default value is true. + + + + + Gets or sets whether transition animation between same chart with different data-points is enabled. Default value is true. + + + + + Gets or sets whether button like mouse over tracking is enabled for whole control. When enabled control looks like a button when mouse is over it. Default value is false. + + + + + Gets the style used to customize appearance of Line micro-chart. + + + + + Gets the style used to customize appearance of Plot micro-chart. + + + + + Gets the style used to customize appearance of Column micro-chart. + + + + + Gets the style used to customize appearance of Bar micro-chart. + + + + + Gets the style used to customize appearance of Win-Lose micro-chart. + + + + + Gets the style used to customize appearance of Pie micro-chart. + + + + + Gets the style used to customize appearance of Area micro-chart. + + + + + Gets the style used to customize appearance of 100% micro-chart. + + + + + Gets or sets the type of the chart rendered. + + + + + Gets or sets the maximum value for data points. By default maximum data point is calculated based on that data displayed by the chart, but when + two charts need to be scaled the same setting maximum and minimum values for them will ensure that scales are visually the same. + + + + + Gets or sets the minimum value for data points. By default minimum data point is calculated based on that data displayed by the chart, but when + two charts need to be scaled the same setting maximum and minimum values for them will ensure that scales are visually the same. + + + + + Gets whether command is executed when control is clicked. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Initializes a new instance of the TrendInfo structure. + + + + + + + + + Initializes a new instance of the TrendInfo structure. + + + + + Initializes a new instance of the MicroChartRenderInfo structure. + + + + + + + + + Represents the micro-chart item. + + + + + Creates new instance of MicroChartItem. + + + + + Creates new instance of MicroChartItem and assigns the name to it. + + Item name. + + + + Creates new instance of MicroChartItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the MicroChartItem specific properties to new instance of the item. + + New MicroChartItem instance. + + + + Copies the MicroChartItem specific properties to new instance of the item. + + New MicroChartItem instance. + + + + Recalculate the size of the item. If overridden base implementation must be called so default processing can occur. + + + + + Raises MouseOverDataPointChanged event. + + Provides event arguments. + + + + Invalidates the chart display and requests the re-paint. + + Indicates whether to animate transition to new chart + + + + Draws the chart. + + Paint arguments + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when DataMaxValue property has changed. + + Old property value + New property value + + + + Called when DataMinValue property has changed. + + Old property value + New property value + + + + Gets or sets the suggested text-width. If you want to make sure that text you set wraps over multiple lines you can set suggested text-width so word break is performed. + + + + + Gets or sets the format string for the value when it is displayed as tool-tip for data point. + + + + + Gets or sets the chart data points. Note that if you are adding or removing points directly from this collection you must call + Refresh() method on the control to refresh the display. + + + + + Gets or sets the tooltips for each data-point assigned through DataPoints property. If not set control will automatically + show tooltip based on the data-point value. + + + + + Gets or sets whether transition animation between same chart with different data-points is enabled. Default value is true. + + + + + Gets whether fade effect is enabled. + + + + + Gets or sets whether chart is tracking mouse movement to show data-point and its value on tooltip. Default value is true. + + + + + Gets or sets whether button like mouse over tracking is enabled for whole control. When enabled control looks like a button when mouse is over it. Default value is false. + + + + + Gets the index of data point (DataPoints collection) that mouse is over or returns -1 if mouse is not over any data-point. + + + + + Gets or sets whether mouse over tooltip for data point is enabled. Default value is true. + + + + + Occurs when MouseOverDataPointIndex property changes due to user moving the mouse and pointing it to different data point on chart. + + + + + Gets the style used to customize appearance of Line micro-chart. + + + + + Gets the style used to customize appearance of Plot micro-chart. + + + + + Gets the style used to customize appearance of Column micro-chart. + + + + + Gets the style used to customize appearance of Bar micro-chart. + + + + + Gets the style used to customize appearance of Win-Lose micro-chart. + + + + + Gets the style used to customize appearance of Pie micro-chart. + + + + + Gets the style used to customize appearance of Area micro-chart. + + + + + Gets the style used to customize appearance of 100% micro-chart. + + + + + Gets or sets the width of the chart part of the control. + + + + + Gets or sets the height of the chart part of the control. + + + + + Gets or sets the type of the chart rendered. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets text-position in relation to the chart. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets whether caption/label set using Text property is visible. + + + + + Gets or sets text padding. + + + + + Gets or sets switch margin. + + + + + Gets or sets the text color. + + + + + Gets or sets the background image position + + + + + Gets or sets the background image used by the control. + + + + + Gets or sets the maximum value for data points. By default maximum data point is calculated based on that data displayed by the chart, but when + two charts need to be scaled the same setting maximum and minimum values for them will ensure that scales are visually the same. + + + + + Gets or sets the minimum value for data points. By default minimum data point is calculated based on that data displayed by the chart, but when + two charts need to be scaled the same setting maximum and minimum values for them will ensure that scales are visually the same. + + + + + Indicates item's visibility when on pop-up menu. + + + + + Indicates whether item was recently used. + + + + + Represents MicroChart hot-points. + + + + + Start angle for pie slice. + + + + + Sweep angle for pie slice. + + + + + Initializes a new instance of the MicroChartHotPoint structure. + + + + + + + Initializes a new instance of the MicroChartHotPoint structure. + + + + + + + + + Initializes a new instance of the MicroChartHotPoint structure. + + + + + + + + + + Defines available MicroChar types. + + + + + Identifies Plot chart. + + + + + Identifies WinLose chart. + + + + + Identifies Area chart. + + + + + Identifies Line chart. + + + + + Identifies Column chart. + + + + + Identifies Bar chart. + + + + + Identifies Pie chart. + + + + + Identifies 100% bar. + + + + + Defines micro-chart text position in relation to the chart. + + + + + Text is positioned to the left of the chart. + + + + + Text is positioned to the right of the chart. + + + + + Text is positioned on top of the chart. + + + + + Text is positioned on bottom of the chart. + + + + + Defines the style for pie chart. + + + + + Initializes a new instance of the PieMicroChartStyle class. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when style appearance changes. + + + + + Gets the pre-defined slice colors for the pie chart. + + + + + Gets or sets the color of the slice outline. + + + + + Defines the style for the plot micro chart. + + + + + Raises StyleChanged event. + + Provides event arguments. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when style appearance changes. + + + + + Gets or sets the color of the chart line. + + + + + Gets or sets whether average line is drawn. + + + + + Gets or sets the color of the + + + + + Gets or sets whether zero-line is drawn on chart. + + + + + Gets or sets the value of the zero line, i.e. where zero line is drawn. Default value is 0. + + + + + Gets or sets the color of the + + + + + Gets or sets the color of the high point dot on chart. + + + + + Gets or sets the color of the low point dot on chart. + + + + + Gets or sets the color of the first point dot on chart. + + + + + Gets or sets the color of the last point dot on chart. + + + + + Gets or sets whether control line is drawn. Default value is false. Control lines can be used to display for example low and high control bounds for the chart. + + + + + Gets or sets the color of the first control line. + + + + + Gets or sets starting value that is used to draw first control line. + + + + + Gets or sets end value that is used to draw first control line. + + + + + Gets or sets whether control line is drawn. Default value is false. Control lines can be used to display for example low and high control bounds for the chart. + + + + + Gets or sets the color of the second control line. + + + + + Gets or sets starting value that is used to draw second control line. + + + + + Gets or sets end value that is used to draw second control line. + + + + + Class that tracks lists of all controls that host currently open popups. + + + + + Registers IOwnerMenuSupport popup host in response to host displaying its first popup. + + IOwnerMenuSupport host to register + + + + Unregisters IOwnerMenuSupport popup host in response to host closing its last popup. + + IOwnerMenuSupport host to unregister + + + + Closes all currently open popups. + + + + + Closes all currently open popups excluding specified popup host. + + IOwnerMenuSupport host to exclude from closing or null + + + + Represents custom collection with INotifyPropertyChanged and INotifyCollectionChanged interface support. + + + + + + Represents collection changed notification interface. + + + + + Occurs when collection changed. + + + + + Creates new instance of object. + + + + + Creates new instance of object. + + + + + Creates new instance of object. + + List to initialize collection with. + + + + Add item to collection. + + Item to add. + + + + Remove all items from collection. + + + + + Remove all items from collection. + + + + + Checks whether collection contains item. + + Item to look for. + true if item is in collection. + + + + Copy collection to array. + + Array to copy to. + Index to copy from. + + + + Copy collection to array. + + Array to copy to. + + + + Gets enumerator for collection. + + Enumerator. + + + + Returns index of an item. + + Reference to item. + Index of item. + + + + Insert item at specified location. + + Index to insert item in. + Item to insert. + + + + Inserts item. + + Index to insert item at. + Reference to item. + + + + Removes item from collection. + + Item to remove. + true if item was removed. + + + + Remove item at specified location. + + Index of item to remove. + + + + Remove item at specified location. + + Index of item to remove. + + + + Set item on location. + + Index + Item to assign. + + + + Returns items directly without checks. + + List of items. + + + + Occurs when collection is read. + + + + + Occurs when collection property has changed. + + Event arguments. + + + + Blocks the collection reentrancy. + + IDisposable to end re-entrancy + + + + Checks whether call creates reentrancy. + + + + + Called when collection has changed. + + Event arguments. + + + + Occurs when property value has changed. + + + + + Returns number of items in collection. + + + + + Returns item at index. + + Index of item. + Item at index. + + + + Returns the IList interface for items in collection. + + + + + Occurs when collection has changed. + + + + + Defines change actions. + + + + + Items were added. + + + + + Items were removed. + + + + + Items were replaced. + + + + + Items were moved. + + + + + Collection was reset. + + + + + Defines delegate for collection notification events. + + Event sender. + Event arguments. + + + + Defines collection change notification event arguments. + + + + + Create new instance of object. + + Action + + + + Creates new instance of object. + + Specifies action. + List of changed items. + + + + Creates new instance of object. + + Specifies action. + Item that was changed. + + + + Creates new instance of object. + + Action. + New items in collection. + Old items in collection. + + + + Creates new instance of object. + + Action. + List of changed items. + Starting index of change. + + + + Creates new instance of object. + + Action + Changed item + Index of change + + + + Creates new instance of object. + + Action + New item + Old item + + + + Creates new instance of object. + + Action + New items. + Removed items. + Starting index of change. + + + + Creates new instance of object. + + Action + Changed items + New index + Old index + + + + Creates new instance of object. + + Action + Changed item + New index + Old index + + + + Creates new instance of object. + + Action. + New item + Old item + New index + + + + Gets the type of the collection change action. + + + + + Gets list of newly added items. + + + + + Gets new starting index. + + + + + Gets list of removed items. + + + + + Old starting index. + + + + + Represents advanced property grid control. + + + + + Defines an interface that is used by advanced property grid parser to localize property names. + + + + + Gets localized property name. + + Property name to retrieve localized name for. + Localized Property name or null to use default. + + + + Gets localized category name. + + Category to retrieve localized value for. + Localized Category name or null to use default. + + + + Gets localized message for Tooltip body when error setting the property value has occurred. + + Default system message. + Localized message or null to use default. + + + + Gets the style that is applied to property node when it is in read-only state. + + + + + Gets the style that is applied to property node when its value has changed from the default value for the property. + + + + + Gets the property category style. + + + + + Gets the default style for unchanged value edit cell. + + + + + Initializes a new instance of the AdvPropertyGrid class. + + + + + Invokes PropertyValueChanging event. + + Event data. + + + + Invokes PropertyValueChanged event handler. + + Name of the property that has changed. + New property value. + Old property value. + + + + Invokes PropertyValueChanged event. + + Name of property that has changed + + + + Raises ValidatePropertyValue event. + + Provides event arguments. + + + + Raises PropertiesLoaded event. + + Provides event arguments. + + + + Commits any property edits that are currently in progress by applying the current entered value to the property. + Returns true if edit was applied. + + + + + Updates specified property value in property grid. + + Property Name to update value for. + + + + Refreshes the display of all property values in the grid. + + + + + Reloads all properties from selected object. + + + + + Collapses all the categories in the AdvPropertyGrid. + + + + + Expands all the categories in the AdvPropertyGrid. + + + + + Raises the PrepareErrorSuperTooltip event. + + Provides information about event. + + + + Sets the property grid column width. + + Column index + Width of column in pixels + + + + Raises the ConvertPropertyValueToString event. + + Provides event data + + + + Raises the ConvertFromStringToPropertyValue event. + + Provides event data + + + + Raises the ProvidePropertyValueList event. + + Provides event data + + + + Raises the ProvideUITypeEditor event. + + Provides event data + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Find PropertyNode using the property name. + + Property to name + PropertyNode or null if not found + + + + Called when SubPropertiesDefaultSort property has changed. + + Old property value + New property value + + + + Raises the PropertyChanged event. + + Provides event arguments. + + + + Signals the object that initialization is starting. + + + + + Signals the object that initialization is ending. + + + + + Occurs when property grid needs property names translated for UI. + + + + + Occurs when Super Tooltip that is displayed for the error that occurred when property is being set is being assigned to a property node. + This event allows you to customize the super tooltip displayed. + + + + + Occurs when property value is being converted to text representation for display. You can handle this event + to provide custom conversion for property values. You must set IsConverted=true on event arguments to indicate that you have performed value conversion. + + + + + Occurs when text entered by user is being converted to typed property value to be assigned to the property. You can handle this event + to provide custom conversion for property values. You must set IsConverted=true on event arguments to indicate that you have performed value conversion. + + + + + Occurs when property looks for the list of valid values for the property to show on either drop-down or use + in auto-complete list. For example when property type is enum the internal implementation will convert available enum + values into string list and use on drop-down and in auto-complete list. You can use this event to provide + custom value list in combination with ConvertPropertyValueToString, ConvertFromStringToPropertyValue events. + You must set IsListValid=true on event arguments to indicate that list your provided should be used. + + + + + Occurs when property node needs the UITypeEditor for the property. You can handle this event and provide your own UITypeEditor to be used instead of the one specified on the property. + + + + + Occurs when user changes the value of the property in property grid. + + + + + Occurs before property value entered by the user is set on the property. You can cancel internal assignment by property grid by setting Handled=true on event arguments. + + + + + Occurs when users changes the property value and attempts to commit the changes. This even allows you to validate the value and show error message if value is invalid and cancel its application. + + + + + Occurs after properties have been loaded into the property grid. + + + + + Gets or sets the currently selected objects. + + + + + Gets or sets the currently selected object. + + + + + Gets or sets the browsable attributes associated with the object that the property grid is attached to. + + + + + Gets or sets whether property is highlighted to confirm the value update by user. Default value is true. + + + + + Gets or sets the list of property names that are not loaded into property grid regardless of their Browsable attribute setting. + + + + + Gets or sets the list of category names properties below to that are not loaded into property grid regardless of the property Browsable attribute setting. + + + + + Returns reference to internal SuperTooltip component used by AdvPropertyGrid. + + + + + Defines the appearance of the control. + + + + + Gets or sets the property sorting inside of the grid. + + + + + Gets or sets the help type that is provided by the control. Default help type is SuperTooltip which shows tooltip over each property + that provides property description. + + + + + Gets reference to the help panel that is displayed below property grid and which provides selected property description. + + + + + Gets reference to the expandable splitter that is displayed above the help panel and allows resizing of the panel. + + + + + Gets reference to internal AdvTree control that displays properties. + + + + + Gets or sets the grid lines color. + + + + + Gets the reference to the internal toolbar control displayed above the property grid. + + + + + Gets or sets whether toolbar is visible. Default value is true. + + + + + Gets or sets whether search text box that allows property filtering is visible. Default value is true. + + + + + Gets reference to internal TextBoxItem that represents search text box. + + + + + Gets the reference to the property gird localization object which holds all system text used by the component. + + + + + Gets or sets whether Tab key navigates between property nodes. Default value is true. + + + + + Gets or sets the password character used by the property values that are marked with PropertyPasswordText attribute. + + + + + Gets or sets the sub property default sorting. Default value is Alphabetical. + + + + + Occurs when property defined by AdvPropertyGrid control has changed. + + + + + Gets the style that is applied to property node when it is in read-only state. + + + + + Gets the style that is applied to property node when its value has changed from the default value for the property. + + + + + Gets the style that is applied to property edit cell when its displaying unchanged property value. + + + + + Gets the property category style. + + + + + Defines the sorting for the AdvPropertyGrid properties. + + + + + Specifies help types property grid uses to display help for selected property. + + + + + No help is visible. + + + + + SuperTooltip with property description is displayed when mouse is over the property. + + + + + Panel below property grid is displayed which shows the description for the selected property. + + + + + Defines delegate for Localize AdvPropertyGrid event. + + + + + + + Defines data for Localize AdvPropertyGrid event. + + + + + Gets the property name or category name localization is performed for. Inspect LocalizationType property to get localization type which + determines value specified in this property. + + + + + Gets the localization type being performed. + + + + + Gets or sets the localized value to be used. Set to null or empty string to use default value. + + + + + Initializes a new instance of the AdvPropertyGridLocalizeEventArgs class. + + Key value event is raised for. + Localization Type being performed. + + + + Defines the localization types for AdvPropertyGrid control. + + + + + Property name is localized. + + + + + Category is localized. + + + + + Error super tooltip parts are being localized. + + + + + Defines delegate for Localize AdvPropertyGrid event. + + + + + + + Defines data for PrepareErrorTooltip AdvPropertyGrid event. + + + + + Gets or sets the SuperTooltipInfo that represent tooltip that will be displayed to provide error information. + + + + + Gets the name of the property tooltip is displayed for. + + + + + Gets reference to the exception that was thrown when property was set. + + + + + Gets the value that was set and caused the error. + + + + + Initializes a new instance of the PropertyErrorTooltipEventArgs class. + + SuperTooltipInfo for error tooltip + Property that caused error + Exception that was raised when property was set + Value that caused the error. + + + + Defines delegate for Convert Value events. + + Sender + Event data. + + + + Defines data for Convert Value events that allows custom value conversion for property grid. + + + + + Gets or sets the string property value. + + + + + Gets or sets the typed property value. + + + + + Gets the property name for which conversion is being done. + + + + + Gets the target component that property is on. + + + + + Gets or sets whether converted value is used. You need to set this property to true to indicate that you have performed value conversion. + + + + + Gets the property descriptor that describes property. + + + + + Initializes a new instance of the ConvertValueEventArgs class. + + + + + + + + + Defines delegate for Convert Value events. + + Sender + Event data. + + + + Defines data for Convert Value events that allows custom value conversion for property grid. + + + + + Gets the property name value list is needed for. + + + + + Gets the target component that property is on. + + + + + Gets or sets whether property ValueList provided is valid. You must set this property to true in order for the list to be used. + + + + + Gets or sets the list of valid property values. + + + + + Gets the property descriptor that describes property. + + + + + Initializes a new instance of the PropertyValueListEventArgs class. + + + + + + + Defines delegate for Localize AdvPropertyGrid event. + + Sender of event. + Event data. + + + + Defines data for PrepareErrorTooltip AdvPropertyGrid event. + + + + + Gets the property name UITypeEditor is looked for. + + + + + Gets the property descriptor for property UITypeEditor is looked for. + + + + + Gets or sets the instance of UITypeEditor to be used for the property. You set this property to the UITypeEditor that you want + used for the property while editing. Note that you must set EditorSpecified = true in order for this value to be used. + + + + + Gets or sets whether the value specified in UITypeEditor property is used. You must set this value to true in order for + UITypeEditor property value to be used. + + + + + Initializes a new instance of the ProvideUITypeEditorEventArgs class. + + Property Name + Property Descriptor + + + + Defines delegate for PropertyValueChanging event. + + Event sender. + Event data. + + + + Defines arguments for PropertyValueChanging event. + + + + + Gets the name of the property which value is changing. + + + + + Gets the new value that is being set on property. + + + + + Gets or sets whether value assignment was handled by your code. Set to true to cancel internal AdvPropertyGrid property value assignment. + + + + + Gets the PropertyDescriptor for the property being changed. + + + + + Gets the full property path up to the selected object. + + + + + Initializes a new instance of the PropertyValueChangingEventArgs class. + + + + + + + Initializes a new instance of the PropertyValueChangingEventArgs class. + + + + + + + Defines delegate for ValidatePropertyValue event. + + Sender + ValidatePropertyValue event arguments + + + + Defines event arguments for ValidatePropertyValue event. + + + + + Gets or sets whether validation failed. Set to true to cancel property value assignment. + + + + + Gets the name of the property which value is changing. + + + + + Gets the new value that is being set on property. + + + + + Gets the target object on which property value is set. + + + + + Gets or sets the message that is displayed to user if validation fails, i.e. Cancel=true. + + + + + Initializes a new instance of the ValidatePropertyValueEventArgs class. + + + + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets or sets the color of the node highlight when error has occurred while setting property value. + + + + + Gets or sets the color of the node highlight when property update was successful. + + + + + Gets or sets default style for property node. + + + Default value is null. + + + + + Gets or sets style for property node when in read-only state. + + + Default value is null. + + + + + Gets or sets style for property node when in read-only state. + + + Default value is null. + + + + + Gets or sets style for property node edit cell when displaying unchanged property value. + + + Default value is null. + + + + + Gets or sets style for property node when in read-only state. + + + Default value is null. + + + + + Gets or sets the image that is displayed in property name cell when property value has failed the validation. + + + + + Represents the class that stores text used by property grid control for localization purposes. + + + + + Raises the PropertyChanged event. + + Provides event arguments. + + + + Gets or sets tooltip used by Categorized toolbar button. + + + + + Gets or sets tooltip used by Alphabetical toolbar button. + + + + + Gets or sets the tooltip text used in tooltip when error occurred during property value setting. + + + + + Gets or sets the watermark text displayed in search text-box. + + + + + Occurs when property defined by AdvPropertyGridLocalization class has changed. + + + + + Represents the property category in AdvPropertyGrid. + + + + + Represents check-box style property node in AdvPropertyGrid. + + + + + Represents a property node in AdvPropertyGrid. + + + + + Initializes a new instance of the PropertyNode class. + + + + + + Releases the inline editor used by the node. + + + + + Places the node into the editing mode if possible, raises the exception if node is read-only. + + Action that caused the edit mode. + Indicates whether to focus the editor. + + + + Called after property editor is created. + + + + + Exits the editor mode. + + Action that caused the editor mode exit. + + + + Called when visual part of the node has changed due to the changes of its properties or properties of the cells contained by node. + + + + + Cancel the edit changes and applies the old property value. + + + + + Attempts to apply current edit value to the property. + + + + + Returns the full property path to the root of the selected object. + + Full property path. + + + + Starts fade background color style highlight for the property node. + + Specifies the fade background color. + + + + Applies PropertySettings to this node. + + + + + Gets or sets whether property text box is read only. Default value is false. + + + + + Gets whether node is in editing mode. + + + + + Gets or sets the property settings that are applied to this property node. + + + + + Gets or sets whether property node represents property for multiple objects. + + + + + Gets or sets whether property is password property which value is not displayed as plain text. + + + + + Defines delegate that is called after property editor is created. + + PropertyNode sender. + Reference to editor. + + + + Initializes a new instance of the PropertyNode class. + + + + + + Defines a attribute which applies an date-time editor to a property when used with AdvPropertyGrid control. Applies to DateTime property types only. + + + + + Defines base attribute for custom AdvPropertyGrid in-line property value editors. + + + + + Creates a control that is used as property value in-line editor. Control must implement IPropertyValueEditor interface. + + PropertyDescriptor for the property being edited. + Target object that owns the property. + Control that represents in-line editor. + + + + Gets or sets pre-defined format for date-time input. + + + + + Gets or sets custom format for date-time input. + + + + + Gets or sets whether empty null/nothing state of the control is allowed. Default value is false. + + + + + Gets or sets whether drop-down button that shows calendar is visible. Default value is true. + + + + + Gets or sets the minimum date that control accepts. + + + + + Gets or sets the maximum date that control accepts. + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + + + Initializes a new instance of the PropertyDateTimeEditor class. + + + + + Defines an interface that is implemented by the control that will be used by AdvPropertyGrid control to edit property value. + + + + + Focus the edit part of the control. + + + + + Gets or sets the font used by the edit part of the control. Font might be used to visually indicate that property value has changed. Implementing this property is optional. + + + + + Gets whether the edit part of the control is focused. + + + + + Gets or sets the value being edited. + + + + + Occurs when EditValue changes. Raising this even will cause the property value to be updated with the EditValue. + + + + + Defines a attribute which applies an double type numeric editor to a property when used with AdvPropertyGrid control. Applies to double property types only. + + + + + Gets or sets whether up/down button is shown. + + + + + Gets or sets the display format for the control when control does not have input focus. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets whether empty state i.e. null/nothing value is allowed when editor is used with nullable types. + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + + + + + Initializes a new instance of the PropertyDoubleEditor class. + + + + + + + Defines a attribute which applies an integer type numeric editor to a property when used with AdvPropertyGrid control. Applies to int property types only. + + + + + Gets or sets whether up/down button is shown. + + + + + Gets or sets the display format for the control when control does not have input focus. + + + + + Gets or sets the minimum value that can be entered. + + + + + Gets or sets the maximum value that can be entered. + + + + + Gets or sets whether empty state i.e. null/nothing value is allowed when editor is used with nullable types. + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + + + + + Initializes a new instance of the PropertyIntegerEditor class. + + + + + + + Defines multiple choice, option or check-boxes, in-line AdvPropertyGrid property value editor. + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + Initializes a new instance of the PropertyMultiChoiceEditor class. + + + + + + + + Represents item container that arranges items horizontally or vertically. + + + + + Creates new instance of the ItemContainer object. + + + + + Must be overridden by class that is inheriting to provide the painting for the item. + + + + + Returns empty container default design-time size. + + Size of an empty container. + + + + Gets whether FixedSize property should be serialized. + + + + + Resets the property to default value. + + + + + Called when FixedSize property has changed. + + Old property value + New property value + + + + Recalculates the size of the container. Assumes that DisplayRectangle.Location is set to the upper left location of this container. + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Return Sub Item at specified location + + + + + Called after TopInternal property has changed + + + + + Called after LeftInternal property has changed + + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Occurs when sub item expanded state has changed. + + Sub item affected. + + + + Called when item Display state has changed. + + + + + Sets whether container is used as system container internally by DotNetBar. + + true or false to indicate whether container is system container or not. + + + + Called when TitleVisible property has changed. + + Old property value + New property value + + + + Called when TitleText property has changed. + + Old property value + New property value + + + + Called when TitlePosition property has changed. + + Old property value + New property value + + + + Selects first visible item contained by the container by sending mouse over message. + + + + + Sets the new hot-sub item for the container. This method is designed for internal use by the DotNetBar and should not be used. + + Reference to an instance of BaseItem or null. + + + + Gets or sets the minimum size of the container. Either Width or Height can be set or both. Default value is 0,0 which means + that size is automatically calculated. + + + + + Specifies the container background style. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Gets or sets the item alignment when container is in horizontal layout. Default value is Left. + + + + + Gets or sets the item vertical alignment. Default value is Top. + + + + + Gets or sets whether items in horizontal layout are wrapped into the new line when they cannot fit allotted container size. Default value is false. + + + + + Gets or sets spacing in pixels between items. Default value is 0. + + + + + Gets or sets the suggested fixed size of the container. Width or Height or Both may be set to suggest fixed size for the container. + + + + + Gets or sets orientation inside the container. Do not change the value of this property. It is managed by system only. + + + + + Gets or sets orientation inside the container. + + + + + Gets or sets whether items contained by container are resized to fit the container bounds. When container is in horizontal + layout mode then all items will have the same height. When container is in vertical layout mode then all items + will have the same width. Default value is true. + + + + + IBlock member implementation + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Returns whether instance of the item container is used as system container internally by DotNetBar. + + + + + Gets or sets the accessible role of the item. + + + + + Specifies the title background style. + + + + + Indicates whether TitleText is visible if set. Default value is true. + + + + + Gets or sets the title text for the container. + + + + + Gets or sets position of title text. + + + + + Gets or sets the Key Tips access key or keys for the item when on Ribbon Control or Ribbon Bar. Use KeyTips property + when you want to assign the one or more letters to be used to access an item. For example assigning the FN to KeyTips property + will require the user to press F then N keys to select an item. Pressing the F letter will show only keytips for the items that start with letter F. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Specifes the mouse cursor displayed when mouse is over the item. + + + + + Gets or sets item description. This description is displayed in + Customize dialog to describe the item function in an application. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Gets or sets whether item is global or not. + This flag is used to propagate property changes to all items with the same name. + Setting for example Visible property on the item that has GlobalItem set to true will + set visible property to the same value on all items with the same name. + + + + + Gets or sets item alignment inside the container. + + + + + Gets or sets the collection of shortcut keys associated with the item. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets/Sets informational text (tooltip) for the item. + + + + + Indicates whether container responds to keyboard presses and changes the active/mouse over item. + + + + + Initializes a new instance of the PropertyMultiChoiceItemEditor class. + + + + + + + Represents the option list property node for AdvPropertyGrid. + + + + + Initializes a new instance of the PropertyNode class. + + + + + + Describes the property settings applied to the property on AdvPropertyGrid control. + + + + + Initializes a new instance of the PropertySettings class. + + + + + Initializes a new instance of the PropertySettings class. + + + + + + Initializes a new instance of the PropertySettings class. + + + + + + Raises the ConvertPropertyValueToString event. + + Provides event data + + + + Raises the ConvertFromStringToPropertyValue event. + + Provides event data + + + + Raises the ProvidePropertyValueList event. + + Provides event data + + + + Called when TypeConverter property has changed. + + Old property value + New property value + + + + Raises PropertyChanged event. + + Event data. + + + + Occurs when property value is being converted to text representation for display. You can handle this event + to provide custom conversion for property values. You must set IsConverted=true on event arguments to indicate that you have performed value conversion. + + + + + Occurs when text entered by user is being converted to typed property value to be assigned to the property. You can handle this event + to provide custom conversion for property values. You must set IsConverted=true on event arguments to indicate that you have performed value conversion. + + + + + Occurs when property looks for the list of valid values for the property to show on either drop-down or use + in auto-complete list. For example when property type is enum the internal implementation will convert available enum + values into string list and use on drop-down and in auto-complete list. You can use this event to provide + custom value list in combination with ConvertPropertyValueToString, ConvertFromStringToPropertyValue events. + You must set IsListValid=true on event arguments to indicate that list your provided should be used. + + + + + Gets or sets read-only property style. + + + Default value is null. + + + + + Gets or sets whether property is in read-only state. Default value is false. + + + + + Gets or sets the SuperTooltip that is displayed when property is in read-only state (ReadOnly=true). + + + + + Gets or sets the SuperTooltip that is assigned to the property. + + + + + Gets or sets the image that is displayed next to the property name in the grid. + + + + + Gets or sets the image alignment in relation to the property name inside of the grid cell. + + + + + Gets or sets the custom category node will be placed in instead of category specified by Category attribute. + + + + + Gets or sets the custom property name that is displayed in the grid instead of the real property name. + + + + + Gets or sets the name of the property that is managed by this informational object. If you set PropertyDescriptor than that is the value + that will be used by the control regardless of PropertyName value. + If you set PropertyName but not PropertyDescriptor then all properties with given name + regardless of type will use these settings. + + + + + Gets or sets property descriptor that identifies the property settings apply to. If you set PropertyDescriptor than that is the value + that will be used by the control regardless of PropertyName value. + If you set PropertyName but not PropertyDescriptor then all properties with given name + regardless of type will use these settings. + + + + + Gets or sets default property style. + + + Default value is null. + + + + + Gets or sets the UITypeEditor used to edit the property. + + + + + Gets or sets the custom in-line property value editor. Property value editor is created by inheriting from PropertyValueEditor class. + + + + + Gets or sets whether node is visible in property grid. Default value is true. + + + + + Gets or sets the property node type that is used to edit this property value. Note that content of property grid would need to be + reloaded to apply any changes to this property. + + + + + Gets or sets the property description that overrides description specified on property through DescriptionAttribute. + Default value is null. + + + + + Gets or sets custom TypeConverter assigned to the property which will override any TypeConverter that is returned by the PropertyDescriptor. + + + + + Occurs when property value on the object changes. + + + + + Defines the type of the property node in grid that is assigned to property. + + + + + Specifies default node type for the property. + + + + + Specifies the node type that is constructed as group of option buttons that represent all values for the property. Works best + for smaller set of Enum values. + + + + + Defines exception which is thrown when property value fails the validation in AdvPropertyGrid.ValidatePropertyValue event. + + + + + Initializes a new instance of the InvalidPropertyValueException class. + + + + + Defines Advanced Property Grid Node for Color type. + + + + + Initializes a new instance of the PropertyNode class. + + + + + + Initializes a new instance of the PropertyNodeFactory class. + + + + + + Initializes a new instance of the PropertyParser class. + + + + + + Initializes a new instance of the PropertyParser class. + + + + + + Initializes a new instance of the PropertyParser class. + + + + + + Initializes a new instance of the PropertyParser class. + + + + + + Initializes a new instance of the PropertyGridInfoCollection class. + + + + + + Gets property info object based on property name. + + Property name. + PropertyGridInfo instance or null if it cannot be found. + + + + Gets property info object based on property descriptor. + + Property descriptor. + PropertyGridInfo instance or null if it cannot be found. + + + + Returns property setting based on property descriptor or name if property descriptor is not set on property settings + Property descriptor takes precedence. + + Property descriptor to look for. + Property Name to look for. + Property settings instance or null + + + + Gets the owner of the collection. + + + + + Defines a attribute which applies an slider in-line editor to a property when used with AdvPropertyGrid control. + + + + + Gets or sets the minimum slider value. + + + + + Gets or sets the maximum slider value. + + + + + Gets or sets whether slider text label is visible. + + + + + Gets or sets the slider label width. Default value is 18. + + + + + Gets or sets label text color. + + + + + Initializes a new instance of the PropertySliderEditor class. + + Minimum value for slider. + Maximum value for slider. + + + + Initializes a new instance of the PropertySliderEditor class. + + + + + + + + Initializes a new instance of the PropertySliderEditor class. + + + + + + + + + + Initializes a new instance of the PropertySliderEditor class. + + + + + + + + Initializes a new instance of the PropertySliderEditor class. + + + + + + + + + Creates a control that is used as property value in-line editor. Control must implement IPropertyValueEditor interface. + + PropertyDescriptor for the property being edited. + Target object that owns the property. + Control that represents in-line editor. + + + + Defines Radial Menu control. + + + + + Initializes a new instance of the RadialMenu class. + + + + + Raises BeforeMenuClose event. + + Provides event arguments. + + + + Raises BeforeMenuOpen event. + + Provides event arguments. + + + + Raises MenuOpened event. + + Provides event arguments. + + + + Raises MenuClosed event. + + Provides event arguments. + + + + Gets or sets whether radial menu is open. + + + + + Called when Image property has changed. + + Old property value + New property value + + + + Called when IsOpen property has changed. + + Old property value + New property value + + + + Sets whether radial menu is open and provides the source of the action. + + true to open menu, false to close it. + Source of the action. + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Raises ItemAdded event. + + Reference to item. + Provides event arguments. + + + + Raises ItemRemoved event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseEnter event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseHover event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseLeave event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseDown event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseUp event. + + Reference to item. + Provides event arguments. + + + + Raises ItemMouseMove event. + + Reference to item. + Provides event arguments. + + + + Raises ItemClick event. + + Reference to item. + Provides event arguments. + + + + Raises ItemDoubleClick event. + + Reference to item. + Provides event arguments. + + + + Raises ItemExpandedChanged event. + + Reference to item. + Provides event arguments. + + + + Raises ItemTextChanged event. + + Provides event arguments. + + + + Raises ItemTooltipShowing event. + + Provides event arguments. + + + + Occurs before menu is closed and allows you to cancel closing. + + + + + Occurs before menu has been opened and allows you to cancel opening + + + + + Occurs after menu has been opened. + + + + + Occurs after menu is closed.Occurs after menu is closed. + + + + + Specifies the width of the sub-menu edge around the radial menu. + + + + + Indicates spacing between sub-menu marking edge and the item. + + + + + Gets or sets radial menu diameter. Minimum value is 64. + + + + + Gets reference to colors used by the radial menu. + + + + + Indicates the size of the back symbol that is displayed on center of radial menu + + + + + Specifies the back button symbol. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates diameter of center button of radial menu. + + + + + Specifies the maximum pie part angle an item will occupy. Maximum is 180, minimum is 1 degree. + + + + + Indicates maximum radial angle single item in menu can consume. By default this property is set to zero which indicates that + radial menu is equally divided between visible menu items. + + + + + Indicates the position of top-left corner of radial menu when shown in screen coordinates + + + + + Indicates image displayed in center of the radial menu. + + + + + Indicates symbol displayed in center of the radial menu. When set, it overrides any Image settings. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets whether radial menu is open. + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether shortcut processing for the items hosted by this control is enabled. Default value is true. + + + + + Indicates whether radial menu is closed automatically when app is deactivated. Default value is true, if set to false + you are responsible for closing the menu. + + + + + Gets or sets whether hooks are used for internal DotNetBar system functionality. Using hooks is recommended only if DotNetBar is used in hybrid environments like Visual Studio designers or IE. + + + + + Indicates the radial menu type. eRadialMenuType.Segment menu type allows for display of image, text and any sub-menu items. + eRadialMenuType.Circular allows only for display of Symbol or Image and it does not display either text or sub-menu items. + eRadialMenuType.Circular is designed to be used for single level menus only that don't need text. + + + + + Indicates whether control automatically scales the items if the parent Form performs scaling due to AutoScale settings. + + + + + Indicates accessibility help string + + + + + Returns whether control has any popups registered. + + + + + Indicates whether shortcuts handled by items are dispatched to the next handler or control. + + + + + Indicates whether items show tooltips. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Gets or sets whether accelerator letters on buttons are underlined. Default value is false which indicates that system setting is used + to determine whether accelerator letters are underlined. Setting this property to true + will always display accelerator letter underlined. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Occurs after an item has been added to items collection. + + + + + Occurs after an item has been removed from items collection. + + + + + Occurs when mouse pointer enters boundaries of an item. + + + + + Occurs when mouse pointer hovers over an item. + + + + + Occurs when mouse pointer leaves boundaries of an item. + + + + + Occurs when mouse button is pressed on item. + + + + + Occurs when mouse button is released on item. + + + + + Occurs when mouse moves over an item. + + + + + Occurs when an item is clicked. + + + + + Occurs when an item is double-clicked. + + + + + Occurs when an item Expanded property value has changed. + + + + + Occurs when an item Text property value has changed. + + + + + Occurs when tooltip for an item is about to be displayed. + + + + + Defines colors used by Radial Menu Component. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Raises the PropertyChanged event. + + Event arguments + + + + Gets or sets the color of the Radial Menu button background. + + + + + Gets or sets the color of the radial menu button border. + + + + + Gets or sets the color of the Radial Menu background. + + + + + Gets or sets the color of the Radial Menu border + + + + + Gets or sets the color of border for mouse over state for the radial menu item expand part. + + + + + Gets or sets the color of the radial menu border for parts where items do not have sub-items, i.e. non-active area of the border. + + + + + Gets or sets the color of the expand sign which shows menu item sub-items. + + + + + Gets or sets the color of the radial menu item text. + + + + + Gets or sets the color of the radial menu item mouse over background. + + + + + Gets or sets the color of the radial menu item mouse over foreground. + + + + + Gets or sets background color of the circular menu item type. Applies only to circular menu types. + + + + + Gets or sets text color of the circular menu item type. Applies only to circular menu types. + + + + + Gets or sets border color of the circular menu item type. Applies only to circular menu types. + + + + + Occurs when property value has changed. + + + + + Initializes a new instance of the RadialMenuContainer class. + + + + + Returns copy of the item. + + + + + Copies the RadialMenuItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Copies the RadialMenuItem specific properties to new instance of the item. + + New RadialMenuItem instance. + + + + Raises Opened event. + + Provides event arguments. + + + + Raises Closed event. + + Provides event arguments. + + + + Called when OpenState property has changed. + + Old property value + New property value + + + + Closes currently open popup. + + + + + Called when MaxItemRadialAngle property has changed. + + Old property value + New property value + + + + Called when Diameter property has changed. + + Old property value + New property value + + + + Called when CenterButtonDiameter property has changed. + + Old property value + New property value + + + + Called when SubMenuEdgeWidth property has changed. + + Old property value + New property value + + + + Called when SubMenuEdgeItemSpacing property has changed. + + Old property value + New property value + + + + Return Sub Item at specified location + + + + + Called when MenuLocation property has changed. + + Old property value + New property value + + + + Called when RadialMenu property has changed. + + Old property value + New property value + + + + Gets the current expanded subitem. + + + + + + Called when BackSymbolSize property has changed. + + Old property value + New property value + + + + Called when BackSymbol property has changed. + + Old property value + New property value + + + + Called when BackButtonSymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when MaxItemPieAngle property has changed. + + Old property value + New property value + + + + Called when MenuType property has changed. + + Old property value + New property value + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Called when Image property has changed. + + Old property value + New property value + + + + Called when Font property has changed. + + Old property value + New property value + + + + Occurs after radial menu is opened. + + + + + Occurs after radial menu is closed. + + + + + Returns internal popup control for radial menu. + + + + + Indicates maximum radial angle single item in menu can consume. By default this property is set to zero which indicates that + radial menu is equally divided between visible menu items. + + + + + Returns diameter which takes in account current scaling factor. + + + + + Gets or sets radial menu diameter. Minimum value is 64. + + + + + Returns actual center button diameter which takes in account current scale factor. + + + + + Indicates diameter of center button of radial menu. + + + + + Specifies the width of the sub-menu edge around the radial menu. + + + + + Indicates spacing between sub-menu marking edge and the item. + + + + + Indicates the position of top-left corner of radial menu when shown in screen coordinates + + + + + Indicates the size of the back symbol that is displayed on center of radial menu + + + + + Specifies the back button symbol. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Specifies the maximum pie part angle an item will occupy. Maximum is 180, minimum is 1 degree. + + + + + Gets reference to colors used by the radial menu. + + + + + Indicates the radial menu type. eRadialMenuType.Radial menu type allows for display of image, text and any sub-menu items. + eRadialMenuType.Circular allows only for display of Symbol or Image and it does not display either text or sub-menu items. + eRadialMenuType.Circular is designed to be used for single level menus only that don't need text. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the image displayed on the item. + + + + + Specifies font for menu items. + + + + + Initializes a new instance of the RadialSubItemInfo class. + + + + + + + + + Initializes a new instance of the RadialMenuPopupProxy class. + + + + + + Defines available radial menu type. + + + + + Defines Radial Menu Item. + + + + + Raises CheckedChanged event. + + Provides event arguments. + + + + Called when DisplayPath property has changed. + + Old property value + New property value + + + + Returns copy of the item. + + + + + Copies the RadialMenuItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Copies the RadialMenuItem specific properties to new instance of the item. + + New RadialMenuItem instance. + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Called when Image property has changed. + + Old property value + New property value + + + + Called when TextVisible property has changed. + + Old property value + New property value + + + + Called when TracksMouse property has changed. + + Old property value + New property value + + + + Called when Checked property has changed. + + Old property value + New property value + + + + Called when TextOffset property has changed. + + Old property value + New property value + + + + Raises BeforeMenuOpened event. + + Provides event arguments. + + + + Raises BeforeMenuClosed event. + + Provides event arguments. + + + + Called when CircularMenuDiameter property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs after Checked property has changed. + + + + + Gets display path of the item. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the image displayed on the item. + + + + + Indicates whether text on item is visible. + + + + + Gets whether mouse is over the item. + + + + + Indicates whether item changes its appearance when mouse is over it or pressed + + + + + Indicates whether item is in checked state. + + + + + Gets or sets the optional text offset for the item. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Occurs before radial menu item is expanded and its sub-items displayed. + + + + + Occurs before radial menu item is closed + + + + + Control Container (System.Windows.Forms.Control or its descendant) + + + + + Specifies explicit circular menu type diameter. Applies to circular menu type only. + + + + + Gets or sets background color of the circular menu item type. Applies only to circular menu types. + + + + + Gets or sets text color of the circular menu item type. Applies only to circular menu types. + + + + + Gets or sets border color of the circular menu item type. Applies only to circular menu types. + + + + + Initializes a new instance of the RadialMenuPopup class. + + + + + Called when DisplayItem property has changed. + + Old property value + New property value + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Returns the color scheme used by control. Color scheme for Office2007 style will be retrieved from the current renderer instead of + local color scheme referenced by ColorScheme property. + + An instance of ColorScheme object. + + + + Identifies the item displayed by this popup. + + + + + Gets or sets the content image displayed on the window. + + + + + Gets or sets the rendering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Represents rating item control which provides rating functionality. + + + + + Initializes a new instance of the RatingItem class. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Raises the AverageRatingChanged event. + + Event data. + + + + Raises the ParseAverageRatingValue event. + + Provides event arguments. + + + + Sets the Rating value of the control and provides information about source of the rating change. + + New Rating value. + Source of this change. + + + + Raises RatingChanging event. + + Event data + + + + Raises the RatingChanged event. + + Event data. + + + + Raises the ParseRating event. + + Provides event arguments. + + + + Occurs when Rating property has changed. + + + + + Occurs when RatingValue property has changed. + + + + + Occurs when Rating property is about to be changed and provides opportunity to cancel the change. + + + + + Occurs when AverageRating property has changed. + + + + + Occurs when AverageRatingValue property has changed. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Occurs when RatingValue property is set and it allows you to provide custom parsing for the values. + + + + + Occurs when AverageRatingValue property is set and it allows you to provide custom parsing for the values. + + + + + Gets or sets the average rating shown by control. Control will display average rating (if set) when no explicit + Rating value is set through Rating property. Minimum value is 0 and Maximum value is controlled by NumberOfStars property value. + + + + + Gets or sets the AverageRating property. This property is provided for Data-Binding with NULL value support. + + + + + Gets or sets the rating value represented by the control. Default value is 0 which indicates + that there is no rating set. Maximum value is controlled by NumberOfStars property. + + + + + Gets or sets the Rating property value. This property is provided for Data-Binding with NULL value support. + + + + + Gets or sets whether rating can be edited. Default value is true. + + + + + Specifies the control background style. Default value is an empty style which means that container does not display any background. + + + + + Gets the reference to custom rating images. + + + + + Gets or sets whether text assigned to the check box is visible. Default value is true. + + + + + Gets or sets the text color. Default value is Color.Empty which indicates that default color is used. + + + + + Gets or sets the spacing between optional text and the rating. + + + + + Gets or sets the orientation of rating control. + + + + + Indicates number of stars used for the rating. Minium value is 2 stars. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Initializes a new instance of the RatingImage structure. + + + + + + + Defines the custom rating images for Rating control. + + + + + Initializes a new instance of the RatingImages class. + + + + + Gets or sets the image used for unrated rating part. + + + + + Gets or sets the image used for unrated rating part when mouse is over the control. + + + + + Gets or sets the image used for rated part of the control. + + + + + Gets or sets the image used for Average Rated part of the control. + + + + + Gets or sets the image used for rated part of the control when mouse is over the control. + + + + + Delegate for Rating change events. + + + + + Represents event arguments for Rating change events. + + + + + New Rating value being assigned. + + + + + Previous or current value (if RatingChanging event). + + + + + Indicates the action that has caused the event. + + + + + Initializes a new instance of the RatingChangeEventArgs class. + + + + + + + + Represents color table for CrumbBarItemView. + + + + + Gets or sets the default state color table. + + + + + Gets or sets active mouse over color table. + + + + + Gets or sets inactive part mouse over color table. + + + + + Gets or sets the pressed color table. + + + + + Defines state color table for CrumbBarItemView + + + + + Gets or sets foreground/text color. + + + + + Gets or sets the background color blend collection. + + + + + Gets or sets the border color. + + + + + Gets or sets the border color. + + + + + Represents the color table for Office 2007 Style CalendarView Control. + + + + + Initializes ColorScheme object with the black color scheme. + + ColorScheme object to initialize. + + + + Defines colors for the WarningBox control. + + + + + Gets or sets the background color of WarningBox control. + + + + + Gets or sets the border color of the warning panel. + + + + + Gets or sets the back color of the warning panel. + + + + + Gets or sets the end gradient back color of the warning panel. + + + + + Gets or sets the background color of WarningBox control. + + + + + Gets or sets the border color of the warning panel. + + + + + Gets or sets the back color of the warning panel. + + + + + Gets or sets the end gradient back color of the warning panel. + + + + + Gets or sets the background color of WarningBox control. + + + + + Gets or sets the border color of the warning panel. + + + + + Gets or sets the back color of the warning panel. + + + + + Gets or sets the end gradient back color of the warning panel. + + + + + Gets or sets the background color of WarningBox control. + + + + + Gets or sets the border color of the warning panel. + + + + + Gets or sets the back color of the warning panel. + + + + + Gets or sets the end gradient back color of the warning panel. + + + + + Renders the Range Slider items. + + + + + Gets or sets color table used by renderer. + + + + + Defines the color table for the Range Slider Item in single state. + + + + + Gets or sets the colors for the slider which changes the minimum value of the range. + + + + + Gets or sets the colors for the slider which changes the maximum value of the range. + + + + + Gets or sets the tick line color. + + + + + Gets or sets the color for the line which indicates current range value. + + + + + Gets or sets the background colors of the current range value. + + + + + Gets or sets the color for the line showing control range. + + + + + Gets or sets the background colors for the line showing control range. + + + + + Gets or sets the corner radius for the range rectangle. + + + + + Defines the color table for the Range Slider Item in single state. + + + + + Gets or sets the default state colors. + + + + + Gets or sets the mouse over state colors. + + + + + Gets or sets the mouse pressed colors. + + + + + Gets or sets the disabled colors. + + + + + Initializes a new instance of the Office2010RangeChangePartColorTable class. + + + + + Initializes a new instance of the Office2010RangeChangePartColorTable class. + + + + + + + + Gets or sets the part background colors. + + + + + Gets or sets the part border color + + + + + Gets or sets the part border light color + + + + + Represents color table for Office 2010 style. + + + + + Represents color table for Office 2007 style. + + + + + Defines the provider for the element style classes support. + + + + + Returns the instance of the ElementStyle with given class name or null if there is no class with that name defined. + + Class name. See static members of ElementStyleClassKeys class for the list of available keys. + Instance of ElementStyle for given class name or null if class cannot be found. + + + + Creates new instance of the object. + + + + + Initializes a new instance of the Office2007ColorTable class. + + Specifies the color factory for the color table. + + + + Creates new instance of the object. + + + + + Creates new instance of the object. + + + + + Creates new instance of the color table and initializes it with custom color scheme. + + Predefined color scheme to be used as starting color scheme. + Color to use as basis for new color scheme + + + + Gets or sets the RibbonBar color table. + + + + + Gets or sets the background colors for the ItemContainer with BeginGroup property set to true. + + + + + Gets or sets the background colors for the Bar object. + + + + + Gets or sets the colors for the RibbonControl. + + + + + Gets or sets the colors for the ColorItem which is used by drop-down Color Picker. + + + + + Gets or sets the color table for menus. + + + + + Gets or sets the color table for ComboBoxItem. + + + + + Gets or sets the colors for the Ribbon Bar dialog launcher button. + + + + + Gets or sets the legacy color scheme object that applies to the user interface elements not covered by color table. + + + + + Gets or sets the color table of the system buttons displayed in form caption. + + + + + Gets or sets the color table of the close system button displayed in form caption. Applies to Office 2010 styles and later only. + + + + + Gets or sets the color table for the form caption. + + + + + Gets or sets the bacgkround colors for the quick access toolbar. + + + + + Gets or sets the colors for the tab and tab strip control. + + + + + Gets or sets the colors for the tab strip control used on docking windows. When not set TabControl color scheme is used. + + + + + Gets or sets the KeyTips color table. + + + + + Gets or sets the color table for the CheckBoxItem. + + + + + Gets or sets the scroll bar colors. + + + + + Gets or sets the application style scroll bar colors. + + + + + Gets or sets the color table for the ProgressBarItem. + + + + + Gets or sets the color table for the paused ProgressBarItem. + + + + + Gets or sets the color table for the error state of ProgressBarItem. + + + + + Gets or sets the color table for the galleries. + + + + + Gets or sets the color table for the NavigationPane control. + + + + + Gets or sets the color table for the Slider item. + + + + + Gets or sets the color table for the Range Slider item. + + + + + Gets the SuperTooltip color table. + + + + + Gets the color table for the ListViewEx control. + + + + + Gets the color table for the ListViewEx control. + + + + + Gets the color table used by SideBar control. + + + + + Gets or sets the color table for AdvTree control. + + + + + Gets or sets the CrumBarItem color table. + + + + + Gets the color table used by Schedule control. + + + + + Gets or sets SwitchButton color table. + + + + + Gets or sets the colors for the StepItem used in ProgressSteps control. + + + + + Gets or sets the colors for the ListBoxItem used in ListBoxAdv control. + + + + + Gets or sets the color table for the radial menu. + + + + + Gets or sets color table for TokenEditor control tokens. + + + + + Gets or sets color table for Flyout control. + + + + + Gets or sets the colors for the SideNav control. + + + + + Returns the instance of the ElementStyle with given class name or null if there is no class with that name defined. + + Class name. See static members of ElementStyleClassKeys class for the list of available keys. + Instance of ElementStyle for given class name or null if class cannot be found. + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by a button with Office 2007 style. + The collection by default has elements that are created to + represents the members of eButtonColor enumeration. The name of each color table object is the same as the string + enum representation. You can add custom members to this collection or modify the existing ones. Note that you must specify the + unique name for the new color table elements. Name specified there can be used in ButtonItem.CustomColorName property to specify + custom color table for an ButtonItem. + + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by a button with Office 2007 style when + button is on RibbonBar control. When collection is empty the values from the ButtonItemColors collections are used instead. + + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by a button with Office 2007 style when + button is on menu bar. When collection is empty the values from the ButtonItemColors collections are used instead. + + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by Ribbon Application Menu Button in Office 2010 style. + + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by buttons that are on Backstage tab-strip. + + + + + Gets the reference to collection of Office2007ButtonItemColorTable objects the describe colors used by buttons that are on NavigationPane control. Currently used for Office 2010 style only. When empty ButtonItemColors is used. + + + + + Gets the reference to collection of Office2007RibbonTabItemColorTable objects the describe colors used by a ribbon tab with Office 2007 style. + The collection by default has elements that are created to + represents the members of eRibbonTabColor enumeration. The name of each color table object is the same as the string + enum representation. You can add custom members to this collection or modify the existing ones. Note that you must specify the + unique name for the new color table elements. Name specified there can be used in RibbonTabItem.CustomColorName property to specify + custom color table for an ButtonItem. + + + + + Gets the reference to collection of Office2007RibbonTabGroupColorTableCollection objects the describe colors used by a ribbon tab groups with Office 2007 style. + The collection by default has elements that are created to + represents the members of eRibbonTabGroupColor enumeration. The name of each color table object is the same as the string + enum representation. You can add custom members to this collection or modify the existing ones. Note that you must specify the + unique name for the new color table elements. + + + + + Returns the color scheme table was initialized with. + + + + + Get the reference to the collection that holds system cached styles. In most cases there is no need for you to modify members of this collection. + + + + + Gets or sets whether images like Start button image, are cloned when painted. This is reduces the performance but is necessary if they can be accessed from multiple threads. + + + + + Gets the reference to collection of contextual color tables that are based on items Control container type and other context properties. + When contextual color table is defined it overrides the default color table. + + + + + Initializes a new instance of the Office2010ColorTable class. + + + + + Gets the color scheme color table is initialized with. + + + + + Defines the color scheme type for the Office2010ColorTable. + + + + + Silver color scheme. + + + + + Blue color scheme. + + + + + Black color scheme. + + + + + Visual Studio 2010 Blue color scheme. + + + + + Specifies colors for StepIndicator control. + + + + + Initializes a new instance of the StepIndicatorColorTable class. + + + + + Initializes a new instance of the StepIndicatorColorTable class. + + + + + + + Gets or sets Background color of the control. + + + + + Gets or sets indicator color. + + + + + Defines the color table for SuperTab states + + + + + Event raised when the SuperTabColorTable is changed + + + + + Gets or sets the Background color + + + + + Gets or sets the colors for the outer border. + + + + + Gets or sets the colors for the inner border. + + + + + Gets or sets the ControlBoxDefault colors + + + + + Gets or sets the ControlBoxMouseOver colors + + + + + Gets or sets the ControlBoxPressed colors + + + + + Gets or sets the colors for the InsertMarker. + + + + + Gets or sets the color for the SelectionMarker. + + + + + Gets whether the ColorTable is empty. + + + + + Defines the colors for the SuperTabControlBox states + + + + + Event raised when the SuperTabControlBoxStateColorTable is changed + + + + + Gets or sets the colors for the background. + + + + + Gets or sets the colors for the border. + + + + + Gets or sets the colors for the drawn image. + + + + + Defines the color table for SuperTabItem states + + + + + Event raised when the SuperTabItemColorTable is changed + + + + + Gets or sets the Default tab color settings + + + + + Gets or sets the Left Aligned tab color settings + + + + + Gets or sets the Bottom Aligned tab color settings + + + + + Gets or sets the Right Aligned tab color settings + + + + + Event raised when the SuperTabColorStates is changed + + + + + Gets or sets the tab colors when the tab is not selected, and the mouse is not over it + + + + + Gets or sets the tab colors when the tab is selected, but the mouse is not over the it + + + + + Gets or sets the tab colors when the tab is not selected, but the mouse is over it + + + + + Gets or sets the tab colors when the tab is selected, and the mouse is over it + + + + + Gets or sets the tab colors when the tab + is disabled, is not selected, and the mouse is not over it + + + + + Defines the colors for the SuperTabItem states + + + + + Event raised when the SuperTabItemStateColorTable is changed + + + + + Gets or sets the background colors. + + + + + Gets or sets the outer border color. + + + + + Gets or sets the inner border color. + + + + + Gets or sets the text color. + + + + + Gets or sets the Close Marker color. + + + + + Gets or sets the Selection Marker color. + + + + + Event raised when the SuperTabLinearGradientColorTable is changed + + + + + Gets or sets the Gradient Colors + + + + + Gets or sets the Gradient Color Positions + + + + + Gets or sets the Gradient angle + + + + + Gets or sets whether the Gradient will adapt to changes in the TabAlignment + + + + + Gets whether color definition is empty + + + + + Defines the colors for the SuperTabPanel + + + + + Event raised when the SuperTabPanelColorTable is changed + + + + + Gets or sets the Default tab panel color settings + + + + + Gets or sets the Left Aligned tab panel color settings + + + + + Gets or sets the Bottom Aligned tab panel color settings + + + + + Gets or sets the Right Aligned tab panel color settings + + + + + Event raised when the SuperTabPanelItemColorTable is changed + + + + + Gets or sets the background colors. + + + + + Gets or sets the colors for the outer border. + + + + + Gets or sets the colors for the inner border. + + + + + GetOffice2010BackstageColorTable + + Office2010BackstageColorTable + + + + GetOffice2010BackstageBlueColorTable + + + + Office2010BackstageBlueColorTable + + + + GetVS2010BackstageBlueColorTable + + + + Office2010BackstageBlueColorTable + + + + GetOffice2010BackstageBlackColorTable + + + + Office2010BackstageBlackColorTable + + + + GetOffice2010BackstageSilverColorTable + + + + Office2010BackstageSilverColorTable + + + + GetOffice2007BackstageVistaGlassColorTable + + + + Office2010BackstageVistaGlassColorTable + + + + GetOffice2010BackstageSilverColorTable + + + + Office2010BackstageSilverColorTable + + + + GetOffice2010BackstageItemColorTable + + Office2010BackstageItemColorTable + + + + GetOffice2010BackstageBlueItemColorTable + + + + Office2010BackstageBlueItemColorTable + + + + GetOffice2010BackstageBlackItemColorTable + + + + Office2010BackstageBlackItemColorTable + + + + GetOffice2010BackstageSilverItemColorTable + + + + Office2010BackstageSilverItemColorTable + + + + GetOffice2007BackstageVistaGlassItemColorTable + + + + Office2010BackstageVistaGlassItemColorTable + + + + GetOffice2010BackstageSilverItemColorTable + + + + + Office2010BackstageSilverItemColorTable + + + + GetOffice2010BackstagePanelColorTable + + Office2010BackstagePanelColorTable + + + + GetOffice2010BackstageBluePanelColorTable + + + + Office2010BackstageBluePanelColorTable + + + + GetOffice2010BackstageBlackPanelColorTable + + + + Office2010BackstageBlackPanelColorTable + + + + GetOffice2010BackstageSilverPanelColorTable + + + + Office2010BackstageSilverPanelColorTable + + + + GetOffice2007BackstageVistaGlassPanelColorTable + + + + Office2010BackstageVistaGlassPanelColorTable + + + + GetOffice2010BackstageSilverPanelColorTable + + + + Office2010BackstageSilverPanelColorTable + + + + Defines color table for the SwitchButton control. + + + + + Gets or set the text/caption color. + + + + + Gets or sets the OFF text color. + + + + + Gets or sets the ON text color. + + + + + Gets or sets the button border color. + + + + + Gets or sets background color of OFF switch part. + + + + + Gets or sets background color of ON switch part. + + + + + Gets or sets the switch border color. + + + + + Gets or sets the switch background color. + + + + + Gets or sets the switch background color when in ON state, i.e. Value=true. When set to Color.Empty SwitchBackColor is always used. + + + + + Gets default disabled color scheme for the switch button. + + + + + Gets or sets default Switch Button color table. + + + + + Gets or sets the disabled Switch Button color table. + + + + + Represents the Windows 7 blue style color initialization class. + + + + + Represents color table for Windows 7 style. + + + + + Initializes a new instance of the Office2010ColorTable class. + + + + + Defines the color scheme type for the Office2010ColorTable. + + + + + Blue color scheme. + + + + + Provides information about the binding for the item. + + + + + Initializes a new instance of the ItemBindingInfo class. + + + + + + + Gets or sets the data row item is bound to. + + + + + Gets or sets the data item index. + + + + + Gets or sets the additional data connected to this binding information. + + + + + Represents the slider item which allows you to select a value from predefined range. + + + + + Creates new instance of SliderItem. + + + + + Creates new instance of SliderItem and assigns the name to it. + + Item name. + + + + Creates new instance of SliderItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the SliderItem specific properties to new instance of the item. + + New SliderItem instance. + + + + Copies the SliderItem specific properties to new instance of the item. + + New SliderItem instance. + + + + Raises ValueChanging event. + + Provides event arguments. + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Raises GetRangeTooltipText event. + + Provides event arguments. + + + + Gets the range part that is under specified client location. + + Location in parent control client coordinates. + Range part at specified location. + + + + Called when Minimum property has changed. + + Old property value + New property value + + + + Called when Maximum property has changed. + + Old property value + New property value + + + + Sets the range value. + + New Range value. + Source of the value change. + + + + Called when Value property has changed. + + Old property value + New property value + + + + Called when TicksVisible property has changed. + + Old property value + New property value + + + + Called when TicksStep property has changed. + + Old property value + New property value + + + + Called when RangeButtonSize property has changed. + + Old property value + New property value + + + + Called when TicksPosition property has changed. + + Old property value + New property value + + + + Called when MinimumAbsoluteRange property has changed. + + Old property value + New property value + + + + Called when RangeTooltipFormat property has changed. + + Old property value + New property value + + + + Called when MinRangeSliderImage property has changed. + + Old property value + New property value + + + + Called when MaxRangeSliderImage property has changed. + + Old property value + New property value + + + + Called when RangeLineHeight property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs before Value has changed and allow the cancellation of the change. + + + + + Occurs after Value property has changed + + + + + Gets mouse over part. + + + + + Gets current part that is pressed using mouse left button. + + + + + Occurs when control is about to display the range tooltip and it allows you to customize tooltip + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the range displayed by the control. + + + + + Indicates whether tick lines are shown + + + + + Gets tick marks bounds. + + + + + Gets tick marks bounds for second marker is visible. + + + + + Gets bounds of minimum range sliding button. + + + + + Gets bounds of maximum range sliding button. + + + + + Indicates tick display period + + + + + Gets or sets the slider orientation. Default value is horizontal. + + + + + Gets or sets the width of the range slider in pixels. Value must be greater than 0. Default value is 140. + + + + + Gets or sets the Height of the range slider in pixels. Value must be greater than 0. Default value is 24. + + + + + Indicates the size of the range change buttons. + + + + + Specifies the ticks position inside of Range Slider. + + + + + Specifies minimum absolute range that user can select. Absolute range is defined as Abs(Value.Max-Value.Min) Applies to user performed selection through mouse only. + + + + + Gets or sets the string that is used to format the range value to be displayed while user moves the range buttons. Value set here is used in string.Format(RangeTooltipFormat, Value.Min, Value.Max). + + + + + Specifies whether range tooltip is shown while user is changing the range + + + + + Indicates image to be used as minimum range slider button instead of built-in button. Image is scaled to size set by RangeButtonSize. + + + + + Indicates image to be used as maximum range slider button instead of built-in button. Image is scaled to size set by RangeButtonSize. + + + + + Specifies the height of the range line + + + + + Indicates whether clicking the area outside of the range change buttons moves the range change button to the clicked location if possible thus allowing range change. + + + + + Gets or sets the color of the range value. + + + + + Specifies the ticks position inside of Range Slider. + + + + + Ticks are displayed on top of range sliders. + + + + + Ticks are displayed on bottom of range sliders. + + + + + Ticks are displayed on top and bottom of range sliders. + + + + + Defines value for the range slider controls. + + + + + Gets or sets the range minimum value. + + + + + Gets or sets the range maximum value. + + + + + Provides data for the Slider item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the Range Slider item being rendered. + Reference to the graphics object. + + + + Defines delegate for RangeSliderValueChanging event. + + + + + + + Provides information for RangeSliderValueChanging event. + + + + + Represents event arguments that provide information on source of action. + + + + + Gets the source of the event. + + + + + Initializes a new instance of the EventSourceArgs class. + + + + + + New range value. + + + + + Set to true to cancel the value changing. + + + + + Initializes a new instance of the RangeSliderValueChangingEventArgs class. + + + + + + Defines the slider item parts. + + + + + Indicates no part. + + + + + Indicates the minimum range slider button. + + + + + Indicates the maximum range slider button. + + + + + Indicates the track area part of the control. + + + + + Defines delegate for RangeSliderValueChanging event. + + + + + + + Provides information for GetRangeTooltip event. + + + + + Gets or sets the tooltip to display. + + + + + Initializes a new instance of the RangeTooltipEventArgs class. + + + + + + Color definition class + + + + + Constructor - solid def + + RGB value + + + + Constructor - solid def + + Color + + + + Constructor - 2 color def + + Start Color + End Color + + + + Constructor - 2 color def + + Start Color + End Color + Gradient angle + + + + Constructor - Gradient def + + Array of RGB values + Gradient positions + + + + Constructor - Gradient def + + Array of Color values + Gradient positions + + + + Constructor - Gradient def + + Array of RGB values + Gradient positions + Gradient angle + + + + Constructor - Gradient def + + Array of Color values + Gradient positions + Gradient angle + + + + OnColorDefChanged + + + + + Event raised when the SuperTabColorStates is changed + + + + + Gets or sets the Color array + + + + + Gets or sets the Color Positions + + + + + Gets or sets the Gradient Angle + + + + + IsEmpty + + + + + ColorDefConvertor + + + + + Represents the visual separator line that is displayed between items. + + + + + Creates new instance of Separator. + + + + + Creates new instance of Separator and assigns the name to it. + + Item name. + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets or sets separator padding. + + + + + Gets or sets the size of separator. Size specified is for separator in Vertical orientation. If orientation changes then the size will be internally switched to respect proper orientation. + + + + + Indicates splitter orientation. + + + + + Gets or sets the separator color. + + + + + Gets or sets the separator shade color. + + + + + Defines an item that allows the toolbar customization. + + + + + Creates new instance of CustomizeItem object. + + + + + Returns copy of CustomizeItem item + + + + + Called when item container has changed. If you override this method you must call the base implementation to allow default processing to occur. + + Previous container of the item. + + + + Occurs when tooltip is about to be shown or hidden. + + Specifies whether tooltip is shown or hidden. + + + + Loads the resources (text) used by this item. + + + + + Overriden. Draws the item. + + Target Graphics object. + + + + Sets the custom system tooltip text for the item. + + Tooltip text. + + + + Overriden. Recalculates the size of the item. + + + + + Gets localized tooltip text for this instance of the item. + + Tooltip text. + + + + Called when mouse hovers over the customize item. + + + + + Forces the repaint the item. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Overloaded. Deserializes the Item from the XmlElement. + + Source XmlElement. + + + + Gets whether the mouse is over the item. + + + + + Gets or sets a value indicating whether the item is visible. + + + + + Gets or sets whether Customize menu item is visible. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Gets or sets whether item is global or not. + This flag is used to propagate property changes to all items with the same name. + Setting for example Visible property on the item that has GlobalItem set to true will + set visible property to the same value on all items with the same name. + + + + + Represents base class for the CalendarMonth and MultiMonthCalendar controls. This class is used internally by DotNetBar and is not intended for public use. + + + + + Initializes a new instance of the MultiMonthCalendar class. + + + + + Must be overridden by class that is inheriting to provide the painting for the item. + + + + + Paints background of the item. + + Provides painting arguments + + + + Returns copy of the item. + + + + + Copies the CalendarMonth specific properties to new instance of the item. + + New ButtonItem instance. + + + + Specifies the container background style. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Returns name of the item that can be used to identify item from the code. + + + + + Gets or sets the accessible role of the item. + + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Specifies the mouse cursor displayed when mouse is over the item. + + + + + Gets or sets item description. This description is displayed in + Customize dialog to describe the item function in an application. + + + + + Gets or sets whether item is global or not. + This flag is used to propagate property changes to all items with the same name. + Setting for example Visible property on the item that has GlobalItem set to true will + set visible property to the same value on all items with the same name. + + + + + Gets or sets item alignment inside the container. + + + + + Gets or sets the collection of shortcut keys associated with the item. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets/Sets informational text (tooltip) for the item. + + + + + Gets or sets the text associated with this item. + + + + + Defines the visual marking applied to dates through month calendar control. + + + + + Initializes a new instance of the DateAppearanceDescription class. + + + + + Initializes a new instance of the DateAppearanceDescription class. + + + + + + Applies all settings from this object to specified object. + + Reference to object. + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + + Gets or sets whether text is drawn using bold font. + + + + + Gets or sets the background color for the marked day. + + + + + Gets or sets the background target gradient color for the marked date. + + + + + Gets or sets the background gradient fill angle. Default value is 90. + + + + + Gets or sets the text color for the marked date. + + + + + Gets whether any of the appearance values have been changed. + + + + + Gets or sets the border color. + + + + + Gets or sets whether day marked is selectable by end user. Default value is true. + + + + + Reverts the input to the last stored value. + + + + + Called when input field is full, i.e. it has an complete entry. If auto-overwrite is enabled the continued typing after input is complete + will erase the existing entry and start new one. + + + + + Resets the input position so the new input overwrites current value. + + + + + Occurs when input on the control has changed. + + + + + Occurs when validation of the input is performed and it allows you to deny the input. + + + + + Occurs when IsEmpty property has changed. + + + + + Gets whether watermark will be drawn in current control state. + + + + + Gets or sets whether control is empty. + + + + + Gets or sets whether auto-overwrite functionality for input is enabled. When in auto-overwrite mode input field will erase existing entry + and start new one if typing is continued after InputComplete method is called. + + + + + Gets or sets the watermark text displayed on the input control when control is empty. + + + + + Gets or sets whether watermark text is displayed if set. Default value is true. + + + + + Gets or sets whether input item is read-only. + + + + + Gets or sets whether control allows empty input state i.e. does not have an text entered. Default value is true. + + + + + Raises SelectedIndexChanged event + + + + + Occurs when SelectedIndex property has changed. + + + + + Gets or sets the text that is selected by the control. + + + + + Gets or sets the currently selected index. -1 is returned if nothing is selected. + + + + + Gets or sets custom AM text used. + + + + + Gets or sets custom PM text used. + + + + + Represents a control that enables the user to select a date using a visual monthly calendar display. + + + + + Initializes a new instance of the MonthCalendarAdv class. + + + + + Returns the DayLabel at given client coordinates or null/nothing if there is no label at give location. + + X - position in client coordinates. + Y - position in client coordinates. + DayLabel at given coordinates or null/nothing. + + + + Returns the DayLabel that represents the date. + + Date to find label for. + DayLabel object or nothing if date cannot be founds. + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all monthly marked dates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the MonthlyMarkedDates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all weekly marked dates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the day from the WeeklyMarkedDays. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all annually marked dates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the AnnuallyMarkedDates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all marked dates set through MarkedDates property. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the MarkedDates collection. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Repaints the marked dates to reflect the dates set in the lists of marked dates. + Use this method to reflect the changes made to the AnnuallyMarkedDates, MonthlyMarkedDates or MarkedDates properties as well + as change to the marked Colors properties. + + + + + Raises the DateChanged event. + + Provides event data. + + + + Raises the DateSelected event. + + Provides event data. + + + + Raises the MonthChanged event. + + Provides additional event data. + + + + Raises the MonthChanging event. + + Provides additional event data. + + + + Raises the PaintLabel event. + + Provides event data. + + + + Raises the LabelMouseDown event. + + Provides event data. + + + + Raises the LabelMouseUp event. + + Provides event data. + + + + Raises the LabelMouseEnter event. + + Provides event data. + + + + Raises the LabelMouseLeave event. + + Provides event data. + + + + Raises the LabelMouseMove event. + + Provides event data. + + + + Raises the LabelMouseHover event. + + Provides event data. + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MinDate property to its default value. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MaxDate property to its default value. + + + + + Resets property to its default value. Provided for design-time support. + + + + + Gets whether property should be serialized. Provided for design-time support. + + + + + Sets the number of columns and rows of months to display. + + The number of columns. + The number of rows. + ArgumentOutOfRangeException will be raised if any value is less than zero or one value is grater than zero and other is zero. + + + + Returns whether property should be serialized by Windows Forms designer. + + + + + Sets the selected dates in a month calendar control to the specified date range. + + The beginning date of the selection range. + The end date of the selection range. + startDate is less than the minimum date allowable for a month calendar control.
+ -or-
+ startDate is greater than the maximum allowable date for a month calendar control.
+ -or-
+ endDate is less than the minimum date allowable for a month calendar control.
+ -or- endDate is greater than the maximum allowable date for a month calendar control.
+
+ + If the startDate value is greater than endDate property value, the dates are swapped; the endDate value becomes the starting date, and startDate value becomes the end date. + +
+ + + Invalidates control auto-size and resizes the control if AutoSize is set to true. + + + + + Occurs when month displayed by the item has changed. + + + + + Occurs before the month that is displayed is changed. + + + + + Occurs when child label representing days is rendered and it allows you to override default rendering. + + + + + Occurs when mouse button is pressed over the day/week label inside of the calendar. + + + + + Occurs when mouse button is released over day/week label inside of the calendar. + + + + + Occurs when mouse enters the day/week label inside of the calendar. + + + + + Occurs when mouse leaves the day/week label inside of the calendar. + + + + + Occurs when mouse moves over the day/week label inside of the calendar. + + + + + Occurs when mouse remains still inside an day/week label of the calendar for an amount of time. + + + + + Occurs when SelectedDate property has changed. + + + + + Occurs when the user makes an explicit date selection using the mouse. + + + This event is similar to the DateChanged event, but it occurs at the end of a date selection made using the mouse. + The DateChanged event occurs during any date selection, whether by mouse, keyboard, or code. You should handle this event + when you enable multiple date selection through MultiSelect property and want to be notified after the date selection has been + made. DateChanged event would fire each time selection changes during the selection of multiple dates. + + + + + Gets or sets the array of DateTime objects that determine which monthly days to mark using Colors.MonthlyMarker settings. + Make sure to call UpdateMarkedDates() method to update calendar display with marked dates. + + + + + Gets or sets the array of DayOfWeek members that determine which days of week to mark using Colors.WeeklyMarker settings. + + + + + Gets or sets the array of DateTime objects that determines which annual days are marked using Colors.AnnualMarker settings. + Make sure to call UpdateMarkedDates() method to update calendar display with marked dates. + + + + + Gets or sets the array of DateTime objects that determines which non-recurring dates are marked using Colors.DayMarker settings. + Make sure to call UpdateMarkedDates() method to update calendar display with marked dates. + + + + + Gets or sets the first month displayed by the control. + + + + + Gets number of months displayed on the control. + + + + + Gets the calendar colors used by the control. + + + + + Gets or sets the size of each day item on the calendar. Default value is 24, 15. + + + + + Gets or sets the size of date navigation buttons on the calendar. Default value is 13, 18. If you increase size of the navigation + buttons change DaySize as well so everything fits. + + + + + Gets or sets the minimum date and time that can be selected in the control. + + + + + Gets or sets the maximum date and time that can be selected in the control. + + + + + Specifies the commands container background style. Commands container displays Today and Clear buttons if they are visible. + + + + + Specifies the navigation container background style. Navigation container displays month, year and optional buttons. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Gets or sets the number of columns and rows of months displayed on control. Default value is 0,0 which indicates that + calendar will display as many columns and rows as it is possible to fit into container space available. + + + + + Gets or sets whether weekend days can be selected. Default value is true. + + + + + Gets or sets the rule used to determine first week of the year for week of year display on calendar. Default value is first-day. + + + + + Gets or sets the value that is used by calendar as today's date. + + + + + Gets a value indicating whether the TodayDate property has been explicitly set. + + + + + Gets or sets whether today marker that indicates TodayDate is visible on the calendar. Default value is true. + + + + + Gets or sets whether week of year is visible. Default value is false. + + + + + Gets or sets the array of custom names for days displayed on calendar header. The array must have exactly 7 elements representing day names from 0 to 6. + + + + + Gets or sets the first day of week displayed on the calendar. Default value is Sunday. + + + + + Gets or sets whether control uses the two letter day names. Default value is true. + + + + + Gets or sets the calendar selected date. Note that SelectedDate property should be used only when MultiSelect property is set to false. + When multiple dates can be selected use range selection properties: SelectionStart, SelectionEnd and SelectionRange. + + + + + Gets or sets whether selection of multiple dates up to the MaxSelectionCount is enabled. Default value is false which indicates that only + single day can be selected. + + + + + Gets the reference to the bottom container that parents the Today, and Clear system buttons. + + + + + Gets or sets whether Today button displayed at the bottom of the calendar is visible. Default value is false. + + + + + Gets or sets whether Clear button displayed at the bottom of the calendar is visible. Clear button clears the currently selected date. Default value is false. + + + + + Gets or sets the maximum number of days that can be selected in a month calendar control. + + + + + Gets or sets the start date of the selected range of dates. + + + + + Gets or sets the end date of the selected range of dates. + + + + + Gets or sets the selected range of dates for a month calendar control. + + Setting this property is functionally equivalent to using the SetSelectionRange method. You can set the start and end dates separately by setting either the SelectionStart or SelectionEnd properties. You cannot change the start and end dates by setting the SelectionRange.Start or SelectionRange.End property values of the SelectionRange property. You should use SelectionStart, SelectionEnd, or SetSelectionRange. + If the Start property value of the SelectionRange is greater than its End property value, the dates are swapped; the End property value becomes the starting date, and Start property value becomes the end date. + + + + + Gets or sets whether Year/Century selection is enabled when calendar is displaying single month. + + + + + Indicates whether month selector which is displayed when month label is clicked is using abbreviated month names instead of month number. + + + + + Indicates whether calendar is used in month selection mode which shows only month and year. + + + + + Gets or sets a value indicating whether the control is automatically resized to display its entire contents. You can set MaximumSize.Width property to set the maximum width used by the control. + + + + + Represents the container that presents single calendar month. + + + + + Initializes a new instance of the CalendarMonth class. + + + + + Called when MonthSelectionMode property has changed. + + Old property value + New property value + + + + Must be overridden by class that is inheriting to provide the painting for the item. + + + + + Returns copy of the item. + + + + + Copies the CalendarMonth specific properties to new instance of the item. + + New ButtonItem instance. + + + + Raises the MonthChanged event. + + Provides additional event data. + + + + Raises the MonthChanging event. + + Provides additional event data. + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Raises the PaintLabel event. + + Provides event data. + + + + Raises the DateChanged event. + + Provides event data. + + + + Gets the DayLabel item assigned to the given date. Returns null if there is no label displayed for the date. + + Date to return label for. + DayLabel instance or null if date is not displayed on this calendar. + + + + Occurs when sub item expanded state has changed. + + Sub item affected. + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MinDate property to its default value. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MaxDate property to its default value. + + + + + Called when DayClickAutoClosePopup property has changed. + + Old property value + New property value + + + + Occurs when month displayed by the item has changed. + + + + + Occurs before the month that is displayed is changed. + + + + + Occurs when child label representing days is rendered and it allows you to override default rendering. + + + + + Occurs when mouse button is pressed over the day/week label inside of the calendar. + + + + + Occurs when mouse button is released over day/week label inside of the calendar. + + + + + Occurs when mouse enters the day/week label inside of the calendar. + + + + + Occurs when mouse leaves the day/week label inside of the calendar. + + + + + Occurs when mouse moves over the day/week label inside of the calendar. + + + + + Occurs when mouse remains still inside an day/week label of the calendar for an amount of time. + + + + + Occurs when SelectedDate property has changed. + + + + + Indicates whether calendar is used in month selection mode which shows only month and year. + + + + + Gets or sets whether Year/Century selection is enabled. + + + + + Indicates whether month selector which is displayed when month label is clicked is using abbreviated month names instead of month number. + + + + + Gets or sets the first day of week displayed on the calendar. Default value is Sunday. + + + + + Gets or sets whether trailing days outside of the current displayed month are visible on calendar. + + + + + Gets or sets whether week of year is visible. Default value is false. + + + + + Gets or sets the rule used to determine first week of the year for week of year display on calendar. Default value is first-day. + + + + + Returns the collection of sub items. + + + + + Gets or sets the size of each day item on the calendar. Default value is 24, 15. + + + + + Gets or sets the size of date navigation buttons on the calendar. Default value is 13, 18. If you increase size of the navigation + buttons change DaySize as well so everything fits. + + + + + Gets the calendar colors used by the control. + + + + + Gets or sets whether multiple days can be selected by clicking each day. Default value is false. + + + + + Gets or sets whether selection of dates using mouse is enabled. Default value is true. + + + + + Gets or sets the calendar selected date. + + + + + Gets or sets whether weekend days can be selected. Default value is true. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets default text alignment for the DayLabel items representing calendar days. + + + + + Gets or sets whether control uses the two letter day names. Default value is true. + + + + + Gets or sets the array of custom names for days displayed on calendar header. The array must have exactly 7 elements representing day names from 0 to 6. + + + + + Gets or sets whether header navigation buttons for month and year are visible. Default value is true. + + + + + Specifies the navigation container background style. Navigation container displays month, year and optional buttons. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Gets or sets whether today marker that indicates TodayDate is visible on the calendar. Default value is true. + + + + + Gets or sets the value that is used by calendar as today's date. + + + + + Gets a value indicating whether the TodayDate property has been explicitly set. + + + + + Gets or sets the minimum date and time that can be selected in the control. + + + + + Gets or sets the maximum date and time that can be selected in the control. + + + + + Gets or sets whether clicking the day closes the parent popup if item is on popup. + + + + + Initializes a new instance of the YearSelectoControl class. + + + + + Initializes a new instance of the CenturySelectorControl class. + + + + + Initializes a new instance of the YearSelectorContainer class. + + + + + Raises SelectedYearChanged event. + + Provides event arguments. + + + + Initializes a new instance of the YearSelectorContainer class. + + + + + Raises SelectedYearChanged event. + + Provides event arguments. + + + + Initializes a new instance of the CenturySelectorControl class. + + + + + Initializes a new instance of the YearSelectorContainer class. + + + + + Raises SelectedYearChanged event. + + Provides event arguments. + + + + Defines the MonthCalendar and SingleMonthCalendar colors for customization. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Gets the appearance settings for the todays date. + + + + + Gets the appearance settings for selected days. + + + + + Gets the appearance settings for the trailing days on calendar. + + + + + Gets or sets the appearance settings for the labels that show week of year number. + + + + + Gets or sets the days divider line color. + + + + + Gets the appearance settings for the numeric day of month label. + + + + + Gets the appearance settings for the weekend days on calendar (Saturday and Sunday). + + + + + Gets the appearance settings for the trailing weekend days on calendar (Saturday and Sunday). + + + + + Gets the appearance settings for the labels that display day name in calendar header. + + + + + Gets or sets the marker settings for days specified by MonthCalendarItem.MonthlyMarkedDates property. + + + + + Gets or sets the marker settings for days specified by MonthCalendarItem.AnnuallyMarkedDates property. + + + + + Gets or sets the marker settings for days specified by MonthCalendarItem.MarkedDates property. + + + + + Gets or sets the marker settings for days specified by MonthCalendarItem.WeeklyMarkedDays property. + + + + + Gets the minimum date value of the DateTimePicker control. + + + + + Specifies the maximum date value of the DateTimePicker control. This field is read-only. + + + + + Raises the ValueChanged event. + + + + + Occurs when Value or IsEmpty property has changed. + + + + + Gets or sets the date time. + + + + + Gets or sets the values of the nested DateTimeGroup items. + + + + + Gets or sets the minimum value represented by the group. + + + + + Gets or sets maximum value represented by the group. + + + + + Gets or sets whether input values are set to defaults while user is entering data. Default value is true. + + + + + Defines the date-time selector visibility for DateTimeInput control popup. + + + + + Depending on DateTimeInput.Format property setting either date or time selector is used. + + + + + Only date selector is visible. + + + + + Only time selector is visible on popup. + + + + + Both date and time selectors are visible. + + + + + Gets or sets the amount of padding added to text. + + + + + Gets or sets the text displayed by the label. + + + + + Defines an interface for the DateTime Part interaction. + + + + + Reverts to the last input value control held. + + + + + Gets or sets the date/time part value. + + + + + Gets or sets the minimum value for the date/time part entry. + + + + + Gets or sets the maximum value for the date/time part entry. + + + + + Gets the date time part control represents. + + + + + Gets or sets whether input part is empty. + + + + + Gets or sets the day in numeric format to display. Allowed values are from -1 to 6. -1 represents an empty state. + 0 represents Sunday and 6 Represents Saturday. + + + + + Gets or sets the array of custom names for days. The array must have exactly 7 elements representing day names from 0 to 6. + + + + + Gets or sets whether abbreviated day names are used for display instead of full day names. Default value is false. + + + + + Represents a label for the NumericHourInput control that shows whether time is AM or PM. + + + + + Gets or sets custom AM text used. + + + + + Gets or sets custom PM text used. + + + + + Gets or sets whether abbreviated month names are used for display instead of full month names. Default value is false. + + + + + Occurs when Value property has changed. + + + + + Gets or sets whether mouse wheel increases or decreases the input value when used. + + + + + Gets or sets whether control allows empty input state i.e. does not have an number entered. Default value is true. When control is empty + IsEmpty property returns true and control does not display number. Set to false to always force control to have number displayed. + + + + + Gets or sets the value to increment or decrement the value of the control when the up or down buttons are clicked. + + + + + Gets or sets the Numeric String Format that is used to format the numeric value entered for display purpose. + + + + + Initializes a new instance of the NumericDayInput class. + + + + + Initializes a new instance of the NumericDayOfYearInput class. + + + + + Initializes a new instance of the NumericHourInput class. + + + + + Initializes a new instance of the NumericMinuteInput class. + + + + + Initializes a new instance of the NumericMonthInput class. + + + + + Initializes a new instance of the NumericSecondInput class. + + + + + Initializes a new instance of the NumericYearInput class. + + + + + Gets or sets the year display format. Default value is four digit format. + + + + + Defines data for the ParseValue event that allows you to provide custom parsing for values set to ValueObject property. + + + + + Get the value that was set to the ValueObject property and which should be converted to ParsedValue DateTime. + + + + + Gets or sets whether you have provided ParsedValue. + + + + + Initializes a new instance of the ParseDateTimeValueEventArgs class. + + Indicates the value object. + + + + /// + Gets or sets the parsed value from ValueObject property. + + + + + + Defines delegate for ParseDateTimeValue event. + + + + + + + Initializes a new instance of the DayLabel class. + + + + + Raises the PaintLabel event. + + Provides event data. + + + + Returns copy of the item. + + + + + Copies the DayLabel specific properties to new instance of the item. + + New ButtonItem instance. + + + + Occurs when the mouse pointer enters the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer leaves the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is released. This is used by internal implementation only. + + + + Gets whether property should be serialized. Provided for WinForms designer support. + + + Resets property to its default value. Provided for WinForms designer support. + + + + Occurs when label is rendered and it allows you to override default rendering. + + + + + Gets or sets the date represented by this label. DateTime.MinValue indicates that label is either used as textual day representation + or the week number as specified by the IsWeekOfYear property. + + + + + Gets or sets whether this label is used as the label that displays the day name. + + + + + Gets or sets whether this label is used as the week of year label. + + + + + Gets whether the label for date represents the trailing date, i.e. date that is from next or previous month for the month displayed. + + + + + Gets or sets whether mouse is over the item. + + + + + Gets or sets whether left-mouse button is pressed over the item. + + + + + Specifies the item background style. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Gets or sets whether label appears as selected. + + + + + Gets or sets whether label provides visual indicator when mouse is over the label or pressed while over the label. Default value is true. + + + + + Gets or sets whether label is selectable. IsSelected property returns whether label is selected. Default value is true. + + + + + Gets or sets the label text color. Default value is an empty color. + + + + + Gets or sets whether text is drawn using Bold font. Default value is false. + + + + + Gets or sets the text alignment. + + + + + Gets or sets the image alignment. + + + + + Gets or sets the image displayed on the label. + + + + + Gets or sets whether flat Office 2007 style is used to render the item. Default value is false. + + + + + Gets or sets whether date represented by label is marked as todays date. + + + + + Gets or sets whether popup is displayed when mouse is pressed anywhere over the item. Default value is false which indicates + that popup is displayed only if image assigned to the item and mouse is pressed over image. + + + + + Indicates the alignment of the DayLabel part like text or image. + + + + + Provides data for DayLabel painting events. + + + + + Gets the graphics canvas for rendering. + + + + + Gets or sets which parts of the item will be drawn by the system. You can set this to None to completely disable system rendering. + + + + + Initializes a new instance of the DayPaintEventArgs class. + + Reference to Graphics canvas. + Reference to item being rendered. + + + + Renders the background of the item. + + + + + Renders the item text. + + + + + Renders the item text. + + + + + Renders the item text. + + + + + Renders the item text. + + + + + Renders the item text. + + + + + Renders items image. + + + + + Renders items image. + + + + + Defines delegate for DayLabel painting events. + + Source of the event. + Provides event data. + + + + Specifies the parts of DayLabel control. Members of this enum are intended to be used as flags (combined). + + + + + Specifies no part. + + + + + Specifies the label background. + + + + + Specifies the label text. + + + + + Specifies the label image. + + + + + Specifies all parts. + + + + + Indicates the hour format. + + + + + Indicates Ante Meridiem period, before the middle day. + + + + + Indicates Post Meridiem after the middle day". + + + + + Identifies the date time part. + + + + + Specifies the input fields alignment inside of the control. + + + + + Specifies the text alignment. + + + + + Specifies the format of the date time picker. + + + + + Indicates that custom format specified by CustomFormat property is used. + + + + + The DateTimePicker control displays the date/time value in the long date format set by the user's operating system. + + + + + The DateTimePicker control displays the date/time value in the short date format set by the user's operating system. + + + + + The DateTimePicker control displays the date/time value in the time format set by the user's operating system. + + + + + The DateTimePicker control displays the date/time value in the short time format set by the user's operating system. + + + + + Specifies the display format of the year in input control. + + + + + Specifies the visual item alignment inside the parent group. + + + + + Specifies the vertical alignment. + + + + + Describes the system button item type. System buttons are buttons created internally by controls. + + + + + Specifies the auto-change item when VisualUpDownButton control is clicked. + + + + + No item is automatically changed. + + + + + Auto-change focused item in parent group + + + + + Auto change first input item before the Up/Down button in parent group. + + + + + Specifies the keys used for navigation between input fields. + + + + + No key is used for the navigation. + + + + + Tab key is used to advance to the next input field. + + + + + Arrow keys are used to advance to the next input field. + + + + + Enter key is used to advance to the next input field. + + + + + Tab, Arrows and Enter keys are used to advance to the next input field. + + + + + Describes input button settings. + + + + + Initializes a new instance of the InputButtonSettings class. + + + + + Initializes a new instance of the InputButtonSettings class. + + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Copies properties to new instance of the item. + + New InputButtonSettings instance + + + + Gets or sets whether button is visible. + + + + + Gets or sets whether button is enabled. + + + + + Gets or sets the display position index of the button. Buttons are ordered from left to right with button with lowest index appearing as left-most button. + + + + + Gets or sets the image displayed on the face of the button. + + + + + Gets or sets the text displayed on the input button face. + + + + + Gets or sets the visual item button references for its action. + + + + + Gets or sets the shortcut key which when pressed triggers button click event or its default function. + + + + + Gets or sets tooltip displayed for the button when mouse hovers over it. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Gets or sets the color of the Symbol. + + + + + Defines the system colors used by the input controls. + + + + + Resets property to its default value. Provided for design-time support. + + + + + Returns whether property should be serialized. Provided for design-time support. + + + + + Resets property to its default value. Provided for design-time support. + + + + + Returns whether property should be serialized. Provided for design-time support. + + + + + Occurs when color has changed. + + + + + Gets or sets the background color of input item part when part has input focus. Default value is Color.Empty which indicates that system Highlight color is used. + + + + + Gets or sets the text color of input item part when part has input focus. Default value is Color.Empty which indicates that system HighlightText color is used. + + + + + Initializes a new instance of the InputValidationEventArgs class. + + Indicates current input. + + + + Defines delegate for input validation event. + + + + + + + Initializes a new instance of the VisualToggleButton class. + + + + + Raises the CheckedChanged event. + + + + + Occurs when Checked property has changed. + + + + + Gets or sets whether item is checked. + + + + + Gets whether left mouse button is pressed over the item. + + + + + Gets whether mouse is over the item. + + + + + Initializes a new instance of the LockUpdateCheckBox class. + + + + + Initializes a new instance of the MonthCalendarItem class. + + + + + Returns copy of the item. + + + + + Copies the CalendarMonth specific properties to new instance of the item. + + New ButtonItem instance. + + + + Copies the CalendarMonth specific properties to new instance of the item. + + New ButtonItem instance. + + + + Returns whether property should be serialized by Windows Forms desginer. + + + + + Sets the selected dates in a month calendar control to the specified date range. + + The beginning date of the selection range. + The end date of the selection range. + startDate is less than the minimum date allowable for a month calendar control.
+ -or-
+ startDate is greater than the maximum allowable date for a month calendar control.
+ -or-
+ endDate is less than the minimum date allowable for a month calendar control.
+ -or- endDate is greater than the maximum allowable date for a month calendar control.
+
+ + If the startDate value is greater than endDate property value, the dates are swapped; the endDate value becomes the starting date, and startDate value becomes the end date. + +
+ + + Applies current date selection to the control. You are usually not required to make calls to this method directly since it is automatically + done by the control when selection changes. This method returns immediately if MultiSelect + property is set to false or SelectionStart or SelectionEnd properties have DateTime.MinValue. + + + + + Returns the DayLabel at given client coordinates or null/nothing if there is no label at give location. + + X - position in client coordinates. + Y - position in client coordinates. + DayLabel at given coordinates or null/nothing. + + + + Returns the DayLabel that represents the date. + + Date to find label for. + DayLabel object or nothing if date cannot be founds. + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all monthly marked dates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the MonthlyMarkedDates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all weekly marked days. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the MonthlyMarkedDates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all annually marked dates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the AnnuallyMarkedDates. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Returns whether property should be serialized. Provided for Windows Forms designer support. + + + + + Resets property to its default value. Provided for Windows Forms designer support. + + + + + Removes all marked dates set through MarkedDates property. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + Removes the date from the MarkedDates collection. Note that you must call UpdateMarkedDates method to reflect these changes on calendar. + + + + + + Repaints the marked dates to reflect the dates set in the lists of marked dates. + Use this method to reflect the changes made to the AnnuallyMarkedDates, MonthlyMarkedDates or MarkedDates properties as well + as change to the marked Colors properties. + + + + + Raises the MonthChanged event. + + Provides additional event data. + + + + Raises the MonthChanging event. + + Provides additional event data. + + + + Raises the PaintLabel event. + + Provides event data. + + + + Raises the LabelMouseDown event. + + Provides event data. + + + + Raises the LabelMouseUp event. + + Provides event data. + + + + Raises the LabelMouseEnter event. + + Provides event data. + + + + Raises the LabelMouseLeave event. + + Provides event data. + + + + Raises the LabelMouseMove event. + + Provides event data. + + + + Raises the LabelMouseHover event. + + Provides event data. + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Gets whether property should be serialized. Provided for designer support. + + + + + + Reset property to default value. Provided for designer support. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MinDate property to its default value. + + + + + Gets whether Value property should be serialized by Windows Forms designer. + + true if value serialized otherwise false. + + + + Reset the MaxDate property to its default value. + + + + + Resets property to its default value. Provided for design-time support. + + + + + Gets whether property should be serialized. Provided for design-time support. + + + + + Sets the number of columns and rows of months to display. + + The number of columns. + The number of rows. + ArgumentOutOfRangeException will be raised if any value is less than zero or one value is grater than zero and other is zero. + + + + Raises the DateChanged event. + + Provides event data. + + + + Raises the DateSelected event. + + Provides event data. + + + + Reloads the localized strings for Today and Clear buttons. + + + + + Called when DayClickAutoClosePopup property has changed. + + Old property value + New property value + + + + Occurs when month displayed by the item has changed. + + + + + Occurs before the month that is displayed is changed. + + + + + Occurs when child label representing days is rendered and it allows you to override default rendering. + + + + + Occurs when mouse button is pressed over the day/week label inside of the calendar. + + + + + Occurs when mouse button is released over day/week label inside of the calendar. + + + + + Occurs when mouse enters the day/week label inside of the calendar. + + + + + Occurs when mouse leaves the day/week label inside of the calendar. + + + + + Occurs when mouse moves over the day/week label inside of the calendar. + + + + + Occurs when mouse remains still inside an day/week label of the calendar for an amount of time. + + + + + Occurs when SelectedDate property has changed. + + + + + Occurs when the user makes an explicit date selection using the mouse. + + + This event is similar to the DateChanged event, but it occurs at the end of a date selection made using the mouse. + The DateChanged event occurs during any date selection, whether by mouse, keyboard, or code. You should handle this event + when you enable multiple date selection through MultiSelect property and want to be notified after the date selection has been + made. DateChanged event would fire each time selection changes during the selection of multiple dates. + + + + + Gets or sets the maximum number of days that can be selected in a month calendar control. + + + + + Gets or sets the start date of the selected range of dates. + + + + + Gets or sets the end date of the selected range of dates. + + + + + Gets or sets the selected range of dates for a month calendar control. + + Setting this property is functionally equivalent to using the SetSelectionRange method. You can set the start and end dates separately by setting either the SelectionStart or SelectionEnd properties. You cannot change the start and end dates by setting the SelectionRange.Start or SelectionRange.End property values of the SelectionRange property. You should use SelectionStart, SelectionEnd, or SetSelectionRange. + If the Start property value of the SelectionRange is greater than its End property value, the dates are swapped; the End property value becomes the starting date, and Start property value becomes the end date. + + + + + Gets or sets whether selection of multiple dates up to the MaxSelectionCount is enabled. Default value is false which indicates that only + single day can be selected. + + + + + Gets or sets the array of DateTime objects that determine which monthly days to mark using Colors.MonthlyMarker settings. + + + + + Gets or sets the array of DayOfWeek members that determine which days of week to mark using Colors.WeeklyMarker settings. + + + + + Gets or sets the array of DateTime objects that determines which annual days are marked using Colors.AnnualMarker settings. + + + + + Gets or sets the array of DateTime objects that determines which nonrecurring dates are marked using Colors.DayMarker settings. + + + + + Gets or sets the first month displayed by the control. + + + + + Gets number of months displayed on the control. + + + + + Gets the calendar colors used by the control. + + + + + Gets or sets the size of each day item on the calendar. Default value is 24, 15. + + + + + Gets or sets the size of date navigation buttons on the calendar. Default value is 13, 18. If you increase size of the navigation + buttons change DaySize as well so everything fits. + + + + + Gets or sets the minimum date and time that can be selected in the control. + + + + + Gets or sets the maximum date and time that can be selected in the control. + + + + + Specifies the commands container background style. Commands container displays Today and Clear buttons if they are visible. + + + + + Specifies the navigation container background style. Navigation container displays month, year and optional buttons. Default value is an empty style which means that container does not display any background. + BeginGroup property set to true will override this style on some styles. + + + + + Gets or sets the number of columns and rows of months displayed on control. Default value is 0,0 which indicates that + calendar will display as many columns and rows as it is possible to fit into container space available. + + + + + Gets or sets whether weekend days can be selected. Default value is true. + + + + + Gets or sets the rule used to determine first week of the year for week of year display on calendar. Default value is first-day. + + + + + Gets or sets the value that is used by calendar as today's date. + + + + + Gets a value indicating whether the TodayDate property has been explicitly set. + + + + + Gets or sets whether today marker that indicates TodayDate is visible on the calendar. Default value is true. + + + + + Gets or sets whether week of year is visible. Default value is false. + + + + + Gets or sets whether control uses the two letter day names. Default value is true. + + + + + Gets or sets the array of custom names for days displayed on calendar header. The array must have exactly 7 elements representing day names from 0 to 6. + + + + + Gets or sets the first day of week displayed on the calendar. Default value is Sunday. + + + + + Gets or sets the calendar selected date. Note that SelectedDate property should be used only when MultiSelect property is set to false. + When multiple dates can be selected use range selection properties: SelectionStart, SelectionEnd and SelectionRange. + + + + + Gets the reference to the bottom container that parents the Today, and Clear system buttons. + + + + + Gets reference to internal Today button on calendar. + + + + + Gets or sets whether Today button displayed at the bottom of the calendar is visible. Default value is false. + + + + + Gets or sets whether Clear button displayed at the bottom of the calendar is visible. Clear button clears the currently selected date. Default value is false. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether clicking the day closes the parent popup if item is on popup. + + + + + Gets or sets whether Year/Century selection is enabled when calendar is displaying single month. + + + + + Indicates whether month selector which is displayed when month label is clicked is using abbreviated month names instead of month number. + + + + + Indicates whether calendar is used in month selection mode which shows only month and year. + + + + + Gets or sets the size available for the item currently being arranged. + + + + + Gets or sets whether mouse is over the host control. + + + + + Gets or sets system colors used by the control. + + + + + Defines data for the ParseValue event that allows you to provide custom parsing for values set to ValueObject property. + + + + + Get the value that was set to the ValueObject property and which should be converted to ParsedValue DateTime. + + + + + Gets or sets whether you have provided ParsedValue. + + + + + Initializes a new instance of the ParseDateTimeValueEventArgs class. + + Indicates the value object. + + + + /// + Gets or sets the parsed value from ValueObject property. + + + + + + Defines delegate for ParseValue event. + + + + + + + Defines data for the ParseValue event that allows you to provide custom parsing for values set to ValueObject property. + + + + + Get the value that was set to the ValueObject property and which should be converted to ParsedValue DateTime. + + + + + Gets or sets whether you have provided ParsedValue. + + + + + Initializes a new instance of the ParseDateTimeValueEventArgs class. + + Indicates the value object. + + + + /// + Gets or sets the parsed value from ValueObject property. + + + + + + Defines delegate for ParseValue event. + + + + + + + Gets or sets whether button automatically gets Click events repeated when mouse is kept pressed on the button. Default value is false. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets whether default button background is rendered when mouse is not over the host control. Default value is true. + + + + + Gets or sets the shortcut key which when pressed triggers button click event or its default function. + + + + + Gets or sets the button tooltip. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Gets or sets the fixed button height. + + + + + Gets whether mouse is over the control. + + + + + Gets whether mouse is pressed on the control. + + + + + Gets or sets the text displayed on the face of the button. + + + + + Gets or sets the image displayed on the face of the button. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Gets or sets the color of the Symbol. + + + + + Raises DecreaseValue event. + + Provides event arguments. + + + + Raises IncreaseValue event. + + Provides event arguments. + + + + Defines data for ConvertFreeTextEntry event. + + + + + Gets the string value that was entered by the user. + + + + + Gets or sets the converted ValueEntered into the control's value type. For example for IpAddressInput the value set here + must be of string type and in IP address format. For IntegerInput control the value set here must be an int type. For DateTimeInput + control value set here must be DateTime type. + If you provide ControlValue set ValueConverted=true to indicate so. + + + + + Gets or sets whether ValueEntered has been converted to ControlValue. Set to true to indicate that you have performed conversion. + + + + + Defines delegate for ConvertFreeTextEntry event. + + Source of event. + Provides event data. + + + + Gets or sets the value to increment or decrement the value of the control when the up or down buttons are clicked. + + + + + Gets or sets the Numeric String Format that is used to format the numeric value entered for display purpose. + + + + Creates new instance of the class. + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds array of new objects to the collection. + + Array of object to add. + + + + Adds array of new objects to the collection. + + Array of object to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the VisualItem array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Represents the up down button which allows change of the value in currently focused input control. + + + + + Initializes a new instance of the VisualUpDownButton class. + + + + + Raises the UpClick event. + + Provides event data. + + + + Raises the DownClick event. + + Provides event data. + + + + Occurs when Up part of the button has been clicked. + + + + + Occurs when Down part of the button has been clicked. + + + + + Gets or sets the image displayed on the face of the button. + + + + + Gets or sets the image displayed on the face of the button. + + + + + Gets or sets the default width of the buttons. + + + + + Gets or sets whether control automatically tries to increase/decrease the value of the item that has input focus in the same + parent group as the button. Default value is false. + + + + + Gets or sets the item that is automatically changed when buttons are pressed. + + + + + Statis functions for design-time support. + + + + + Summary description for DesignTimeDte. + + + + + Summary description for Display. + + + + + System item that displays the items that could not fit inside the container on popup menu or toolbar. + + + + + Create new instance of DisplayMoreItem object. + + + + + Returns copy of DisplayMoreItem item + + + + + Called when item container has changed. If you override this method you must call the base implementation to allow default processing to occur. + + Previous container of the item. + + + + Overridden. Draws the item. + + Target Graphics object. + + + + Overriden. Recalculates the size of the item. + + + + + Overridden. Displays the sub-items on popup. + + Popup location. + + + + Overridden. Displays the sub-items on popup. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Overridden. Displays the sub-items on popup toolbar. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Overridden. Displays the sub-items on popup menu. + + Horizontal coordinate in pixels of the upper left corner of a popup. + Vertical coordinate in pixels of the upper left corner of a popup. + + + + Overridden. Close the popup window if open. + + + + + Adds the items that are not visible to the overflow popup. + + + + + Returns the insertion index for the items removed from overflow popup. Assumes that right-most items are removed first by the layout manager. + + + + + + Removes the items from the overflow and adds them back to the parent item. + + + + + Forces the repaint the item. + + + + + Returns the fixed size of the item. + + + + + Get or sets whether item has been changed in a way that it needs its size recalculated. This is internal + property and it should not be used by your code. + + + + + Gets whether the mouse is over the item. + + + + + Represents panel that is hosted by DockContainerItem as docked control. + + + + + Represents graphical panel control with support for different visual styles and gradients. + + + + + Default constructor. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Applies color scheme colors to the style objects. + + + + + Sets the internal mouse down flag which controls appearance of the control. You can use this method to simulate the pressed state for the panel with appropriate StyleMouseDown assigned. + + New value for the mouse down flag. + + + + Sets the mouse over internal flag that tracks whether the mouse is over the control. You can use this method to simulate the mouse over appearance when appropriate StyleMouseOver style is set. + + New value for the mouse over flag. + + + + Indicates whether CanvasColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets CanvasColor to it's default value. Used by windows forms designer design-time support. + + + + + Resets the style to it's default value. + + + + + Resets the internal mouse tracking properties that track whether mouse is over the panel and whether is mouse pressed while over the panel. + + + + + Resets the style to it's default value. + + + + + Resets the style to it's default value. + + + + + Called when AntiAlias property has changed. + + + + + Called after either ColorScheme or ColorSchemeStyle has changed. If you override make sure that you call base implementation so default + processing can occur. + + + + + Returns the size of the panel calculated based on the text assigned. + + Calculated size of the panel or Size.Empty if panel size cannot be calculated. + + + + Returns the size of the panel calculated based on the text assigned. + + Calculated size of the panel or Size.Empty if panel size cannot be calculated. + + + + Updates the markup size to reflect current position of the scrollbars. You must call this method if you are scrolling control with markup using the AutoScrollPosition property. + + + + + Applies predefined Panel color scheme to the control. + + + + + Applies predefined Button color scheme to the control. + + + + + Applies predefined Label color scheme to the control. + + + + + Notifies a control that it is the default button so that its appearance and behavior is adjusted accordingly. + + true if the control should behave as a default button; otherwise false. + + + + Generates a Click event for the control. + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Raises NonClientSizeChanged event. + + Provides event arguments. + + + + Raises ScrollBarValueChanged event. + + Provides event arguments. + + + + Represents graphical panel control with support for different visual styles and gradients. + + + + + Represents graphical panel control with support for different visual styles and gradients. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets a value indicating whether right-to-left mirror placement is turned on. Default value is false. + + + + + Gets or sets Bar Color Scheme. Note that when ColorSchemeStyle property is set to Office 2007 style the color scheme is always retrived from the GlobalManager.Renderer and any\ + changes made on this property will not have any effect. + + + + + Gets or sets whether paint operations for the control are suspended. + + + + + Gets or sets whether Text supports and renders text markup. Default value is true. + + + + + Gets or sets the text displayed on panel. + + + + + Gets or sets whether focus rectangle is displayed when control has focus. + + + + + Gets or sets the canvas color for the panel. Canvas color will be visible on areas of the control that do not get covered + by the style and it will also be used as a base color for style to be painted on. + + + + + Gets or sets the panel style. + + + + + Gets or sets the panel style when mouse hovers over the panel. + + + + + Gets or sets the panel style when mouse button is pressed on the panel. + + + + + Gets or sets whether anti-alias smoothing is used while painting. + + + + + Gets or sets color scheme style. + + + + + Gets or sets a value indicating whether the container will allow the user to scroll to any controls placed outside of its visible boundaries. + + + + + Gets or sets whether text rectangle painted on panel is considering docked controls inside the panel. + + + + + Gets or sets the text rectangle. This property is set by internal implementation and it should not be set by outside code. + + + + + Gets or sets whether text markup if it occupies less space than control provides uses the Style Alignment and LineAlignment properties to align the markup inside of the control. Default value is false. + + + + + Returns reference to internal vertical scroll-bar control. + + + + + Returns reference to internal horizontal scroll-bar control. + + + + + Indicates whether panel uses themed DotNetBar scrollbars. Default value is true. + + + + + Gets or sets the scroll-bar visual style. + + + + + Gets or sets the value returned to the parent form when the button is clicked. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Specifies back color when Enabled=false + + + + + Creates new instance of the panel. + + + + + Called after either ColorScheme or ColorSchemeStyle has changed. If you override make sure that you call base implementation so default + processing can occur. + + + + + Indicates whether style of the panel is managed by tab control automatically. + Set this to true if you would like to control style of the panel. + + + + + Gets or sets TabItem that this panel is attached to. + + + + + Gets or sets which edge of the parent container a control is docked to. + + + + + Gets or sets the size of the control. + + + + + Gets or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. + + + + + Gets or sets a value indicating whether the control is displayed. + + + + + Gets or sets which edges of the control are anchored to the edges of its container. + + + + + Defines single color blend point for the multicolor gradient fills. + + + + + Creates new instance of the class. When defining multicolor gradinet blends and using the percentage positions the positions created + must start with 0f and end with 1f. + + + + + Creates new instance of the class and initialize it with default values. + + + + + Creates new instance of the class and initialize it with default values. + + + + + Gets or sets Color to use in multicolor gradient blend at specified position. + + + + + Gets or sets the color position in multicolor gradient blend. Values less or equal to 1 are used as percentage specifing percentages of distance along the gradient line. + Values greater than 1 are used as absolute pixel values of distance along the gradient line. + + + + + Represents Collection for the BackgroundColorBlend objects. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds array of new objects to the collection. + + Array of object to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the BackgroundColorBlend array. + + Array to copy to. + + + + Creates ColorBlend object based on the members of the collection. ColorBlend object will be valid only if all members of the collection + represents relative/percentage based color blends. + + + + + + Adds the BackgroundColorBlend objects from the collection. + + Collection to copy objects from + + + + Initializes the collection with the two color blend. + + Collection to initialize. + Start color. + End color. + + + + Initializes the collection with the two color blend. + + Collection to initialize. + Start color. + End color. + + + + Initializes the collection with the two color blend. + + Collection to initialize. + Solid Color + + + + Returns reference to the object in collection based on it's index. + + + + + Represents BackgroundColorBlend object converter. + + + + + Represents the cancelable event arguments with integer value. + + + + + Gets or sets the new value that will be used if event is not canceled. + + + + + Indicates the source of the event. + + + + + Defines delegate for cancelable events. + + + + + Represents the cancelable event arguments with object value. + + + + + Initializes a new instance of the CancelObjectValueEventArgs class. + + + + + + Gets or sets the data connected to this event. + + + + + Defines delegate for cancelable events. + + + + + Provides data for CheckBoxItem rendering events. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets the reference to CheckBoxItem being rendered. + + + + + ColorScheme object that is used to provide colors for rendering check box item in legacy styles like Office 2003. Office 2007 style + uses color tables provided by renderers. + + + + + Indicates whether item is in Right-To-Left environment. + + + + + Gets or sets the text font. + + + + + Gets or sets the ItemPaintArgs reference. + + + + + Creates new instance of the object and provides default values. + + Reference to Graphics object + Reference to CheckBoxItem + Reference to legacy ColorScheme + Indicates the font for the text. + Indicates whether item is in Right-To-Left environment. + + + + Defines the event arguments class for ColorPickerDropDown ColorPreview event. + + + + + Gets the color that is being previewed. + + + + + Gets the ColorItem if available for the color being previewed. This property can be null if there is no ColorItem connected with the color. + + + + + Creates new instance of the object. + + Color being previewed. + ColorItem connected with the color. + + + + Defines delegate for ColorPreview event. + + + + + Delegate for the CancelableEventSource event. + + + + + Represents event arguments that provide information on source of action and allow canceling of action. + + + + + Gets or sets whether event action will be canceled. + + + + + Initializes a new instance of the EventSourceArgs class. + + + + + + Initializes a new instance of the CancelableEventSourceArgs class. + + + + + + Provides data for the Navigation Pane rendering events. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets the rendering bounds. + + + + + Creates new instance of the objects and initializes it with default values. + + + + + Provides data for the ProgressBarItem rendering events. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets the reference to ProgressBarItem being rendered. + + + + + Indicates whether item is in Right-To-Left environment. + + + + + Gets or sets the text font. + + + + + Creates new instance of the object and provides default values. + + Reference to Graphics object + Reference to ProgressBarItem + Indicates the font for the text. + Indicates whether item is in Right-To-Left environment. + + + + Provides data for the Quick Access Toolbar Customize dialog events. + + + + + Gets or sets whether to cancel the current operation. When showing the dialog this allows to cancel the showing. When dialog is closed + it allows to cancel the changes made on customize dialog. + + + + + Gets or sets the reference to the form that is acting as dialog. You can set this value to your custom form to display it instead of + built-in dialog. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the dialog being used for customization. + + + + Provides data for the Quick Access Toolbar Customize Item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the customize item being rendered. + Reference to the graphics object. + + + + Provides data for the Quick Access Toolbar Overflow item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the overflow item being rendered. + Reference to the graphics object. + + + + Provides information for ribbon customization events. + + + + + Gets or sets whether the menu popup will be cancelled. Default value is false. + + + + + Gets or sets the reference to the object customize menu will be acting on. This could be an ButtonItem or any + BaseItem derived class as well as RibbonBar object. + + + + + Gets or sets the reference to the popup menu that will be displayed. You can change the members of SubItems collection to add/remove/change + the context menu items that will be displayed. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to context object. + Reference to popup menu item if any. + + + + Provides data for the RenderMdiSystemitem event. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets the reference to MdiSystemItem being rendered. + + + + + Creates new instance of the class and initializes it with default values. + + Reference to graphics object. + Reference to MdiSystemItem being rendered. + + + + Represents events arguments for the Ribbon Control rendering events. + + + + + Gets or sets Graphics control is rendered on. + + + + + Gets the reference to RibbonControl instance being rendered. + + + + + Gets whether Windows Vista Glass is enabled. + + + + + Creates new instance and initializes it with the default values. + + Reference to Graphics object + Reference to RibbonControl + + + + Gets or sets whether the closing of the ribbon menu is canceled. + + + + + Gets or sets the source object that was cause of the menu closing. For example this could be reference to an item that was clicked. + Default value is null which indicates that there is no information about the object that caused closing available. + + + Following is the possible list of types that this property could be set to + and causes for closing: + + BaseItem - when an item is clicked the Source will be set to the instance + of the item that was clicked. + RibbonControl - when parent form RibbonControl is on loses the input + focus the Source will be set to the RibbonControl + RibbonTabItem - when tab menu is displayed and user clicks the same tab + to close the menu. The RibbonTabItem with EventSource=Code will be also set as + source when user double-clicks the tab to maximize the ribbon. + Any other type if RibbonControl.PopupRibbon method is called by your + code. + + + + + + Gets or sets the source of the event. + + + + + Creates new instance of the object. + + + + + Gets or sets the reference to graphics object. + + + + + Initializes a new instance of the SideBarPanelItemRendererEventArgs class. + + + + + + + Gets or sets the reference to graphics object. + + + + + Initializes a new instance of the SideBarRendererEventArgs class. + + + + + + + Provides data for the Slider item rendering events. + + + + + Gets or sets the reference to the item being rendered. + + + + + Gets or sets the reference to graphics object. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to the Slider item being rendered. + Reference to the graphics object. + + + + Defines the abstract class for form caption painter. + + + + + Provides data for form caption rendering events. + + + + + Gets or sets the reference to graphics object. + + + + + Gets or sets the caption bounds. + + + + + Gets or sets the form caption is rendered for. + + + + + Creates new instance of the class. + + + + + Defines the Office 2007 style form caption painter. + + + + + Gets or sets color table used by renderer. + + + + + Represents an item that provides system buttons displayed on form caption. + + + + + Summary description for MDISystemItem. + + + + + Returns copy of CustomizeItem item + + + + + Returns the single button size. + + Size of the button. + + + + MDI System Item can render itself as either Simple icon with system drop down menu or set of + system buttons Minimize, Restore and Close. This item is rendered on the Bar that is designated as + Menu bar and when bar is used on MDI form and MDI Child form is maximized. + + + + + Gets the default size of the system buttons. + + + + + + Gets or sets the custom button size to use instead of system determined size. + + + + + Gets or sets whether Minimize button is visible. + + + + + Gets or sets whether Restore/Maximize button is visible. + + + + + Gets or sets whether Close button is visible. + + + + + Gets or sets whether help button is visible. + + + + + Gets or sets whether Icon is queried when item is painted. Default value is false. + + + + + Provides data for the RenderSystemCaptionItem event. + + + + + Gets or sets Graphics control is rendered on. + + + + + Gets reference to SystemCaptionItem being rendered. + + + + + Gets whether Windows Vista Glass is enabled. + + + + + Creates new instance of the class and initializes it with default values. + + Reference to Graphics object. + Reference to item being rendered. + Indicates whether Vista Glass effect is enabled. + + + + Represents the line drawn between start and end point. + + + + + Paints the shape on canvas. If overriden base implementation must be called to paint any child shapes. + + Shape paint information. + + + + Returns absolute location of the shape based on parent bounds. + + Parent absolute bounds. + Absolute location of the shape + + + + Returns absolute size of the shape based on the parent bounds. + + Absolute parent bounds. + Absolute size of the shape. + + + + Gets the absolute bounds of the shape. + + Parent bounds. + Absolute bounds of the shape. + + + + Gets the location of the shape. + + + + + Gets the size of the shape. + + + + + Gets the shape padding. Padding is the inside spacing between shape and it's child shapes. + + + + + Gets the collection of child shapes. + + + + + Gets or sets whether this shape will set the ShapePaintInfo.ChildContentClip property to the region that represents the inside content of the shape. + This is used when there is inside content of the shape which is not part of the shape itself and calling routine needs + access to the region that defines the shape inside bounds. + + + + + Gets the start point of the line. + + + + + Gets the end point of the line. + + + + + Gets the line border. + + + + + Describes the shape location. + + + + + Gets or sets the X location of the shape relative to it's parent. + + + + + Gets or sets the Y location of the shape relative to it's parent. + + + + + Gets or sets the relative X position. + + + + + Gets or sets the relative Y position. + + + + + Describes the relative location. + + + + + Describes the padding for the shape. Padding is the space inside the shape and between it's child shapes. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class and initializes it with default values. + + + + + Gets or sets the left padding in pixels. + + + + + Gets or sets the right padding in pixels. + + + + + Gets or sets the top padding in pixels. + + + + + Gets or sets the bottom padding in pixels. + + + + + Gets the total horizontal padding. + + + + + Gets the total vertical padding. + + + + + Paints the border. + + + + + Paints the border. + + + + + Gets or sets the rounded corner size. + + + + + Gets the shape border. + + + + + Gets the shape fill. + + + + + Defines the shape border. + + + + + Gets or sets the border width in pixels. + + + + + Gets or sets the border color. + + + + + Gets or sets the ending gradient border color. + + + + + Gets or sets the gradient angle. Default value is 90. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Shape array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Gets or sets the starting fill color. + + + + + Gets or sets the end fill color. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the background color collection blend. + + + + + Gets or sets the fill gradient type. + + + + + Paints the border. + + + + + Paints the border. + + + + + Gets the shape border. + + + + + Gets the shape fill. + + + + + Describes shape size. + + + + + Gets or sets the width of the shape. When RelativeWidth is specified then number specifed here is added to the actual shape width. + + + + + Gets or sets the height of the shape. When RelativeHeight is specified the number specified here is added to the actual shape height. + + + + + Gets or sets the relative shape width. + + + + + Gets or sets the relative shape height. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Represents the class used to create Color objects. + + + + + Creates new instance of the object. + + + + + Represents the class used to create Color objects blended based on base color. + + + + + Creates new instance of the object. + + + + + Converts integer color representation to Color type. + + Color representation as 32-bit RGB value. + Reference to Color object. + + + + Converts integer color representation to Color type. + + Color representation as 32-bit RGB value. + Reference to Color object. + + + + Converts integer color representation to Color type. + + Color value. + Reference to Color object. + + + + Converts color representation to alpha Color type. + + Color value. + Reference to Color object. + + + + Converts integer color representation to Color type. + + Color value. + Reference to Color object. + + + + Defines the names for the ElementStyle.Class style classes. + + + + + Gets the key for the GalleryContainer background style class. + + + + + Gets the key for the Ribbon File menu outer container background style class. + + + + + Gets the key for the Ribbon File menu two column container background style class. + + + + + Gets the key for the Ribbon File menu first column container background style class. + + + + + Gets the key for the Ribbon File menu second column container background style class. + + + + + Gets the key for the Ribbon File menu bottom container background style class. + + + + + Gets the key for the text box border style class. + + + + + Gets the key for the RichTextBox control border style class. + + + + + Gets the key for the ItemPanel style class. + + + + + Gets the key for the ListBoxAdv style class. + + + + + Gets the key for the date time input background style class. + + + + + Gets the style key for the Ribbon client panel. + + + + + Gets the style key for the ListView control border style. + + + + + Gets the style key for the Office2007 Status Bar alternative background. + + + + + Gets the style key for the AdvTree control border and background. + + + + + Gets the style key for the AdvTree control columns header. + + + + + Gets the style key for the AdvTree control columns header for the child nodes. + + + + + Gets the style key for the AdvTree control column. + + + + + Gets the style key for the CrumbBar background style. + + + + + Gets the key for the DataGridView border style class. + + + + + Gets the key for the DataGridViewNumeric border style class. + + + + + Gets the key for the DataGridViewDateTime border style class. + + + + + Gets the key for the DataGridViewIpAddress border style class. + + + + + Gets the key for SlidePanel slide-out button style. + + + + + Gets the key for the MetroTilePanel style class. + + + + + Gets the key for Metro tile group container title class. + + + + + Gets the style key for the MonthCalendarAdv control. + + + + + Gets the style key for the ProgressSteps control. + + + + + Gets the style key for the SideNavStrip control. + + + + + Represents a static class that maintains the global rendering properties for all controls when eRenderMode is set to global. + + + + + Gets or sets the global renderer used by all controls that have RenderMode set to eRenderMode.Global. + + + + + Represents complex gradient color table. + + + + + Creates new instance of the object. + + + + + Creates new instance of the object and initializes it with default values. + + Start color + End color + + + + Creates new instance of the object and initializes it with default values. + + Start color + End color + + + + Creates new instance of the object and initializes it with default values. + + Start color + End color + + + + Creates new instance of the object and initializes it with default values. + + Start color + End color + Linear gradient angle + + + + Creates new instance of the object and initializes it with default values. + + Start color + End color + Linear gradient angle + + + + Gets or sets the color collection blend that describes the gradient. + + + + + Gets or sets the gradient type. + + + + + Gets or sets the linear gradient angle. + + + + + Creates a copy of table. + + A copy. + + + + Represents the color table of linear gradient. + + + + + Creates new instance of the object. + + + + + Creates new instance of the object. + + Start color. + + + + Creates new instance of the object. + + Start color. + End color. + + + + Creates new instance of the object. + + Start color in hexadecimal representation like FFFFFF. + End color in hexadecimal representation like FFFFFF. + + + + Creates new instance of the object. + + Start color in 32-bit RGB representation. + + + + Creates new instance of the object. + + Start color in 32-bit RGB representation. + End color in 32-bit RGB representation. + + + + Creates new instance of the object. + + Start color in 32-bit RGB representation. + End color in 32-bit RGB representation. + Gradient angle. + + + + Creates new instance of the object. + + Start color. + End color. + Gradient angle. + + + + Gets or sets the start color. + + + + + Gets or sets the end color. + + + + + Gets or sets the gradient angle. Default value is 90. + + + + + Gets whether both colors assigned are empty. + + + + + Item container for dockable windows. + + + + + Creates new instance of ControlContainerItem and assigns item name. + + + + + Creates new instance of ControlContainerItem and assigns item name. + + Item name. + + + + Creates new instance of ControlContainerItem and assigns item name and item text. + + Item name. + Item text. + + + + Overriden. Returns the copy of the ControlContainerItem. + + Copy of the ControlContainerItem. + + + + Overriden. Draws the item. + + Target Graphics object. + + + + Overriden. Recalculates the size of the item. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Occurs after an item has been removed. + + Item being removed. + + + + Occurs after text has changed. + + + + + Occurs after item visual style has changed. + + + + + Occurs when container control needs to be assigned to the item. + + + + + Gets or sets the reference to the contained control. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets item description. This description is displayed in + Customize dialog to describe the item function in an application. + + + + + Gets or sets item alignment inside the container. + + + + + Gets or sets the collection of shortcut keys associated with the item. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets a value indicating whether the item is visible. + + + + + Specifies the Tab image. Image specified here is used only on Tab when there are multiple dock containers on Bar. + + + + + Specifies the index of the Tab image if ImageList is used. Image specified here is used only on Tab when there are multiple dock containers on Bar. + + + + + Specifies the Button icon. Icons support multiple image sizes and alpha blending. + + + + + Gets or sets the predefined tab color. Default value is eTabItemColor.Default which means that default color is used. + + + + + Gets or sets whether tab that dock container item is on is selected. + + + + + Gets or sets the width of the item in pixels. + + + + + Gets or sets the height of the item in pixels. + + + + + Gets or sets the minimum size of the item. When used please note that layout logic for dockable windows expects that + all DockContainerItems that are in particular docking side have exact same minimum size. When setting this property it is + best to set the same value for all DockContainerItem instances you create. + + + + + Gets or sets the default floating size of the Bar that is containing this item. + + + + + Gets or sets the minimum size of the form client area that is tried to maintain when dockable window is resized. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets or sets whether item can be customized by end user. + + + + + Returns whether item is in design mode or not. + + + + + Gets or sets whether item is global or not. + This flag is used to propagate property changes to all items with the same name. + Setting for example Visible property on the item that has GlobalItem set to true will + set visible property to the same value on all items with the same name. + + + + + Gets or sets the close button behavior on the host Bar. Default value is eDockContainerClose.Inherit which means that Bar.CanHide will control whether DockContainerItem can be closed. + + + + + Specifies the behavior of the close button on host bar for the DockContainerItem. + + + + + Closing of the bar is inherited from the host bar. Bar.CanHide property will control close button visibility. + + + + + Closing of the DockContainerItem is allowed. + + + + + Closing of DockContainerItem is not allowed. + + + + + Summary description for DockingHint. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Update control region based on hint side + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represent the docking information for an control. + + + + + Control dock side. + + + + + Control dock site. + + + + + Docking offset. + + + + + Docking line. + + + + + Docked control width. + + + + + Docked control height. + + + + + Control position. + + + + + Indicates whether to use outline or not + + + + + Indicates that dock site should change it's Z-Order so it maximizes the space it consumes as related to other dock sites. + + + + + Indicates that dock site should change it's Z-Order so it reduces the amount of space it consumes as related to other dock sites. + + + + + When either FullSizeDock or PartialSizeDock is set it indicates the new dock site Z-Order index. + + + + + Returns the bar that mouse is placed over. + + + + + Returns dock side the mouse is indicating user wants to dock bar at. + + + + + Gets the last relative docked to bar. + + + + + Gets the last relative docked to document id. + + + + + Returns side of last docked-to dock site. + + + + + Dock Sites are created by DotNetBar control on each edge of the + DotNetBar container control and are used for docking purposes. + If Dock Site does not contain any controls it will be invisible. + + + + + Creates new instance of DockSite object with specified dock style. + + Specifies the position and manner in which a site is docked. + + + + Creates new instance of DockSite object. + + + + + Returns reference to the DocumentDockUIManager object used for interaction with document docking engine. + + Reference to the DocumentDockUIManager object. + + + + Saves layout for bars contained by dock site. + + Parent XmlElement. + + + + Loads layout for the bars. + + Parent XmlElement that was passed to SaveLayout method to save layout + + + + Suspends normal layout logic. + + + + + Resumes normal layout logic. + + + + + Resumes normal layout logic. Optionally forces an immediate layout of pending layout requests. + + + + + Docks the bar to the dock site. + + Bar to dock. + + + + Dockes the Bar to dock site at specified position. + + Bar to dock. + Bar insert position. + + + + Relayouts all docked controls in the site. + + + + + Returns the docking information for current position. + + Controls docking provider. + Horizontal assumed docking position. + Vertical assumed docking position. + Docking information. + + + + + Undocks the control from the site. + + Control to undock. + + + + Gets or sets whether painting is disabled on dock site while layout of bars is performed. Default value is true. + You might need to set this property to false if you are expirience vide flashing while using DirectX video animation in Bar controls that are part of the + dock site. + + + + + Specifies background image position when container is larger than image. + + + + + Specifies the transparency of background image. + + + + + Gets or sets the target gradient background color. + + + + + Gets or sets gradient fill angle. + + + + + Specifies the position and manner in which a site is docked. + + + + + Gets the reference to the DotNetBarManager that uses this dock site. + + + + + Represents class that is a bar container for document docking. + + + + + Represents Document container base class. + + + + + Creates new instance of the class. + + + + + Resizes the document within specified bounds. + + Area available for the document. + + + + Sets the display bounds. + + New display bounds. + + + + Sets layout bounds. + + New layout bounds. + + + + Resets the layout bounds for the document base container to the empty bounds. + + + + + Resets the layout bounds for the document base container to the empty bounds. + + + + + Sets the parent document. + + Parent container. + + + + Sets the width of the document. + + Width in pixels + + + + Sets the height of the document. + + Height in pixels. + + + + Occurs when width is being set on child document. + + Reference document being changed + Width in pixels + True if width was applied by parent otherwise false + + + + Occurs when height is being set on child document. + + Reference document being changed + Height in pixels + True if width was applied by parent otherwise false + + + + Updates bounds of the item in response to the scrolling of LayoutControl. + + + + + + + Gets the unique ID for the container. + + + + + Returns actual display bounds of the document. + + + + + Returns layout bounds of the document. Layout bounds are proposed bounds of the layout and might not be the same + as DisplayBounds. + + + + + Gets the parent container. + + + + + Gets whether document is visible or not. + + + + + Gets minimum size of the document. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class and initializes it with the Bar object. + + Bar to contain on document. + + + + Creates new instance of the class and initializes it with the bar and propesed width and height. + + Bar to contain on document. + Proposed width of the document in pixels + Proposed height of the document in pixels + + + + Resizes document object. + + Available bounds for the document. + + + + Gets or sets the bar that is contained by this document. + + + + + Gets whether document is visible. + + + + + Gets the minimum size of the document. + + + + + Represents DocumentBarContainer converter. + + + + + Creates new instance of the class. + + + + + Checks whether conversion can be made to specified type. + + Context Information. + Destination type. + + + + + Converts object to specified type. + + Context information. + Culture information. + Object to convert. + Destination type. + Object converted to destination type. + + + + Collection of DocumentBaseContainer objects. + + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds new objects to the collection. + + Array of documents to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the DocumentBaseContainer array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Represents Dock container with either horizontal or vertical layout. + + + + + Creates new instance of the object and initializes it with specified values. + + Array of documents to host in this container. + Container orientation + + + + Creates new instance of the object. + + + + + Resizes the object inside of the given bounds. + + Available area. + + + + Occurs when width is being set on child document. + + Reference document being changed + Width in pixels + True if width was applied by parent otherwise false + + + + Occurs when height is being set on child document. + + Reference document being changed + Height in pixels + True if width was applied by parent otherwise false + + + + Returns the DocumentBarContainer object for a given bar. + + Bar to search for. + Reference to container or null if bar could not be found + + + + Gets whether document is visible or not. + + + + + Gets the orientation of the container. Default value is Horizontal. + + + + + Returns collection of the documents hosted by this container. + + + + + Returns minimum size of the object. + + + + + Gets or sets splitter size in pixels between the documents docking inside the container. Default value is 3. + + + + + Gets or sets whether the size of the documents is recorded once the layout is calculated. + + + + + Indicates whether the container is allowed to exceed the parent control client size due to inner child windows minimum size constraints. + + + + + Represents DocumentDockContainer object converter. + + + + + Represents class that manages document docking UI interaction. + + + + + + Returns DocumentBaseContainer that holds the reference bar. + + Bar to return document container for. + Returns null if document container cannot be found or reference to the document container. + + + + Docks specified bar by appending it to the container. Bar will be added according to the container's orientation. + + Bar to dock. + + + + Docks specified bar by appending it to the container. Bar will be added according to the container's orientation. + + Bar to dock. + Side to dock bar at. + + + + Adjusts the size of the dock container if needed after a bar has been docked to it. + + Bar object that has been docked. + Indicates that bar was already docked but its Visible property has changed + + + + Processes OnMouseMove events from DockSite. This routine assumes that mouse messages are received only when mouse is actually over + the dock site and not containing bars. This is significant because it will receive messages only if mouse is over the splitter + space between bars. + + Mouse event arguments. + + + + Returns reference to the DocumentDockContainer that contains specified coordinates. Searches through the Documents collection first. + + X coordinate + Y coordinate + + + + + Sets the width of the bar that is managed by this document layout. Width can be set only if parent container has + Horizontal orientation. Note that bar minimum size is respected by this method and + it will be enforced. If width is less than minimum width bar's width will be set to minimum width. + + Reference to bar object. + Desired width. + + + + Sets the height of the bar that is managed by this document layout. Height can be set only if parent container has + vertical orientation. Note that bar minimum size is respected by this method and + it will be enforced. If height is less than minimum height bar's height will be set to minimum height. + + Reference to bar object. + Desired height. + + + + Gets or sets the root document dock container object. + + + + + Gets or sets the splitter width used for mouse hit-testing. + + + + + Gets or sets the container of the document. + + + + + Gets whether document/bar is being resized. + + + + + Represent the menu, toolbar and popup menu structure for the form. + + + + + Raises BarStateChanged event. + + Provides event arguments. + + + + Creates new instance of DotNetBarManager. + + + + + Creates new instance of DotNetBarManager. + + Container. + + + + Dock bar to the specified side of the form. + + Bar to dock. + Side to dock bar to. + + + + Docks the bar to the specified side of the reference bar. + + Bar to dock. + Reference bar. + Side of the reference bar to dock the bar to. + + + + Docks specified DockContainerItem. + + DockContainerItem to dock. + Side to dock item to. + + + + Docks specified DockContainerItem. + + DockContainerItem to dock. + Reference bar. + Side to dock item to. + + + + Docks specified DockContainerItem. + + DockContainerItem to dock. + Reference bar. + Side to dock item to. + + + + Tear-off specified DockContainerItem and float it. + + Item to float. + + + + Tear-off specified DockContainerItem and float it. + + Item to float. + + + + Make specified bar floating bar, i.e. undock it and place in floating window. + + Bar to float. + + + + Make specified bar floating bar, i.e. undock it and place in floating window and specified location on the screen. + + Bar to float. + Screen coordinates for the floating bar. + + + + Raises the ActiveDockContainerChanged event. + + Provides event arguments. + + + + Invokes ItemDoubleClick event. + + Reference to item double-clicked + Event arguments + + + + Returns the Bar object that contains the item. + + + + + Clean up any resources being used. + + + + + Returns whether property should be serialized by Windows Forms designer. + + + + + Use to remove bar from DotNetBar control. Bar will be undocked if it is docked and + removed from all internal collections. + + Bar to remove. + + + + Forces the loading of the definition specified in DefinitionName property. + By default definition is loaded after parent form handle has been created and form is loaded. + However, under certain circumstances you might need DotNetBar to load definition right away so + you can access bars and items. We recommend moving the code to Form Load event and leaving the loading process for DotNetBar definition as is. + + + + + Loads DotNetBar definition from file. + + File that contains DotNetBar defintion. + + + + Invokes SerializeItem event. + + Provides data for the event. + + + + Invokes DeserializeItem event. + + Provides data for the event. + + + + Saves current DotNetBar definition and state to the file. + + File name. + + + + Loads DotNetBar layout from file. + + File that contains DotNetBar defintion. + + + + Saves current DotNetBar layout to the file. + + File name. + + + + Invokes the DotNetBar Customize dialog. + + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name. This method search for items on all Bars, Items collection and ContextMenus collection. + The order of search is as follows. All Bars from Bars collections are searched, then Items collection and then ContextMenus collection. + + Item name to look for. + Specifies that search will be performed through all DotNetBar collections. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. This method will searchs for items on all Bars, Items collection and ContextMenus collection. + The order of search is as follows. All Bars from Bars collections are searced, then Items collection and then ContextMenus collection. + + Item name to look for. + Item type to look for. + Specifies that full search (through all collections) will be performed. + + + + + Returns the collection of items with the specified name and type. This method will searchs for items on all Bars, Items collection and ContextMenus collection. + The order of search is as follows. All Bars from Bars collections are searced, then Items collection and then ContextMenus collection. + + Item name to look for. + Item type to look for. + Specifies that full search (through all collections) will be performed. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Returns the first item that matches specified name with the option to indicate full search of all collections. + The order of search is as follows. All Bars from Bars collections are searced, then Items collection and then ContextMenus collection. + + Item name to look for. + Specifies that all collection will be searched. + + + + + Called before modal dialog is displayed using ShowModal() method. + + + + + Called after modal dialog is closed. + + + + + You must call this procedure if you are implementing custom customize dialog box after your dialog box is closed. + + + + + Registers popup item with DotNetBar. Use this function carefully. The registration is required only if Popup item is created completely from code and it is not added to any DotNetBarManager collection. + + + + + + Un-registers specified popup. See RegisterPopup for more information. + + + + + + Resets the ColorScheme property to its default value. + + + + + Informs the DotNetBarManager that Mdi Child for has been activated. Calling this method is needed only under special + conditions where MDI child system items do not show. + + + + + Resets all usage data collected by DotNetBar in relation to the Personalized menus. + + + + + Occurs after bar registered with DotNetBarManager state has changed, like selected dock tab has changed, bar has closed, bar has been docked or undocked etc. + + + + + Occurs when focused (active) DockContainerItem has changed. You can use ActiveDockContainerItem property to get reference to currently focused DockContainerItem. + + + + + Occurs just before customize popup menu is shown. + + + + + Occurs when Item is clicked. + + + + + Occurs when Item is clicked. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when Bar is docked. + + + + + Occurs when Bar is Undocked. + + + + + Occurs before dock tab is displayed. + + + + + Occurs when Bar auto-hide state has changed. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when user changes the item position, removes the item, adds new item or creates new bar. + + + + + Occurs after DotNetBar definition is loaded. + + + + + Occurs when users wants to reset the DotNetBar to default state. + + + + + Occurs after an Item is removed from SubItemsCollection. + + + + + Occurs after an Item has been added to the SubItemsCollection. + + + + + Occurs when ControlContainerControl is created and contained control is needed. + + + + + Occurs when Text property of an Item has changed. + + + + + Occurs when Customize Dialog is about to be shown. + + + + + Occurs when Customize Dialog is closed. + + + + + Use this event if you want to serialize the hosted control state directly into the DotNetBar definition file. + + + + + Use this event if you want to deserialize the hosted control state directly from the DotNetBar definition file. + + + + + Occurs when current Dock tab has changed. + + + + + Occurs when Bar is about to be closed as a result of user clicking the Close button on the bar. + + + + + Occurs when Bar in auto-hide state is about to be displayed. + + + + + Occurs when user starts to drag the item when customize dialog is open. + + + + + Occurs when users Tears-off the Tab from the Bar and new Bar is created as result of that action. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel the change. + + + + + Occurs before tooltip for an item is shown. Sender could be the BaseItem or derived class for which tooltip is being displayed or it could be a ToolTip object itself it tooltip is not displayed for any item in particular. + + + + + Occurs on dockable bars when end-user attempts to close the individual DockContainerItem objects using system buttons on dock tab. + Event can be canceled by setting the Cancel property of event arguments to true. This even will occur only after user presses the + X button on tab that is displaying the dockable windows/documents. + + + + + Occurs on dockable bars after DockContainerItem is closed. This action cannot be cancelled. + + + + + Occurs after an item has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data with the item and load it back up in DeserializeItem event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeItemEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an item has been de-serialized (load) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrive any data you saved in SerializeItem event. + + + + + Occurs when TextBoxItem input text has changed. + + + + + Occurs when color on ColorPickerDropDown is choosen from drop-down color picker or from Custom Colors dialog box. Selected color can be accessed through SelectedColor property. + + + + + Occurs when Checked property of an button has changed. + + + + + Indicates whether Ctrl+Tab keys cycles the currently selected dock tab. + + + + + Gets or sets the Context menu bar associated with the this control which is used as part of Global Items feature. The context menu + bar assigned here will be used to search for the items with the same Name or GlobalName property so global properties can be propagated when changed. + You should assign this property to enable the Global Items feature to reach your ContextMenuBar. + + + + + Gets or sets the form DotNetBarManager is attached to. + + + + + Gets or sets the user control DotNetBarManager is parented to when on user control and providing popups only. + + + + + Gets currently focused (active) DockContainerItem. Note that only if DockContainer Item has input focus it will be consider active + so there can only be one active DockContainerItem at a time. + + + + + Gets whether component has been disposed. + + + + + Disposed will return true after Dispose method has been executed. + + + + + Gets or sets whether GC.Collect() is called when this component is disposed. + + + + + Gets or sets the minimum client size that docking windows will try to maintain for the client area (not occupied by dock windows). + Note that this value is suggested value and cannot be observed when form is resized below the minimum size required for the given layout. + Default value is 48x48 pixels. + + + + + Indicates whether DotNetBar provides docking hints for easy docking of bars. + + + + + Gets or sets whether user can control how first bar is docked when using docking hints (default value is True). When enabled (default value) placing the mouse over the middle + docking hint will dock the bar at partial size and using the far docking hint will dock bar at full size. Full size indicates that dock site which hosts the bar + consumes all the space of the parent form while partial size indicates that dock site consumes the full size minus the space of the other dock sites. Default value is true. + + + + + Gets or sets whether uniform styling is applied to bars docked as documents. Default value is true which means + that bar that will be docked as document will have it's style changed so it fits in default document styling. + Such bars will have GrabHandleStyle=None, DockTabAlignment=Top and AlwaysDisplayDockTab=true. + Set this property to false to have bars keep these properties once they are docked as documents. + Value of these properties will be returned back to the default values once bar is not docked as document. + + + + + Gets the collection of the Bar objects associated with DotNetBarManager. + + + + + Gets whether definition is loaded. + + + + + Gets the collection of all items that are used for end-user design-time customization. + + + + + Gets the collection of all popup menus managed by DotNetBarManager. + + + + + Indicates whether shortucts handled by items are dispatched to the next handler or control. + + + + + Gets or sets the collection of shortcut keys that are automatically dispatched to the control that has focus even if they are handled and used by one of the items. This gives you fine control over which shortcuts are passed through the system and which ones are marked as handled by DotNetBar. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Suspends the bar layout for all bars. + + + + + Specifes whether drop shadow is displayed for Menus and pop-up Bars. OfficeXP Style only. + + + + + Specifes whether to use Alpha-Blending shadows for pop-up items if supported by target OS. Disabling Alpha-Blended shadows can improve performance. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Gets or sets whether hooks are used for internal DotNetBar system functionality. Using hooks is recommended only if DotNetBar is used in hybrid environments like Visual Studio designers or IE. + + + + + Gets whether any handlers have been defined for SerializeItem event. If no handles have been defined to optimize performance SerializeItem event will not be attempted to fire. + + + + + Gets whether any handlers have been defined for DeserializeItem event. If no handles have been defined to optimize performance DeserializeItem event will not be attempted to fire. + + + + + Returns whether definition is being currently loaded. + + + + + Gets or sets whether document bars are saved in definition file. Default value is false which means that document + bars are not saved as part of definition file. You can set this value to true to save document bar to definition file and + be able to load them. + + + Note that by default Document bars that you created during design-time get member + variables assigned to them by Windows Forms designer. If you decide to save definition + of such bars and load definition back member variables will not point to correct bar + instances since loading definition recreates all bars from scratch. You should always + use Bars collection to access bars when saving and loading definitions. + + + + + Gets or sets the DotNetBar definition string. + + + + + Gets or sets the DotNetBar layout string. + + + + + Gets whether DotNetBarManager is loading layout. + + + + + Specifies that custom customize dialog will be used. Use EnterCustomize event to show your custom dialog box. + + + + + Gets or sets the toolbar Top dock site used by DotNetBarManager. + + + + + Gets or sets the toolbar Bottom dock site used by DotNetBarManager. + + + + + Gets or sets the toolbar Left dock site used by DotNetBarManager. + + + + + Gets or sets the toolbar Right dock site used by DotNetBarManager. + + + + + Gets or sets the Top dock site used by DotNetBarManager. + + + + + Gets or sets the Bottom dock site used by DotNetBarManager. + + + + + Gets or sets the Left dock site used by DotNetBarManager. + + + + + Gets or sets the Right dock site used by DotNetBarManager. + + + + + Gets or sets the Fill dock site used by DotNetBarManager. Fill dock site is most commonly used as dock site + for document type docking. + + + + + Specifies whether bars are drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Sets the style of all items in DotNetBar Manager. + + + + + Gets or sets Color scheme for all bars. Note that you need to set UseGlobalColorScheme to true to indicate + that this ColorScheme object will be used on all bars managed by this instance of DotNetBarManager. + + + + + Gets or sets whether ColorScheme object on DotNetBarManager is used as a default ColorScheme for all bars managed by DotNetBarManager. + Default value is false which indicates that ColorScheme on each Bar is used. + When set to true each bar will use the ColorScheme settings from DotNetBarManager and it will ignore any + setting on the Bar.ColorScheme object. + + + + + Indicates whether the Personalized menu setting is ignored and full menus are always shown. + + + + + Gets or sets whether accelerator letters for menu or toolbar commands are underlined regardless of + current Windows settings. Accelerator keys allow easy access to menu commands by using + Alt + choosen key (letter). Default value is false which indicates that system setting is used + to determine whether accelerator letters are underlined. Setting this property to true + will always display accelerator letter underlined. + + + + + Returns whether theme support is enabled on the OS that supports themes like Windows XP. + + + + + Indicates whether the CustomizeItem (allows toolbar customization) is added for new Bars end users are creating. + + + + + Gets or sets whether DotNetBar ignores the F10 key which when pressed sets the focus to menu bar + + + + + Indicates whether the items that are not recenly used are shown after mouse hovers over the expand button. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Specifies the pop-up animation style. + + + + + Specifies whether the MDI system buttons are displayed in menu bar when MDI Child window is maximized. + + + + + Gets or sets whether MDI Child form System Menu is hidden. System menu is displayed in MDI form menu area when form is maximized. Default value is false. + + + + + Gets or sets whether customize context menu is shown on all bars or dock sites. + + + + + Gets or sets whether parent form is activated when dock window layout is loaded. + + + + + Represents delegate for ContextMenu events. + + + + + Represents the method that will handle the ItemRemoved event. + + + + + Defines the delegate for DockTabChange event + + + + + Defines the delegate for BarClosing event + + + + + Defines the delegate for BarAutoHideDisplay event + + + + + Represents the method that will handle the LocalizeString event. + + + + + Gets or sets the display rectangle for popup auto-hide bar. + + + + + Event arguments for LocalizeString event. + + + + + Indicates that event has been handled and that LocalizedValue should be used. + + + + + Indicates the string key for the text that needs to be localized. + + + + + Indicates the localized text value. If you are performing custom string localization + you need to set this value to the translated text for current locale and you need to set + Handled property to true. + + + + + Default constructor. + + + + + Event arguments for EndUserCustomize event. + + + + + Indicates the customize action that user executed. + + + + + Default constructor. + + Indicates action user executed. + + + + Initializes a new instance of the EndUserCustomizeEventArgs class. + + + + + + + Gets any action data, might be null/nothing. + + + + + Delegate for EndUserCustomize event. + + + + + Defines delegate for ActiveDockContainerChanged event. + + + + + + + Provides event arguments for ActiveDockContainerChanged event. + + + + + Gets the DockContainerItem that has been activate or deactivated. + + + + + Initializes a new instance of the ActiveDockContainerChangedEventArgs class. + + + + + + Summary description for DotNetBarResourcesAttribute. + + + + + Summary description for DotNetBarStreamer. + + + + + Represents class that can serialize compatible marked properties. + + + + + XML element is expected to be something like Image data Base64 encoded + + Image data + + + + + Represents visual style of an User Interface Element. + + + + Creates new instance of the class. + + + + Initializes a new instance of the ElementStyle class. + + + + + Creates new instance of the class. + + + Creates new instance of the class. + + + Creates new instance of the class. + + + + Indicates whether BackgroundColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether BackgroundColor2 should be serialized. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundImage to it's default value null (VB Nothing). Used by windows forms designer design-time support. + + + + + Indicates whether TextColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets TextColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether TextShadowColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets TextColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether TextShadowOffset should be serialized. Used by windows forms designer design-time support. + + + + + Resets TextShadowOffset to it's default value. Used by windows forms designer design-time support. + + + + + Sets size of the element style. + + Indicates new size. + + + + Indicates whether BorderColor should be serialized. Used by windows forms designer design-time support. + + + + + Resets BorderColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether BorderColor3 should be serialized. Used by windows forms designer design-time support. + + + + + Resets BorderColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether BorderColorLight should be serialized. Used by windows forms designer design-time support. + + + + + Resets BorderColor to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether BorderColor2 should be serialized. Used by windows forms designer design-time support. + + + + + Resets BorderColorLight2 to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether property should be serialized. Used by windows forms designer design-time support. + + + + + Resets property to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether property should be serialized. Used by windows forms designer design-time support. + + + + + Resets property to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether property should be serialized. Used by windows forms designer design-time support. + + + + + Resets property to it's default value. Used by windows forms designer design-time support. + + + + + Indicates whether property should be serialized. Used by windows forms designer design-time support. + + + + + Resets property to it's default value. Used by windows forms designer design-time support. + + + + + Releases all resources used in this control. After calling Dispose() + object is not in valid state and cannot be recovered to the valid state. + Recreation of the object is required. + + + + + Applies a "child/inherited" style text and box properties but not any background or border properties to this style. + Use this method to create style hierarchies. + + Style to apply to this style + + + + + Applies a "child/inherited" style to this style. Use this method to create style + hierarchies. + + + This method is used to support style hierarchies where a base style is defined + and inherited/child styles are derived and based on it. By using this method on the + base style you can apply only style changes defined by the child style. For example if + you defined a base style for normal user interface element then in most cases you do + not want to redefine the styling for the case when same user interface element is + selected. You will just defined the behavior of the selected state and then apply it to + the base normal style using ApplyStyle method. + + Style to apply to current style. + + + + Makes an exact copy of the style. + + New copy of ElementStyle object. + + + + Reset all style properties to default values. + + + + Returns default style for the Cell object. + + Reference to the default style for the Node. Cell style is based on the given + node style. + + + + Returns default style for disabled cells. + Returns new instance of ElementStyle object. + + + Returns default style for the selected cell object. + New instance of the ElementStyle object. + + + + Sets Alpha value for all colors defined by style to specified value. + + Style to change. + Alpha value for the colors. + + + + Returns reference to ColorScheme object used by this style. + + Instance of ColorScheme object or null if object could not be obtained. + + + + Occurs when appearance property of the style has changed. + + + + + Occurs when component is Disposed. + + + + + Gets the collection that defines the multicolor gradient background. + + + + + Gets or sets the background color for UI element. If used in combination with + BackgroundColor2 is specifies starting gradient color. + + + + + Gets or sets the color scheme color that is used as background color. Setting + this property overrides the setting of the corresponding BackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BackColor property. + + + + + Gets or sets the target gradient background color for UI element. + + + + + Gets or sets the color scheme color that is used as target gradient background color. Setting + this property overrides the setting of the corresponding BackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BackColor2 property. + + + + + Gets or sets the background gradient angle. + + + + + Gets or sets the background gradient fill type. Default value is Linear. + + + + + Specifies background image. + + + + + Specifies background image position when container is larger than image. + + + + + Specifies the transparency of background image. + + + + + Gets or sets the text color displayed in this UI element. + + + + + Gets or sets the color scheme color that is used as text color. Setting + this property overrides the setting of the corresponding TextColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through TextColor property. + + + + + Gets or sets the text shadow color. + + + + + Gets or sets the color scheme color that is used as text shadow color. Setting + this property overrides the setting of the corresponding TextShadowColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through TextColor property. + + + + + Indicates text shadow offset in pixels + + + + + Gets or sets the Font used to draw this the text. + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Specifies alignment of the text. + + + + + Specifies alignment of the text. + + + + + Specifies how to trim characters when text does not fit. + + + + + Gets the total horizontal margin (Left + Right) + + + + + Gets the total vertical margin (Top + Bottom) + + + + + Gets or sets the left margin. + + + + + Gets or sets the right margin. + + + + + Gets or sets the top margin. + + + + + Gets or sets the bottom margin. + + + + + Gets or sets whether any style property has changed which could influence the size of the style. + + + + + Gets the calcuated size of the element style. + + + + + Gets or sets the border type for all sides of the element. + + + + + Gets or sets border width in pixels. + + + + + Gets or sets the border type for top side of the element. + + + + + Gets or sets the border type for bottom side of the element. + + + + + Gets or sets the border type for left side of the element. + + + + + Gets or sets the border type for right side of the element. + + + + + Gets or sets border width in pixels. + + + + + Gets or sets border width in pixels. + + + + + Gets or sets border width in pixels. + + + + + Gets or sets border width in pixels. + + + + + Gets or sets the border color for all sides. Specifing the color for the side will override this value. + + + + + Gets or sets the color scheme color that is used as border color. Setting + this property overrides the setting of the corresponding BorderColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderColor property. + + + + + Gets or sets the target background gradient color for border on all sides. Specifing the color for the side will override this value. Gradient border colors + be employed only when per side border color is not specified. + + + + + Gets or sets the color scheme color that is used as taget gradient border color. Setting + this property overrides the setting of the corresponding BorderColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderColor property. + + + + + Gets or sets the border gradient angle. Default value is 90. + + + + + Gets or sets the color for light border part when etched border is used. + + + + + Gets or sets the color scheme color that is used as border light color for etched border style. Setting + this property overrides the setting of the corresponding BorderColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderColor property. + + + + + Gets or sets the target background gradient color for border on all sides. Specifing the color for the side will override this value. Gradient border colors + be employed only when per side border color is not specified. + + + + + Gets or sets the color scheme color that is used as taget gradient border light color for etched border style. Setting + this property overrides the setting of the corresponding BorderColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderColor property. + + + + + Gets or sets the light border gradient angle. Default value is 90. + + + + + Gets or sets the background color for the left side border. + + + + + Gets or sets the color scheme color that is used as left border color. Setting + this property overrides the setting of the corresponding BorderLeftColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderLeftColor property. + + + + + Gets or sets the background color for the right side border. + + + + + Gets or sets the color scheme color that is used as right border color. Setting + this property overrides the setting of the corresponding BorderRightColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderRightColor property. + + + + + Gets or sets the background color for the top side border. + + + + + Gets or sets the color scheme color that is used as top border color. Setting + this property overrides the setting of the corresponding BorderTopColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderTopColor property. + + + + + Gets or sets the background color for the bottom side border. + + + + + Gets or sets the color scheme color that is used as bottom border color. Setting + this property overrides the setting of the corresponding BorderBottomColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BorderBottomColor property. + + + + + Gets the total horizontal padding (Left + Right) + + + + + Gets the total vertical padding (Top + Bottom) + + + + + Gets or sets the padding space in pixels for all 4 sides of the box. + + + + + Gets or sets the amount of space to insert between the top border of the element and the content. + + + + + Gets or sets the amount of space to insert between the bottom border of the element and the content. + + + + + Gets or sets the amount of space to insert between the left border of the element and the content. + + + + + Gets or sets the amount of space to insert between the right border of the element and the content. + + + + + Gets or sets the name of the style. + + + + + Gets or sets the class style belongs to. The Class styles are used to apply predefined values to the styles that belong to the same class. + This feature is used to manage color schemes/tables per class style. + + + + + Gets or sets the description of the style. + + + + + Gets or sets the Site associated with this component. Used by Windows forms designer. + + + + + Gets or sets the maximum height of the element. This property should be used in + conjunction with the WordWrap property to limit the size of + text bounding box. + + Default value is 0 which indicates that height of the style is unlimited. + + + + Returns System.Drawing.StringFormat constructed from current style settings. + + + + + Gets or sets a value indicating whether the control interprets an ampersand character (&) in the control's Text property to be an access key prefix character. Default value is false. + + + + + Indicates whether control hides the underlines of the letter prefixed by ampersand character when UseMnemonic=true + + + + + Returns eTextFormat constructed from current style settings. + + + + + Gets or sets the border corner type for all 4 sides. Default corner type is Square. + + + + + Gets or sets the border corner type for top left corner. Default value is Inherit which means that setting from CornerType property is used. + + + + + Gets or sets the border corner type for top right corner. Default value is Inherit which means that setting from CornerType property is used. + + + + + Gets or sets the border corner type for bottom left corner. Default value is Inherit which means that setting from CornerType property is used. + + + + + Gets or sets the border corner type for bottom right corner. Default value is Inherit which means that setting from CornerType property is used. + + + + + Gets or sets the diameter in pixels of the corner type rounded or diagonal. + + + + + Gets whether to paint left border for the style. + + + + + Gets whether to paint right border for the style. + + + + + Gets whether to paint top border for the style. + + + + + Gets whether to paint bottom border for the style. + + + + + Gets whether to paint any border for the style. + + + + + Gets whether to paint any border for the style. + + + + + Gets whether custom has any of properties changed. + + + + + Gets or sets whether ElementStyle is in design mode. + + + + + Gets or sets the maximum width of the element. This property should be used in + conjunction with the WordWrap property to limit the size of + text bounding box. + + Default value is 0 which indicates that width of the style is not limited. + + + + Gets or sets the reference to the parent collection. + + + + + Gets or sets the tree control style is assigned to. + + + + + Specifies the type of the gradient fill. + + + + + Represents linear gradient fill. + + + + + Represents radial gradient fill. + + + + + Paints the ElementStyle + + + + Creates new instance of the object. + + + + Paints text for given style. + + Display information. + Text to paint. + Default font if no font by style is specified. + + + + + Returns new Region object for given ElementStyle. + New instance of Region object. + Information to describe ElementStyle. + + + + Returns the clipping for the content of the element style. + + + + + + + Paints the element style on the canvas. + + Holds information necessary to paint style on canvas. + + + + Paint style border. + + Style display information. + + + + Paints style background. + + Style display information. + + + + Paints style background. + + Style display information. + + + + Paints style background image. + + Style display information. + + + + Returns background rectangle for given style by taking in account margins. + + Reference to style object. + Style bounds + Background rectangle. + + + + Returns GraphicsPath for given style. + + Reference to style. + Style bounds. + New instance of GraphicsPath + + + + Returns GraphicsPath for given style. + + Reference to style. + Style bounds. + New instance of GraphicsPath + + + + Initializes a new instance of the BorderDrawInfo structure. + + + + + + + + + + Represents information necessary to paint the style on canvas. + + + + Reference to ElementStyle object. + + + Reference to Graphics object. + + + ElementStyle bounds. + + + Get or sets whether layout is right-to-left. + + + + Gets or sets whether bottom and right border is "twisted" giving beveled look when double border is used. + + + + Creates new instance of the object. + + + Creates new instance of the object and initializes it with default values. + Style to initialize object with. + Graphics object to initialize object with. + Bounds to initialize object with. + + + Creates new instance of the object and initializes it with default values. + Style to initialize object with. + Graphics object to initialize object with. + Bounds to initialize object with. + + + + Specifies part of the background path. + + + + + Indicates complete background path + + + + + Indicates Top half of background path + + + + + Indicates Bottom half of background path + + + + + Represents the layout for the element style. + + + + + Calculates size of an style element. + + Style to calculate size for. + Default font that will be used by style if style does not uses it's own font. + Size of the style element. At this time only Height member will be calculated. + + + + Returns the total white space for a style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for + + + + + Returns the total white space for a style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for left side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for left side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for right side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for right side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for top side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for top side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for top side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns total white space for top side of the style. Whitespace is the space between the edge of the element and inner content of the element. + + Style to return white space for. + + + + + Returns amount of spacing for specified style parts. + + Style to calculate spacing for. + Part of the style spacing is calculated for. Values can be combined. + Side of the style to use for calculation. + + + + + Gets inner rectangle taking in account style padding, margins and border. + + + + + Specifies the appearance of a item. + + + + + Specifies the CrumbBar control style. + + + + + Specifies the Bar state. + + + + + Specifies the Bar grab handle style. + + + + + Specifies the Orientation of the item within container. + + + + + Specifies the design-marker orientation for the item. + + + + + Specifies the supported orientations by the item. + + + + + Specifies the docked Bar border type. + + + + + Specifes vertical alignment. + + + + + Specifies item alignment. + + + + + Specifies the popup type. + + + + + Specifies the dock side. + + + + + Specifies the item shortcut. + + + + + Specifies the item menu visibility. + + + + + Specifies the item behavior personalized menus. + + + + + Specifies the popup animation. + + + + + Specifies ButtonItem style. + + + + + Specifies the image position. + + + + + Specifies the hot tracking style for buttons. + + + + + Specifies the menu drop shadow. + + + + + Specifies the image size for the items on the Bar. + + + + + Specifies button image list selection. + + + + + Indicates that image is stretched to fill the container space. + + + + + Image is centered inside of container space. + + + + + Image is tiled to fill container space. + + + + + Image is drawn in top left corner of container space. + + + + + Image is drawn in top right corner of container space. + + + + + Image is drawn in bottom left corner of container space. + + + + + Image is drawn in bottom right corner of container space. + + + + + Image is drawn on the left side in the middle of the container space. + + + + + Image is drawn on the right side in the middle of the container space. + + + + + Specifies the sides of a rectangle to apply a border to. + + + + + No Border. + + + + + Border on the Left edge. + + + + + Border on the Right edge. + + + + + Border on the Top edge. + + + + + Border on the Bottom edge. + + + + + Border on all 4 sides. + + + + + Specifies appearance type of the Side Bar control. + + + + + Traditional Side Bar appearance with 3D panels. + + + + + Improved Flat Side Bar appearance with extended appearance options. + + + + + Specifies predefined side bar color scheme. + + + + + Specifies the side popup is displayed in relation to it's parent. + + + + + Indicates layout type used for items within side bar panel. + + + + + Default layout all items arranged in one column. + + + + + Items arranged in multiple columns determined by the width of the panel. + + + + + Indicates color scheme assigned to the tab item. + + + + + Indicates the action end user took during toolbar/menubar customization. + + + + + User has changed the visibility of the bar. + + + + + Indicates that item visibility has changed i.e. it's visible property. + + + + + Indicates that an item has been moved to different location. + + + + + Indicates that an item has been removed from the bar. + + + + + Indicates that item's text has been changed. + + + + + Indicates that style of the button i.e. ButtonStyle property has changed. + + + + + Indicates that item's BeginGroup property has changed. + + + + + Indicates that user has created a new bar. + + + + + Indicates that user has renamed the bar i.e. changed it's Text property. + + + + + Indicates that user has deleted the bar. + + + + + Specifies the type of the layout for tabs. + + + + + Tabs are auto-sized to fit the width of the container. + + + + + Tab's width is calculated based on the image and text and navigation box is displayed + when tabs cannot fit the container. + + + + + Tab are wrapping on multiple lines based on the width and navigation box is displayed. + + + + + Tab are wrapping on multiple lines based on the width and NO navigation box is displayed. + + + + + Indicates the corner type. + + + + + Inherits setting if applies. + + + + + Specifies square corner. + + + + + Specifies rounded corner. + + + + + Specifies diagonal corner. + + + + + Specifies the action that raised a event + + + + + The event was caused by a keystroke. + + + + + The event was caused by a mouse operation. + + + + + The event is caused programmatically from user code. + + + + + Specifies the button alignment inside of the BubbleBar. + + + + + Buttons are aligned to the top and arranged horizontally. + + + + + Buttons are aligned to the bottom and arranged horizontally. + + + + Specifies the way background image is displayed on background. + + + Image is stretched to fill the background + + + Image is centered inside the background + + + Image is tiled inside the background + + + + Image is drawn in top left corner of container space. + + + + + Image is drawn in top right corner of container space. + + + + + Image is drawn in bottom left corner of container space. + + + + + Image is drawn in bottom right corner of container space. + + + + + Imaged is centered and fills the control but aspect ratio is unchanged. + + + + + Specifies the border type for style element. + + + + Indicates no border + + + Border is a solid line + + + Border is a solid dash line + + + Border is solid dash-dot line + + + Border is solid dash-dot-dot line + + + Border consists of dots + + + Border consists light and dark part creating an etched effect + + + Border consists dark and light part. Light part is the inside border. + + + + Specifies the alignment of a text string relative to its element's rectangle. + + + + + Specifies the text be aligned near from the origin position of the element's rectangle. In a left-to-right layout, the near position is left. In a right-to-left layout, the near position is right. + + + + + Specifies that text is aligned in the center of the element's rectangle. + + + + + Specifies that text is aligned far from the origin position of the element's rectangle. In a left-to-right layout, the far position is right. In a right-to-left layout, the far position is left. + + + + + Specifies how to trim characters from a text that does not completely fit into a element's shape. + + + + + Specifies that the text is trimmed to the nearest character. + + + + + Specifies that the text is trimmed to the nearest character, and an ellipsis is inserted at the end of a trimmed line. + + + + + The center is removed from trimmed lines and replaced by an ellipsis. The algorithm keeps as much of the last slash-delimited segment of the line as possible. + + + + + Specifies that text is trimmed to the nearest word, and an ellipsis is inserted at the end of a trimmed line. + + + + + Specifies no trimming. + + + + + Specifies that text is trimmed to the nearest word. + + + + + Specifies the alignment of buttons in title bar. + + + + + Buttons are left aligned. + + + + + Buttons are right aligned. + + + + + Indicates white-space part of the style. + + + + + Represents style padding. + + + + + Represents style border. + + + + + Represents style margin. + + + + + Indicates the style side. + + + + + Specifies left side of the style. + + + + + Specifies right side of the style. + + + + + Specifies top side of the style. + + + + + Specifies bottom side of the style. + + + + + Specifies the button state. + + + + + Button is in it's default state. + + + + + Button is disabled + + + + + Mouse is over the button + + + + + Left mouse button is pressed + + + + + Right mouse button is pressed + + + + + Button is hidden. + + + + + Indicates predefined color scheme assigned to super tooltip. + + + + + Specifies predefined color assigned to ribbon items. + + + + + Specifies predefined color assigned to ribbon tab groups. + + + + + Specifies the state of the Wizard button. + + + + + Specifies the button that caused the wizard page change. + + + + + Page change was started using Wizard Back button. + + + + + Page change was started using Wizard Next button. + + + + + Page change was started from code. + + + + + Specifies wizard button that is clicked when the user presses the ENTER key. + + + + + If finish button is enabled and visible it will be clicked otherwise click next button + + + + + Click finish button + + + + + Click next button + + + + + No button will be clicked + + + + + Specifies wizard button that is clicked when the user presses the Escape key. + + + + + Cancel button will be clicked + + + + + No button will be clicked + + + + + Specifies border around ColorItem. + + + + + No Border. + + + + + Border on the Left edge. + + + + + Border on the Right edge. + + + + + Border on the Top edge. + + + + + Border on the Bottom edge. + + + + + Border on all 4 sides. + + + + + Specifies the line alignment of the items inside of the container. + + + + + Items are aligned to the top. + + + + + Items are aligned to the middle point of the line. + + + + + Items are aligned to the bottom. + + + + + Specifies the alignment of the items inside of the container in horizontal layout. + + + + + Items are left aligned. + + + + + Items are centered. + + + + + Items are right aligned. + + + + + Specifies the alignment of the items inside of the container in vertical layout. + + + + + Items are top aligned. + + + + + Items are in the middle. + + + + + Items are Bottom aligned. + + + + + Specifies the rendering mode used by a user interface element. + + + + + Indicates that rendering on user interface element instance set through Renderer property is used. + + + + + Indicates that global application wide renderer is used as specified by GlobalManager.Renderer property. + + + + + Indicates that custom rendered will be used for an user interface element. Renderer property must be set when using this value to the renderer + that will be used. + + + + + Specifies the predefined color table for button. + + + + + Specifies the color table used to render ProgressBarItem in Office 2007 style. + + + + + Indicates default Normal color table, usually green. + + + + + Indicates Pause state color table, usually yellow. + + + + + Indicates Error state color table, usually red. + + + + + Specifies the position of ribbon title. + + + + + Title is positioned on the top of the ribbon. + + + + + Title is positioned on the bottom of the ribbon. + + + + + Specifies text alignment on the button. + + + + + Specifies the left aligned text. + + + + + Specifies the center aligned text. + + + + + Specifies the right aligned text. + + + + + Specifies the position of the tab close button. + + + + + Close button is on the left side of the tab. + + + + + Close button is on the right side of the tab. + + + + + Describes the bar type. + + + + + Indicates that bar is toolbar. + + + + + Indicates that bar is menu bar. + + + + + Indicates that bar is status bar. + + + + + Indicates that bar is dock window. + + + + + Describes the categorization mode used to categorize items on the Customize Ribbon dialog. + + + + + Items are automatically categorized by the ribbon bar they appear on. + + + + + Items are categorized by the Category property on each item. Category property should be set on each item. + + + + + Describes the check-box item appearance style + + + + + Standard check-box style. + + + + + Radio button style. Only one button can be selected/checked in given container. + + + + + Indicates the position of the check box sign related to the text for CheckBoxItem. + + + + + Check box sign is positioned on the left side of the text. + + + + + Check box sign is positioned on the right side of the text. + + + + + Check box sign is positioned above the text. + + + + + Check box sing is positioned below the text + + + + + Indicates the type of the progress bar. + + + + + Standard step based progress bar. + + + + + The automatically moving progress bar. + + + + + Defines the direction of collapsing/expanding + + + + + Control is collapsed from bottom to top. + + + + + Control is collapsed from top to bottom. + + + + + Control is collapsed from right to left. + + + + + Control is collapsed from left to right. + + + + + Describes the scroll bar skinning applied to the controls. + + + + + No scrollbar skinning is applied to the control. + + + + + Optimized scrollbar skinning algorithm is used. Might provide better appearance in certain scenarios. + + + + + Unoptimized scrollbar skinning algorithm is used. Might provide better appearance in certain scenarios. + + + + + Indicates the position of the slider label text related to the slider part. + + + + + Label is positioned on the left side of the slider. + + + + + Label is positioned on the right side of the slider. + + + + + Label is positioned above the slider. + + + + + Label is positioned below the slider. + + + + + Defines the slider item parts. + + + + + Indicates no part. + + + + + Indicates the increase button of slider control. + + + + + Indicates the decrease button of slider control. + + + + + Indicates the label part of slider control. + + + + + Indicates the track area part of the control. + + + + + Specifies the position of the title image. + + + + + Image is positioned on the left side. + + + + + Image is centered. + + + + + Image is positioned on the right side. + + + + + Specifies the Wizard control Appearance. + + + + + Indicates default Wizard 97 style. + + + + + Indicates the Office 2007 Style Wizard Appearance. + + + + + Specifies wizard title image alignment + + + + + Image is aligned to left + + + + + Image is aligned to right + + + + + Specifies the behaviour used to hide watermark. + + + + + Watermark for control is hidden when control receives the input focus. + + + + + Watermark for control is hidden when control has non-empty input value. + + + + + Specifies the advanced ScrollBar appearance. + + + + + Default scroll bar appearance. + + + + + Office 2007 style Application scroll bar appearance. + + + + + Defines text position in relation to the content of the item.. + + + + + Text is positioned to the left of the content. + + + + + Text is positioned to the right of the content. + + + + + Text is positioned on top of the content. + + + + + Text is positioned on bottom of the content. + + + + + Defines position for the notification mark + + + + + Defines available symbol sets. + + + + + FontAwesome Symbol Set. + + + + + Android Material Symbol Set. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets the reference to ButtonItem instance being rendered. + + + + + Creates new instance of the object and initializes it with default values + + Reference to Graphics object. + Reference to ColorItem object. + + + + Represents event arguments for DockTabClosing event. + + + + + Indicates the DockContainerItem that is about to close. + + + + + Provides ability to cancel closing of the DockContainerItem. Default value is false. + + + + + Set to true to automatically remove DockContainerItem from the Bar.Items collection after it is closed. Default value is false + which means that DockContainerItem will be kept in collection but it will be hidden after this event is complete. + + + + + Returns source of the event: keyboard, mouse or code. + + + + + Creates new instance of the class. + + Reference to DockContainerItem that is about to close + + + + Delegate for DockTabClosing event. + + + + + Represents arguments for SerializeItem event which allows you to add custom serialization data to definitions saved by control. + + + + + Gets reference to item being serialized or de-serialized. + + + + + Gets reference to instance of XmlElement that item is serialized to or is being de-serialized from. You should not change any data directly on this element. + + + + + Gets the reference to XmlElement that you can serialize to or de-serialize any custom data from. You can add child elements or set the attributes on + this XmlElement when handling SerializeItem event. When handling DeserializeItem event you can load same data from this element. + + + + + Defines delegate for SerializeItem event. + + + + + Provides more information about MarkupLinkClick event. + + + + + Gets the value of href attribute from the markup link that was clicked. + + + + + Gets the value of name attribute from the markup link that was clicked. + + + + + Creates new instance of the object. + + Value of name attribute. + Value of href attribute. + + + + Defines delegate for MarkupLinkClick event. + + + + + Panel control with title bar that can be expanded or collapsed. + + + + + Called after either ColorScheme or ColorSchemeStyle has changed. If you override make sure that you call base implementation so default + processing can occur. + + + + + Used for design time support. + + true if property should be serialized. + + + + Resets the style to it's default value. + + + + + Resets the style to it's default value. + + + + + Resets the style to it's default value. + + + + + Called when AntiAlias property has changed. + + + + + Occurs before Expanded property is changed. You can cancel change of this property by setting Cancel=true on the event arguments. + + + + + Occurs after Expanded property has changed. You can handle ExpandedChanging event and have opportunity to cancel the change. + + + + + Indicates whether panel will hide the controls it contains when its collapsed and show them when its expanded. Default value is false. + + + + + Gets or sets whether the panel is collapsed/expanded when title bar is clicked. Default value is false. + + + + + Gets or sets the collapse/expand direction for the control. Default value causes the control to collapse from bottom to top. + + + + + Gets or sets whether panel is expanded or not. Default value is true. + + + + + Gets or sets animation time in milliseconds. Default value is 100 miliseconds. You can set this to 0 (zero) to disable animation. + + + + + Gets or sets the bounds of panel when expanded. This value is managed automatically by control based on the starting designer size and value + of Expanded property. + + + + + Gets or sets whether expand button is visible or not. Default value is true. + + + + + Returns bounds of expand button. Bounds are relative to the TitlePanel coordinates. + + + + + Gets or sets image that is used on title bar button to collapse panel. Default value is null which indicates + that system default image is used. + + + + + Gets or sets image that is used on title bar button to expand panel. Default value is null which indicates + that system default image is used. + + + + + Gets or sets the text for the title of the panel. + + + + + Gets or sets the title style. + + + + + Gets or sets the title style when mouse hovers over the title. + + + + + Gets or sets the title style when mouse button is pressed on the title. + + + + + Gets or sets the height of the title portion of the panel. Height must be greater than 0. Default is 26. + + + + + Gets reference to Panel control used as title bar. + + + + + Gets reference to the title bar expand button. + + + + + Gets or sets alignment of the expand button. + + + + + Gets the reference to the panel used as button when control is collapsed to the left or right. + + + + + Represents multi-functional splitter control. + + + + + Creates new instance of the object. + + + + + This member overrides Control.OnPaint. + + Event arguments. + + + + Resets BackgroundColor to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Resets BackgroundColor2 to it's default value. Used by windows forms designer design-time support. + + + + + Apply default splitter style colors. + + Style colors to apply. + + + + Gets or sets whether expandable control ExpandableControl assigned to this splitter is expaned or not. Default value is true. + + + + + Gets or sets whether Click event is triggering expand/collapse of the splitter. Default value is true. + + + + + Gets or sets whether DoubleClick event is triggering expand/collapse of the splitter. Default value is false. + + + + + Gets or sets whether splitter will act as expandable splitter. Default value is true. When set to true ExpandableControl property should be set to the control that should be expanded/collapsed. + + + + + Gets or sets the control that will be expanded/collapsed by the splitter. Default value is null. Expandable property should be also set to true (default) to enable expand/collapse functionality. + + + + + Gets or sets visual style of the control. Default value is eSplitterStyle.Office2003. + + + + + Gets or sets animation time in milliseconds. Default value is 100 miliseconds. You can set this to 0 (zero) to disable animation. + + + + + Gets or sets the shortcut key to expand/collapse splitter. + + + + + Gets or sets the background color for UI element. If used in combination with + BackgroundColor2 is specifies starting gradient color. + + + + + Gets or sets the color scheme color that is used as background color. Setting + this property overrides the setting of the corresponding BackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BackColor property. + + + + + Gets or sets the target gradient background color for UI element. + + + + + Gets or sets the color scheme color that is used as target gradient background color. Setting + this property overrides the setting of the corresponding BackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through BackColor2 property. + + + + + Gets or sets the background gradient angle. + + + + + Gets or sets the expand part fill color. + + + + + Gets or sets the color scheme color that is used expand part fill color. Setting + this property overrides the setting of the corresponding ExpandFillColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandFillColor property. + + + + + Gets or sets the expand part line color. + + + + + Gets or sets the color scheme color that is used expand part line color. Setting + this property overrides the setting of the corresponding ExpandLineColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through ExpandLineColor property. + + + + + Gets or sets the grip part dark color. + + + + + Gets or sets the color scheme color that is used grip part dark color. Setting + this property overrides the setting of the corresponding GripDarkColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through GripDarkColor property. + + + + + Gets or sets the expand part line color. + + + + + Gets or sets the color scheme color that is used expand part line color. Setting + this property overrides the setting of the corresponding GripLightColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through GripLightColor property. + + + + + Gets or sets the background color for UI element when mouse is over the element. If used in combination with + BackgroundColor2 is specifies starting gradient color. + + + + + Gets or sets the color scheme color that is used as background color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotBackColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotBackColor property. + + + + + Gets or sets the target gradient background color for UI element when mouse is over the element. + + + + + Gets or sets the color scheme color that is used as target gradient background color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotBackColor2 property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotBackColor2 property. + + + + + Gets or sets the background gradient angle when mouse is over the element. + + + + + Gets or sets the expand part fill color when mouse is over the element. + + + + + Gets or sets the color scheme color that is used expand part fill color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotExpandFillColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotExpandFillColor property. + + + + + Gets or sets the expand part line color when mouse is over the element. + + + + + Gets or sets the color scheme color that is used expand part line color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotExpandLineColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotExpandLineColor property. + + + + + Gets or sets the grip part dark color when mouse is over the element. + + + + + Gets or sets the color scheme color that is used grip part dark color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotGripDarkColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotGripDarkColor property. + + + + + Gets or sets the grip part light color when mouse is over the element. + + + + + Gets or sets the color scheme color that is used grip part light color when mouse is over the element. Setting + this property overrides the setting of the corresponding HotGripLightColor property. + Color scheme colors are automatically managed and are based on current system colors. + That means if colors on the system change the color scheme will ensure that it's colors + are changed as well to fit in the color scheme of target system. Set this property to + eColorSchemePart.None to + specify explicit color to use through HotGripLightColor property. + + + + + Indicates the style of mutli-functional splitter control. + + + + + Specifies Office 2003 like splitter style and color scheme. + + + + + Specifies Mozilla like splitter style and color scheme. + + + + + Specifies Office 2007 like splitter style and color scheme. + + + + + Represents event arguments for ExpandedChanging and ExpandedChanged events. + + + + + Gets the action that caused the event, event source. + + + + + Gets or sets whether execution Expand event should be canceled. Applies only to ExpandedChanging event. Default is false. + + + + + Indicates new value for the Expanded property. + + + + + Represents the Outlook like Explorer-bar Control. + + + + + Creates new instance of side bar control. + + + + + Clean up any resources being used. + + + + + Returns true if color scheme has changed. + + + + + Resets color scheme to it's default value. + + + + + Creates the Graphics object for the control. + + The Graphics object for the control. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Applies any layout changes and repaint the control. + + + + + Invokes ItemDoubleClick event. + + Reference to item double-clicked + Event arguments + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Ensures that item is displayed on the screen. Item needs to have it's Visible property set to true. This method will expand the group if needed or it will scroll control to display an item. + + Item to display. + + + + Returns the item located at specific client coordinates. + + X Coordinate + Y Coordinate + + + + + Invokes the DotNetBar Customize dialog. + + + + + Invokes SerializeItem event. + + Provides data for the event. + + + + Invokes DeserializeItem event. + + Provides data for the event. + + + + Loads the Side bar definition from file. + + Definition file name. + + + + Saves the Side bar definition to file. + + Definition file name. + + + + Occurs when Checked property of an button has changed. + + + + + Occurs when Item is clicked. + + + + + Occurs when Item is clicked. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when user changes the item position, removes the item, adds new item or creates new bar. + + + + + Occurs after an Item is removed from SubItemsCollection. + + + + + Occurs after an Item has been added to the SubItemsCollection. + + + + + Occurs when ControlContainerControl is created and contained control is needed. + + + + + Occurs when Text property of an Item has changed. + + + + + Use this event if you want to serialize the hosted control state directly into the DotNetBar definition file. + + + + + Use this event if you want to deserialize the hosted control state directly from the DotNetBar definition file. + + + + + Occurs after DotNetBar definition is loaded. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Occurs before tooltip for an item is shown. Sender could be the BaseItem or derived class for which tooltip is being displayed or it could be a ToolTip object itself it tooltip is not displayed for any item in particular. + + + + + Occurs after an item has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data with the item and load it back up in DeserializeItem event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeItemEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an item has been de-serialized (load) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrive any data you saved in SerializeItem event. + + + + + Suspends the layout and painting of the control. When you want to perform multiple operations on the explorer bar and you want to ensure + that layout of the items on it and painting is not performed for performance and appearance reasons set this property to true. Once you + want to enable layout and painting set the property back to false and call RecalcLayout method. Default value is false. + + + + + Gets or sets Bar Color Scheme. + + + + + Specifies whether ExplorerBar is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Specifies the background style of the Explorer Bar. + + + + + Gets or sets the vertical spacing between the group items. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Gets or sets whether anti-alias smoothing is used while painting. + + + + + Returns the collection of Explorer Bar Groups. + + + + + Gets or sets the form ExplorerBar is attached to. + + + + + Gets or sets the margin in pixels between the explorer bar groups and the edge of the control. + + + + + Gets or sets whether end-user can rearrange the items inside the panels. + + + + + Gets or sets whether animation is enabled. + + + + + Gets or sets maximum animation time in milliseconds. + + + + + Gets or sets whether native .NET Drag and Drop is used by side-bar to perform drag and drop operations. AllowDrop must be set to true to allow drop of the items on control. + + + + + Gets or sets whether external ButtonItem object is accepted in drag and drop operation. UseNativeDragDrop must be set to true in order for this property to be effective. + + + + + Applies the stock style to the object. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to expand the group. Default value is null + which indicates that default button is used. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to expand the group. This image is used when mouse is over the button. Default value is null + which indicates that default button is used. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to expand the group. This image is used when user presses left mouse button while cursor is positioned over the button. Default value is null + which indicates that default button is used. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to collapse the group. Default value is null + which indicates that default button is used. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to collapse the group. + This Image is used when mouse is over the button. Default value is null + which indicates that default button is used. + + + + + Specifies custom image to be used as button on ExplorerBarGroup item to collapse the group. + This Image is used when left mouse button is pressed while cursor is over the button. Default value is null + which indicates that default button is used. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for images displayed on the Group Item. + + + + + ImageList for large-sized images used on Items. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Gets or sets the item default accesibility action will be performed on. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + Returns the reference to the container that containing the sub-items. + + + + + Gets whether any handlers have been defined for SerializeItem event. If no handles have been defined to optimize performance SerializeItem event will not be attempted to fire. + + + + + Gets whether any handlers have been defined for DeserializeItem event. If no handles have been defined to optimize performance DeserializeItem event will not be attempted to fire. + + + + + Gets/Sets Bar definition as XML string. + + + + + Indicates whether shortucts handled by items are dispatched to the next handler or control. + + + + + Represents the method that will handle the ItemRemoved event. + + + + + Provides layout for Explorer-Bar control. + + + + + Creates new instance of ExplorerBarContainerItem class. + + + + + Returns copy of ExplorerBarContainerItem item + + + + + Recalculates the size of the item + + + + + Paints this base container + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is released. This is used by internal implementation only. + + + + + Sets input focus to next visible item in Explorer Bar. + + True if focus was set to next visible item otherwise false. + + + + Sets input focus to previous visible item in Explorer Bar. + + True if focus was set to previous visible item otherwise false. + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Represents the Explorer-Bar Group item. + + + + + Creates new instance of ExplorerBarGroupItem. + + + + + Creates new instance of ExplorerBarGroupItem and assigns the name to it. + + Item name. + + + + Creates new instance of ExplorerBarGroupItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of ExplorerBarGroupItem item. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Occurs when the mouse pointer is moved over the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Occurs when the item is clicked. This is used by internal implementation only. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Overloaded. Deserializes the Item from the XmlElement. + + Source XmlElement. + + + + Shows tooltip for this item. + + + + + Forces the repaint the item. + + + + + Applies default appearance to ExplorerBarGroupItem. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether expand button is visible. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether drop shadow is displayed when non-themed display is used. + + + + + Gets the reference to ElementStyle object which describes visual appearance of the explorer group item title. + + + + + Gets the reference to ElementStyle object which describes visual appearance of the explorer group item title while mouse is over the title bar. + + + + + Gets or sets the item background style. + + + + + Gets or sets whether clicking the header of the control expands the item. + + + + + Applies the stock style to the object. + + + + + Applies new visual style to this the item and all of its sub-items. + + + + + Gets or sets expand button border color. + + + + + Gets or sets expand button back color. + + + + + Gets or sets expand button fore color. + + + + + Gets or sets hot expand button border color. + + + + + Gets or sets hot expand button back color. + + + + + Gets or sets hot expand button fore color. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Gets the rectangle of the panel item Button. + + + + + Specifies the image. + + + + + Indicates whether XP themed special group colors are used for drawing. + + + + + Gets or sets the margin in pixels between the edge of the container and the items contained inside of it. Default value is 4. + + + + + Gets or sets whether text on sub items is wrapped on new line if it cannot fit the space available. + + + + + Specifies the index of the image if ImageList is used. + + + + + Summary description for frmCustomize. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Defines the generic container item that is used by toolbar, menu bar and other control for item layout. + + + + + Occurs when new item is added to the container. + + + + + Returns copy of GenericItemContainer item + + + + + Paints this base container + + + + + Recalculate Size of this item + + + + + This must be called by child item to let the parent know that its size + has been changed. + + + + + Occurs when the mouse pointer is over the item and a mouse button is released. This is used by internal implementation only. + + + + + Called when item owner has changed. + + + + + Return Sub Item at specified location + + + + + Set/Get does container wraps item into the new line when they exceed the container size + + + + + Specifies whether to display more items on popup menu or Bar. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether container is system container used internally by DotNetBar. + + + + + When parent items does recalc size for its sub-items it should query + image size and store biggest image size into this property. + + + + + Gets or sets whether item container fills the container control completely. + + + + + Summary description for Hook. + + + + + Summary description for HTMLHelp. + + + + + Interface for designer-item integration. + + + + + Describes container support for setting the word-wrap behavior of it's sub-items. + + + + + Gets or sets whether sub items text will be word wrapped if it cannot fit the space allocated. + + + + + Summary description for ItemPaintArgs. + + + + + Holds reference to all unique items in the DotNetBar. + + + + + Provides context information for serialization. + + + + + Gets or sets reference to context XmlElement an item is being serialized to. + + + + + Gets or sets whether SerializeItem event handler has been defined and whether event should be fired. + + + + + Gets or sets whether DeserializeItem event handler has been defined and whether event should be fired. + + + + + Provides access to serializer. + + + + + + + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Represent an style for the item. + + + + + Default Constructor + + + + + Makes a copy of the ItemStyle object. + + New Instance of a ItemStyle object + + + + Paints the style. + + Graphics object + Target area + Text + Text area + Text Font + + + + Paints the style + + Graphics object + Target Area + Text + Text area + Text Font + Border Type + + + + Paints the style + + Graphics object + Target Area + + + + Paints the style text only. + + Graphics object + Text + Text area + Font + + + + Gets or sets whether text is drawn vertically by this style. + + + + + Gets or sets a background color or starting color for gradient background. + + + + + Gets or sets a background color or ending color for gradient background. + + + + + Gets or sets a text color. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the style Font + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Specifies alignment of the text. + + + + + Specifies alignment of the text. + + + + + Specifies how to trim characters when text does not fit. + + + + + Specifies background image. + + + + + Specifies background image position when container is larger than image. + + + + + Specifies the transparency of background image. + + + + + Gets or sets the corner type. + + + + + Gets or sets the diameter in pixels of the corner type rounded or diagonal. + + + + + Gets or sets the border type. + + + + + Gets or sets dash style for single line border type. + + + + + Gets or sets the border sides that are displayed. + + + + + Gets or sets the border color. + + + + + Gets or sets the line tickness of single line border. + + + + + Gets or sets the left text margin. + + + + + Gets or sets the right text margin. + + + + + Gets or sets the top text margin. + + + + + Gets or sets the bottom text margin. + + + + + + ColorEx object that provides the transparency setting ability. + + + + + Constructor with Color Initialization. + + Color object + + + + Constructor with Color and Transparency Initialization. + + Color object + Transparency + + + + Returns the color object with the transparency set. + + Color object + + + + Gets or sets the Color object which does not include transparency. + + + + + Indicates the transparency for the color. + + + + + Specifies that color derived from system colors which is part of DotNetBar Color Scheme object is used. + Colors derived from system colors are automatically refreshed when + system colors are changed. + + + We recommend using this property to specify color rather than setting color directly. + Using colors that are derived from system colors improves uniform look of your application + and visual integration into user environment. + + + + + Returns empty ColorEx object. + + + + + Indicates whether object contain any color. + + + + + Gets or sets a background color or starting color for gradient background. + + + + + Gets or sets a background color or ending color for gradient background. + + + + + Gets or sets a text color. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the style Font + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Specifies alignment of the text. + + + + + Specifies alignment of the text. + + + + + Specifies how to trim characters when text does not fit. + + + + + Specifies background image. + + + + + Specifies background image position when container is larger than image. + + + + + Specifies the transparency of background image. + + + + + Gets or sets the corner type. + + + + + Gets or sets the diameter in pixels of the corner type rounded or diagonal. + + + + + Gets or sets the border type. + + + + + Gets or sets dash style for single line border type. + + + + + Gets or sets the border sides that are displayed. + + + + + Gets or sets the border color. + + + + + Gets or sets the line tickness of single line border. + + + + + Gets or sets the left text margin. + + + + + Gets or sets the right text margin. + + + + + Gets or sets the top text margin. + + + + + Gets or sets the bottom text margin. + + + + + ColorEx object that provides the transparency setting ability. + + + + + Gets or sets the Color object which does not include transparency. + + + + + Indicates the transparency for the color. + + + + + Specifies that color derived from system colors which is part of DotNetBar Color Scheme object is used. + Colors derived from system colors are automatically refreshed when + system colors are changed. + + + We recommend using this property to specify color rather than setting color directly. + Using colors that are derived from system colors improves uniform look of your application + and visual integration into user environment. + + + + + Summary description for LabelItem. + + + + + Called when ImageTextSpacing property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Reset property to its default value. + + + + + Gets whether property should be serialized. + + + + + Gets whether property should be serialized. + + + + + Resets the SingleLineColor property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Specifies spacing between label image and text. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets the type of the border drawn around the label. + + + + + Gets or sets the border sides that are displayed. Default value specifies border on all 4 sides. + + + + + Gets or sets the background color of the label. + + + + + Gets or sets the text color. + + + + + Gets or sets the border line color when border is single line. + + + + + Gets or sets the horizontal text alignment. + + + + + Gets or sets the text vertical alignment. + + + + + Gets or sets the label font. + + + + + Gets or sets the left padding in pixels. + + + + + Gets or sets the right padding in pixels. + + + + + Gets or sets the top padding in pixels. + + + + + Gets or sets the bottom padding in pixels. + + + + + Gets or sets the width of the label in pixels. + + + + + Gets or sets the height of the label. + + + + + Gets or sets whether the label is drawn as a divider label. + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + + + + + Indicates whether label text is rendered using bold font unless the Font property is specifically set to different font. + + + + + Gets or sets the text associated with this item. + + + + + Specifies the label icon. Icons support alpha blending. + + + + + Specifies label image. + + + + + Specifies the index of the image for the label if ImageList is used. + + + + + Gets/Sets the image position inside the label. + + + + + Gets or sets text-orientation. Default is horizontal. + + + + + Gets or sets how vertical text is rotated when TextOrientation = Vertical. + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on label instead of the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the color of the symbol. + + + + + Gets or sets whether label hosted in multi-line ItemContainer triggers new line switch after label is processed. + + + + + Contains static keys that are used to discover localized text for internal controls. + + + + + Navigation Pane collapse button tooltip text. + + + + + Navigation Pane expand button tooltip text. + + + + + Bar auto-hide button tooltip text. + + + + + Bar customize button tooltip text. + + + + + Bar close button tooltip text. + + + + + Bar maximize button tooltip text. + + + + + CustomizeItem tooltip text. + + + + + CustomizeItem Add/Remove text. + + + + + CustomizeItem text for button that opens Customize dialog. + + + + + CustomizeItem text for Reset command. + + + + + Tooltip text for system button that displays overflow items. + + + + + Text for Customize Dialog caption. + + + + + Text for Customize Dialog toolbars tab. + + + + + Text for Customize Dialog commands tab. + + + + + Text for Customize Dialog options tab. + + + + + Text for Customize Dialog keyboard button. + + + + + Text for Customize Dialog close button. + + + + + Text for Customize Dialog new toolbar button. + + + + + Text for Customize Dialog rename toolbar button. + + + + + Text for Customize Dialog delete toolbar button. + + + + + Text for Customize Dialog reset toolbar button. + + + + + Text for Customize Dialog label that gives following instructions to user: + To add a command to Bar select the category and drag the command out of this box to a Bar. + + + + + Text for Customize Dialog categories label. + + + + + Text for Customize Dialog toolbars label. + + + + + Text for Customize Dialog options tab Personalized Menus and Toolbars label. + + + + + Text for Customize Dialog options tab Aways show full menus check box. + + + + + Text for Customize Dialog options tab Show full menus after a short delay check box. + + + + + Text for Customize Dialog options tab 'Reset my usage data' command. + + + + + Text for Customize Dialog options tab 'Other' labe. + + + + + + + Text for Customize Dialog options tab 'Menu Animation:' label. + + + + + Text for Customize Dialog options tab Menu Animation combo box None option. + + + + + Text for Customize Dialog options tab Menu Animation combo box System Default option. + + + + + Text for Customize Dialog options tab Menu Animation combo box Random option. + + + + + Text for Customize Dialog options tab Menu Animation combo box Unfold option. + + + + + Text for Customize Dialog options tab Menu Animation combo box Slide option. + + + + + Text for Customize Dialog Confirm delete of bar message box. + + + + + Text for Reset command on customize item context menu. + + + + + Text for Delete item command on customize item context menu. + + + + + Text for Change Name item command on customize item context menu. + + + + + Text for Default Style item command on customize item context menu. + + + + + Text for Text Only item command on customize item context menu. + + + + + Text for Image And Text item command on customize item context menu. + + + + + Text for Begin Group item command on customize item context menu. + + + + + Text MdiSystemItem Minimize button. + + + + + Text MdiSystemItem Restore button. + + + + + Text MdiSystemItem Close button. + + + + + Text MdiSystemItem menu Restore command. + + + + + Text MdiSystemItem menu Move command. + + + + + Text MdiSystemItem menu Size command. + + + + + Text MdiSystemItem menu Minimize command. + + + + + Text MdiSystemItem menu Maximize command. + + + + + Text MdiSystemItem menu Close command. + + + + + Text MdiSystemItem menu Next command. + + + + + Text Navigation Bar Show More Buttons menu item. + + + + + Text Navigation Bar Show Fewer Buttons menu item. + + + + + Text Navigation Bar Options menu item. + + + + + Text for Move Up button on Navigation Bar Options dialog box. + + + + + Text for Move Down button on Navigation Bar Options dialog box. + + + + + Text for Reset button on Navigation Bar Options dialog box. + + + + + Text for OK button on Navigation Bar Options dialog box. + + + + + Text for Cancel button on Navigation Bar Options dialog box. + + + + + Text for Navigation Bar Options dialog box title. + + + + + Text for Navigation Bar Options label which is displayed above the list box which lists all the controls. + + + + + Text for Rename Toolbar dialog caption. + + + + + Text for New Toolbar dialog caption. + + + + + Text for Bar Name label on Bar edit dialog (either rename or new). + + + + + Text for OK Button on Bar edit dialog (either rename or new). + + + + + Text for Cancel Button on Bar edit dialog (either rename or new). + + + + + Text for Invalid Name Message on Bar edit dialog (either rename or new). + + + + + Text displayed on Color Picker drop down Theme Colors label. + + + + + Text displayed on Color Picker drop down Standard Colors label. + + + + + Text displayed on Color Picker drop down more colors menu item. + + + + + Text for the OK Button on Color Picker dialog. + + + + + Text for the Cancel Button on Color Picker dialog. + + + + + Text for the new color label on Color Picker dialog. + + + + + Text for the current color label on Color Picker dialog. + + + + + Text for the colors label on the standard colors tab. + + + + + Text for the colors label on the custom colors tab. + + + + + Text for the green component label on the custom colors tab. + + + + + Text for the blue component label on the custom colors tab. + + + + + Text for the red component label on the custom colors tab. + + + + + Text for the Color Model label on the custom colors tab. + + + + + Text for the RGB combo box item choice on the custom colors tab. + + + + + Text for the Standard tab on color picker dialog. + + + + + Text for the Custom tab on color picker dialog. + + + + + Text for the Custom tab on color picker dialog. + + + + + Text for the Custom tab on color picker dialog. + + + + + Indicates the text for Today button displayed on the MonthCalendarItem control. + + + + + Indicates the text for Clear button displayed on the MonthCalendarItem control. + + + + + Indicates the text for MessageBoxEx Abort button. + + + + + Indicates the text for MessageBoxEx Cancel button. + + + + + Indicates the text for MessageBoxEx Close button. + + + + + Indicates the text for MessageBoxEx Continue button. + + + + + Indicates the text for MessageBoxEx Help button. + + + + + Indicates the text for MessageBoxEx Ignore button. + + + + + Indicates the text for MessageBoxEx No button. + + + + + Indicates the text for MessageBoxEx OK button. + + + + + Indicates the text for MessageBoxEx Retry button. + + + + + Indicates the text for MessageBoxEx Try Again button. + + + + + Indicates the text for MessageBoxEx Yes button. + + + + + Identifies Form system menu Restore item. + + + + + Identifies Form system menu Move item. + + + + + Identifies Form system menu Size item. + + + + + Identifies Form system menu Minimize item. + + + + + Identifies Form system menu Maximize item. + + + + + Identifies Form system menu Close item. + + + + + Identifies Time Selector OK button. + + + + + Identifies Time Selector Clear button. + + + + + Identifies Time Selector Hour Label. + + + + + Identifies Time Selector Minute Label. + + + + + Identifies 'Show all' Filter Expression label. + + + + + Identifies 'Show null' Filter Expression label. + + + + + Identifies 'Show not null' Filter Expression label. + + + + + Identifies 'Custom' Filter Expression label. + + + + + Identifies 'Enter expression' Filter text. + + + + + Identifies 'Apply' Filter Expression button label. + + + + + Identifies 'Apply' Filter Expression button label. + + + + + Identifies 'Apply' Filter Expression button label. + + + + + Identifies 'Ok' Filter Expression button label. + + + + + Identifies 'Cancel' Filter Expression button label. + + + + + Identifies 'Close' Filter Expression button label. + + + + + Identifies 'Clear' Filter Expression button label. + + + + + Identifies 'Clear' Filter Expression button label. + + + + + Identifies Filter DateTimePicked dialog 'Filter by relative date' text. + + + + + Identifies Filter DateTimePicker dialog 'Filter by specific date' text. + + + + + Identifies Filter DateTimePicker dialog 'Filter by date range' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Current Month' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Current Year' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last Month Period' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last 3 Month Period' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last 6 Month Period' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last 9 Month Period' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last Year' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last 5 Year Period' text. + + + + + Identifies Filter DateTimePicker dialog, ByRelativeDate combo entry 'Last 10 Year Period' text. + + + + + Identifies Filter expression evaluation error 'Expression error' text. + + + + + Identifies Filter expression evaluation error 'Missing parenthesis' text. + + + + + Identifies Filter expression evaluation error 'Missing quote' text. + + + + + Identifies Filter expression evaluation error 'Invalid number of arguments' text. + + + + + Identifies Filter expression evaluation error 'Invalid argument' text. + + + + + Identifies Filter expression evaluation error 'Invalid 'Empty' operation' text. + + + + + Identifies Filter expression evaluation error 'Invalid DateTime operation' text. + + + + + Identifies Filter expression evaluation error 'Invalid bool operation' text. + + + + + Identifies Filter expression evaluation error 'Invalid string operation' text. + + + + + Identifies Filter expression evaluation error 'Invalid numeric operation' text. + + + + + Identifies Filter expression evaluation error 'Invalid logical evaluation' text. + + + + + Identifies Filter expression evaluation error 'Undefined User function' text. + + + + + Identifies custom filter dialog title 'Custom Filter' text. + + + + + Identifies custom filter dialog 'New Filter' text. + + + + + Identifies custom filter dialog 'New' button text. + + + + + Identifies custom filter dialog 'Delete' button text. + + + + + Identifies custom filter dialog 'Filter Name' text. + + + + + Identifies custom filter dialog 'Description' text. + + + + + Identifies custom filter dialog 'Show in FilterPopup' text. + + + + + Identifies custom filter dialog title 'Custom Filter' text. + + + + + Identifies the default GroupBy WaterMarkText. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Represents an item that displays log information in list container. + + + + + Initializes a new instance of the LogItem class. + + + + + + Creates new instance of LogItem and assigns the name to it. + + Item name. + + + + Creates new instance of LogItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets the color of the control text body. + + + + + Gets or sets the color of the header text. + + + + + Gets or sets the image displayed on the log item. + + + + + Gets or sets the image position in relation to text. + + + + + Gets or sets the background color of the item. + + + + + Gets whether item supports text markup. Default is false. + + + + + Summary description for MdiWindowListItem. + + + + + Initializes the item and connects it to the MDI form so it can process the events. You should not call this method directly since this process is + automatically managed by the item. + + + + + Initializes the item and connects it to the MDI form so it can process the events. You should not call this method directly since this process is + automatically managed by the item. + + + + + Refresh the MDI Child form Icons that are displayed on window list items. + + + + + Gets or sets whether the MDI Child Window Icons are displayed on items. + + + + + Gets or sets maximum form caption length that will be displayed on each item. If caption length exceeds given value ... characters are added. + + + + + Gets whether item has been connected to the MDI form so it can process its events. + + + + + Gets or sets whether flicker associated with switching maximized Mdi child forms is attempted to eliminate. You should set this property to false if you encounter any painting problems with your Mdi child forms. + + + + + Gets or sets whether numbered access keys are created for MDI Child window menu items for first 9 items. Access keys will start with number 1 and go through 9. Default value is false + which indicates that access keys are not created. + + + + + Summary description for PopupWindow. + + + + + Return Sub Item at specified location + + + + + Gets or sets whether Key Tips (accelerator keys) for items are displayed on top of them. + + + + + Gets or sets the font that is used to display Key Tips (accelerator keys) when they are displayed. Default value is null which means + that control Font is used for Key Tips display. + + + + + Gets or sets the item default accessibility action will be performed on. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Sets,Gets the side bar image structure. + + + + + Gets or sets the HotSubItem on the menu. This method is used internally by DotNetBar and should not be used in your application. + + + + + Summary description for MessageHandler. + + + + + Summary description for NativeFunctions. + + + + + Represents Outlook 2003 like Navigation Bar. + + + + + Default constructor. + + + + + Applies design-time defaults to control. + + + + + Increases the size of the navigation bar if possible by showing more buttons on the top. + + + + + Reduces the size of the navigation bar if possible by showing fewer buttons on the top. + + + + + Saves current visual layout of navigation bar control to XML based file. + + File name to save layout to. + + + + Saves current visual layout of navigation bar control to XmlElement. + + XmlElement object that will act as a parent for the layout definition. Exact same element should be passed into the LoadLayout method to load the layout. + + + + Loads navigation bar layout that was saved using SaveLayout method. Note that this method must be called after all items are created and added to the control. + + File to load layout from. + + + + Loads navigation bar layout that was saved using SaveLayout method. Note that this method must be called after all items are created and added to the control. + + Parent XML element that is used to load layout from. Note that this must be the same element that was passed into the SaveLayout method. + + + + Occurs after Options dialog which is used to customize control's content has closed by user using OK button. + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether Configure Buttons button is visible. + + + + + Gets or sets whether Show More Buttons and Show Fewer Buttons menu items are visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Options menu item is visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Add/Remove Buttons menu item is visible on Configure buttons menu. + + + + + Gets or sets whether summary line is visible. + + + + + Gets or sets the padding in pixels at the top portion of the item. Height of each item will be increased by padding amount. + + + + + Gets or sets the padding in pixels for bottom portion of the item. Height of each item will be increased by padding amount. + + + + + Returns items container. + + + + + Returns reference to currently checked button. + + + + + Gets or sets whether images are automatically resized to size specified in ImageSizeSummaryLine when button is on the bottom summary line of navigation bar. + + + + + Gets or sets size of the image that will be use to resize images to when button button is on the bottom summary line of navigation bar and AutoSizeButtonImage=true. + + + + + Gets or sets the navigation bar definition string. + + + + + Gets/Sets the visual style for items and color scheme. + + + + + Indicates whether splitter on top of the navigation bar is visible. When activated splitter will let user change the height of the + control to show fewer or more buttons. It is recommended to have navigation bar docked to bottom (Dock=Bottom) to maintain + proper layout. + + + + + Container control for Navigation Bar. + + + + + Creates new instance of NavigationBarContainer. + + + + + Creates new instance of SideBarPanelItem and assigns the name to it. + + Item name. + + + + Creates new instance of SideBarPanelItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of SideBarPanelItem item. + + + + + Recalculates size of this container. + + + + + Increases the size of the navigation bar if possible by showing more buttons on the top. + + + + + Reduces the size of the navigation bar if possible by showing fewer buttons on the top. + + + + + Must be called by any sub item that implements the image when image has changed + + + + + Occurs after an item has been added to the container. This procedure is called on both item being added and the parent of the item. To distinguish between those two states check the item parameter. + + When occurring on the parent this will hold the reference to the item that has been added. When occurring on the item being added this will be null (Nothing). + + + + Occurs after an item has been removed. + + Item being removed. + + + + Returns index of the first item that is displayed in summary line or -1 if there is no item displayed in summary line. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether Configure Buttons button is visible. + + + + + Gets or sets whether Show More Buttons and Show Fewer Buttons menu items are visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Options menu item is visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Add/Remove Buttons menu item is visible on Configure buttons menu. + + + + + Gets or sets the padding in pixels at the top portion of the item. Height of each item will be increased by padding amount. + + + + + Gets or sets the padding in pixels for bottom portion of the item. Height of each item will be increased by padding amount. + + + + + Gets or sets whether images are automatically resized to size specified in ImageSizeSummaryLine when button is on the bottom summary line of navigation bar. + + + + + Gets or sets size of the image that will be use to resize images to when button button is on the bottom summary line of navigation bar and AutoSizeButtonImage=true. + + + + + Gets or sets whether summary line is visible. + + + + + Delegate for OptionGroupChanging event. + + + + + Delegate for PanelPopup events. + + + + + Represents Outlook 2003 style navigation pane control. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Applies any layout changes and repaint the control. + + + + + Returns Panel associated with button on navigation bar or null if panel cannot be found. + + Button on navigation bar. + + + + + Suspends normal layout logic. + + + + + Resumes normal layout logic. Optionally forces an immediate layout of pending layout requests. + + + + + Increases the size of the navigation bar if possible by showing more buttons on the top. + + + + + Reduces the size of the navigation bar if possible by showing fewer buttons on the top. + + + + + Saves current visual layout of navigation bar control to XML based file. + + File name to save layout to. + + + + Saves current visual layout of navigation bar control to XmlElement. + + XmlElement object that will act as a parent for the layout definition. Exact same element should be passed into the LoadLayout method to load the layout. + + + + Popup selected pane when control is collapsed. When control is collapsed (Expanded=false) currently selected pane is not visible + calling this method will popup selected pane and allow user access to it. Use PopupPaneVisible property + to check whether currently selected pane is displayed as popup. + + + + + Hides popup selected pane when control is collapsed and selected pane is displayed as popup. When control is collapsed (Expanded=false) + currently selected pane can be displayed as popup. Calling this method will hide the popup pane. Use PopupPaneVisible property + to check whether currently selected pane is displayed as popup. + + + + + Raises the PanelPopupClosed event. + + Provides event arguments. + + + + Loads navigation bar layout that was saved using SaveLayout method. Note that this method must be called after all items are created and added to the control. + + File to load layout from. + + + + Loads navigation bar layout that was saved using SaveLayout method. Note that this method must be called after all items are created and added to the control. + + Parent XML element that is used to load layout from. Note that this must be the same element that was passed into the SaveLayout method. + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Updates the color scheme on child panels to reflect the style of the NavigationBar control. Calling this method is necessary only if you manually + change the NavigationBar.ColorScheme property. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Occurs when Item is clicked. + + + + + Occurs when currently selected panel is about to change. + + + + + Occurs when control is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs before panel is displayed on popup when control is collapsed. You can use this event to modify default + size of the popup panel or cancel the popup of the panel. + + + + + Occurs after panel is displayed on popup. + + + + + Occurs after panel displayed on popup is closed. + + + + + Occurs before Expanded property is changed. You can cancel change of this property by setting Cancel=true on the event arguments. + + + + + Occurs after Expanded property has changed. You can handle ExpandedChanging event and have opportunity to cancel the change. + + + + + Occurs after Options dialog which is used to customize control's content has closed by user using OK button. + + + + + Returns the width of the expanded control if control is currently collapsed. + + + + + Returns collection containing buttons on navigation bar. + + + + + Gets or sets the height of the navigation bar part of the navigation pane control. + Navigation Bar height is automatically calculated based on the content. + Setting this property suggests desired height of the navigation bar but the actual height will be + calculated to ensure that complete buttons are visible so suggested and actual height might differ. + + + + + Returns reference to internal NavigationBar control. + + + + + Gets or sets size of the image that will be use to resize images to when button button is on the bottom summary line of navigation bar and AutoSizeButtonImage=true. + + + + + Gets or sets whether Configure Buttons button is visible. + + + + + Gets or sets whether Show More Buttons and Show Fewer Buttons menu items are visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Options menu item is visible on Configure buttons menu. + + + + + Gets or sets whether Navigation Pane Add/Remove Buttons menu item is visible on Configure buttons menu. + + + + + Returns reference to currently checked button. + + + + + Returns reference to currently selected panel. Panels are automatically switched when buttons are checked. + + + + + ImageList for images used on Items. + + + + + Returns reference to the PanelEx that is used to display title. + + + + + Gets or sets the padding in pixels at the top portion of the item. Height of each item will be increased by padding amount. + + + + + Gets or sets the padding in pixels for bottom portion of the item. Height of each item will be increased by padding amount. + + + + + Gets or sets whether images are automatically resized to size specified in ImageSizeSummaryLine when button is on the bottom summary line of navigation bar. + + + + + Gets or sets the navigation bar definition string. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Gets or sets animation time in milliseconds when control is expanded or collapsed. Default value is 100 miliseconds. You can set this to 0 (zero) to disable animation. + + + + + Gets or sets whether navigation pane can be collapsed. Default value is false. When set to true + expand/collapse button will be displayed in title so control can be reduced in size. + + + + + Gets or sets alignment of the expand button inside of title bar. + + + + + Gets or sets whether navigation pane is expanded. Default value is true. + When control is collapsed it is reduced in size so it consumes less space. + + + + + Gets the reference to the inner panel displaying Navigation Pane vertical text created when control is collapsed. + + + + + Gets or sets whether selected pane is displayed as popup when control is collapsed (Expanded=false). Using + navigation pane button that is displayed when control is collapsed user can popup or close currently selected pane without + expanding the control. You can use this property to do same from code as well as check whether selected pane is displayed as + popup. Note that control must be collapsed (Expanded=false) in order for this property to have any effect. + + + + + Gets/Sets the visual style for the control. Default style is Office 2003. + + + + + Represents event arguments for PanelChanging event. + + + + + Set to true to cancel changing of the panel. + + + + + Panel that will be selected if operation is not cancelled. + + + + + Panel that is currently selected and which will be de-selected if operation is not cancelled. + + + + + Default constructor. + + + + + Represents event arguments for BeforePanelPopup event. + + + + + Set to true to cancel popup of the panel. + + + + + Size and position of popup. You can modify this memeber to affect size and position of popup. + + + + + Default constructor. + + + + + Represents Panel on Navigation Pane control. + + + + + Gets or sets button associated with the pane on the panel when hosted on NavigationPane control. + + + + + Summary description for NavPaneOptions. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Updates position of the title bar button to reflect any changes to the button that influence size of the button. + + + + + Occurs when Expanded/Collapse button is clicked. + + + + + Gets or sets whether expand button is visible or not. Default value is true. + + + + + Gets or sets alignment of the button. + + + + + Gets or sets whether text markup if it occupies less space than control provides uses the Style Alignment and LineAlignment properties to align the markup inside of the control. Default value is true. + + + + + Use as a popup container for DotNetBar objects. + + + + + Summary description for PopupContainer. + + + + + Summary description for PopupShadow. + + + + + Represents a progress bar item. + + + + + Creates new instance of ProgressBarItem. + + + + + Creates new instance of ProgressBarItem and assigns the name to it. + + Item name. + + + + Creates new instance of ProgressBarItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the ProgressBarItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Copies the ProgressBarItem specific properties to new instance of the item. + + New ProgressBarItem instance. + + + + Overriden. Draws the item. + + Target Graphics object. + + + + Overriden. Recalculates the size of the item. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Advances the current position of the progress bar by the amount of the Step property. + + + + + Advances the current position of the progress bar by the specified amount. + + The amount by which to increment the progress bar's current position. + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Gets whether ChunkColor property should be serialized. + + + + + Resets the ChunkColor property to its default value. + + + + + Overloaded. Deserializes the Item from the XmlElement. + + Source XmlElement. + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Gets or sets the item background style. + + + + + Specifies the background style of the item. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the current position of the progress bar. + + + + + Gets or sets the amount by which a call to the PerformStep method increases the current position of the progress bar. + + + + + Gets or sets whether the text inside the progress bar is displayed. + + + + + Gets or sets the width of the item in pixels. 0 value indicates the auto-sizing item based on the text contained in it. + + + + + Gets or sets the height of the label. 0 value indicates the auto-sizing item based on the text height. + + + + + Gets or sets the color of the progress chunk. + + + + + Gets or sets the target gradient color of the progress chunk. + + + + + Gets or sets the gradient angle of the progress chunk. + + + + + Indicates item's visiblity when on pop-up menu. + + + + + Indicates whether item was recently used. + + + + + Gets or sets the type of progress bar used to indicate progress. The Standard style displays the progress based on Minimum, Maximum and current Value. + The Marquee type is automatically moving progress bar that is used to indicate an ongoing operation for which the actual duration cannot be estimated. + + + + + Gets or sets the marquee animation speed in milliseconds. + + + + + Gets or sets the predefined color state table for progress bar. Color specified applies to items with Office 2007 style only. It does not have + any effect on other styles. You can use ColorTable to indicate the state of the operation that Progress Bar is tracking. Default value is eProgressBarItemColor.Normal. + + + + + Summary description for RemindForm. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represents color table for Bar objects in various states. + + + + + Gets or sets the colors for top part of toolbar background. + + + + + Gets or sets the colors for bottom part of toolbar background. + + + + + Gets or sets the color of the bottom border. + + + + + Gets or sets the popup toolbar background color. + + + + + Gets or sets the color of popup toolbar border. + + + + + Gets or sets the status bar top border color. + + + + + Gets or sets the status bar top border light color. + + + + + Gets or sets the alternative background colors for the status bar. + + + + + Represents color table for ButtonItem object. + + + + + Gets or sets the name of the color table. + + + + + Gets or sets the color table applied for button in default state. + + + + + Gets or sets the color table applied when mouse is over the button. + + + + + Gets or sets the color table applied when mouse is over the buttons inactive split part. Applies to split button appearance only. + + + + + Gets or sets the color table applied when mouse is pressed over the button. + + + + + Gets or sets the color table applied when mouse is pressed over the button. + + + + + Gets or sets the color table applied when button is expanded. + + + + + Gets or sets the color table applied when cursor is over button on a menu. + + + + + Represents typed collection of Office2007ButtonItemColorTable type. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Returns whether collection contains object with specified name. + + Name of the object to look for + true if object with given name is part of the collection otherwise false + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Office2007ButtonItemColorTable array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's index. + + + + + Represents a color table for ButtonItem in certain state like but not limited to mouse over, checked or pressed. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the outer border width. Default is 1. + + + + + Gets or sets the inner border colors. + + + + + Gets or sets top part background colors. + + + + + Gets or sets highlight colors for the top background part. + + + + + Gets or sets bottom part background colors. + + + + + Gets or sets highlight colors for the bottom background part. + + + + + Gets or sets the split border colors that divides button text and image from expand part of the button. + + + + + Gets or sets the split border light colors that divides button text and image from expand part of the button. + + + + + Gets or sets the text color. + + + + + Gets or sets the background color of the expand sign. + + + + + Gets or sets the outline light color of the expand sign. + + + + + Gets or sets the single gradient background for the button. When specified it is used instead of TopBackground and BottomBackground for rendering. + + + + + Represent the color table for the CheckBoxItem. + + + + + Gets or sets the colors for the item in default state. + + + + + Gets or sets the colors for the item when mouse is over the item. + + + + + Gets or sets the colors for the item when mouse is pressed over the item. + + + + + Gets or sets the colors for the item when item is disabled. + + + + + Defines the colors for the single CheckBoxItem state. + + + + + Gets or sets the background colors of the check box. + + + + + Gets or sets the color of the check border. + + + + + Gets or sets the inner color of check box border. + + + + + Gets or sets the inner background color of check box. + + + + + Gets or sets the color of the check sign that is drawn when item is checked. + + + + + Gets or sets the text color. + + + + + Defines color table for ColorItem. + + + + + Gets or sets the border that is drawn around each individual color item or color item group. + + + + + Gets or sets the inner mouse over color. + + + + + Gets or sets the outer mouse over color. + + + + + Represents the painter for ColorItem in Office 2007 style + + + + + Gets or sets color table used by renderer. + + + + + Defines the color scheme type for the Office2007ColorTable. + + + + + Blue color scheme. + + + + + Black color scheme. + + + + + Silver color scheme. + + + + + Windows Vista Glass inspired color scheme. + + + + + Defines the delegate which retrieves the color for specific integer value. + + color represented as integer. + Reference to Color object. + + + + Defines contextual label colors. + + + + + Initializes a new instance of the LabelColors structure. + + + + + + + Initializes ColorScheme object with the black color scheme. + + ColorScheme object to initialize. + + + + Defines the color table for the combo box. + + + + + Gets or sets the color for combo box in default state. + + + + + Gets or sets the color for standalone combo box in default state. Standalone combo box is a control not used by ComboBoxItem. + + + + + Gets or sets the colors when mouse is over the control. + + + + + Gets or sets the colors when control is dropped down. + + + + + Defines the combo box colors for a particular state. + + + + + Gets or sets the border color. + + + + + Gets or sets the background color. + + + + + Gets or sets the outer expand button border. + + + + + Gets or sets the inner expand button border. + + + + + Gets or sets the background color of the expand button. + + + + + Gets or sets the foreground color of the expand button. + + + + + Defines color table for the Office 2007 style DataGridView control. + + + + + Gets or sets grid background color. + + + + + Gets or sets default cell color. + + + + + Gets or sets default cell text color. + + + + + Gets or sets the background color for the column headers in normal state. + + + + + Gets or sets the normal column text color. + + + + + Gets or sets the column header border color. + + + + + Gets or sets the background color for the column headers in mouse over state. + + + + + Gets or sets the column header border color when mouse is over the column. + + + + + Gets or sets the selected column header text color. + + + + + Gets or sets the background color for the column headers in selected state. + + + + + Gets or sets the border color for the column headers in selected state. + + + + + Gets or sets the background color for the column headers in selected mouse over state. + + + + + Gets or sets the border color for the column headers in selected mouse over state. + + + + + Gets or sets the background color for the column headers in pressed state. + + + + + Gets or sets the border color for the column headers in pressed state. + + + + + Gets or sets the column header foreground color. + + + + + Gets or sets the background color for row marker background. + + + + + Gets or sets the border color for row marker. + + + + + Gets or sets the background color for row marker background. + + + + + Gets or sets the border color for row marker. + + + + + Gets or sets the background color for row marker background. + + + + + Gets or sets the border color for row marker. + + + + + Gets or sets the background color for row marker background. + + + + + Gets or sets the border color for row marker. + + + + + Gets or sets the background color for row marker background. + + + + + Gets or sets the border color for row marker. + + + + + Gets or sets the color of the grid lines. + + + + + Gets or sets the background color of selector cell usually located in top-left corner. + + + + + Gets or sets the border color of selector cell usually located in top-left corner. + + + + + Gets or sets the light border color of selector cell usually located in top-left corner. + + + + + Gets or sets the dark border color of selector cell usually located in top-left corner. + + + + + Gets or sets the sign color of selector cell usually located in top-left corner. + + + + + Gets or sets the background color of selector cell usually located in top-left corner. + + + + + Gets or sets the border color of selector cell usually located in top-left corner. + + + + + Gets or sets the light border color of selector cell usually located in top-left corner. + + + + + Gets or sets the dark border color of selector cell usually located in top-left corner. + + + + + Gets or sets the sign color of selector cell usually located in top-left corner. + + + + + Defines color table for the Dialog Launcher button. + + + + + Gets or sets the colors for the default state. + + + + + Gets or sets the colors for the mouse over state. + + + + + Gets or sets the colors for the pressed state. + + + + + Defines the color table for dialog launcher state. + + + + + Gets or sets the color of dialog launcher symbol. + + + + + Gets or sets the shade color of dialog launcher symbol. + + + + + Gets or sets the background color for the top part of the element. + + + + + Gets or sets the background color for the bottom part of the element. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the inner border colors. + + + + + Defines the color table for all states of Office 2007 style form caption. + + + + + Gets or sets the color table for caption in active state. + + + + + Gets or sets the color table for caption in inactive state. + + + + + Gets or sets the background color of the form. + + + + + Gets or sets the text color of the form. + + + + + Gets or sets the MDI Client Background image. + + + + + Defines color table for the Office 2007 style Form caption color state. + + + + + Gets or sets the colors for the top part of the background. + + + + + Gets or sets the colors for the bottom part of the background. + + + + + Gets or sets the array of colors used to draw the border that separates the form caption and the form content. Applies only to the Office2007Form rendering. + + + + + Gets or sets the color of caption text. + + + + + Gets or sets the color of caption extra text that is appended to the caption. + + + + + Gets or sets the array of colors that represents the border colors. Outer border is at index 0. + + + + + Represents the color table used by the Gallery container. + + + + + Gets or sets the background color of the Gallery Group label when gallery is displayed on popup. + + + + + Gets or sets the text color of the Gallery Group label when gallery is displayed on popup. + + + + + Gets or sets the border color of the Gallery Group label when gallery is displayed on popup. + + + + + Represents color table for ItemContainer object with BeginGroup set to true. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the inner border colors. + + + + + Gets or sets the top background colors. + + + + + Gets or sets the bottom background colors. + + + + + Gets or sets the dark color of item devider for items inside of the ItemContainer. + + + + + Gets or sets the light color of item devider for items inside of the ItemContainer. + + + + + Represents the color table for key tips. + + + + + Gets or sets KeyTip Text color. + + + + + Gets or sets KeyTip border color. + + + + + Gets or sets KeyTip Background color. + + + + + Represents color table for ListViewEx control. + + + + + Gets or sets the background color of the columns. + + + + + Gets or sets the color of the column separator. + + + + + Gets or sets the color of the column text. + + + + + Gets or sets the color of the control border. + + + + + Gets or sets the background colors for the selected item. + + + + + Gets or sets the color of the selected item border that is draw on top and bottom of the selection. + + + + + Gets or sets the text color for selected item. + + + + + Defines the color table for the menus. + + + + + Gets or sets the menu background colors. + + + + + Gets or sets the menu side background colors. + + + + + Gets or sets the menu side background colors for the items that were not recently used. + + + + + Gets or sets the menu border background colors. + + + + + Gets or sets the menu side border. + + + + + Gets or sets the light menu side border. + + + + + Gets or sets the background color blend for the special file menu background. + + + + + Gets or sets the two column container border color. + + + + + Gets or sets the two column container light border color. + + + + + Gets or sets the background color of first file column. + + + + + Gets or sets the border color of first file column. + + + + + Gets or sets the background color of first file column. + + + + + Gets or sets the background color blend for the bottom container on file menu. + + + + + Defines the color table for the NavigationPane control. + + + + + Gets or sets the background color collection blend for the button background. + + + + + Gets or sets color table used by renderer. + + + + + Defines color table for the Office 2007 style ProgressBarItem. + + + + + Gets or sets the background color collection blend for the item background. + + + + + Gets or sets the outer border color. + + + + + Gets or sets the inner border color. + + + + + Gets or sets the color collection blend for the current progress part of the item. + + + + + Gets or sets the color collection blend for overlay for the current progress of the item. + + + + + Gets or sets the color collection blend of shadow for the current progress of the item. + + + + + Defines abstract class for the ProgressBarItem painter. + + + + + Gets or sets color table used by renderer. + + + + + Defines painter for the Office 2007 style QAT Customize Item. + + + + + Defines base class for QAT customize item painter. + + + + + Gets or sets color table used by renderer. + + + + + Defines Office 2007 style QAT painter. + + + + + Defines base class for QAT overflow item painter. + + + + + Gets or sets color table used by renderer. + + + + + Defines the color table for the quick access toolbar in all states. + + + + + Gets or sets the colors for the quick access toolbar background when hosted in ribbon control caption and form is active + or the background colors when toolbar is hosted below the ribbon control. + + + + + Gets or sets the colors for the quick access toolbar background when hosted in ribbon control caption and form is inactive + + + + + Gets or sets the colors for the quick access toolbar background when positioned below the ribbon bar. + + + + + Gets or sets the background color of Customize Quick Access Toolbar menu label displayed on customize quick access toolbar menu. + + + + + Gets or sets the text color of Customize Quick Access Toolbar menu label displayed on customize quick access toolbar menu. + + + + + Defines the color table for the Quick Access toolbar. + + + + + Gets or sets the colors of the top background. + + + + + Gets or sets the colors of the bottom background. + + + + + Gets or sets the outer border color. + + + + + Gets or sets the middle border color. + + + + + Gets or sets the inner border color. + + + + + Gets or sets the border when Windows Vista Glass is enabled. + + + + + Represents Office 2007 Control renderer. + + + + + Represents bases class that defines a renderer. + + + + + Raises RenderKeyTips event. + + Provides context information. + + + + Draws KeyTip for an object. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderKeyTips method so events can occur. + + Provides context information. + + + + Raises RenderRibbonTabGroup event. + + Provides context information. + + + + Draws ribbon tab group. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonTabGroup method so events can occur. + + Provides context information. + + + + Raises RenderItemContainer event. + + Provides context information. + + + + Draws the separator for an item inside of item container. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderItemContainerSeparator method so events can occur. + + Provides context information. + + + + Raises RenderItemContainer event. + + Provides context information. + + + + Draws item container. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderItemContainer method so events can occur. + + Provides context information. + + + + Raises RenderButtonItem event. + + Provides context information. + + + + Draws ButtonItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderButtonItem method so events can occur. + + Provides context information. + + + + Raises RenderRibbonTabItem event. + + Provides context information. + + + + Draws RibbonTabItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonTabItem method so events can occur. + + Provides context information. + + + + Raises RenderToolbarBackground event. + + Provides context information. + + + + Draws docked or floating toolbar background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderToolbarBackground method so events can occur. + + Provides context information. + + + + Raises RenderPopupToolbarBackground event. + + Provides context information. + + + + Draws popup toolbar background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderPopupToolbarBackground method so events can occur. + + Provides context information. + + + + Raises RenderRibbonDialogLauncher event. + + Provides context information. + + + + Draws ribbon bar dialog launcher button. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonDialogLauncher method so events can occur. + + Provides context information. + + + + Raises RenderColorItem event event. + + Provides context information. + + + + Draws ColorItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderColorItem method so events can occur. + + Provides context information. + + + + Raises RenderRibbonControlBackground event event. + + Provides context information. + + + + Draws the background of the Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonControlBackground method so events can occur. + + Provides context information. + + + + Raises RenderSystemCaptionItem event event. + + Provides context information. + + + + Draws the SystemCaptionItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSystemCaptionItem method so events can occur. + + Provides context information. + + + + Raises RenderRibbonFormCaptionText event event. + + Provides context information. + + + + Draws the form caption text for the Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonFormCaptionText method so events can occur. + + Provides context information. + + + + Raises RenderQuickAccessToolbarBackground event event. + + Provides context information. + + + + Draws the background of Quick Access Toolbar on Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQuickAccessToolbarBackground method so events can occur. + + Provides context information. + + + + Raises RenderMdiSystemItem event. + + Provides context information. + + + + Draws the MdiSystemItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderMdiSystemItem method so events can occur. + + Provides context information. + + + + Raises RenderFormCaptionBackground event. + + Provides context information. + + + + Draws the form caption background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderFormCaptionBackground method so events can occur. + + Provides context information. + + + + Raises RenderQatOverflowItem event. + + Provides context information. + + + + Draws the Quick Access Toolbar Overflow item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQatOverflowItem method so events can occur. + + Provides context information. + + + + Raises RenderQatCustomizeItem event. + + Provides context information. + + + + Draws the Quick Access Toolbar Customize Item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQatCustomizeItem method so events can occur. + + Provides context information. + + + + Raises RenderCheckBoxItem event. + + Provides context information. + + + + Draws the CheckBoxItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCheckBoxItem method so events can occur. + + Provides context information. + + + + Raises RenderCheckBoxItem event. + + Provides context information. + + + + Draws the ProgressBarItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderProgressBarItem method so events can occur. + + Provides context information. + + + + Raises RenderNavPaneButtonBackground event. + + Provides context information. + + + + Draws the Navigation Pane button background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNavPaneButtonBackground method so events can occur. + + Provides context information. + + + + Raises RenderSliderItem event. + + Provides context information. + + + + Draws the Slider item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSliderItem method so events can occur. + + Provides context information. + + + + Raises RenderSideBar event. + + Provides context information. + + + + Draws the SideBar control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSideBar method so events can occur. + + Provides context information. + + + + Raises RenderSideBarPanelItem event. + + Provides context information. + + + + Draws the SideBar control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSideBarPanelItem method so events can occur. + + Provides context information. + + + + Raises RenderCrumbBarItemView event. + + Provides context information. + + + + Draws CrumbBarItemView. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCrumbBarItemView method so events can occur. + + Provides context information. + + + + Raises RenderCrumbBarOverflowItem event. + + Provides context information. + + + + Draws CrumbBarOverflowButton. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCrumbBarOverflowItem method so events can occur. + + Provides context information. + + + + Raises RenderSwitchButton event. + + Provides context information. + + + + Draws the Switch Button. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSwitchButton method so events can occur. + + Provides context information. + + + + Raises RenderRangeSliderItem event. + + Provides context information. + + + + Draws the Range Slider item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRangeSliderItem method so events can occur. + + Provides context information. + + + + Raises RenderStepItem event. + + Provides context information. + + + + Draws the Step item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderStepItem method so events can occur. + + Provides context information. + + + + Raises RenderListBoxItem event. + + Provides context information. + + + + Draws the ListBoxItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderListBoxItem method so events can occur. + + Provides context information. + + + + Raises RenderListBoxItem event. + + Provides context information. + + + + Draws the ListBoxItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderListBoxItem method so events can occur. + + Provides context information. + + + + Occurs when KeyTip is rendered. + + + + + Occurs when ribbon tab group is rendered. + + + + + Occurs when ItemContainer is rendered. + + + + + Occurs when separator is drawn for an item inside of ItemContainer. + + + + + Occurs when ButtonItem is rendered. + + + + + Occurs when RibbonTabItem is rendered. + + + + + Occurs when docked or floating toolbar is rendered. + + + + + Occurs when popup toolbar is rendered. + + + + + Occurs when dialog launcher button on ribbon bar is rendered. + + + + + Occurs when Ribbon Control background is rendered. + + + + + Occurs when form caption text on ribbon control is rendered. + + + + + Occurs when Quick Access Toolbar background is rendered. + + + + + Occurs when ColorItem is rendered. + + + + + Occurs when SystemCaptionItem is rendered. + + + + + Occurs when MdiSystemItem is rendered. + + + + + Occurs when form caption is background is being rendered. + + + + + Occurs when quick access toolbar overflow item is being rendered. + + + + + Occurs when quick access toolbar customize item is being rendered. + + + + + Occurs when CheckBoxItem is being rendered. + + + + + Occurs when ProgressBarItem is being rendered. + + + + + Occurs when Navigation pane button background is being rendered. + + + + + Occurs when Slider item is being rendered. + + + + + Occurs when Range Slider item is being rendered. + + + + + Occurs when SideBar control is being rendered. + + + + + Occurs when SideBarPanelItem control is being rendered. + + + + + Occurs when CrumbBarItemView is rendered. + + + + + Occurs when CrumbBarOverflowButton is rendered. + + + + + Occurs when Slider item is being rendered. + + + + + Occurs when StepItem is being rendered. + + + + + Occurs when ListBoxItem is being rendered. + + + + + Occurs when SideNavItem is being rendered. + + + + + Draws KeyTip for an object. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderKeyTips method so events can occur. + + Provides context information. + + + + Draws ribbon tab group. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonTabGroup method so events can occur. + + Provides context information. + + + + Draws item container. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderItemContainer method so events can occur. + + Provides context information. + + + + Draws the separator for an item inside of item container. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderItemContainerSeparator method so events can occur. + + Provides context information. + + + + Draws ButtonItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderButtonItem method so events can occur. + + Provides context information. + + + + Draws RibbonTabItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonTabItem method so events can occur. + + Provides context information. + + + + Draws popup toolbar background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderPopupToolbarBackground method so events can occur. + + Provides context information. + + + + Draws docked or floating toolbar background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderToolbarBackground method so events can occur. + + Provides context information. + + + + Draws floating toolbar background. + + Provides context information. + + + + Draws ribbon bar dialog launcher button. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderPopupToolbarBackground method so events can occur. + + Provides context information. + + + + Draws ColorItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderColorItem method so events can occur. + + Provides context information. + + + + Draws the background of the Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonControlBackground method so events can occur. + + Provides context information. + + + + Draws the form caption text for the Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderRibbonFormCaptionText method so events can occur. + + Provides context information. + + + + Draws the background of Quick Access Toolbar on Ribbon Control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQuickAccessToolbarBackground method so events can occur. + + Provides context information. + + + + Draws the SystemCaptionItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSystemCaptionItem method so events can occur. + + Provides context information. + + + + Draws the MdiSystemItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderMdiSystemItem method so events can occur. + + Provides context information. + + + + Draws the form caption background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderFormCaptionBackground method so events can occur. + + Provides context information. + + + + Draws the Quick Access Toolbar Overflow item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQatOverflowItem method so events can occur. + + Provides context information. + + + + Draws the Quick Access Toolbar Overflow item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderQatOverflowItem method so events can occur. + + Provides context information. + + + + Draws the ProgressBarItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderProgressBarItem method so events can occur. + + Provides context information. + + + + Draws the Navigation Pane button background. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderNavPaneButtonBackground method so events can occur. + + Provides context information. + + + + Draws the Slider item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSliderItem method so events can occur. + + Provides context information. + + + + Draws the SideBar control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSideBar method so events can occur. + + Provides context information. + + + + Draws the SideBar control. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSideBarPanelItem method so events can occur. + + Provides context information. + + + + Draws CrumbBarItemView. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderButtonItem method so events can occur. + + Provides context information. + + + + Draws CrumbBarOverflowButton. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderCrumbBarOverflowItem method so events can occur. + + Provides context information. + + + + Draws SwitchButton. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderButtonItem method so events can occur. + + Provides context information. + + + + Draws the Slider item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderSliderItem method so events can occur. + + Provides context information. + + + + Draws the Step item. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderStepItem method so events can occur. + + Provides context information. + + + + Draws the ListBoxItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderListBoxItem method so events can occur. + + Provides context information. + + + + Draws the ListBoxItem. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you + do not want default rendering to occur do not call the base implementation. You can call OnRenderListBoxItem method so events can occur. + + Provides context information. + + + + Occurs when color table is changed by setting the ColorTable property on the renderer. + + + + + Gets or sets color table used by renderer. + + + + + Defines color table for RibbonBar in various states. + + + + + Gets or sets the colors for the default RibbonBar state. + + + + + Gets or sets the colors for RibbonBar when mouse is over the control. + + + + + Gets or sets the colors for RibbonBar when ribbon bar is in overflow state and expanded to show all the items. + + + + + Represents the color table of RibbonBar for Office 2007 style. Default values represent blue Luna theme. + + + + + Gets or sets the height in pixels of top background part. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the inner border colors. + + + + + Gets or sets the top background colors. + + + + + Gets or sets the bottom background colors. + + + + + Gets or sets the title background colors. + + + + + Gets or sets the color of title text. + + + + + Defines color table for Ribbon Control. + + + + + Gets or sets the colors for the outer border. + + + + + Gets or sets the colors for the inner border. + + + + + Gets or sets the colors for the tabs background area. + + + + + Gets or sets the colors for the tabs background area when Windows Glass is enabled. + + + + + Gets or sets the color of border which is drawn above the tab. + + + + + Gets or sets the light color of border which is drawn above the tab. + + + + + Gets or sets the round corner size for the ribbon control parts. + + + + + Gets or sets the height in pixels of top background part. + + + + + Gets or sets the top background colors. + + + + + Gets or sets the bottom background colors. + + + + + Gets or sets the background image used on Office 2007 style start button displayed in top-left corner of ribbon control. + Note that image assigned to all StartButton properties must be the same size. The size for the button will be determined by image + size set on this property. + + + + + Gets or sets the background image used on Office 2007 style start button displayed in top-left corner of ribbon control when mouse is over the button. + + + + + Gets or sets the background image used on Office 2007 style start button displayed in top-left corner of ribbon control when button is pressed. + + + + + Represents painter for Office 2007 style ribbon overflow button. + + + + + Defines the color table for the Ribbon Tab Group. + + + + + Gets or sets the name of the color table. + + + + + Gets or sets the background color. + + + + + Gets or sets the background highlight colors. + + + + + Gets or sets the text color. + + + + + Gets or sets the border color + + + + + Collection for Office2007RibbonTabGroupColorTable type. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Returns whether collection contains object with specified name. + + Name of the object to look for + true if object with given name is part of the collection otherwise false + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Office2007RibbonTabItemColorTable array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's index. + + + + + Defines the color table for RibbonTabItem states. + + + + + Gets or sets the name of the color table. + + + + + Gets or sets the default tab colors. + + + + + Gets or sets the selected tab colors. + + + + + Gets or sets the selected tab colors when mouse is over the tab. + + + + + Gets or sets the colors when mouse is over the tab but tab is not selected. + + + + + Gets or sets the round corner size for the top part of the ribbon tab item. + + + + + Defines collection for Office2007RibbonTabItemColorTable items. + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Returns whether collection contains object with specified name. + + Name of the object to look for + true if object with given name is part of the collection otherwise false + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the Office2007ButtonItemColorTable array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's index. + + + + + Defines the colors for the RibbonTabItem state like but not limited to selected, mouse over etc. + + + + + Gets or sets the colors for the outer border. + + + + + Gets or sets the colors for the inner border. + + + + + Gets or sets the background colors. + + + + + Gets or sets the background highlight colors. + + + + + Gets or sets the text color. + + + + + Gets or sets the text color when rendered on Windows Glass. + + + + + Defines the colors for the scroll bar control. + + + + + Gets or sets the colors for the control default state. + + + + + Gets or sets the colors for the control when mouse is pressed over the control. + + + + + Gets or sets the colors for the control when mouse is over the control but not over an active part of the control like scroll buttons. + + + + + Gets or sets the colors for the control when mouse is over the active part of the control like scroll buttons. + + + + + Gets or sets the colors for the control when control is disabled. + + + + + Represents the color table for the Scroll bar in single state. + + + + + Gets or sets the outer border color for the scroll bar thumb. + + + + + Gets or sets the inner border color for the scroll bar thumb. + + + + + Gets or sets the thumb background color blend collection. + + + + + Gets or sets the directional sign background color for the scroll bar thumb. + + + + + Gets or sets the outer border color for the scroll bar track button. + + + + + Gets or sets the inner border color for the scroll bar track button. + + + + + Gets or sets the track background color blend collection. + + + + + Gets or sets the background color for the track signs. + + + + + Gets or sets the background colors for the entire control. + + + + + Gets or sets the border colors for the entire control. + + + + + Represents the color table for Office 2007 Style Side Bar Control. + + + + + Gets or sets the background color of the control. + + + + + Gets or sets the control border color. + + + + + Gets or sets the color of SideBarPanelItem text. + + + + + Gets or sets the color table for SideBarPanelItem in default state. + + + + + Gets or sets the color table for SideBarPanelItem in mouse over state. + + + + + Gets or sets the color table for SideBarPanelItem in expanded state. + + + + + Gets or sets the color table for SideBarPanelItem when mouse button is pressed on the item. + + + + + Gets or sets color table used by renderer. + + + + + Populates Office 2007 Color Table with Silver color scheme + + + + + Initializes ColorScheme object with the black color scheme. + + ColorScheme object to initialize. + + + + Defines the color table for the slider item. + + + + + Gets or sets the default state colors. + + + + + Gets or sets the mouse over state colors. + + + + + Gets or sets the mouse pressed colors. + + + + + Gets or sets the disabled colors. + + + + + Gets or sets the optional color table for Thumb part of the slider. When set to null default values from Office2007SliderColorTable are used. + + + + + Gets or sets the optional color table for Increase button part of the slider. When set to null default values from Office2007SliderColorTable are used. + + + + + Gets or sets the optional color table for Decrease button part of the slider. When set to null default values from Office2007SliderColorTable are used. + + + + + Defines set of color tables for single slider part. + + + + + Gets or sets the default state colors. + + + + + Gets or sets the mouse over state colors. + + + + + Gets or sets the mouse pressed colors. + + + + + Renders the Slider items. + + + + + Gets or sets color table used by renderer. + + + + + Defines the color table for the Slider Item in single state. + + + + + Gets or sets the part background colors. + + + + + Gets or sets the part border color + + + + + Gets or sets the part border light color + + + + + Gets or sets the part foreground color. + + + + + Gets or sets the part foreground light color. + + + + + Gets or sets the track line color. + + + + + Gets or sets the track line light color. + + + + + Gets or sets the track label color. + + + + + Gets or sets the track label color when on Slider control. + + + + + Defines the color table for the SuperTooltip. + + + + + Gets or sets the background colors. + + + + + Gets or sets the text color. + + + + + Represents color table for Office 2007 style system button displayed in form caption. + + + + + Gets or sets the color table of default button state. + + + + + Gets or sets the color table of button state when mouse is over the button. + + + + + Gets or sets the color table of button state when mouse is pressed over the button. + + + + + Represents color table for single state of Office 2007 style system button displayed in form caption. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the inner border colors. + + + + + Gets or sets top part background colors. + + + + + Gets or sets bottom part background colors. + + + + + Gets or sets highlight colors for the top background part. + + + + + Gets or sets highlight colors for the bottom background part. + + + + + Gets or sets the foreground color for the button. + + + + + Gets or sets the dark shading color for the foreground. + + + + + Gets or sets the light shading color for the foreground. + + + + + Represents the color table for the tab control. + + + + + Gets or sets the default tab item colors. + + + + + Gets or sets the mouse over tab item colors. + + + + + Gets or sets the selected tab item colors. + + + + + Gets or sets the color of the tab background colors. + + + + + Gets or sets the tab-strip background image. + + + + + Gets or sets the color of the tab panel background colors. + + + + + Gets or sets the color of tab panel border. + + + + + Represents the color table for the tab item. + + + + + Gets or sets top part background colors. + + + + + Gets or sets the bottom part background colors. + + + + + Gets or sets the outer border colors. + + + + + Gets or sets the inner border colors. + + + + + Gets or sets the text colors. + + + + + Paints background of docked bar. + + Context information + + + + Paints background of floating bar. + + Context information + + + + Paints background of popup bar. + + Context information + + + + Summary description for ButtonItemPainterHelper. + + + + + Provides data for ButtonItem rendering. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets the reference to ButtonItem instance being rendered. + + + + + Reference to internal data. + + + + + Creates new instance of the object. + + + + + Creates new instance of the object and initializes it with default values + + Reference to Graphics object. + Reference to ButtonItem object. + + + + Creates new instance of the object and initializes it with default values + + Reference to Graphics object. + Reference to ButtonItem object. + + + + Defines container for ribbon caption layout and quick access toolbar customization and overflow. + + + + + Summary description for DesignTimeProviderContainer. + + + + + + + + Returns insertion index for an item taking in account any system items that are at the end of the collection. + + Parent item + Returns the index at which an item should be inserted + + + + Defines delegate for RenderKeyTips event. + + + + + Defines delegate for RenderRibbonTabGroup event. + + + + + Defines delegate for RenderItemContainer event. + + + + + Defines delegate for RenderItemContainerSeparator event. + + + + + Defines delegate for ButtonItem rendering events. + + + + + Defines delegate for RibbonTabItem rendering events. + + + + + Defines delegate for toolbar rendering events. + + + + + Defines delegate for Rendering dialog launcher button rendering events. + + + + + Defines delegate for ColorItem rendering events. + + + + + Defines delegate for RibbonControl rendering events. + + + + + Defines delegate for SystemCaptionItem rendering events. + + + + + Defines delegate for MdiSystemItem rendering events. + + + + + Defines delegate for RenderFormCaptionBackground rendering events. + + + + + Defines delegate for CustomizeMenuPopup events. + + + + + Defines delegate for the Quick Access Overflow item rendering events. + + + + + Defines delegate for the Quick Access Customize item rendering events. + + + + + Defines delegate for the Quick Access Customization dialog events. + + + + + Defines delegate for the CheckBoxItem rendering events. + + + + + Defines delegate for the ProgressBarItem rendering events. + + + + + Defines delegate for the Navigation Pane rendering events. + + + + + Defines delegate for the BeforeRibbonPanelPopupClose event. + + + + + Defines delegate for the Slider item rendering events. + + + + + Defines delegate for the SideBar control rendering event. + + + + + Defines delegate for the SideBarPanelItem control rendering event. + + + + + Defines delegate for the SwitchButtonItem control rendering event. + + + + + Defines delegate for the Slider item rendering events. + + + + + Defines delegate for the StepItem rendering events. + + + + + Defines delegate for the ListBoxItem rendering events. + + + + + Defines delegate for the SideNavItem rendering events. + + + + + Represents the class that provides Office 2007 style Gallery container with drop-down ability. + + + + + Creates new instance of the class + + + + + Returns copy of the item. + + + + + Copies the ButtonItem specific properties to new instance of the item. + + New ButtonItem instance. + + + + Returns the client rectangle which is DisplayRectangle excluding scroll-bar bounds + + + + + + Invokes GalleryPopupOpen event. + + + + + + Invokes GalleryPopupShowing event. + + + + + + Invokes GalleryPopupClose event. + + + + + + Invokes GalleryPopupFinalized event. + + + + + + Gets whether DefaultSize property is serialized by Windows Forms designer based on its current value. + + + + + Resets DefaultSize property to its default value. + + + + + Gets whether PopupGallerySize property is serialized by Windows Forms designer based on its current value. + + + + + Resets PopupGallerySize property to its default value. + + + + + Scrolls the gallery if necessary to ensures that item is visible. + + Reference to the items that is part of the gallery. + + + + Scrolls gallery down to show next line of items. + + + + + Scrolls gallery up to show previous line of items. + + + + + + Opens the Gallery popup menu. + + + + + Returns whether Gallery can extend the object. + + Object to test extensibility for. + Returns true if object can be extended otherwise false. + + + + Gets the GalleryGroup item is assigned to. + + Reference to item. + An instance of GalleryGroup object or null if item is not assigned to the group + + + + Assigns the item to the gallery group. + + Item to assign. + Group to assign item to. Can be null to remove item assignment. + + + + Occurs when Gallery popup item is about to open. + + + + + Occurs just before Gallery popup window is shown. + + + + + Occurs before the Gallery popup item is closed. + + + + + Occurs after Gallery popup item has been closed. + + + + + Gets or sets orientation inside the container. GalleryContainer automatically manages the layout orientation and this property should not be changed from its default value. + + + + + Gets or sets the item alignment when container is in horizontal layout. Default value is Left. + + + + + Gets or sets the item vertical alignment. Default value is Top. + + + + + Gets or sets whether items in horizontal layout are wrapped into the new line when they cannot fit allotted container size. Default value is false. + + + + + Gets or sets whether items contained by container are resized to fit the container bounds. When container is in horizontal + layout mode then all items will have the same height. When container is in vertical layout mode then all items + will have the same width. Default value is true. + + + + + Gets or sets whether Gallery when on popup is using standard scrollbars to scroll the content. + Standard scrollbars are displayed on right hand side of the Gallery. Default value for this property is true. + When set to false the scroll buttons are displayed only when needed and two buttons on top and bottom + of the Gallery are used to indicate the scrolling possibility and enable scrolling. Buttons are only + visible when needed. This scrolling button style can be used for example on Application Menu + to enable scrolling of list of most recently used files. + + + + + Gets or sets whether gallery is using incremental sizing when stretched. Default + value is true. Incremental sizing will resize the width of the gallery so it fits + completely the items it can contain in available space. That means that gallery will + occupy enough space to display the whole items within available space. When set to + false, it indicates that gallery will resize to fill all available space. + + + + + Gets or sets whether Gallery width is determined based on the RibbonBar width. This property is in effect when + Gallery is hosted directly the RibbonBar control. Default value is false. + When set to true the Gallery size is changed as the RibbonBar control is resized. The initial size of the Gallery is + determined by DefaultSize property. The MinimumSize property specifies the minimum size of the Gallery. + Note that only single Gallery can be stretched per RibbonBar control. + + + + + Gets the collection of the items that are added to the popup gallery. The items displayed on the gallery are combined with the + items from this collection and they are displayed on the gallery popup. This collection can for example have items that are + customizing the choices of the commands in gallery etc. + + + + + Gets or sets the default size of the gallery. The gallery height will be always enforced so all scroll buttons can be displayed. + Gallery width should allow display of both scroll buttons and the gallery content. + + + + + Gets or sets the default size of the gallery when gallery is displayed on the popup menu. + + + + + Gets or sets whether gallery can be displayed on the popup. Default value is true. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets whether the Gallery popup is open. + + + + + Gets or sets the Key Tips access key or keys for the item when on Ribbon Control or Ribbon Bar. Use KeyTips property + when you want to assign the one or more letters to be used to access an item. For example assigning the FN to KeyTips property + will require the user to press F then N keys to select an item. Pressing the F letter will show only keytips for the items that start with letter F. + + + + + Gets or sets whether scroll animation is enabled. Default value is true. + Scroll animation will be disabled if gallery is running under Remote Windows Terminal session or fade animation effect is disabled on the + container control. + + + + + Gets the collection of GalleryGroup objects associated with this gallery. Groups are assigned optionally to one or more items + that are part of the GalleryContainer. Groups are used to visually group the items when gallery is displayed on the popup. + + + + + Represents the popup gallery group that groups set of items inside of gallery into the group. + + + + + Creates new instance of the object. + + + + + Gets or sets title of the group that will be displayed on the group label when on popup gallery. + + + + + Gets or sets name of the group that can be used to identify item from the code. + + + + + Gets the parent gallery for the group. + + + + + Gets or sets the display order for the group when displayed on the popup. Lower values are displayed closer to the top. Default value is 0. + + + + + Gets the collection of the items assigned to this group. + + + + + Represents the GalleryGroup typed collection. + + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds new objects to the collection. + + Array of groups to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the GalleryGroup array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Summary description for ISimpleElement. + + + + + Represents IBlock layout manager implementation + + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + + + + Indicates container title location. + + + + + Provides data for rendering ItemContainer. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets the reference to ItemContainer instance being rendered. + + + + + Creates new instance of the object. + + Reference to graphics object. + Reference to ItemContainer object. + + + + Provides data for the item separator rendering inside of the ItemContainer. + + + + + Gets or sets the reference to the item separator is being rendered for. + + + + + Creates new instance of the object. + + + + + Represents class for Accessibility support. + + + + + Creates new instance of the object and initializes it with owner control. + + Reference to owner control. + + + + Returns number of child objects. + + Total number of child objects. + + + + Returns reference to child object given the index. + + 0 based index of child object. + Reference to child object. + + + + Gets accessible role. + + + + + Gets parent accessibility object. + + + + + Returns bounds of the control. + + + + + Returns current accessible state. + + + + + Represents class for item display. + + + + + Represents canvas for KeyTips + + + + + Represents data for key tips rendering. + + + + + Gets or sets the graphics object used for rendering. + + + + + Gets or sets key tip bounds. + + + + + Gets or sets the text of key tip to be rendered. + + + + + Gets or sets the font key tip should be rendered with. + + + + + Reference object for which Key Tip is rendered. For example this could be reference to an instance of ButtonItem or BaseItem as well + as reference to System.Windows.Forms.Control object. Always test for type before accessing this reference. + + + + + Creates new instance of the object and initializes it with default values. + + + + + Represents painter for the MdiSystemItem. + + + + + Paints MdiSystemItem. + + Provides arguments for the operation. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets whether Text supports and renders text markup. Default value is true. + + + + + Gets or sets whether divider panel that divides message box buttons and text content is visible. Default value is true. + + + + + Gets or sets the anti-alias setting for text-pane. + + + + + Enumeration of available common system strings. + + + + + Represents the class that provides MessageBox like functionality with the styled Office 2007 dialog and text markup support. + + + + + Displays a message box with specified text. + + The text to display in the message box. + One of the DialogResult values. + + + + Displays a message box in front of the specified object and with the specified text. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + One of the DialogResult values. + + + + Displays a message box with specified text and caption. + + The text to display in the message box. + The text to display in the title bar of the message box. + One of the DialogResult values. + + + + Displays a message box with specified text and caption. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + The text to display in the title bar of the message box. + One of the DialogResult values. + + + + Displays a message box with specified text, caption, and buttons. + + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the DialogResult values. + + + + Displays a message box with specified text, caption, and buttons. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the DialogResult values. + + + + Displays a message box with specified text, caption, buttons, and icon. + + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the MessageBoxIcon values that specifies which icon to display in the message box. + One of the DialogResult values. + + + + Displays a message box with specified text, caption, buttons, and icon. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the MessageBoxIcon values that specifies which icon to display in the message box. + One of the DialogResult values. + + + + Displays a message box with the specified text, caption, buttons, icon, and default button. + + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the MessageBoxIcon values that specifies which icon to display in the message box. + One of the MessageBoxDefaultButton values that specifies the default button for the message box. + One of the DialogResult values. + + + + Displays a message box with the specified text, caption, buttons, icon, and default button. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the MessageBoxIcon values that specifies which icon to display in the message box. + One of the MessageBoxDefaultButton values that specifies the default button for the message box. + One of the DialogResult values. + + + + Displays a message box with the specified text, caption, buttons, icon, and default button. + + The IWin32Window the message box will display in front of. + The text to display in the message box. + The text to display in the title bar of the message box. + One of the MessageBoxButtons values that specifies which buttons to display in the message box. + One of the MessageBoxIcon values that specifies which icon to display in the message box. + One of the MessageBoxDefaultButton values that specifies the default button for the message box. + Indicates value for Message Box dialog TopMost property. + One of the DialogResult values. + + + + Occurs when text markup link on Message Box is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets whether MessageBoxEx is using Windows System API function to retrieve the localized strings used by MessageBoxEx. Set this to false + if you experience issues when using MessageBoxEx under certain conditions. + + + + + Gets or sets whether MessageBoxEx form has Windows Vista Glass enabled if running on + Windows Vista with Glass enabled. Default value is true. + + + + + Gets or sets the anti-alias setting for message box text. + + + + + Gets or sets the text color for the message box text. Default value is Color.Empty which indicates that system colors are used. + + + + + Gets or sets whether divider panel that divides message box buttons and text content is visible. Default value is true. + + + + + Gets or sets the message box start position when Owner is not specified. Default value is CenterScreen. + + + + + Gets or sets the message box start position when Owner is specified. Default value is CenterParent. + + + + + Gets or sets whether message box text renders text markup. Default value is true. + + + + + Summary description for Office2003RibbonTabItemPainter. + + + + + Paints state of the button, either hot, pressed or checked + + + + + + + + Paints background of docked bar. + + Context information + + + + Paints background of floating bar. + + Context information + + + + Paints background of popup bar. + + Context information + + + + Gets or sets color table used by renderer. + + + + + Gets or sets color table used by renderer. + + + + + Gets or sets color table used by renderer. + + + + + Represents Office 2007 style MdiSystemItem painter + + + + + Gets or sets color table used by renderer. + + + + + Represents base class for Ribbon Control painting. + + + + + Paints controls background + + + + + Paints form caption background + + + + + Paints form caption text when ribbon control is displaying form caption + + + + + Paints the background of quick access toolbar. + + + + + Paints controls background + + + + + Paints form caption background + + + + + Paints the background of quick access toolbar. + + + + + RibbonTabItem painter for Office 2007 style + + + + + Represents the Office Application Button displayed in the top-left corner of the Ribbon Control. + + + + + Processes the Escape key when Application Button is hosting the backstage tab and uses it to close the tab if open. + This method is called from ProcessDialogKey method of Office2007RibbonForm. + + Key data + true if key was used to close backstage tab + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Gets or sets whether control set on BackstageTab property is used on application menu popup. + + + + + Gets or sets the backstage tab that is displayed instead of popup menu. + + + + + Summary description for PainterFactory. + + + + + Forces the creation of the objects inside of factory. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Loads the items for the customization into the ribbon control. All Ribbon Bars on the ribbon are enumerated and items + are added if they have CanCustomize=true. + + Ribbon control to enumerate. + + + + Loads the items for the customization from MetroTab control. Registered MetroToolbar controls are enumerated and items + are added if they have CanCustomize=true. + + MetroTab control that holds references to known MetroToolbars. + + + + Gets reference to the internal Quick Access Toolbar Customization panel. + + + + + Represents the item that provides Quick Access Toolbar customization. + + + + + Creates new instance of CustomizeItem object. + + + + + Returns copy of CustomizeItem item + + + + + Overridden. Recalculates the size of the item. + + + + + Gets localized tooltip text for this instance of the item. + + Tooltip text. + + + + Called when mouse hovers over the customize item. + + + + + Gets or sets whether Customize menu item is visible. + + + + + Gets/Sets informational text (tooltip) for the item. + + + + + Represents the Quick Access Toolbar customization panel which can be used on the custom QAT customization dialogs + so customization of Quick Access Toolbar can be reused. + + + + + Gets reference to the internal ItemPanel control that displays the commands for selected category. + + + + + Gets reference to the ItemPanel control that displays the Quick Access Toolbar Items. + + + + + Gets reference to the button that perform addition of commands to the Quick Access Toolbar. + + + + + Gets reference to the button that perform removal of commands from the Quick Access Toolbar. + + + + + Gets reference to the combo box control that holds all categories. + + + + + Gets reference to the combo box categories label control. + + + + + Gets reference to the check box that changes the placement of the Quick Access Toolbar. + + + + + Required designer variable. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Loads the items for the customization into the ribbon control. All Ribbon Bars on the ribbon are enumerated and items + are added if they have CanCustomize=true. + + Ribbon control to enumerate. + + + + Loads the items for the customization from MetroTab registered toolbars. All registered Toolbars are enumerated and items + are added if they have CanCustomize=true. + + MetroTab control to enumerate. + + + + Gets or sets the value of data changed flag. + + + + + Represents the stand-alone Quick Access Toolbar control + + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Gets/Sets the visual style for items and color scheme. + + + + + Returns collection of items on a bar. + + + + + Represents a single ribbon container control. + + + + + Creates new accessibility instance. + + Reference to AccessibleObject. + + + + Closes the RibbonBar overflow popup if control is in overflow mode and displays the overflow popup that shows complete content of the control. + + + + + Resets style to default value. Used by windows forms designer. + + + + + Invokes the LaunchDialog event to execute default launch dialog action. + + + + + Called when item on popup container is right-clicked. + + Instance of the item that is right-clicked. + + + + Invokes DialogLauncherMouseEnter event. + + + + + Invokes DialogLauncherMouseLeave event. + + + + + Invokes DialogLauncherMouseHover event. + + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Resets cached content size. Content size is cached to improve performance of the control when control is + switched into overflow mode displaying a single button. If you change content of Rendering, hide/show items or + add new items you will need to call this method to erase cached value and allow the full Rendering size to be calculated. + + + + + Returns size of the control based on current content size. + + Size based on content. + + + + Sets the height of the control to the automatically calculated height based on content. + + + + + Returns automatically calculated height of the control given current content. + + Height in pixels. + + + + Returns automatically calculated width of the control given current content. + + Width in pixels. + + + + Gets the bounds of the title. + + + + + Resets TitleStyle property to its default value. Used by Windows Forms designer for design-time support. + + + + + Resets TitleStyle property to its default value. Used by Windows Forms designer for design-time support. + + + + + Occurs when dialog launcher button in title bar is clicked. Use DialogLauncherVisible property to show the button in title bar. + + + + + Occurs when overflow button for control is created because control size is below the minimum size required to display complete content of the control. + This event allows you to get access to the internal overflow button that is created and change it's properties if required. + + + + + Occurs after overflow button setup is complete and all items contained by this control are moved to it. + + + + + Occurs before overflow button is destroyed. + + + + + Occurs when mouse enters dialog launcher button. + + + + + Occurs when mouse leaves dialog launcher button. + + + + + Occurs when mouse hovers over the dialog launcher button. + + + + + Occurs when mouse is pressed over the dialog launcher button. + + + + + Gets or sets parent button when on QAT. + + + + + Gets or sets whether this RibbonBar is on QAT. + + + + + Gets or sets whether Office 2007 Design Guidelines specification for positioning KeyTips is used. + + + + + Gets or sets the Accessible name for the Dialog Launcher button + + + + + Specifies the background style of the control when mouse is over the control. Style specified here will be applied to the + BackgroundStyle. + + + + + Gets or sets image that is used as dialog luncher button in ribbon title bar. Default value is null which indicates that + default appearance for the button is used. + + + + + Gets or sets image that is used as dialog luncher button when mouse is over the button. + Note that if this property is set you also must set the DialogLauncherButton property. Images set to both + properties must have same size. Default value is null which indicates that + default appearance for the button is used. + + + + + Gets or sets maximum text length for automatic overflow button text. When overflow button is created due to the + reduced size of the control text for the button can be specified using OverflowButtonText property. If + text is not specified RibbonBar.Text property is used as overflow button text. In that case + this property specifies maximum length of the text to display on the button. Default value is 25. You can set + this property to 0 to use complete text regardless of length. + + + + + Gets or sets resize order index of the control. When control is parented to RibbonPanel control (which is the case when control is + used as part of RibbonControl) index specified here indicates the order in which controls that are part of the same panel + are resized. Lower index value indicates that control should be resized later when size needs to be reduced or earlier when size needs + to be increased. Default value is 0. + + + + + Gets or sets whether automatic overflow handling is enabled. When overflow is enabled if control is resized below the + size that is needed to display its complete content overflow button is created and all content is moved to the overflow button + popup. Control will only display overflow button when in this state and user can click overflow button to display the actual + content of the control. + Default value is true. + + + + + Gets or sets the text for overflow button that is created when ribbon bar size is reduced so it cannot display all its content. + When control is resized so it cannot display its content overflow button is created which is displayed on face of the control. + Complete content of the control is then displayed on popup toolbar when user clicks overflow button. + + + + + Gets or sets the Image for overflow button that is created when ribbon bar size is reduced so it cannot display all its content. + When control is resized so it cannot display its content overflow button is created which is displayed on face of the control. + Complete content of the control is then displayed on popup toolbar when user clicks overflow button. This Image is also used when + RibbonBar is added to the Quick Access Toolbar to identify the RibbonBar button. + + + + + Gets or sets whether dialog launcher button is visible in title of the ribbon. Default value is false. + + + + + Gets or sets default layout orientation inside the control. You can have multiple layouts inside of the control by adding + one or more instances of the ItemContainer object and changing it's LayoutOrientation property. + + + + + Gets or sets spacing in pixels between items. Default value is 1. + + + + + Gets or sets whether items contained by container are resized to fit the container bounds. When container is in horizontal + layout mode then all items will have the same height. When container is in vertical layout mode then all items + will have the same width. Default value is true. + + + + + Gets or sets the item alignment when container is in horizontal layout. Default value is Left. + + + + + Gets or sets the item vertical alignment. Default value is Top. + + + + + Returns collection of items on a bar. + + + + + Gets or sets whether ribbon bar can be customized by end user i.e. added to Quick Access Toolbar. + + + + + Returns reference to the overflow button that is used by control. + + + + + Gets whether control is in overflow state or not. + + + + + Gets or sets whether ButtonItem objects hosted on control are resized to reduce the space consumed by ribbon bar when required. + Default value is true. + + + + + Gets/Sets the visual style for items and color scheme. + + + + + Gets or sets the KeyTip for the dialog launcher button. + + + + + Gets or sets whether ribbon bar title is visible. Default value is true. + + + + + Specifies the style of the title of the control. + + + + + Specifies the style of the title of the control when mouse is over the control. + + + + + Gets the title bounds. + + + + + Gets or sets whether control changes its background when mouse is over the control. + + + + + Gets or sets whether external ButtonItem object is accepted in drag and drop operation. UseNativeDragDrop must be set to true in order for this property to be effective. + + + + + Gets or sets whether native .NET Drag and Drop is used by control to perform drag and drop operations. AllowDrop must be set to true to allow drop of the items on control. + + + + + + Defines event handler for overflow button events. + + Control that is hosting the overflow button. + Event arguments + + + + Represents event arguments for overflow button events. + + + + + Creates new instance of the class and initializes it. + + Reference to overflow button. + + + + Returns reference to the overflow button that is used by control. + + + + + Represents class for RibbonBar Accessibility support. + + + + + Creates new instance of the object and initializes it with owner control. + + Reference to owner control. + + + + Returns number of child objects. + + Total number of child objects. + + + + Returns reference to child object given the index. + + 0 based index of child object. + Reference to child object. + + + + Represents the container for RibbonBar objects that will be merged into the MDI parent ribbon control. + + + + + Represents panel used by RibbonTabItem as a container panel for the control. + + + + + Creates new instance of the panel. + + + + + Scrolls the RibbonBar controls to the right one step if there is more of the controls on the panel that can fit into the available space. + + + + + Scrolls the RibbonBar controls one step to the left. + + + + + Resets the panel scroll position. + + + + + Gets or sets whether default control layout is used instead of Rendering layout for RibbonBar controls positioning. By default + internal layout logic is used so proper resizing of Ribbons can be performed. You can disable internal layout by setting this property + to true. + Default value is false. + + + + + Indicates whether style of the panel is managed by tab control automatically. + Set this to true if you would like to control style of the panel. + + + + + Gets or sets TabItem that this panel is attached to. + + + + + Gets or sets whether last RibbonBar is stretched to fill available space inside of the panel. Default value is false. + + + + + Gets or sets which edge of the parent container a control is docked to. + + + + + Gets or sets the size of the control. + + + + + Gets or sets the coordinates of the upper-left corner of the control relative to the upper-left corner of its container. + + + + + Gets or sets a value indicating whether the control is displayed. + + + + + Gets or sets which edges of the control are anchored to the edges of its container. + + + + + Removes any RibbonBar objects that were merged into the Ribbon control. + + Reference to ribbon control to remove RibbonBar objects from. + + + + Merges RibbonBar objects from this container into the Ribbon control. + + Reference to ribbon control to remove RibbonBar objects from. + + + + Raises the BeforeRibbonMerge event. + + + + + Raises the AfterRibbonMerge event. + + + + + Raises the BeforeRibbonUnmerge event. + + + + + Raises the AfterRibbonUnmerge event. + + + + + Occurs before the RibbonBar objects from container are merged into the Ribbon control. + + + + + Occurs after the RibbonBar objects are merged into the Ribbon control. + + + + + Occurs after the RibbonBar objects are removed from the Ribbon control. + + + + + + Gets whether RibbonBar controls are merged into the RibbonControl. + + + + + Gets or sets whether RibbonTab item the RibbonBar controls are added to when merged is automatically activated (selected) after + controls are merged. Default value is true. + + + + + Gets or sets whether merge functionality is enabled for the container. Default value is true. + + + + + Gets or sets the Ribbon Tab text for the tab that will be created when ribbon bar objects from this container are merged into the ribbon. + + + + + Gets or sets the Key Tips access key or keys for the Ribbon Tab. Use KeyTips property + when you want to assign the one or more letters to be used to access an item. For example assigning the FN to KeyTips property + will require the user to press F then N keys to select an item. Pressing the F letter will show only keytips for the items that start with letter F. + + + + + Gets or sets the predefined color for the ribbon tab that is created when ribbon bar controls are merged into the ribbon. + Default value is eRibbonTabColor.Default + + + + + Gets or sets the name of RibbonTabItem object that already exists on Ribbon control into which the RibbonBar controls are merged. + If name is not specified new RibbonTabItem is created and RibbonBar controls are added to it. + + + + + Gets or sets the name of the RibbonTabItemGroup the new Ribbon Tab Item that is created will be added to. The RibbonTabItemGroup + must be created and added to RibbonControl.TabGroups collection. + + + + + Gets or sets the insertion index for the ribbon tab item that is created when ribbon bars are merged into the ribbon control. + Default value is -1 which means that ribbon tab item is appended to the existing ribbon tab items. + + + + + Gets or sets whether panel automatically provides shadows for child controls. + + + + + Represents Rendering control composed of two parts, RibbonStrip and multiple RibbonBar controls per strip. + + + + + Gets the name of the QAT Customize Item which is used to display the QAT Customize Dialog box. + + + + + Gets the name of the Add to Quick Access Toolbar context menu item. + + + + + Gets the name of the Remove from Quick Access Toolbar context menu item. + + + + + Gets the name of the QAT placement change context menu item. + + + + + Gets the name of the Minimize Ribbon Item which is used to minimize the ribbon. + + + + + Gets the name of the Maximize Ribbon Item which is used to maximize the ribbon. + + + + + Gets the name of the label displayed on Quick Access Toolbar customize popup menu. + + + + + Gets the string that is used as starting name for the frequently used QAT menu items created when QAT Customize menu is displayed. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Sets the height of the control to the automatically calcualted height based on content. + + + + + Sets the height of the control to the automatically calcualted height based on content. + + + + + Performs the setup of the RibbonPanel with the current style of the Ribbon Control. + + Panel to apply style changes to. + + + + Creates new Rendering Tab at specified position, creates new associated panel and adds them to the control. + + Specifies the text displayed on the tab. + Specifies the name of the tab + Specifies the position of the new tab inside of Items collection. + New instance of the RibbonTabItem that was created. + + + + Creates new Rendering Tab and associated panel and adds them to the control. + + Specifies the text displayed on the tab. + Specifies the name of the tab + New instance of the RibbonTabItem that was created. + + + + Recalculates layout of the control and applies any changes made to the size or position of the items contained. + + + + + Returns Control region if any when control is hosted by Office2007RibbonForm + + + + + + Occurs when text markup link is clicked. + + + + + Resets DefaultGroupFont property to default value null. + + + + + Raises the BeforeRibbonPanelPopupClose event. + + + + + Raises the AfterRibbonPanelPopupClose event. + + + + + Raises the BeforeRibbonPanelPopup event. + + + + + + Raises the BeforeRibbonPanelPopup event. + + + + + + Sets up timer that watches when active window changes. + + + + + Called after change of active window has been detected. SetupActiveWindowTimer must be called to enable detection. + + + + + Releases and disposes the active window watcher timer. + + + + + Displays the active ribbon panel on the popup if ribbon control is collapsed. + + Reference to the object that was cause of the event. This is provided to the BeforeRibbonPanelPopupClose event if an menu needs to be closed. + Indicates the event source. This is provided to the BeforeRibbonPanelPopupClose event if an menu needs to be closed. + + + + Closes the Ribbon tab menu with source set to null and event source set to Code. + + + + + Closes the Ribbon Menu if one is currently displayed. + + + + + Suspends the form layout. + + + + + Suspends the form layout. + + + + + Suspends the form layout. + + + + + Selects first visible RibbonTab. + + Returns true if selection is performed otherwise false. + + + + Called when right-mouse button is pressed over RibbonBar + + Reference to RibbonBar object. + + + + Called when right-mouse button is pressed over RibbonStrip + + Reference to RibbonStrip object. + + + + Displays popup customize context menu for given customization object. + + Object that should be customized, usually an instance of BaseItem. + Indicates whether customize menu is displayed over ribbon strip + + + + Raises the QatPlacementChanged event. + + Event arguments. + + + + Removes an item from the Quick Access Toolbar. + + Reference to the item that is already part of Quick Access Toolbar. + + + + Adds an instance of base type BaseItem or RibbonBar to the Quick Access Toolbar. Note that this method creates + new instance of the item or an representation of the item being added and adds that to the Quick Access Toolbar. + + Reference to the item to add, must be an BaseItem type or RibbonBar type. + + + + Raises the BeforeCustomizeMenuPopup event. + + Event arguments + + + + Raises the BeforeAddItemToQuickAccessToolbar event. + + Event arguments. + + + + Shows the quick access toolbar customize dialog. + + + + + Applies the Quick Access Toolbar customization changes made on QatCustomizePanel to the Ribbon Control Quick Access Toolbar. Note that QatCustomizePanel.DataChanged property indicates whether user made any changes to the data on the panel. + + Reference to the QatCustomizePanel + + + + Raises the AfterQatDialogChangesApplied event. + + + + + Returns the ribbon Application Button. + + reference to Application Button or null if button is not found. + + + + Occurs when Quick Access Toolbar placement is changed, i.e. below or above the Ribbon. + + + + + Occurs just before the customize popup menu is displayed and provides the ability to cancel the menu display as well + as to add/remove the menu items from the customize popup menu. + + + + + Occurs before an item is added to the quick access toolbar as result of user action. This event provides ability to + cancel the addition of the item by setting the Cancel=true of event arguments. + + + + + Occurs before an item is removed from the quick access toolbar as result of user action. This event provides ability to + cancel the addition of the item by setting the Cancel=true of event arguments. + + + + + Occurs when DotNetBar is looking for translated text for one of the internal text that are + displayed on menus, toolbars and customize forms. You need to set Handled=true if you want + your custom text to be used instead of the built-in system value. + + + + + Occurs when Item on ribbon tab strip or quick access toolbar is clicked. + + + + + Occurs before Quick Access Toolbar dialog is displayed. This event provides the opportunity to cancel the showing of + built-in dialog and display custom customization dialog. You can also set the Dialog property of the event arguments to + the custom dialog you want used instead of the DotNetBar system customization dialog. + + + + + Occurs after the Quick Access Toolbar dialog is closed. + + + + + Occurs after any changes done on the Quick Access Toolbar dialog are applied to the actual Quick Access Toolbar. + + + + + Occurs after selected Ribbon tab has changed. You can use + RibbonControl.SelectedRibbonTabItem + property to get reference to newly selected tab. + + + + + Occurs before selected RibbonPanel is displayed on popup while ribbon is collapsed. This event gives you the opportunity to cancel the popup of the ribbon panel. + + + + + Occurs after selected RibbonPanel is displayed on popup while ribbon is collapsed. + + + + + Occurs before RibbonPanel popup is closed and provides opportunity to cancel the closing. Note that if you cancel closing of ribbon popup you are + responsible for closing the popup. + + + + + Occurs after RibbonPanel popup is closed. + + + + + Occurs when text markup link from TitleText markup is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Occurs after Expanded property has changed. + + + + + Gets the collection of the Quick Access Toolbar Frequently used commands. You should add existing buttons to this collection that + you already have on the RibbonBar controls or on the application menu. The list will be used to construct the frequently used + menu that is displayed when Customize Quick Access Toolbar menu is displayed and it allows end-user to remove and add these + frequently used commands to the QAT directly from this menu. + Note that items you add here should not be items that are already on Quick Access Toolbar, i.e. in RibbonControl.QuickToolbarItems collection. + + + + + Gets or sets whether KeyTips functionality is enabled. Default value is true. + + + + + Gets or sets whether merge functionality is enabled for the control. Default value is true. + + + + + Gets or sets whether control height is set automatically based on the content. Default value is false. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + + Gets or sets the Context menu bar associated with the this control which is used as part of Global Items feature. The context menu + bar assigned here will be used to search for the items with the same Name or GlobalName property so global properties can be propagated when changed. + You should assign this property to enable the Global Items feature to reach your ContextMenuBar. + + + + + Gets or sets whether custom caption and quick access toolbar provided by the control is visible. Default value is false. + This property should be set to true when control is used on Office2007RibbonForm. + + + + + Gets or sets the font for the form caption text when CaptionVisible=true. Default value is NULL which means that system font is used. + + + + + Gets or sets the explicit height of the caption provided by control. Caption height when set is composed of the TabGroupHeight and + the value specified here. Default value is 0 which means that system default caption size is used. + + + + + Gets or sets the indent of the ribbon strip. The indent setting is useful when control is used with caption visible and the Office 2007 + style start button. The indent specified here will move the ribbon strip so the start button does not overlap the tabs. + Value of this property is used only when CaptionVisible = true. + Default value is 46. + + + + + Gets or sets the font used by the ribbon strip. + + + + + Gets or sets whether mouse over fade effect is enabled. Default value is true. + + + + + Gets or sets the font that is used to display Key Tips (accelerator keys) when they are displayed. Default value is null which means + that control Font is used for Key Tips display. + + + + + Collection of RibbonTabItemGroup items. Groups are assigned optionally to one or more RibbonTabItem object through the RibbonTabItem.Group + property to visually group tabs that belong to same functions. These tabs should be positioned next to each other. + + + + + Gets or sets the height in pixels of tab group line that is displayed above the RibbonTabItem objects that have group assigned. + Default value is 10 pixels. To show tab groups you need to assign the RibbonTabItem.Group property and set TabGroupsVisible=true. + + + + + Gets or sets whether tab group line that is displayed above the RibbonTabItem objects that have group assigned is visible. + Default value is false. To show tab groups you need to assign the RibbonTabItem.Group property and set TabGroupsVisible=true. Use TabGroupHeight + property to control height of the group line. + + + + + Gets or sets default font for tab groups. This font will be used if font is not specified by group style element. + + + + + Specifies the background style of the control. + + + + + Gets or sets the currently selected RibbonTabItem. RibbonTabItems are selected using the Checked property. Only a single + RibbonTabItem can be selected (Checked) at any given time. + + + + + Returns reference to internal ribbon strip control. + + + + + Returns collection of items on a bar. + + + + + Returns collection of quick toolbar access and caption items. + + + + + Gets/Sets the visual style of the control. If you are changing style to Office 2007 or Office 2010 use RibbonPredefinedColorSchemes.ChangeStyle method instead to ensure + all controls are switched properly. + + + + + Indicates whether control automatically updates Padding property for the ribbon and RibbonPanel based on style. Default value is true. + + + + + Gets or sets the Office 2007 Renderer global Color Table. Setting this property will affect all controls on the form that are using Office 2007 global renderer. + + + + + Gets whether collapsed ribbon is displaying the selected ribbon panel as popup. + + + + + Gets or sets whether mouse wheel scrolls through the ribbon tabs. Default value is true. + + + + + Gets or sets whether control is expanded or not. When control is expanded both the tabs and the tab ribbons are visible. When collapsed + only tabs are visible. + + + + + Gets or sets whether control is collapsed when RibbonTabItem is double clicked and expanded when RibbonTabItem is clicked. + Default value is true. + + + + + Gets or sets whether control is collapsed/expanded when Ctrl+F1 key is clicked. + Default value is true. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Gets or sets a value indicating whether the user can give the focus to this control using the TAB key. Default value is false. + + + + + Indicates the position of the BackgroundImage + + + + + Specifies whether the MDI system buttons are displayed in ribbon strip when MDI Child window is maximized. + + + + + Gets or sets whether Ribbon control employs the Windows Vista Glass support when available. This is managed automatically by Ribbon Control and + no setting is necessary on your part. + + + + + Gets or sets whether control can be customized and items added by end-user using context menu to the quick access toolbar. + Caption of the control must be visible for customization to be enabled. Default value is true. + + + + + Gets or sets whether external implementation for ribbon bar and menu item customization will be used for customizing the ribbon control. When set to true + it enables the displaying of RibbonBar and menu item context menus which allow customization. You are responsible for + adding the menu items to context menu to handle all aspects of item customization. See "Ribbon Control Quick Access Toolbar Customization" topic in help file under How To. + Default value is false. + + + + + Gets or sets whether end-user customization of the placement of the Quick Access Toolbar is enabled. User + can change the position of the Quick Access Toolbar using the customize menu. Default value is true. + + + + + Gets or sets whether customize dialog is used to customize the quick access toolbar. You can handle the EnterCustomize event + to display your custom dialog instead of built-in dialog for customization. Default value is true. + + + + + Gets or sets the categorization mode for the items on Quick Access Toolbar customize dialog box. Default value categorizes + items by the ribbon bar they appear on. + + + + + Gets or sets whether Quick Access toolbar is positioned below the ribbon. + + + + + Gets or sets the Quick Access Toolbar layout description. You can use the value obtained from this property to save + the customized Quick Access Toolbar into registry or into any other storage object. You can also set the saved layout description back + to restore user customize layout. + + + + + Gets or sets whether Quick Access Toolbar has been customized by end-user. You can use value of this property to determine + whether Quick Access Toolbar layout that can be accessed using QatLayout property should be saved. + + + + + Gets the reference to the ribbon localization object which holds all system text used by the component. + + + + + Provides data for RibbonBar rendering events. + + + + + Gets or sets the reference to Graphics object. + + + + + Gets or sets the part bounds. + + + + + Gets or sets the reference to RibbonBar. + + + + + Gets or sets whether mouse over state should be painted for the ribbon bar part. + + + + + Gets or sets whether mouse is pressed over the ribbon part. + + + + + Gets or sets the region that defines the content bounds. When background is rendered the renderer should set this property + to define the content clip. + + + + + Creates new instance of the object and initializes it with default values. + + Reference to Graphics object. + Bounds of the part to be rendered. + Reference to ribbon bar. + + + + Represents the class that stores text used by ribbon control only for localization purposes. + + + + + Gets or sets the title text of the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the "Place Quick Access Toolbar below the Ribbon" check-box on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the Choose commands from label on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the Remove button on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the Add button on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the OK button on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text of the Cancel button on the Quick Access Toolbar Customize dialog form. + + + + + Gets or sets the text that is used on context menu used to customize Quick Access Toolbar. + + + + + Gets or sets the text that is used on context menu used to customize Quick Access Toolbar. + + + + + Gets or sets the text that is used on context menu used to customize Quick Access Toolbar. + + + + + Gets or sets the text that is used on Quick Access Toolbar customize menu label. + + + + + Gets or sets the text that is used on context menu used to change placement of the Quick Access Toolbar. + + + + + Gets or sets the text that is used on context menu used to change placement of the Quick Access Toolbar. + + + + + Gets or sets the text that is used on context menu item used to minimize the Ribbon. + + + + + Gets or sets the text that is used on context menu item used to maximize the Ribbon. + + + + + Represents ribbon overflow button. + + + + + Gets or sets the ribbon bar control overflow button is displayed on. + + + + + Represents predefined color schemes for ribbon controls. + + + + + Applies default gray color scheme to background and title. + + Reference to object. + + + + Applies orange color scheme to background and title. + + Reference to object + + + + Apply Office 2003 color scheme to background and title. + + Reference to object + + + + Applies Office 2003 color scheme to ribbon control background. + + Reference to object. + + + + Applies Gray color scheme to ribbon control background. + + Reference to object. + + + + Applies Office 2007 color table to ribbon control background. + + Reference to object. + + + + Applies Office 2007 Luna blue color scheme to the Ribbon Bar. + + Reference to object. + + + + Applies specified style to Ribbon control and all other controls that are managed by the ribbon control. + This method is useful for example when switching the color tables for Office 2007 renderer. Once + the GlobalManager.Renderer color table is changed you can call this method to apply color table + changes to the Ribbon Control and other controls managed by it. + + RibbonControl to set the style on. + Visual style to apply. + + + + Applies specified visual style to the RibbonBar control. + + RibbonBar control to set the style on. + Visual style to apply. + + + + Applies current color scheme and layout settings to the container which acts as top-level file menu container. + Applies to Office 2007 style only. + + Container to apply style to. + + + + Applies current color scheme and layout properties to the two column menu container used by the top-level file menu. + Applies to Office 2007 style only. + + Container to apply style to. + + + + Applies current color scheme and layout properties to the first column menu container used by the top-level file menu. + This column usually contains menu items. + Applies to Office 2007 style only. + + Container to apply style to. + + + + Applies current color scheme and layout properties to the first column menu container used by the top-level file menu. + This column usually contains most recently used list of files or documents. + Applies to Office 2007 style only. + + Container to apply style to. + + + + Applies current color scheme and layout properties to the bottom menu container used by the top-level file menu. + This container usually contains Options and Exit buttons. + Applies to Office 2007 style only. + + Container to apply style to. + + + + Changes the Office 2007 color table for all DotNetBar controls on the open forms that are tracked by Application.OpenForms collection. You can use this function for example to + apply Black color scheme to all DotNetBar control on all open forms. The color table will be changed only for controls that + have Office 2007 style. Any other style will be unchanged. + + Color table to select and apply. + + + + Applies current Office 2007 style color table set on GlobalManager.Renderer to all DotNetBar controls with Office 2007 style on all open forms. + + + + + Changes the Office 2007 color table for all DotNetBar controls on the form. You can use this function for example to + apply Black color scheme to all DotNetBar control on given form. The color table will be changed only for controls that + have Office 2007 style. Any other style will be unchanged. + + Form to apply color table to. + Color table to select and apply. + + + + Generates and Changes the Office 2007 color table for all DotNetBar controls on the form. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Office 2007 style. Any other style will be unchanged. + + Form to apply color table to. + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Generates and Changes the Office 2007 color table for all DotNetBar controls on all open forms. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Office 2007 style. Any other style will be unchanged. + + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Applies current Office 2007 style color table to all DotNetBar controls on the form. + + Reference to the form or parent control that contains DotNetBar controls you would like to apply color table to. + + + + Changes style for all controls on Application.OpenForms to specified style. Use this method to change the style for all controls to Office 2007 or Office 2010 styles only. + + New style to assign to controls on forms. + + + + Changes style for all controls on Application.OpenForms to specified style. Use this method to change the style for all controls to Office 2007 or Office 2010 styles only. + + New style to assign to controls on forms. + Color used to blend with the base color scheme. + + + + Changes style for all controls on a form to specified style. Use this method to change the style for all controls to Office 2007 or Office 2010 styles only. + + New style to assign to controls. + Form or Control to process. + + + + Changes style for all controls on a form to specified style. Use this method to change the style for all controls to Office 2007 or Office 2010 styles only. + + New style to assign to controls. + Form or Control to process. + Color used to blend with the base color scheme. + + + + Changes the Office 2010 color table for all DotNetBar controls on the form. You can use this function for example to + apply Black color scheme to all DotNetBar control on given form. The color table will be changed only for controls that + have Office 2007 and 2010 style. Any other style will be unchanged. + + Form to apply color table to. + Color table to select and apply. + + + + Generates and Changes the Office 2010 color table for all DotNetBar controls on the form. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Office 2007 and 2010 style. Any other style will be unchanged. + + Form to apply color table to. + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Generates and Changes the Office 2010 color table for all DotNetBar controls on all open forms. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Office 2007 and 2010 style. Any other style will be unchanged. + + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Changes the Windows 7 color table for all DotNetBar controls on the form. You can use this function for example to + apply Black color scheme to all DotNetBar control on given form. The color table will be changed only for controls that + have Windows 7, Office 2007, 2010 style. Any other style will be unchanged. + + Form to apply color table to. + Color table to select and apply. + + + + Generates and Changes the Windows 7 color table for all DotNetBar controls on the form. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Windows 7, Office 2007 and 2010 style. Any other style will be unchanged. + + Form to apply color table to. + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Generates and Changes the Windows 7 color table for all DotNetBar controls on all open forms. You can use this function for example to + create custom color scheme based on the base color and apply it to all DotNetBar control on given form. The new color table will be applied only to controls that + have Windows 7, Office 2007 and 2010 style. Any other style will be unchanged. + + Base color table to use for creation of custom color table that will be applied. + Base color used to create custom color table. + + + + Defines the Ribbon Quick Access Overflow system item. Used internally by Ribbon control. + + + + + Returns copy of DisplayMoreItem item + + + + + Overriden. Draws the item. + + Target Graphics object. + + + + Returns the insertion index for the items removed from overflow popup. Assumes that right-most items are removed first by the layout manager. + + + + + + Represents RibbonStrip control internally used by RibbonControl. + + + + + Occurs when text markup link is clicked. + + + + + Resets DefaultGroupFont property to default value null. + + + + + Returns automatically calculated height of the control given current content. + + Height in pixels. + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + Indicates whether GlobalName property is used for searching. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Called when ShowKeyTips on RibbonBar contained by this Ribbon is set to true + + + + + Forces the control to exit Ribbon Key-Tips mode. + + + + + Called when item on popup container is right-clicked. + + Instance of the item that is right-clicked. + + + + Returns true if point is inside the caption area. + + Client point coordinates. + True if point is inside of caption area otherwise false. + + + + Occurs when text markup link from TitleText markup is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets whether RibbonStrip control employs the Windows Vista Glass support when available. This is managed automatically by Ribbon Control and + no setting is necessary on your part. + + + + + + Gets reference to parsed markup body element if text was markup otherwise returns null. + + + + + Gets or sets whether KeyTips functionality is enabled. Default value is true. + + + + + Gets or sets whether control can be customized and items added by end-user using context menu to the quick access toolbar. + Caption of the control must be visible for customization to be enabled. Default value is true. + + + + + Gets or sets the explicit height of the caption provided by control. Caption height when set is composed of the TabGroupHeight and + the value specified here. Default value is 0 which means that system default caption size is used. + + + + + Gets or sets whether custom caption line provided by the control is visible. Default value is false. + This property should be set to true when control is used on Office2007RibbonForm. + + + + + Gets or sets the font for the form caption text when CaptionVisible=true. Default value is NULL which means that system font is used. + + + + + Gets or sets the indent of the ribbon strip. The indent setting is useful when control is used with caption visible and the Office 2007 + style start button. The indent specified here will move the ribbon strip so the start button does not overlap the tabs. + Value of this property is used only when CaptionVisible = true. + Default value is 46. + + + + + Gets or sets the height in pixels of tab group line that is displayed above the RibbonTabItem objects that have group assigned. + Default value is 14 pixels. To show tab groups you need to assign the RibbonTabItem.Group property and set TabGroupsVisible=true. + + + + + Gets or sets whether tab group line that is displayed above the RibbonTabItem objects that have group assigned is visible. + Default value is false. To show tab groups you need to assign the RibbonTabItem.Group property and set TabGroupsVisible=true. Use TabGroupHeight + property to control height of the group line. + + + + + Collection of RibbonTabItemGroup items. Groups are assigned optionally to one or more RibbonTabItem object through the RibbonTabItem.Group + property to visually group tabs that belong to same functions. These tabs should be positioned next to each other. + + + + + Gets/Sets the visual style of the control. + + + + + Returns collection of items on a bar. + + + + + Returns currently selected RibbonTabItem. RibbonTabItems are selected using the Checked property. Only a single + RibbonTabItem can be Checked at any given time. + + + + + Gets or set whether TabGroup painting is suspended. + + + + + Gets or sets default font for tab groups. This font will be used if font is not specified by group style element. + + + + + Gets or sets whether control is collapsed when RibbonTabItem is double clicked and expanded when RibbonTabItem is clicked. + + + + + Gets or sets whether control is collapsed when RibbonTabItem is double clicked and expanded when RibbonTabItem is clicked. + + + + + Gets or sets whether F10 key is ignored as way to set KeyTips focus to Ribbon. + + + + + Gets whether Ribbon is in key-tips mode including its child controls. + + + + + Returns collection of items on a bar. + + + + + Gets the reference to the internal container item for the items displayed in control caption. + + + + + Gets the reference to the internal container for the ribbon tabs and other items. + + + + + Defines the internal container item for the ribbon strip control. + + + + + Creates new instance of the class and initializes it with the parent RibbonStrip control. + + Reference to parent RibbonStrip control + + + + Paints this base container + + + + + Returns copy of GenericItemContainer item + + + + + Return Sub Item at specified location + + + + + Gets whether Metro Backstage application menu is open. + + + + + Gets reference to internal ribbon strip container that contains tabs and/or other items. + + + + + Gets reference to internal caption container item that contains the quick toolbar, start button and system caption item. + + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + When parent items does recalc size for its sub-items it should query + image size and store biggest image size into this property. + + + + + Provides data for RenderRibbonTabGroup event. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets RibbonTabItemGroup being rendered. + + + + + Gets or sets the bounds of the tab group. Bounds specified here are bounds of the tab group title. GroupBounds contains the bounds + that include all tabs that belong to the tab group. + + + + + Gets or sets the font that should be used to render group text. + + + + + Gets or sets group bounds including the tabs that belong to the group. + + + + + Gets or sets the effective style for the group. + + + + + Gets whether Windows Vista glass is enabled. + + + + + Represents Rendering Tab used on RibbonControl. + + + + + Selects the tab. + + + + + Resets Group property to default value null. + + + + + Called after Checked property has changed. + + + + + Occurs just before Click event is fired. + + + + + Occurs when the item is clicked. This is used by internal implementation only. + + + + + Called when Visibility of the items has changed. + + New Visible state. + + + + Occurs after item visual style has changed. + + + + + Gets or sets whether tab renders its state. Used internally by DotNetBar. Do not set. + + + + + Gets or sets the additional padding added around the tab item in pixels. Default value is 0. + + + + + Gets or sets whether size of the tab has been reduced below the default calculated size. + + + + + Gets or sets the predefined color of item. Color specified here applies to items with Office 2007 style only. It does not have + any effect on other styles. Default value is eRibbonTabColor.Default + + + + + Gets or sets the group this tab belongs to. Groups are optional classification that is used to + visually group tabs that belong to same functions. These tabs should be positioned next to each other. + + + + + Gets or sets the panel assigned to this ribbon tab item. + + + + + Gets or set the Group item belongs to. The groups allows a user to choose from mutually exclusive options within the group. The choice is reflected by Checked property. + + + + + Returns the collection of sub items. + + + + + Indicates whether the item will auto-collapse (fold) when clicked. + When item is on popup menu and this property is set to false, menu will not + close when item is clicked. + + + + + Indicates whether the item will auto-expand when clicked. + When item is on top level bar and not on menu and contains sub-items, sub-items will be shown only if user + click the expand part of the button. Setting this propert to true will expand the button and show sub-items when user + clicks anywhere inside of the button. Default value is false which indicates that button is expanded only + if its expand part is clicked. + + + + + Gets or sets whether item can be customized by end user. + + + + + Gets or set a value indicating whether the button is in the checked state. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets a value indicating whether the item is enabled. + + + + + Indicates item's visiblity when on pop-up menu. + + + + + Indicates when menu items are displayed when MenuVisiblity is set to VisibleIfRecentlyUsed and RecentlyUsed is true. + + + + + Indicates Animation type for Popups. + + + + + Indicates the font that will be used on the popup window. + + + + + Indicates whether sub-items are shown on popup Bar or popup menu. + + + + + Specifies the inital width for the Bar that hosts pop-up items. Applies to PopupType.Toolbar only. + + + + + Gets or sets whether item will display sub items. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets or sets the width of the expand part of the button item. + + + + + Gets or set the alternative shortcut text. + + + + + Gets or sets whether item separator is shown before this item. + + + + + Returns category for this item. If item cannot be customzied using the + customize dialog category is empty string. + + + + + Gets or sets the text color of the button when mouse is over the item. + + + + + Indicates the way item is painting the picture when mouse is over it. Setting the value to Color will render the image in gray-scale when mouse is not over the item. + + + + + Gets or sets the text color of the button. + + + + + Represents a group RibbonTabItem objects are assigned to. + + + + + Selected first tab that is part of this group. + + + + + Gets or sets the predefined color of the group. Color specified here applies to groups with Office 12 style only. It does not have + any effect on other styles. Default value is eRibbonTabGroupColor.Default + + + + + Gets or sets the custom color name. Name specified here must be represented by the coresponding object with the same name that is part + of the Office2007ColorTable.RibbonTabGroupColors collection. See documentation for Office2007ColorTable.RibbonTabGroupColors for more information. + If color table with specified name cannot be found default color will be used. Valid settings for this property override any + setting to the Color property. + + + + + Gets the style for tab group. + + + + + Gets or sets title of the group that will be displayed when group is visually represented. + + + + + Gets or sets parent ribbon strip for this group. + + + + + Gets or sets whether RibbonTabItem objects that belong to this group are visible. Setting this property will + show/hide all RibbonTabItem objects that are assigned to this group through RibbonTabItem.Group property. + + + + + Gets whether any tab from this tab group is selected. + + + + + Gets or sets name of the group that can be used to identify item from the code. + + + + + Gets an array of Rectangle objects that describe the visual position on the ribbon control of the group titles displayed. + If tabs that belong to a tab group are not next to each other then there will be multiple rectangle returned as part of the array + for each tab group that is apart. + + + + + Collection of RibbonTabItemGroup objects. + + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds new objects to the collection. + + Array of groups to add. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the RibbonTabItemGroup array. + + Array to copy to. + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Provides data for ButtonItem rendering. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets the reference to ButtonItem instance being rendered. + + + + + Reference to internal data. + + + + + Creates new instance of the object. + + + + + Creates new instance of the object and initializes it with default values + + Reference to Graphics object. + Reference to ButtonItem object. + + + + Creates new instance of the object and initializes it with default values + + Reference to Graphics object. + Reference to ButtonItem object. + + + + Summary description for SimpleElement. + + + + + Summary description for SimpleElementLayout. + + + + + Indicates absolute vertical alignment of the content. + + + + + Content is aligned to the top + + + + + Content is aligned in the middle + + + + + Content is aligned at the bottom + + + + + Indicates absolute horizontal alignment + + + + + Content is left aligned + + + + + Content is centered + + + + + Content is right aligned + + + + Indicates alignment of a part of the cell like image or check box in relation to the text. + + + + Part is aligned to the left center of the text assuming left-to-right + orientation. + + + + + Part is aligned to the right center of the text assuming left-to-right + orientation. + + + + + Part is aligned to the top left of the text assuming left-to-right + orientation. + + + + Part is aligned above the text and centered. + + + + Part is aligned to the top right of the text assuming left-to-right + orientation. + + + + + Part is aligned to the bottom left of the text assuming left-to-right + orientation. + + + + Part is aligned below the text and centered. + + + + Part is aligned to the bottom right of the text assuming left-to-right + orientation. + + + + + Summary description for SimpleNodeDisplay. + + + + + Represents information neccessary to paint the cell on canvas. + + + + + Represents the slider item which allows you to select a value from predefined range. + + + + + Creates new instance of SliderItem. + + + + + Creates new instance of SliderItem and assigns the name to it. + + Item name. + + + + Creates new instance of SliderItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the SliderItem specific properties to new instance of the item. + + New SliderItem instance. + + + + Copies the SliderItem specific properties to new instance of the item. + + New SliderItem instance. + + + + Raises the IncreaseButtonClick event. + + Provides event arguments + + + + Raises the DecreaseButtonClick event. + + Provides event arguments + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Advances the current position of the slider by the amount of the Step property. + + + + + Advances the current position of the slider by the amount of the Step property. + + + + + Advances the current position of the slider by the specified amount. + + The amount by which to increment the sliders current position. + + + + Advances the current position of the slider by the specified amount. + + The amount by which to increment the sliders current position. + + + + Raises the ValueChanged event. + + + + + Raises the ValueChanged event. + + + + + Raises the ValueChanging event. + + + + + Returns whether property should be serialized. Used by Windows Forms designer. + + + + + Resets the property to default value. Used by Windows Forms designer. + + + + + Occurs after Value property has changed. + + + + + Occurs before Value property has changed. + + + + + Occurs when Increase button is clicked using mouse. + + + + + Occurs when Decrease button is clicked using mouse. + + + + + Gets or sets the slider mouse over part. + + + + + Gets or sets the slider part that mouse is pressed over. This property should not be modified and it is for internal usage only. + + + + + Returns the label bounds inside of the control. + + + + + Gets or sets the text associated with this item. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets the maximum value of the range of the control. + + + + + Gets or sets the minimum value of the range of the control. + + + + + Gets or sets the current position of the slider. + + + + + Gets or sets the amount by which a call to the PerformStep method increases the current position of the slider. Value must be greater than 0. + + + + + Gets or sets whether the text label next to the slider is displayed. + + + + + Gets or sets the width of the slider part of the item in pixels. Value must be greater than 0. Default value is 136. + + + + + Gets or sets the width of the label part of the item in pixels. Value must be greater than 0. Default value is 38. + + + + + Gets or sets the text label position in relationship to the slider. Default value is Left. + + + + + Gets or sets whether Click event will be auto repeated when mouse button is kept pressed over the item. + + + + + Gets or sets the auto-repeat interval for the click event when mouse button is kept pressed over the item. + + + + + Gets or sets whether vertical line track marker is displayed on the slide line. Default value is true. + + + + + Gets or sets the color of the label text. + + + + + Gets or sets the Key Tips access key or keys for the item when on Ribbon Control or Ribbon Bar. Use KeyTips property + when you want to assign the one or more letters to be used to access an item. For example assigning the FN to KeyTips property + will require the user to press F then N keys to select an item. Pressing the F letter will show only keytips for the items that start with letter F. + + + + + Gets or sets the collection of shortcut keys associated with the item. + + + + + Gets or sets whether item will display sub items. + + + + + Specifies whether item is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether the item expands automatically to fill out the remaining space inside the container. Applies to Items on stretchable, no-wrap Bars only. + + + + + Gets or sets the tooltip for the Increase button of the slider. + + + + + Gets or sets the tooltip for the Decrease button of the slider. + + + + + Gets or sets the slider orientation. Default value is horizontal. + + + + + Indicates spacing for an user interface element either padding or margins. + + + + + Gets or sets the amount of the space on the left side. + + + + + Gets or sets the amount of the space on the right side. + + + + + Gets or sets the amount of the space on the top. + + + + + Gets or sets the amount of the space on the bottom. + + + + + Gets total horizontal spacing. + + + + + Gets total vertical spacing. + + + + + Gets whether all memebers of class are set to 0. + + + + + Summary description for SubItemsCollection. + + + + + Sorts the items in the collection using the built in IComparable on each item which sorts items by the Text property. + + + + + Sorts the items in the collection using specified comparer. + + Comparer to use for item sorting. + + + + Gets whether MinimumTooltipSize property should be serialized. + + + + + Retrieves SuperTooltipInfo for given component or return null if component does not have tooltip associated with it. + + + + + Associates SuperTooltipInfo with given component. + + Reference to supported component. + Instance of SuperTooltipInfo class. If null is passed the SuperTooltip is detached from the given component. + + + + Raises the MarkupLinkClick event. + + + + + Shows SuperTooltip for given object that has been registered using SetSuperTooltip method at specific location on the screen. + + Object to show tooltip for. Object must be registered using SetSuperTooltip method before tooltip is shown for it. + Specifies the explicit position of the SuperTooltip in screen coordinates. + + + + Shows SuperTooltip for given object that has been registered using SetSuperTooltip method. + + Object to show tooltip for. Object must be registered using SetSuperTooltip method before tooltip is shown for it. + + + + Shows SuperTooltip for given object that has been registered using SetSuperTooltip method. + + Object to show tooltip for. Object must be registered using SetSuperTooltip method before tooltip is shown for it. + + + + Raises the TooltipClosed event. + + Provides event arguments. + + + + Hides tooltip if it is visible. + + + + + Resets Hoover timer. + + + + + Occurs just before tooltip is displayed and gives you opportunity to cancel showing of tooltip. + + + + + Occurs after tooltip has been closed. + + + + + Occurs when text markup link is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Gets or sets the maximum width of the super tooltip. Default value is 0 which indicates that maximum width is not used. The maximum width property + will not be used if custom size is specified. + + + + + Gets or sets whether form active state is ignored when control is deciding whether to show tooltip. By default this property is set to false + which indicates that tooltip will be shown only if parent form is active. When set to true the form active state is ignored when + deciding whether to show tooltip. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is true. + + + + + Gets or sets whether SuperTooltip will be shown for the controls assigned to it. Default value is true. You can set + this property to false to disable SuperTooltip for all controls assigned to it. + + + + + Gets or sets whether tooltip is shown immediately after the mouse enters the control. The default value is false which indicates + that tooltip is shown after system hover timeout has expired which provides slight delay before tooltip is shown. + + + + + Gets or sets the minimum tooltip size. Default value is 150 width and 24 height. + + + + + Gets or sets the duration in seconds that tooltip is kept on screen after it is displayed. Default value is 20 seconds. + You can set this value to 0 to keep tooltip displayed until user moves mouse out of control or application loses focus. + + + + + Gets or sets the delay time for hiding the tooltip in milliseconds after + mouse has left the control. Default value is 0 which means that tooltip will be + hidden as soon as mouse leaves the control tooltip was displayed for. You can use + this property to provide the user with enough time to move the mouse cursor to the + tooltip so user can act on the content of the tooltip, like hyper links. + + + + + Gets or sets whether tooltip position is checked before tooltip is displayed and adjusted to tooltip always + falls into screen bounds. Default value is true. + + + + + Gets or sets whether tooltip position is checked before tooltip is displayed and adjusted so tooltip does not overlaps the + control it is displayed for. Default value is true. + + + + + Gets or sets the tooltip position in relationship to the control tooltip is providing information for. + Set this property to false if you want tooltip to be displayed below the mouse cursor. Default value is + true which indicates that tooltip is displayed below mouse cursor but it is positioned below the control + that it provides the information for so it is not covering its content. + + + + + Gets or sets default setting for new Tooltips you create in design time. If all your tooltips have common elements + you can change this property to reflect these default setting before you start writing tooltips for all controls on the form. + As you start creating new tooltips for controls on the form default values specified here will be used as starting values + for new tooltip you are creating. + + + + + Returns instance of default tooltip information used in design-time. + + + + + Gets the reference to internal Hashtable that contains reference to all controls and assigned SuperTooltips. This + collection must not be modified directly and it is automatically managed by the SuperTooltip component. You can use it + for example to change the color for all SuperTooltips managed by the component but you should not add or remove items to it. + Instead use SetSuperTooltip methods to add or remove the tooltip for a component. + + + + + Gets or sets the hover delay multiplier which controls how fast tooltip appears. The value set here indicates + how many hover events are needed to occur before the tooltip is displayed. + + + + + Returns whether tooltip is visible. + + + + + Gets reference to instance of tooltip control if any has been created at the time call is made. + + + + + Gets or sets default tooltip font. Default value is null which means that default system font is used. + + + + + Gets or sets whether complete tooltip is shown including header, body and footer. Default value is true. When set to false only tooltip header will be shown. + Providing this option to your end users as part of your application setting allows them to customize the level of information displayed and reduce it after they are familiar with your product. + + + + + Gets or sets whether tooltip is shown when control that tooltip is assigned to is focused. You can set this value to false to disable Tooltip display when control receives input focus. Default value is true. + + This property is effective only when Super Tooltip is assigned to the controls that inherit from System.Windows.Forms.Control class and it relies on Focused property of respective control for proper function. + + + + Provides information about SuperTooltip attached to a component. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class with specified parameters. + + + + + Creates new instance of the class with specified parameters. + + + + + Returns whether property should be serialized. + + + + + Gets or sets whether tooltip header text is visible or not. Default value is true. + + + + + Gets or sets whether tooltip footer text is visible or not. Default value is true. + + + + + Gets or sets the header text. + + + + + Gets or sets the footer text. + + + + + Gets or sets body text. + + + + + Gets or sets body image displayed to the left of body text. + + + + + Gets or sets footer image displayed to the left of footer text. + + + + + Gets or sets the custom size for tooltip. Default value is 0,0 which indicates that tooltip is automatically + resized based on the content. + + + + + Gets or sets predefined tooltip color. + + + + + Extensibility interface that custom components may implement + so SuperTooltip can be provided for them. + + + + + This event should be triggered by the component when it wants to display SuperTooltip. Normally + this event would be equivalent of MouseHover event but you can trigger it in response to anything else. + Sender for this event must be object that implements ISuperTooltipInfoProvider interface. + + + + + This event should be triggered by component when it wants to hide SuperTooltip. For example this event + might be triggered when mouse leaves your component. Sender of this event must be object that implements ISuperTooltipInfoProvider interface. + + + + + Returns rectangle of the visible area of the component in screen coordinates. This rectangle is used + to position SuperTooltip on the screen. + + + + + Delegate for SuperTooltip events. + + + + + Represents event arguments for PanelChanging event. + + + + + Set to true to cancel display of tooltip. + + + + + Object that has triggered displaying of tooltip + + + + + Information that will be used to populate tooltip. + + + + + Location where tooltip will be displayed. You can change the location here to display tooltip at different position. + + + + + Indicates the tooltip size, read-only and valid only if tooltip position is checked on screen. + + + + + Default constructor. + + + + + Represents SuperTooltipControl. + + + + + Default constructor. + + + + + Paints insides of the control. + + Paint event arguments. + + + + Recalculates and set size of the control based on the content that is made available to it. + + + + + Calculates the tooltip height based on the specified width. + + Tooltip width + Size of the tooltip based on specified width. + + + + Shows tooltip at specified screen coordinates. + + X coordinate + Y coordinate + Indicates whether to enforce the screen position of tooltip if tooltip falls out of screen bounds. + + + + Updates the popup shadow size and position if shadow is visible. + + + + + Gets or sets whether complete tooltip is shown including header, body and footer. Default value is true. When set to false only tooltip header will be shown. + Providing this option to your end users as part of your application setting allows them to customize the level of information displayed and reduce it after they are familiar with your product. + + + + + Gets or sets the maximum width of the super tooltip. Default value is 0 which indicates that maximum width is not used. The maximum width property + will not be used if custom size is specified. + + + + + Gets or sets the minimum tooltip size. Default value is 150, 50 + + + + + Gets or sets image used next to body text. + + + + + Gets or sets image used next to footer text. + + + + + Gets or sets text displayed in header of tooltip + + + + + Gets or sets whether header in tooltip is visible. Default value is true. + + + + + Gets or sets text displayed in footer of the tooltip + + + + + Gets or sets whether footer in tooltip is visible. Default value is true. + + + + + Gets or sets whether line above footer text is drawn to separate footer from body text. Default value is true. + + + + + Gets or sets whether mouse click on super tooltip will activate it, make it active window. Default value is true. + + + + + Gets or sets whether tooltip control is popup tooltip or standard control. Default is false which means tooltip is popup style. + + + + + Represents class that holds padding information for user interface elements. + + + + + Gets or sets padding on left side. Default value is 0 + + + + + Gets or sets padding on right side. Default value is 0 + + + + + Gets or sets padding on top side. Default value is 0 + + + + + Gets or sets padding on bottom side. Default value is 0 + + + + + Creates new instance of the class and initializes it. + + Padding for all sides + + + + Creates new instance of the class and initializes it. + + Left padding + Right padding + Top padding + Bottom padding + + + + Raises the PropertyChanged event. + + Event arguments + + + + Gets amount of Top padding + + + + + Gets amount of Left padding + + + + + Gets amount of Bottom padding + + + + + Gets amount of Right padding + + + + + Gets amount of horizontal padding (Left+Right) + + + + + Gets amount of vertical padding (Top+Bottom) + + + + + Gets whether Padding is empty. + + + + + Gets or sets the padding for all sides. + + + + + Occurs when property value has changed. + + + + + Summary description for ThemedButtonItemPainter. + + + + + Provides data for toolbar rendering. + + + + + Gets or sets the reference to Bar object being rendered + + + + + Gets or sets Graphics object bar is rendered on. + + + + + Gets the bounds of the region that should be rendered. + + + + + Reference to internal data. + + + + + Creates new instance of the object and initializes it with default data. + + Reference to bar object. + Reference to Graphics object. + + + + Describes the round rectangle shape. + + + + + Initializes a new instance of the RoundCornerDescriptor class. + + + + + Initializes a new instance of the RoundCornerDescriptor class. + + + + + Initializes a new instance of the RoundCornerDescriptor class. + + + + + + + + + Gets or sets the top-left round corner size. + + + + + Gets or sets the top-right round corner size. + + + + + Gets or sets the bottom-left round corner size. + + + + + Gets or sets the bottom-right round corner size. + + + + + Gets whether all corner size values are set to zero which results in no rounded corners. + + + + + Gets whether all corner size values are set to same value. + + + + + Represents DocumentDockContainer object converter. + + + + + Initializes a new instance of the ScrollBarAdv class. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Gets whether scrollbar is vertical. + + true if scrollbar is vertical otherwise false for horizontal scrollbar + + + + Raises the Scroll event. + + Provides Event arguments. + + + + Raises the ValueChanged event. + + Provides Event arguments. + + + + Called when Command property value changes. + + + + + Occurs when the Value property is changed, either by a Scroll event or programmatically. + + + + + Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + Gets or sets a value to be added to or subtracted from the Value property when the scroll box is moved a large distance. + A numeric value. The default value is 10. + ArgumentOutOfRangeException is raised if assigned value is less than 0. + + + + + Gets or sets the upper limit of values of the scrollable range. + A numeric value. The default value is 100. + + + + + Gets or sets the lower limit of values of the scrollable range. + A numeric value. The default value is 0. + + + + + Gets or sets the value to be added to or subtracted from the Value property when the scroll box is moved a small distance. + A numeric value. The default value is 1. + ArgumentOutOfRangeException is raised if assigned value is less than 0. + + + + + Gets or sets a numeric value that represents the current position of the scroll box on the scroll bar control. + A numeric value that is within the Minimum and Maximum range. The default value is 0. + ArgumentOutOfRangeException is raised if assigned value is less than the Minimum property value or assigned value is greater than the Maximum property value. + + + + + Gets or sets the scroll bar appearance style. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Summary description for ScrollButton. + + + + + Clean up any resources being used. + + + + + Represents class that provides shadows to elements. + + + + + Creates new instance of shadow painter. + + + + + Represents class that provides display context for shadow painter. + + + + + Summary description for ShortcutList. + + + + + Represents the Outlook like Side-bar Control. + + + + + Creates new instance of side bar control. + + + + + Clean up any resources being used. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Returns the renderer control will be rendered with. + + The current renderer. + + + + Raises ItemLayoutUpdated event. + + Provides event arguments. + + + + Invokes ItemDoubleClick event. + + Reference to item double-clicked + Event arguments + + + + Returns the collection of items with the specified name. + + Item name to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the collection of items with the specified name and type. + + Item name to look for. + Item type to look for. + + + + + Returns the first item that matches specified name. + + Item name to look for. + + + + + Invokes the DotNetBar Customize dialog. + + + + + Invokes SerializeItem event. + + Provides data for the event. + + + + Invokes DeserializeItem event. + + Provides data for the event. + + + + Loads the Side bar definition from file. + + Definition file name. + + + + Saves the Side bar definition to file. + + Definition file name. + + + + Occurs when Checked property of an button has changed. + + + + + Occurs when Item is clicked. + + + + + Occurs when Item is clicked. + + + + + Occurs when popup of type container is loading. + + + + + Occurs when popup of type container is unloading. + + + + + Occurs when popup item is about to open. + + + + + Occurs when popup item is closing. + + + + + Occurs just before popup window is shown. + + + + + Occurs when Item Expanded property has changed. + + + + + Occurs when mouse button is pressed. + + + + + Occurs when mouse button is released. + + + + + Occurs when mouse enters the item. + + + + + Occurs when mouse leaves the item. + + + + + Occurs when mouse moves over the item. + + + + + Occurs when mouse remains still inside an item for an amount of time. + + + + + Occurs when item loses input focus. + + + + + Occurs when item receives input focus. + + + + + Occurs when user changes the item position, removes the item, adds new item or creates new bar. + + + + + Occurs after an Item is removed from SubItemsCollection. + + + + + Occurs after an Item has been added to the SubItemsCollection. + + + + + Occurs when ControlContainerControl is created and contained control is needed. + + + + + Occurs when Text property of an Item has changed. + + + + + Use this event if you want to serialize the hosted control state directly into the DotNetBar definition file. + + + + + Use this event if you want to deserialize the hosted control state directly from the DotNetBar definition file. + + + + + Occurs after DotNetBar definition is loaded. + + + + + Occurs before an item in option group is checked and provides opportunity to cancel that. + + + + + Occurs before tooltip for an item is shown. Sender could be the BaseItem or derived class for which tooltip is being displayed or it could be a ToolTip object itself it tooltip is not displayed for any item in particular. + + + + + Occurs after an item has been serialized to XmlElement and provides you with opportunity to add any custom data + to serialized XML. This allows you to serialize any data with the item and load it back up in DeserializeItem event. + + + To serialize custom data to XML definition control creates handle this event and use CustomXmlElement + property on SerializeItemEventArgs to add new nodes or set attributes with custom data you want saved. + + + + + Occurs after an item has been de-serialized (load) from XmlElement and provides you with opportunity to load any custom data + you have serialized during SerializeItem event. + + + To de-serialize custom data from XML definition handle this event and use CustomXmlElement + property on SerializeItemEventArgs to retrive any data you saved in SerializeItem event. + + + + + Gets or sets the redering mode used by control. Default value is eRenderMode.Global which means that static GlobalManager.Renderer is used. If set to Custom then Renderer property must + also be set to the custom renderer that will be used. + + + + + Gets or sets the custom renderer used by the items on this control. RenderMode property must also be set to eRenderMode.Custom in order renderer + specified here to be used. + + + + + Gets or sets visual appearance for the control. + + + + + Gets or sets whether flat side bar is using system colors. + + + This property is used internally by side bar to determine whether to reset color scheme based on system colors. + If you want side bar to use system colors you need to set PredefinedColorScheme property. + + + + + Gets or sets Bar Color Scheme. + + + + + Gets/Sets the visual style of the SideBar. + + + + + Specifies whether SideBar is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Occurs after internal item layout has been updated and items have valid bounds assigned. + + + + + Returns the collection of side-bar Panels. + + + + + Gets or sets the expanded panel. Only one panel can be expanded at a time. + + + + + Gets or sets the form SideBar is attached to. + + + + + Gets or sets whether end-user can rearrange the items inside the panels. + + + + + Gets or sets whether native .NET Drag and Drop is used by side-bar to perform drag and drop operations. AllowDrop must be set to true to allow drop of the items on control. + + + + + Gets or sets whether external ButtonItem object is accepted in drag and drop operation. UseNativeDragDrop must be set to true in order for this property to be effective. + + + + + Gets or sets whether gray-scale algorithm is used to create automatic gray-scale images. Default is true. + + + + + ImageList for images used on Items. Images specified here will always be used on menu-items and are by default used on all Bars. + + + + + ImageList for medium-sized images used on Items. + + + + + ImageList for large-sized images used on Items. + + + + + Indicates whether Tooltips are shown on Bars and menus. + + + + + Indicates whether item shortcut is displayed in Tooltips. + + + + + Indicates whether Reset buttons is shown that allows end-user to reset the toolbar state. + + + + + Returns the reference to the container that containing the sub-items. + + + + + Gets/Sets control border style. + + + + + Gets whether any handlers have been defined for SerializeItem event. If no handles have been defined to optimize performance SerializeItem event will not be attempted to fire. + + + + + Gets whether any handlers have been defined for DeserializeItem event. If no handles have been defined to optimize performance DeserializeItem event will not be attempted to fire. + + + + + Gets/Sets Bar definition as XML string. + + + + + Indicates whether shortucts handled by items are dispatched to the next handler or control. + + + + + Represents the method that will handle the ItemRemoved event. + + + + + Provides layout for Side-Bar control. + + + + + Creates new instance of SideBarContainerItem class. + + + + + Returns copy of SideBarContainerItem item + + + + + Recalculates the size of the item + + + + + Paints this base container + + + + + Occurs when sub item expanded state has changed. + + Sub item affected. + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Sets input focus to next visible item in Explorer Bar. + + True if focus was set to next visible item otherwise false. + + + + Sets input focus to previous visible item in Explorer Bar. + + True if focus was set to previous visible item otherwise false. + + + + Gets or sets a value indicating whether the item is expanded or not. For Popup items this would indicate whether the item is popped up or not. + + + + + Summary description for SideBarPanelControl. + + + + + Represents the Side-Bar Panel item. + + + + + Creates new instance of SideBarPanelItem. + + + + + Creates new instance of SideBarPanelItem and assigns the name to it. + + Item name. + + + + Creates new instance of SideBarPanelItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of SideBarPanelItem item. + + + + + Returns the Font object to be used for drawing the item text. + + Font object. + + + + Occurs when the mouse pointer is moved over the item. This is used by internal implementation only. + + + + + Occurs when the mouse pointer is over the item and a mouse button is pressed. This is used by internal implementation only. + + + + + Occurs when the item is clicked. This is used by internal implementation only. + + + + + Overloaded. Serializes the item and all sub-items into the XmlElement. + + XmlElement to serialize the item to. + + + + Overloaded. Deserializes the Item from the XmlElement. + + Source XmlElement. + + + + Shows tooltip for this item. + + + + + Forces the repaint the item. + + + + + Must be called by any sub item that implements the image when image has changed + + + + + Gets whether mouse is over the panel header. + + + + + Gets whether mouse is pressed over the panel header. + + + + + Specifies panel title text alignment. Default value is Center. + + + + + Gets or sets the layout type for the items. Default layout orders items in a single column. Multi-column layout will order + items in multiple colums based on the width of the control. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the item background style. + + + + + Gets or sets the item header style. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets the item header style when mouse is over the header. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets the item header style when left mouse button is pressed on header. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets the item header side style. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets the item header side style when mouse is over the header. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets the item header side style when left mouse button is pressed on header. Applies only when SideBar.Appearance is set to Flat. + + + + + Gets or sets whether the font used to draw the item text is bold. + + + + + Gets or sets whether the font used to draw the item text is bold when mouse is over the item. + + + + + Gets or sets whether the font used to draw the item text is underlined when mouse is over the item. + + + + + Gets or sets the text color of the button when mouse is over the item. + + + + + Gets or sets the text color of the button. + + + + + Gets/Sets the Image size for all sub-items on the Bar. + + + + + Gets the rectangle of the panel item Button. + + + + + Gets or sets the index of the first visible item on the panel. + + + + + Gets or sets a value that determines whether text is displayed in multiple lines or one long line. + This setting applies to the buttons inside Panel as well. + + + + + Gets or sets whether scroll buttons are displayed when content of the panel exceeds it's height. + + + + + Specifies the Button icon. Icons support multiple image sizes and alpha blending. + + + + + Specifies the Button image. + + + + + Specifies the index of the image for the button if ImageList is used. + + + + + Specifies the image for the button when mouse is over the item. + + + + + Specifies the index of the image for the button when mouse is over the item when ImageList is used. + + + + + Specifies the image for the button when mouse left button is pressed. + + + + + Specifies the index of the image for the button when mouse left button is pressed and ImageList is used. + + + + + Represents class that provide display support for simple tabs. + + + + + Default constructor. + + + + + Provides layout management for ISimpleTab tab implementations. + + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + + + + Represents painter for Mozilla style splitter. + + + + + Base class for painting expandable splitter control. + + + + + Default constructor. + + + + + Paints splitter. + + Paint information. + + + + Creates new instance of splitter painter. + + + + + Paints splitter. + + Paint information. + + + + Represents painter for Office 2003 style splitter. + + + + + Creates new instance of splitter painter. + + + + + Paints splitter. + + Paint information. + + + + Represents class that holds information neccessary to paint the expandable splitter. + + + + + Specifies reference to graphics canvas. + + + + + Specifies splitter display rectangle. + + + + + Holds color settings for painting. + + + + + Specifies whether splitter is expandable or not. + + + + + Specifies whether splitter is expanded or not. + + + + + Specifies the splitter dock. + + + + + Represents class that holds colors for the splitter display. + + + + + Specifies back color. + + + + + Specifies target gradient background color. + + + + + Specifies background gradient angle. + + + + + Specifies grip part dark color. + + + + + Specifies grip part light color. + + + + + Specifies expand part line color. + + + + + Specifies expand part fill color. + + + + + Initializes a new instance of the StyleManager class. + + + + + Initializes a new instance of the StyleManager class with the specified container. + + An IContainer that represents the container for the command. + + + + Updates Ambient colors for control and its child controls. + + + + + + Updates ambient colors for the control and its children. + + + + + + Gets whether property should be serialized by WinForms designer. + + + + + Resets property to its default value. + + + + + Changes the StyleManager style and color tint in one step. Use this method if you need to change style and color tint simultaneously in single step for better performance. + + New style. + Color tint for the style. + + + + Registers control with the StyleManager so control can be notified of global style changes. + + Control to register with the StyleManager. + + + + Unregister the control from StyleManager notifications. + + Control that was registered through Register method. + + + + Returns whether style is a Metro type style. + + style to test. + true if Metro type style otherwise false. + + + + Returns whether style is a Metro type style. + + style to test. + true if Metro type style otherwise false. + + + + Returns whether style is a Metro type style. + + style to test. + true if Metro type style otherwise false. + + + + Gets or sets the global style for the controls that have Style=ManagerControlled. + + + + + Gets or sets the color current style is tinted with. + + + + + Gets previous effective style. + + + + + Gets or sets color generation parameters for Metro color generator. + + + + + Gets or sets color generation parameters for Metro color generator. + + + + + Gets or sets the current visual style. + + + + + Gets or sets the color tint that is applied to current Office 2007, Office 2010 or Windows 7 color table. + Default value is Color.Empty which indicates that no color blending is performed. + + + + + Defines the StyleManager styles. + + + + + Manages whether ambient property settings (BackColor, ForeColor etc.) are applied to child controls of the form when StyleManager component changes style. + + + + + Initializes a new instance of the StyleManagerAmbient class. + + + + + Initializes a new instance of the StyleManagerAmbient class with the specified container. + + An IContainer that represents the container for the command. + + + + Gets ambient settings StyleManager is allowed to change on the control. + + + + + Sets the ambient settings StyleManager is allowed to change on component. + + Reference to supported component. + Ambient settings that StyleManager may change. + + + + Specifies ambient settings enabled on the control for StyleManager. + + + + + All ambient settings are allowed to change. + + + + + StyleManager cannot change ambient settings. + + + + + StyleManager should process child controls. + + + + + StyleManager should change BackColor. + + + + + StyleManager should change ForeColor. + + + + + Constructor + + Associated SuperTabItem + + + + Paint processing + + + + + + Gets the default tab ContentRectangle + + Rectangle + + + + Gets the tab ContentRectangle + + Rectangle + + + + Gets the tab path + + GraphicsPath + + + + Sets the default color tables + + + + + Gets the tab ColorTable + + ColorTable + + + + Gets the tab state + + eTabState + + + + Gets the tab panel Color Table + + Color Table + + + + Draws the tab background + + Graphics + Tab path + StateColorTable + + + + Draws the tab border + + Graphics + Tab path + Color table + + + + Draws the tab contents + + Graphics + State color table + + + + Draws the tab image + + Graphics + + + + Draws the tab text + + + + + + + Draws the tab close button + + Graphics + State color table + + + + Sets the GraphicsTransform for the given alignment + and Horizontal text setting + + Graphics + Rectangle to transform + Transformed rectangle + + + + Resets out transform + + Graphics + + + + Gets the focus rectangle + + + + + + + Gets the tab close button bitmap + + Graphics + State color table + Button bitmap + + + + Creates the close button bitmap + + Graphics + State color table + Close bitmap + + + + Gets the hot close button bitmap + + Graphics + Close bitmap + + + + Creates the hot button bitmap + + Graphics + Close bitmap + + + + Gets the pressed close button bitmap + + Graphics + Close bitmap + + + + Creates the pressed button bitmap + + Graphics + Close bitmap + + + + Gets the close button path + + Close rectangle + Corner radius + + + + + Gets or sets the default item ColorTable + + + + + Constructor for Office2007 style SuperTabItem base display + + Associated SuperTabItem + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + Constructor + + Associated SuperTabStripItem + + + + Handles ContentManager NextPosition events + + + + + + + Handles RecalcSize requests + + + + + + Handles RecLayoutContent requests + + + + + Initializes the layout engine + + + + + + Performs the Recalc Layout + + + + + + Recalculates the bounds for the TabControlBox + + + + + + + Gets the tab client area + + + + + + Gets the tab client area + + + + + + Gets the tab height + + + + + + Layout manager NextBlockPosition + + + + + + PromoteTab NextBlockPosition + + + + + + + + Determines if all tabs are visible + + + + + + Paint processing + + + + + + Draws the background + + + + + + + Draws the tabs + + + + + + Draws the Drag and Drop insert marker + + ItemPaintArgs + Color table + + + + Draws the top insert marker + + + + + + Draws the left insert marker + + + + + + Determines if the given items are on the same line + + + + + + + + Draws the TabStrip border + + + + + + + Gets the inner and outer border lines + + + + + + + Sets the default color table + + + + + Gets the tab color table + + Tab color table + + + + Gets the tab close button bitmap + + + + + + + + Creates the tab close button bitmap + + + + + + + Gets the Menu button bitmap + + + + + + + + Create the Menu button bitmap + + + + + + + Gets the Menu button path + + + + + + Gets the Menu button bitmap + + + + + + + + Create the Menu button bitmap + + + + + + + Gets the Menu button path + + + + + + Gets the TabAlignment + + + + + gets or sets the default color table + + + + + Gets if display is RightToLeft + + + + + Gets tab vertical orientation + + + + + Gets the minimum TabStrip height + + + + + Gets whether we are to show the Focus rectangle + + + + + Gets CloseButtonOnTabsVisible + + + + + Gets FixedTabSize + + + + + Gets the minimum tab size + + + + + Gets the selected tab + + + + + Gets the selected font + + + + + Gets the tab ControlBox + + + + + Gets the tab height + + + + + Gets the tab bounds + + + + + Gets the Tabs collection + + + + + Gets the TabStrip + + + + + Gets the TabStripItem + + + + + Gets the PreDrawStripBorder state + + + + + Gets the SelectedPaddingWidth + + + + + Gets the TabOverlap + + + + + Gets the TabSpacing + + + + + Gets the TabOverlapLeft + + + + + Gets the TabLayoutOffset + + + + + Office2007 TabStrip base display constructor + + Associated TabStrip + + + + Tab layout offsets + + + + + Office 2010 Backstage SuperTabItem display constructor + + Associated SuperTabItem + + + + Draws the tab border + + + + + + + + Draws the Backstage SelectedItem marker + + + + + + + DrawTabItemBackground + + + + + + + + DrawTabItemHighLight + + + + + + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + Gets the Layout manager NextBlockPosition + + + + + + Gets the "PromoteSelTab" NextBlockPosition + + + + + + + + Draws the background + + + + + + + PreDrawStripBorder + + + + + SelectedPaddingWidth + + + + + Constructor for OfficeMobile2014 style SuperTabItem base display + + Associated SuperTabItem + + + + Calculates the Content Rectangle for the tab + + Content Rectangle + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + OfficeMobile2014 SuperTabStripBaseDisplay + + Associated TabStripItem + + + + Gets the next layout block position + + LayoutManagerPositionEventArgs + + + + Gets the next block position when attempting + to make a specific tab visible + + Potential item to replace + View item being placed + Block Rectangle + + + + Returns the Minimum tab size for this style + + + + + Tab layout offsets + + + + + Tab Overlap + + + + + Tab Spacing + + + + + Constructor for OneNote2007 style SuperTabItem base display + + Associated SuperTabItem + + + + Calculates the Content Rectangle for the tab + + Content Rectangle + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + OneNote2007 SuperTabStripBaseDisplay + + Associated TabStripItem + + + + Gets the next layout block position + + LayoutManagerPositionEventArgs + + + + Gets the next block position when attempting + to make a specific tab visible + + Potential item to replace + View item being placed + Block Rectangle + + + + Returns the Minimum tab size for this style + + + + + Tab Overlap + + + + + Tab Spacing + + + + + Constructor + + Associated SuperTabControlBox + + + + Performs RecalcSize processing + + + + + Refreshes the CloseBox + + + + + Performs control Paint processing + + + + + + InternalMouseEnter + + + + + InternalMouseLeave + + + + + InternalMouseDown + + + + + + InternalMouseUp + + + + + + Returns copy of the item + + + + + Gets or sets the CloseBox Visible state + + + + + Gets whether the mouse is down + + + + + Gets whether the mouse is over the CloseBox + + + + + Constructor + + Associated SuperTabStripItem + + + + Performs RecalcSize processing + + + + + Performs RecalcLayout processing + + + + + Performs individual running layout processing for the given BaseItem + + Item to Layout + Running Layout Size + Whether a recalcSize is needed + New running Size + + + + Refresh code + + + + + Paint processing + + + + + + InternalMouseEnter + + + + + InternalMouseLeave + + + + + InternalMouseMove + + + + + + InternalMouseDown + + + + + + InternalMouseUp + + + + + + Gets the ControlBoxItem from the given Point + + + + + + + OnItemAdded + + + + + + OnAfterItemRemoved + + + + + + Removes all user added items from the ControlBox + + + + + Returns copy of the item. + + + + + Gets or sets the ControlBox Bounds + + + + + Gets the CloseBox + + + + + Gets the MenuBox + + + + + Gets or sets the ControlBox Visible state + + + + + Gets the MouseDown state + + + + + Gets the MouseOver state + + + + + Gets the TabStrip TabDisplay + + + + + Constructor + + Associated SuperTabControlBox + + + + RecalcSize + + + + + Refreshes the display + + + + + Paint processing + + + + + + Determines if all the items are visible + + true if all visible + + + + Gets MenuButton1 + + + + + + + + Gets MenuButton2 + + + + + + + + InternalMouseEnter + + + + + InternalMouseLeave + + + + + InternalMouseDown + + + + + + Gets the popup menu position + + + + + + Loads the TabMenu + + + + + Loads Tabs only into the TabMenu + + + + + + Loads all items into the TabMenu + + + + + + Sets the TabMenu entry image + + + + + + + Handles SuperTabMenuBox_Click event + + + + + + + InternalMouseUp + + + + + + Returns copy of the item. + + + + + Gets or sets whether the MenuBox is automatically hidden when the tab items size does not exceed the size of the control + + + + + Gets or sets whether the MenuBox raises a ClickEvent when selected + + + + + Gets or sets whether MenuBox shows only Tabs entries + + + + + Gets or sets whether the MenuBox displays each menu entry with its associated Image/Icon + + + + + Gets or sets MenuBox Visible state + + + + + Gets the MouseDown state + + + + + Gets the MouseOver state + + + + + Constructor + + + + + Sets the tab docking based upon the given alignment + + + + + + Hooks (or unhooks) underlying TabStrip events + + true to hook, false to unhook + + + + Handles TabItemOpen events + + + + + + + Handles TabItemClose events + + + + + + + Handles TabMoving events + + + + + + + Handles TabMoved events + + + + + + + Handles TabRemoved events + + + + + + + Handles SelectedTabChanging events + + + + + + + Handles SelectedTabChanged events + + + + + + + Handles GetTabItemPath events + + + + + + + Handles GetTabItemContentRectangle events + + + + + + + Handles BeforeTabDisplay events + + + + + + + Handles MeasureTabItem events + + + + + + + Handles PreRenderTabItem events + + + + + + + Handles PostRenderTabItem events + + + + + + + Handles GetTabCloseBounds events + + + + + + + Handles GetTabImageBounds events + + + + + + + Handles GetTabTextBounds events + + + + + + + Handles TabStripPaintBackground events + + + + + + + Handles StyleManagerStyleChanged events + + + + + + Handles TabStripTabColorChanged events + + + + + + + Handles TabStrip_MouseUp events + + + + + + + Handles TabStrip_MouseDown events + + + + + + + Handles TabStrip_MouseMove events + + + + + + + Handles TabStrip_MouseClick events + + + + + + + Handles TabStrip_MouseDoubleClick events + + + + + + + Handles TabStrip_MouseEnter events + + + + + + + Handles TabStrip_MouseHover events + + + + + + + Handles TabStrip_MouseLeave events + + + + + + + Creates a TabControl tab + + + + + + + Creates a TabControl tab + + + + + + + + Creates a TabControl tab + + + + + + + + + Selects the previous tab + + true if tab selected + + + + Selects the next tab + + true if tab selected + + + + Gets the SuperTabItem tab containing the given Point + + Point to test + Associated tab, or null + + + + Gets the item (SuperTabItem or BaseView) associated + with the given Point + + Point to test + BaseItem or null + + + + Closes the given tab + + + + + + Causes a Layout Recalculation of the SuperTabControl + + + + + Refreshes all panel styles + + + + + Applies color and border settings to the given panel + + + + + + Applies color settings to the given panel + + + + + + + Applies border settings for the given panel + + + + + + Performs OnSystemColorsChanged processing + + + + + + Performs OnResize processing + + + NOT NEEDED. Let WinForms layout do the work! + + + + OnControlAdded + + + + + + OnControlRemoved + + + + + + BeginInit + + + + + EndInit + + + + + Occurs when a tab is added to the Tabs collection + + + + + Occurs when a tab is about to Close + + + + + Occurs when a tab is removed from the Tabs collection + + + + + Occurs when a tab is about to be displayed + + + + + Occurs when a tab is being moved or dragged by the user + + + + + Occurs when a tab has been moved or dragged by the user + + + + + Occurs when the Selected tab is changing + + + + + Occurs when the Selected tab has changed + + + + + Occurs when the control needs a tab's bordering path + + + + + Occurs when the control needs a tab's Content Rectangle + + + + + Occurs when the control needs to measure a tab + + + + + Occurs before any tab rendering is done + + + + + Occurs After all tab rendering is complete + + + + + Occurs when the control needs to get the tab's Text Bounds + + + + + Occurs when the control needs to get the tab's Image Bounds + + + + + Occurs when the control needs to get the tab's Close Button Bounds + + + + + Occurs when the TabStrip background needs painted + + + + + Occurs when a TabStrip MouseUp event is raised + + + + + Occurs when a TabStrip MouseDown event is raised + + + + + Occurs when a TabStrip MouseMove event is raised + + + + + Occurs when a TabStrip MouseClick event is raised + + + + + Occurs when a TabStrip MouseDoubleClick event is raised + + + + + Occurs when a TabStrip MouseEnter event is raised + + + + + Occurs when a TabStrip MouseHover event is raised + + + + + Occurs when a TabStrip MouseLeave event is raised + + + + + Gets or sets whether TabStrip will get focus when Tab key is used. Default value is false. + + + + + Gets or sets whether tabs are automatically closed when a close button is clicked + + + + + Gets or sets whether the tab's visible close button is displayed for every tab state + + + + + Gets or sets whether close button is visible on each tab + + + + + Gets or sets the position of the tab close button + + + + + Gets or sets the custom tab Close button image + + + + + Gets or sets the custom Close button image that is used on tabs when the mouse is over the close button + + + + + Gets or sets the custom Close button image that is used on tabs when the button has been pressed + + + + + Gets the TabStrip ControlBox + + + + + Gets or sets whether the only Text displayed is for the SelectedTab + + + + + Gets or sets whether text is drawn horizontally regardless of tab orientation + + + + + Gets or sets the default alignment of the Image within the tab + + + + + Gets or sets the ImageList used by the TabStrip and its tab items + + + + + Gets or sets BaseItem tab padding in pixels. + + + + + Gets or sets whether vertical tab text is rotated 180 degrees + + + + + Gets or sets the SelectedTab based upon the given panel + + + + + Gets or sets whether a focus rectangle is displayed when tab has input focus + + + + + Gets or sets the fixed tab size in pixels. Either Height, Width, or both can be set + + + + + Gets or sets whether a tab is currently in a drag operation + + + + + Gets or sets whether tabs can be reordered through the user interface + + + + + Gets or sets the selected tab + + + + + Gets or sets the selected tab Font + + + + + Gets or sets the index of the selected tab + + + + + Gets or sets the tab alignment within the Tab-Strip control + + + + + Gets or sets the tab Font + + + + + Gets or sets the Horizontal spacing around tab elements + + + + + Gets or sets the type of the tab layout + + + + + Gets the collection of Tabs + + + + + Gets the control TabStrip + + + + + Gets or sets the Color of the TabStrip + + + + + Gets or sets the tab style + + + + + Gets or sets the Vertical spacing around tab elements + + + + + Gets or sets whether tabs are visible + + + + + Gets or sets tab text alignment + + + + + Gets the DefaultSize + + + + + Indicates whether Form.Validate is called and checked before selected tab is changed. Default value is true. + + + + + Represents Panel for the SuperTabControl + + + + + + _PanelColor_ColorTableChanged + + + + + + + Processes ColorTable changes + + + + + GetStyle + + + + + + Provides OnPaint support + + + + + + Occurs when the tab colors have changed + + + + + Gets or sets which edge of the parent container a control is docked to. + + + + + Gets or sets user specified tab panel display colors + + + + + Gets or sets the Panel ElementStyle + + + + + Gets or sets TabItem that this panel is attached to. + + + + + Specifies background image position when container is larger than image. + + + + + Constructor + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when Symbol property has changed. + + Old property value + New property value + + + + Called when SymbolSet property value changes. + + Indciates old value + Indicates new value + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Called when SymbolSize property has changed. + + Old property value + New property value + + + + Hooks or unhooks control events + + true to hook + + + + SuperTabItem_TextChanged processing + + + + + + + TextMarkupLinkClick + + + + + + + OnMarkupLinkClick + + + + + + ColorTable_ColorTableChanged + + + + + + + Processes ColorTable changes + + + + + Closes the tab + + + + + Gets the operational tab font + + + + + + Gets the tab ColorTable + + SuperTabItemStateColorTable + + + + Gets the tab ColorStateTable for the given state + + eTabState + SuperTabItemStateColorTable + + + + Gets the tab Panel ColorTable + + + + + + Gets the area of the tab that contains the given Point + + + + + + + Determines if the given Point is in the tab + + Point to test + true if Point is in tab + + + + Gets the tab bordering GraphicsPath + + GraphicsPath + + + + Gets the Close Button bounding Rectangle + + Bounding Rectangle + + + + Gets the Image bounding Rectangle + + Bounding Rectangle + + + + Gets the Text bounding Rectangle + + Bounding Rectangle + + + + Calculates Close button bounds + + Running rectangle + Running rectangle + + + + Calculates Image bounds + + Running rectangle + Running rectangle + + + + Refreshes the tab owner + + + + + Refreshes the tab display + + + + + Paint processing + + + + + + InternalMouseMove + + + + + + InternalMouseEnter + + + + + InternalMouseLeave + + + + + InternalMouseDown + + + + + + InternalMouseUp + + + + + + ToString + + + + + + Dispose + + + + + Returns copy of the item. + + + + + Copies specific properties to new instance of the item. + + New SuperTabItem instance + + + + Occurs when text markup link is clicked + + + + + Occurs when the tab colors have changed + + + + + IsMarkupSupported + + + + + Gets or sets the default SelectedTabFont + + + + + Gets the tab CloseButton Bounds + + + + + Gets or sets the CloseButtonMouseOver state + + + + + Gets or sets the CloseButtonPressed state + + + + + Gets the effective image alignment + + + + + Gets the tab Image Bounds + + + + + Gets the tabs vertical orientation + + + + + Gets the TabItemDisplay + + + + + Gets the tabs TabStrip + + + + + Gets the tabs Text Bounds + + + + + Gets or sets whether image animation is enabled + + + + + Gets or sets user specified tab display colors + + + + + Gets or sets whether Close button on the tab is visible when SuperTabStrip.CloseButtonOnTabsVisible property is set to true + + + + + Enabled + + + + + Gets or sets whether text-markup support is enabled for the control's Text property + + + + + Gets or sets the FixedTabSize + + + + + Gets or sets the tab icon. Icon has same functionality as Image except that it supports Alpha blending + + + + + Gets or sets the tab image + + + + + Gets or sets the tab image index + + + + + Gets or sets the alignment of the Image within the tab + + + + + Gets or sets the spacing between content and edges of the Image + + + + + Gets or sets the predefined color for the tab + + + + + Gets or sets the selected tab Font + + + + + Gets the realized symbol string. + + + + + Indicates the symbol displayed on face of the button instead of + the image. Setting the symbol overrides the image setting. + + + + + Gets or sets the symbol set used to represent the Symbol. + + + + + Gets or sets the color of the Symbol. + + + + + Indicates the size of the symbol in points. + + + + + Gets or sets the text alignment + + + + + Gets or sets the tab Font + + + + + Gets or sets the tab text + + + + + Gets or sets the control that is attached to this tab + + + + + Gets or sets the tab Bounds + + + + + Gets the MouseOver state + + + + + Gets the tab selected state + + + + + Gets the tab alignment + + + + + Gets the tab Content Rectangle + + + + + Gets or sets the tab TabStripItem + + + + + Gets or sets the tabs TabStyle + + + + + Visible + + + + + Alignment + + + + + + + + + TopLeft + + + + + TopCenter + + + + + TopRight + + + + + MiddleLeft + + + + + MiddleCenter + + + + + MiddleRight + + + + + BottomLeft + + + + + BottomCenter + + + + + BottomRight + + + + + Tab area parts + + + + + Tab states + + + + + Constructor + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + ShowWithoutActivation + + + + + Constructor + + + + + Hooks or unhooks TabStripItem events + + true to hook + + + + TabStripItem_TabItemOpen + + + + + + + TabStripItem_TabItemClose + + + + + + + TabStripItem_TabRemoved + + + + + + + TabStripItem_TabMoving + + + + + + + TabStripItem_TabMoved + + + + + + + TabStripItem_GetTabItemPath + + + + + + + TabStripItem_GetTabItemContentRectangle + + + + + + + TabStripItem_BeforeTabDisplay + + + + + + + TabStripItem_MeasureTabItem + + + + + + + TabStripItem_PreRenderTabItem + + + + + + + TabStripItem_PostRenderTabItem + + + + + + + TabStripItem_GetTabCloseBounds + + + + + + + TabStripItem_GetTabImageBounds + + + + + + + TabStripItem_GetTabTextBounds + + + + + + + TabStripItem_TabStripPaintBackground + + + + + + + TabStripItem_SelectedTabChanging + + + + + + + TabStripItem_SelectedTabChanged + + + + + + + TabStripItem_TabStripTabColorChanged + + + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Performs layout recalculation + + + + + Ensures that the given tab is visible on the TabStrip + + + + + + Gets the SuperTabItem from the given Point + + + SuperTabItem or null + + + + Gets the BaseItem from the given Point + + + BaseItem or null + + + + Closes the given tab + + + + + + Selects the previous tab + + true if successful + + + + Selects the next tab + + true if successful + + + + OnResize processing + + + + + + BeginInit + + + + + EndInit + + + + + Occurs when a tab is added to the Tabs collection + + + + + Occurs when a tab is about to Close + + + + + Occurs when a tab is removed from the Tabs collection + + + + + Occurs when a tab is about to be displayed + + + + + Occurs when a tab is being moved or dragged by the user + + + + + Occurs when a tab has been moved or dragged by the user + + + + + Occurs when the Selected tab is changing + + + + + Occurs when the Selected tab has changed + + + + + Occurs when the control needs a tab's bordering path + + + + + Occurs when the control needs a tab's Content Rectangle + + + + + Occurs when the control needs to measure a tab + + + + + Occurs before any tab rendering is done + + + + + Occurs After all tab rendering is complete + + + + + Occurs when the control needs to get the tab's Text Bounds + + + + + Occurs when the control needs to get the tab's Image Bounds + + + + + Occurs when the control needs to get the tab's Close Button Bounds + + + + + Occurs when the TabStrip background needs painted + + + + + Occurs when the TabStrip TabColor has changed + + + + + Gets or sets whether the control attached to the TabItem.AttachedControl property + is automatically selected when TabItem becomes the selected tab. Default value is true. + + + + + Gets or sets whether tabs are automatically closed when a close button is clicked + + + + + Gets or sets whether the tab's visible close button is displayed for every tab state + + + + + Gets or sets whether close button is visible on each tab + + + + + Gets or sets the position of the tab close button + + + + + Gets or sets the custom tab Close button image + + + + + Gets or sets the custom Close button image that is used on tabs when the mouse is over the close button + + + + + Gets or sets the custom Close button image that is used on tabs when the button has been pressed + + + + + Gets the TabStrip ControlBox + + + + + Gets or sets whether the only Text displayed is for the SelectedTab + + + + + Gets or sets the default alignment of the Image within the tab + + + + + Gets or sets BaseItem tab padding in pixels. + + + + + Gets or sets whether vertical tab text is rotated 180 degrees + + + + + Gets or sets the fixed tab size in pixels. Either Height, Width, or both can be set + + + + + Gets or sets whether a tab is currently in a drag operation + + + + + Gets or sets whether tabs can be reordered through the user interface + + + + + Gets or sets the selected tab + + + + + Gets or sets the selected tab Font + + + + + Gets or sets the index of the selected tab + + + + + Gets or sets the tab alignment within the Tab-Strip control + + + + + Gets or sets the tab Font + + + + + Gets or sets the Horizontal spacing around tab elements + + + + + Gets or sets the type of the tab layout + + + + + Gets the collection of Tabs + + + + + Gets or sets the Color of the TabStrip + + + + + Gets or sets the tab style + + + + + Gets or sets the Vertical spacing around tab elements + + + + + Gets the TabStrip associated TabStripItem + + + + + Gets or sets tab text alignment + + + + + Gets whether the tabStrip is visually available + + + + + Gets the Design state for the control + + + + + Gets the ISupportInitialize state + + + + + Gets the TabDisplay + + + + + Gets or sets the reference to ribbon application button when tab control is used as backstage ribbon control. + + + + + Gets the DefaultSize + + + + + Constructor + + Associated SuperTabStrip + + + + Syncs the Orientation of each SubItem to + the current TabAlignment Orientation + + + + + Gets the Orientation based upon the current + TabAlignment + + + + + + Makes sure all newly added items + are set to the design orientation and style + + + + + + Applies the current TabStyle to each tab and + sets the item style to the DotNetBarStyle from the TabStyle + + + + + Gets the DotNetBarStyle from the SuperTabStyle + + eDotNetBarStyle + + + + Hooks or unhooks our events + + + + + + Handles SubItemsChanged events + + + + + + + Handles newly added items + + + + + + Handles newly removed items + + + + + + Handles tab color changes + + + + + + + Handles color table changes + + + + + + + Performs NeedRecalcSize and refresh + + + + + Recalculates the size of the tabs. + + + + + Ensures that the given item is visible on the TabStrip + + + + + + Selects the given tab + + + + + + + Selects the previous tab + + + + + + Selects the previous tab + + + + + + Selects the next tab + + + + + + Selects the next tab + + + + + + UpdateSelectedTab + + + + + OnTabStyleChanged + + + + + OnMeasureTabItem + + + + + + + + + OnPreRenderTabItem + + + + + + + + OnPostRenderTabItem + + + + + + + OnGetTabItemContentRectangle + + + + + + + OnGetTabItemPath + + + + + + + OnSelectedTabRemoved + + + + + + + OnSelectedTabChanging + + + + + + + + OnSelectedTabChanged + + + + + + + + OnBeforeTabDisplay + + + + + + OnTabItemClose + + + + + + + OnTabStripColorChanged + + + + + OnPaintBackground + + + + + + + OnGetTextBounds + + + + + + + + OnGetImageBounds + + + + + + + + OnGetCloseBounds + + + + + + + + OnTabMoving + + + + + + + + + OnTabMoved + + Tab that was moved + Old tab order + New tab order + + + + + ItemAtLocation + + + + + + + + InternalClick + + + + + + + InternalMouseDown + + + + + + InternalMouseUp + + + + + + InternalMouseMove + + + + + + InternalOnMouseMove + + + + + + ProcessMouseMove + + + + + + HotTabMouseMove + + + + + + + ControlBoxMouseMove + + + + + + ProcessTabMove + + + + + + StartTabMove + + + + + + + SetDragWindowRegion + + + + + TabDragWindow_Paint + + + + + + + InternalMouseLeave + + + + + InternalOnMouseLeave + + + + + Get the tab at the given Point + + + SuperTabItem or null + + + + Gets the item at the given point + + + BaseItem or null + + + + Gets the next visible Tab + + + SuperTabItem + + + + Closes the given tab + + + + + + Paint processing + + + + + + SubItemSizeChanged + + + + + + Returns copy of the item. + + + + + Copies specific properties to new instance of the item. + + New SuperTabStripItem instance + + + + Occurs when a tab is added to the Tabs collection + + + + + Occurs when a tab is about to Close + + + + + Occurs when a tab is removed from the Tabs collection + + + + + Occurs when a tab is about to be displayed + + + + + Occurs when a tab is being moved or dragged by the user + + + + + Occurs when a tab has been moved or dragged by the user + + + + + Occurs when the Selected tab is changing + + + + + Occurs when the Selected tab has changed + + + + + Occurs when the control needs a tab's bordering path + + + + + Occurs when the control needs a tab's Content Rectangle + + + + + Occurs when the control needs to measure a tab + + + + + Occurs before any tab rendering is done + + + + + Occurs After all tab rendering is complete + + + + + Occurs when the control needs to get the tab's Text Bounds + + + + + Occurs when the control needs to get the tab's Image Bounds + + + + + Occurs when the control needs to get the tab's Close Button Bounds + + + + + Occurs when the TabStrip background needs painted + + + + + Occurs when the TabStrip TabColor has changed + + + + + Occurs when the TabStrip Color has changed + + + + + Gets or sets AutoCloseTabs + + + + + Gets or sets whether the control attached to the TabItem.AttachedControl property + is automatically selected when TabItem becomes the selected tab. Default value is true. + + + + + Gets or sets TabCloseButtonNormal + + + + + Gets or sets TabCloseButtonHot + + + + + Gets or sets TabCloseButtonPressed + + + + + Gets or sets TabHorizontalSpacing + + + + + Gets or sets TabVerticalSpacing + + + + + Gets or sets CloseButtonOnTabsVisible + + + + + Gets or sets CloseButtonOnTabsAlwaysDisplayed + + + + + Gets or sets CloseButtonPosition + + + + + Gets the ControlBox + + + + + Gets or sets DisplaySelectedTextOnly + + + + + Gets or set the Expanded state + + + + + Gets or sets the tab font + + + + + Gets or sets the selected tab font + + + + + Gets or sets the HorizontalText + + + + + Gets or sets the default alignment of the Image within the tab + + + + + Gets or sets the BaseItem tab padding. + + + + + Gets or sets RotateVerticalText + + + + + Gets or sets ShowFocusRectangle + + + + + Gets or sets the FixedTabSize + + + + + Gets or sets + + + + + Gets the MinTabStripHeight + + + + + Gets or sets ReorderTabsEnabled + + + + + Gets or sets the selected tab + + + + + Gets or sets the selected tab index + + + + + Gets or sets the tab alignment + + + + + Gets or sets the TabLayoutType + + + + + Gets or sets the TabStripColor + + + + + Gets or sets the TabStyle + + + + + Gets or sets the TextAlignment + + + + + Gets the First Visible Tab + + + + + Gets the HotTab + + + + + Gets the InsertTab + + + + + Gets whether to insert before or after + + + + + Gets the MouseOver tab + + + + + Gets TabStrip vertical orientation + + + + + Gets the Last Visible Tab + + + + + Gets the tab close button size + + + + + Gets the TabDisplay + + + + + Gets or sets the TabItemsBounds + + + + + Gets or sets the number of TabLines + + + + + Gets the TabStrip + + + + + Gets the visible tab count + + + + + Gets or sets the promoted visible tab + + + + + Generic ValueChangingEventArgs + + oldValue type + newValue type + + + + Gets the old value + + + + + Gets the new value + + + + + Generic ValueChangingSourceEventArgs + + oldValue type + newValue type + EventSource + + + + Gets the old value + + + + + Gets the new value + + + + + Gets the eventSource + + + + + Generic ValueChangedEventArgs + + oldValue type + newValue type + + + + Gets the old value + + + + + Gets the new value + + + + + Generic ValueChangedSourceEventArgs + + oldValue type + newValue type + EventSource + + + + Gets the old value + + + + + Gets the new value + + + + + Gets the eventSource + + + + + Gets the tab + + + + + Gets the tab + + + + + Gets the old order of the tabs + + + + + Gets or sets the new order of the tabs + + + + + TabStripTabColorChangedEventArgs + + + + + Constructor + + + + + Constructor + + Associated SuperTabStripItem + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + + + + + Measures the given tab + + + + + + + Measures the markup text + + + + + + + + + Measures the given text + + + + + + + + + Finalizes the layout + + + + + + + + + Reorders the lines to keep the selected tab as line 0. + + + + + + + Adjusts the line layout + + + + + + + Gets the array od line sizes + + + + + + + Adjusts the individual blocks within a given line + + + + + + + Sets the Displayed status for the line blocks + + + + + + + Gets the count of BeginBreak groups + + + + + + + + Process item BeginBreaks + + + + + + + + + Makes sure the "VisibleTab" is in fact visible. + + + + + + + Determines what line th selected tab lies within + + + + + + + Finds the SelectedTab block + + + + + + + Resizes single line layouts + + + + + + Resizes multiline layouts + + + + + + gets or sets the FixedTabSize + + + + + Gets or sets the TabLayoutOffset + + + + + Gets the TabDisplay + + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + Applies the predefined tab color to the color table + + + + + + + Applies the predefined color to the panel color table + + + + + + Constructor + + Associated SuperTabStripItem + + + + Gets the TabLayoutOffset + + + + + Constructor + + Associated SuperTabItem + + + + Returns the tab ContentRectangle + + + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + Constructor + + Associated SuperTabStripItem + + + + Gets the LayoutManager NextBlockPosition + + + + + + Gets the PromoteSelectedTab NextBlockPosition + + + + + + + + Gets the TabOverlap + + + + + Gets the TabSpacing + + + + + Gets the TabOverlapLeft + + + + + Gets the TabLayoutOffset + + + + + Gets the MinTabSize + + + + + Constructor + + Associated SuperTabItem + + + + Creates the tab item GraphicsPath + + Tab path + + + + Create the Top tab path + + GraphicsPath + + + + Creates the Bottom tab path + + GraphicsPath + + + + Creates the Left tab path + + GraphicsPath + + + + Create the Right tab path + + GraphicsPath + + + + Constructor + + Associated SuperTabStripItem + + + + Gets the Layout manager NextBlockPosition + + + + + + Gets the "PromoteSelTab" NextBlockPosition + + + + + + + + Raises ValueChanging event. + + Provides event arguments. + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Forces the button to perform internal layout. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Cancels animation if in progress. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Sets the value of the control with state transition animation (if enabled) and specifies the source of the action. + + New value for Value property. + Source of the action. + + + + Sets the value of the control and specifies the source of the action. + + New value for Value property. + Source of the action. + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Raises ValueObjectChanged event. + + Provides event arguments. + + + + Called when Command property value changes. + + + + + Occurs before Value property has changed and it allows you to cancel the change. + + + + + Occurs after Value property has changed. + + + + + Gets or sets the switch value. + + + + + Gets or sets the item border color. + + + + + Gets or sets whether state transition animation is enabled. + + + + + Gets or sets the color of the OFF state background. + + + + + Gets or sets the color of the ON state background. + + + + + Gets or sets the color of the ON state text. + + + + + Gets or sets the color of the OFF state text. + + + + + Gets or sets the border color of the button switch. + + + + + Gets or sets the background color of the switch button. + + + + + Gets or sets the text color. + + + + + Gets or sets the font that is used to draw ON/OFF text on the switch button. + + + + + Gets or sets the text that is displayed on switch when Value property is set to true. + + + + + Gets or sets the text that is displayed on switch when Value property is set to false. + + + + + Gets or sets the width in pixels of the switch part of the button. Minimum value is 6. + + + + + Gets the switch bounds. + + + + + Gets the On part of the switch button bounds excluding the SwitchBounds. + + + + + Gets the Off part of the switch button bounds excluding the SwitchBounds. + + + + + Gets or sets whether button is in read-only state meaning that it appears as enabled but user cannot change its state. + + + + + Gets or sets whether lock marker is visible on face of the control when IsReadOnly is set to true. + Default value is true. + + + + + Gets or sets the color of the read-only marker. + + + + + Indicates whether clicking left mouse button on the switch part of the item will toggle the switch Value. + + + + + Occurs after ValueObject property changes. + + + + + Gets or sets the object that represents the Value state of control. + + + + + Gets or sets the value that represents the True state of control when ValueObject property is set to that value. + + + + + Gets or sets the value that represents the False state of control when ValueObject property is set to that value. + + + + + Gets or sets the command assigned to the item. Default value is null. + Note that if this property is set to null Enabled property will be set to false automatically to disable the item. + + + + + Gets or sets user defined data value that can be passed to the command when it is executed. + + + + + Represents the switch button UI element. + + + + + Raises ValueChanging event. + + Provides event arguments. + + + + Raises ValueChanged event. + + Provides event arguments. + + + + Creates new instance of SwitchButtonItem. + + + + + Creates new instance of SwitchButtonItem and assigns the name to it. + + Item name. + + + + Creates new instance of SwitchButtonItem and assigns the name and text to it. + + Item name. + item text. + + + + Returns copy of the item. + + + + + Copies the SwitchButtonItem specific properties to new instance of the item. + + New SwitchButtonItem instance. + + + + Copies the SwitchButtonItem specific properties to new instance of the item. + + New SwitchButtonItem instance. + + + + Sets the value of the control and specifies the source of the action. + + New value for Value property. + Source of the action. + + + + Sets the value of the control with state transition animation (if enabled) and specifies the source of the action. + + New value for Value property. + Source of the action. + + + + Cancels any current inprogress animation. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Gets whether property should be serialized. + + + + + Resets property to its default value. + + + + + Occurs before Value property has changed and it allows you to cancel the change. + + + + + Occurs after Value property has changed. + + + + + Gets whether item supports text markup. Default is false. + + + + + Gets or sets whether text-markup support is enabled for items Text property. Default value is true. + Set this property to false to display HTML or other markup in the item instead of it being parsed as text-markup. + + + + + Gets or sets the text associated with this item. + + + + + Gets or sets the switch value. + + + + + Indicates whether clicking left mouse button on the switch part of the item will toggle the switch Value. + + + + + Gets the switch bounds. + + + + + Gets the button bounds. + + + + + Gets the On part of the switch button bounds excluding the SwitchBounds. + + + + + Gets the Off part of the switch button bounds excluding the SwitchBounds. + + + + + Gets or sets the switch offset from its initial position. Used for animation and dragging of the switch. + + + + + Gets whether switch part of the button is pressed using mouse left button. + + + + + Gets or sets the width in pixels of the switch part of the button. Minimum value is 6. + + + + + Gets or sets the text that is displayed on switch when Value property is set to true. + + + + + Gets or sets the text that is displayed on switch when Value property is set to false. + + + + + Gets whether fade effect is enabled. + + + + + Gets or sets whether state transition animation is enabled. + + + + + Gets or sets the width of the switch button. Must be greater than SwitchWidth. + + + + + Gets or sets the height of the switch button. Must be greater than 5. + + + + + Gets or sets text padding. + + + + + Gets or sets switch margin. + + + + + Gets or sets the color of the OFF state background. + + + + + Gets or sets the color of the ON state background. + + + + + Gets or sets the color of the ON state text. + + + + + Gets or sets the color of the OFF state text. + + + + + Gets or sets the item border color. + + + + + Gets or sets the border color of the button switch. + + + + + Gets or sets the background color of the switch button. + + + + + Gets or sets whether caption/label set using Text property is visible. + + + + + Gets or sets the text color. + + + + + Gets or sets the font that is used to draw ON/OFF text on the switch button. + + + + + Gets or sets whether button is in read-only state meaning that it appears as enabled but user cannot change its state. + + + + + Gets or sets whether lock marker is visible on face of the control when IsReadOnly is set to true. + Default value is true. + + + + + Gets or sets the color of the read-only marker. + + + + + Provides data for SwitchButton rendering. + + + + + Gets or sets Graphics object group is rendered on. + + + + + Gets or sets the reference to SwitchButtonItem being rendered. + + + + + ColorScheme object that is used to provide colors for rendering check box item in legacy styles like Office 2003. Office 2007 style + uses color tables provided by renderer. + + + + + Indicates whether item is in Right-To-Left environment. + + + + + Gets or sets the text font. + + + + + Gets or sets the ItemPaintArgs reference. + + + + + Creates new instance of the object and provides default values. + + Reference to Graphics object + Reference to SwitchButtonItem + Reference to legacy ColorScheme + Indicates the font for the text. + Indicates whether item is in Right-To-Left environment. + + + + Returns specific font set at specified size/ + + Font size + Symbol set to return + Font + + + + Returns FontAwesome at specific size. + + Font size in points + Font in desired size. + + + + Returns FontAwesome at specific size. + + Font size in points + Font in desired size. + + + + Gets FontAwesome at default size. + + + + + Returns FontAwesome Family. + + + + + Gets Material Font at default size. + + + + + Returns Material Font Family. + + + + + Gets the default size for the Material font size in points. + + + + + Gets the default size for the FontAwesome font size in points. + + + + + Represents colors for the active tab. + + + + + Creates new instance of the object. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Returns whether property should be serialized. + + true if property should be serialized otherwise false. + + + + Resets property to the default value. + + + + + Occurs after color property has changed. + + + + + Gets or sets the background color of the tab when inactive. + + + + + Gets or sets the target gradient background color of the tab when inactive. + + + + + Gets or sets the gradient angle. + + + + + Gets the collection that defines the multi-color gradient background for tab item.. + + + + + Gets or sets the light border color when tab is inactive. + + + + + Gets or sets the dark border color when tab is inactive. + + + + + Gets or sets the border color when tab is inactive. + + + + + Gets or sets the text color when tab is inactive. + + + + + Represents the class that defines colors for a tab control. + + + + + Default constructor. + + + + + Default contructor that accepts style. + + + + + Refreshes colors stored in the color scheme. This method is used for example to refresh the color after system display colors have changed. + + + + + Generates color scheme for flat style. + + + + + Generates color scheme for Office 2003 style. + + + + + Generates the VS2005 document tab like color scheme. + + + + + Generates Windows XP Themed color scheme. + + + + + Generates OneNote style color scheme. + + + + + Generates VS2005 style color scheme. + + + + + Generates OneNote style color scheme. + + + + + Generates OneNote style color scheme. + + + + + Resets changed flag for all color properties. When changed flag is set for a color property color is not automatically generated for that property. + Reseting the flag will ensure that all colors are automatically generated. + + + + + Applies predefinied tab item color scheme to the tab. + + Tab item to apply color to. + Predefined color to apply + + + + Applies predefinied tab item color scheme to the tab. + + Tab item to apply color to. + Predefined color to apply + + + + Gets or sets the style that color scheme represents. + + + + + Gets or sets whether themed color scheme is generated. + + + + + Indicates whether any of the colors has changed. + + + + + Gets or sets the tab-strip background image. + + + + + Specifies the background color of the tab control. + + + + + Specifies the target gradient background color of the tab control. + + + + + Specifies the gradient angle. + + + + + Specifies the border color of the tab control. + + + + + Specifies the background color of the tab panel. + + + + + Specifies the target gradient background color of the tab panel. + + + + + Specifies the gradient angle. + + + + + Specifies the border color of the tab panel. + + + + + Specifies the border color of the tab item. + + + + + Specifies the light border color of the tab item. + + + + + Specifies the dark border color of the tab item. + + + + + Specifies the background color of the tab item. + + + + + Specifies the target gradient background color of the tab item. + + + + + Specifies the gradient angle. + + + + + Gets the collection that defines the multi-color gradient background for tab item.. + + + + + Specifies the text of the tab item. + + + + + Specifies the border color of the tab item when mouse is over it. + + + + + Specifies the light border color of the tab item when mouse is over it. + + + + + Specifies the dark border color of the tab item when mouse is over it. + + + + + Specifies the background color of the tab item when mouse is over it. + + + + + Specifies the target gradient background color of the tab item when mouse is over it. + + + + + Specifies the gradient angle. + + + + + Gets the collection that defines the multi-color gradient background for tab item.. + + + + + Specifies the text color of the tab item when mouse is over it. + + + + + Specifies the border color of the tab item when selected. + + + + + Specifies the light border color of the tab item when selected. + + + + + Specifies the dark border color of the tab item when selected. + + + + + Specifies the background color of the tab item when selected. + + + + + Specifies the target gradient background color of the tab item when selected. + + + + + Specifies the gradient angle. + + + + + Gets the collection that defines the multi-color gradient background for tab item.. + + + + + Specifies the text color of the tab item when selected. + + + + + Specifies the tab item separator color. + + + + + Specifies the tab item separator shadow color. + + + + + Specifies the text of the tab item. + + + + + Summary description for TabControl. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets whether property should be serialized. Used by Windows Forms designer. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Applies default tab colors to the panel + + Panel to apply colors to. + + + + Resumes normal layout logic. Optionally forces an immediate layout of pending layout requests. + + + + + Resizes the portion of the control that holds the tabs. + + + + + Creates new tab and tab panel and adds it to the Tabs collection. + + Tab text. + Reference to newly created TabItem. + + + + Creates new tab and tab panel and inserts it at specified position inside of Tabs collection. + + Tab text. + Index to insert newly created tab at. -1 will append tab to the end of Tabs collection. + Reference to newly created TabItem. + + + + Selects previous visible tab. Returns true if previous tab was found for selection. + + + + + Selects next visible tab. Returns true if next tab was found for selection. + + + + + Resets color scheme to default value. + + + + + Memeber used by Windows Forms designer. + + true if property should be serialized. + + + + Memeber used by Windows Forms designer to reset property to default value. + + + + + Occurs when selected tab changes. + + + + + Occurs before selected tab changes and gives you opportunity to cancel the change. + + + + + Occurs when tab is dragged by user. + + + + + Occurs when the user navigates back using the back arrow. + + + + + Occurs when the user navigates forward using the forward arrow. + + + + + Occurs when tab item is closing. + + + + + Occurs when tab item is added to the tabs collection. + + + + + Occurs before control or item attached to the tab is displayed. + + + + + Occurs after tab item has been removed from tabs collection. + + + + + Gets or sets the background color. + + + + + Gets the collection of all tabs. + + + + + Gets or sets whether tabs are visible. Default value is true. + + + + + Returns reference to internal tab strip control. + + + + + Gets or sets whether TabStrip will get focus when Tab key is used. Default value is false. + + + + + Use TabControlPanel.Style property to set the background image for each tab panel. + + + + + Gets or sets whether pressing Ctrl+Tab keys will cycle through the selected tabs. Default value is true. + + + + + Gets or sets whether tabs use anti-alias smoothing when painted. Default value is false. + + + + + Gets or sets whether the tab scrolling is animated. + + + + + Gets or sets whether system box that enables scrolling and closing of the tabs is automatically hidden when tab items size does not exceed the size of the control. + + + + + Specifes whether end-user can reorder the tabs. + + + + + Gets or sets whether tab is automatically closed when close button is clicked. Closing the tab will remove tab being closed from Tabs collection + and it will remove the panel as well. Default value is false which means that tab will not be closed and you should handle TabClose event to + perform desired action as result of user closing the tab. + + + + + Gets or sets whether the Close button that closes the active tab is visible on system box. + + + + + Gets or sets whether close button is visible on each tab instead of in system box. + + + + + Gets or sets whether close button on tabs when visible is displayed for every tab state. Default value is true. When set to false + the close button will be displayed only for selected and tab that mouse is currently over. + + + + + Gets or sets the position of the close button displayed on each tab. Default value is Left. + + + + + Gets or sets custom image that is used on tabs as Close button that allows user to close the tab. + Use TabCloseButtonHot property to specify image that is used when mouse is over the close button. Note that image size must + be same for both images. + Default value is null + which means that internal representation of close button is used. + + + + + Gets or sets custom image that is used on tabs as Close button whem mouse is over the close button. + To use this property you must set TabCloseButtonNormal as well. Note that image size for both images must be same. + Default value is null which means that internal representation of close button is used. + + + + + Gets or sets whether only selected tab is displaying it's text. + + + + + Gets or sets the image list used by tab items. + + + + + Gets or sets scrolling offset of the first tab. You can use this property to programmatically scroll the tab strip. + + + + + Gets or sets Tab Control style. Theme style is supported only on themed OS and only for bottom or top aligned tabs. + + + + + Specifies whether tab is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets or sets whether tabs are scrolled continuously while mouse is pressed over the scroll tab button. + + + + + Gets or sets the auto-repeat interval for the tab scrolling while mouse button is kept pressed over the scroll tab button. + + + + + Gets or sets Tab Color Scheme. + + + + + Gets or sets the tab alignment within the Tab-Strip control. + + + + + Gets or sets the selected tab. + + + + + Gets or sets the selected tab Font + + + + + Gets or sets whether focus rectangle is displayed on the tab when tab has input focus. + + + + + Gets or sets whether keyboard navigation using Left and Right arrow keys to select tabs is enabled. Default value is true. + + + + + Gets or sets the index of the selected tab. + + + + + Gets or sets selected tab panel. + + + + + Gets or sets the type of the tab layout. + + + + + Gets or sets the fixed tab size in pixels. Either Height or Width can be set or both. + Value of 0 indicates that size is automatically calculated which is + default behavior. + + + + + Represents Panel for the Tab Control. + + + + + Default constructor. + + + + + Gets or sets TabItem that this panel is attached to. + + + + + Indicates whether style of the panel is managed by tab control automatically. + Set this to true if you would like to control style of the panel. + + + + + Gets or sets which edge of the parent container a control is docked to. + + + + + Represents the Tab on the Tab-Strip control. + + + + + Default constructor. + + Container object. + + + + Default constructor. + + + + + Returns the font for the tab text. + + Reference to the font object. + + + + Raises the Click event. + + + + + Occurs when mouse is pressed over the tab item. + + + + + Occurs when mouse button is released over the tab item. + + + + + Occurs when mouse hovers over the tab item. + + + + + Occurs when mouse enters the tab item. + + + + + Occurs when mouse leaves the tab item. + + + + + Occurs when mouse moves over the tab item. + + + + + Occurs when mouse click is performed on the tab item. + + + + + Gets the AccessibleObject assigned to the item. + + + + + Gets or sets the tab Image index. + + + + + Gets or sets the tab image. + + + + + Gets or sets the tab icon. Icon has same functionality as Image except that it support Alpha blending. + + + + + Gets or sets the text displayed on the tab. + + + + + Gets or sets whether tab is visible. + + + + + Gets the display bounds of the tab. + + + + + Gets or sets the bounds of the close button rectangle if displayed on the tab. You should not set value of this property. + + + + + Gets or sets the control that is attached to this tab. When tab is selected the control Visible property is set to true and when tab is unselected the control Visible property is set to false. + + + + + Gets or sets the background color of the tab when inactive. + + + + + Gets or sets the target gradient background color of the tab when inactive. + + + + + Gets or sets the gradient angle. + + + + + Gets or sets the light border color when tab is inactive. + + + + + Gets or sets the dark border color when tab is inactive. + + + + + Gets or sets the border color when tab is inactive. + + + + + Gets or sets the text color when tab is inactive. + + + + + Gets or sets name of the tab item that can be used to identify item from the code. + + + + + Gets or sets the predefined tab color. + + + + + Gets or sets an object that contains data to associate with the item. + + + + + Gets/Sets informational text (tooltip) for the tab. + + + + + Returns true if tab is selected tab. + + + + + Gets the tab alignment. + + + + + Returns true if mouse is over the tab. + + + + + Gets or sets whether Close button on the tab is visible when TabStrip.CloseButtonOnTabsVisible property is set to true. Default value is true. You can use this property + to selectively hide Close button on tabs. + + + + + Gets or sets the bounds of the content block. + + + + + Gets or sets item margin only used by certain items in certain containers. Provided only for internal DotNetBar use. + + + + + Summary description for TabItemLayoutManager. + + + + + Resizes the content block and sets it's Bounds property to reflect new size. + + Content block to resize. + + + + Gets or sets the padding in pixels for the measured text. Default is 4. + + + + + Gets or sets the padding in pixels for the measured image size. Default is 4. + + + + + Gets or sets the padding in pixels that is added to the measured height of the tab. Default is 4. + + + + + Gets or sets the padding in pixels that is added to the measured width of the tab. Default is 0. + + + + + Gets or sets whether text is always layed out horizontaly even if tabs are vertically aligned. + + + + + Gets or sets the additional padding for the selected item. + + + + + Gets or sets the fixed tab size in pixels. Either member can be set. Value of 0 indicates that size is automatically calculated which is + default behavior. + + + + + Summary description for TabsCollection. + + + + + Get the TabItem with given name. Name comparison is case insensitive. + + + + + + + Represents Tab-Strip control. + + + + + Raises TabMouseEnter event. + + Provides event arguments. + + + + Raises TabMouseLeave event. + + Provides event arguments. + + + + Raises TabMouseMove event. + + Provides event arguments. + + + + Raises TabMouseClick event. + + Provides event arguments. + + + + Raises TabMouseHover event. + + Provides event arguments. + + + + Default constructor. + + + + + Returns the bounds of the tab system box if one is available in current tab style. + + Rectangle describing the system box bounds. + + + + Recalculates the size of the tabs. + + + + + Selectes previous visible tab. Returns true if previous tab was found for selection. + + + + + Selectes next visible tab. Returns true if next tab was found for selection. + + + + + Invokes the TabCleared event. + + Provides events arguments + + + + Ensures that the tab is visible, scrolling the tab-strip view as necessary. + + Tab to make visible. + + + + Clean up any resources being used. + + + + + Called by StyleManager to notify control that style on manager has changed and that control should refresh its appearance if + its style is controlled by StyleManager. + + New active style. + + + + Refreshes the color scheme with the colors from system color table. + + + + + Resets color scheme to default value. + + + + + Memeber used by Windows Forms designer. + + true if property should be serialized. + + + + Memeber used by Windows Forms designer to reset property to default value. + + + + + Returns tab item that contains specified coordinates. + + X - coordinate to hit test + Y - coordinate to hit test + + + + + Hides tooltip for a tab is one is displayed. + + + + + Shows tooltip for given tab. + + + + + Resets Hoover timer. + + + + + Occurs after selected tab has changed. + + + + + Occurs before selected tab changes and gives you opportunity to cancel the change. + + + + + Occurs when tab is dragged by user. + + + + + Occurs when the user navigates back using the back arrow. + + + + + Occurs when the user navigates forward using the forward arrow. + + + + + Occurs when tab item is closing. + + + + + Occurs when tab item is added to the tabs collection. + + + + + Occurs before control or item attached to the tab is displayed. + + + + + Occurs after tab item has been removed from tabs collection. + + + + + Occurs after Tabs collection has been cleared. + + + + + Occurs after the tab item size has been determined and allows you to apply your custom size to the TabItem. + + + + + Occurs before tab is rendered and allows you to cancel default tab rendering performed by the control. + + + + + Occurs after tab is rendered and allows you to render on top of the default rendering performed by the control. + + + + + Occurs when mouse enters a tab. + + + + + Occurs when mouse leaves a tab. + + + + + Occurs when mouse moves over the tab. + + + + + Occurs when mouse clicks the tab. + + + + + Occurs when mouse hovers over the tab. + + + + + Gets or sets whether anti-alias smoothing is used while painting. Default value is false. + + + + + Returns minimum tab strip height given the style and the tabs it contains. + + + + + Returns the rectangle that contains all the tabs. + + + + + Gets or sets the index of currently selected tab. + + + + + Gets or sets the selected tab. + + + + + Gets or sets whether tabs are scrolled continuously while mouse is pressed over the scroll tab button. + + + + + Gets or sets the auto-repeat interval for the tab scrolling while mouse button is kept pressed over the scroll tab button. + + + + + Gets or sets whether the Close button that closes the active tab is visible. + + + + + Gets or sets whether close button is visible on each tab instead of in system box. + + + + + Gets or sets whether close button on tabs when visible is displayed for every tab state. Default value is true. When set to false + the close button will be displayed only for selected and tab that mouse is currently over. + + + + + Gets or sets the position of the close button displayed on each tab. Default value is Left. + + + + + Gets or sets custom image that is used on tabs as Close button that allows user to close the tab. + Use TabCloseButtonHot property to specify image that is used when mouse is over the close button. Note that image size must + be same for both images. + Default value is null + which means that internal representation of close button is used. + + + + + Gets or sets custom image that is used on tabs as Close button whem mouse is over the close button. + To use this property you must set TabCloseButtonNormal as well. Note that image size for both images must be same. + Default value is null which means that internal representation of close button is used. + + + + + Gets the collection of all tabs. + + + + + Gets or sets whether control attached to the TabItem.AttachedControl property is automatically selected when TabItem becomes selected tab. Default value is true. + + + + + Gets or sets the image list used by tab items. + + + + + Gets or sets the type of the tab layout. + + + + + Gets or sets whether tab size is adjusted to fit the available control size. + + + + + Gets or sets scrolling offset of the first tab. You can use this property to programmatically scroll the tab strip. + + + + + Gets or sets whether keyboard navigation using Left and Right arrow keys to select tabs is enabled. Default value is true. + + + + + Gets or sets the mouse cursor that is displayed when tab is dragged. + + + + + Returns tab mouse is over or null if mouse is not over the tab. + + + + + Gets or sets the selected tab Font + + + + + Gets or sets the tab alignment within the Tab-Strip control. + + + + + Specifes whether end-user can reorder the tabs. + + + + + Gets or sets whether system box that enables scrolling and closing of the tabs is automatically hidden when tab items size does not exceed the size of the control. + + + + + Gets or sets the background color. + + + + + Gets or sets whether only selected tab is displaying it's text. + + + + + Gets or sets TabStrip style. Theme style is supported only on themed OS and only for bottom or top aligned tabs. + + + + + Specifies whether tab is drawn using Themes when running on OS that supports themes like Windows XP. + + + + + Gets whether control should be represented in themed style. + + + + + Gets or sets Tab Color Scheme. + + + + + Gets or sets whether the tab scrolling is animanted. + + + + + Gets or sets the fixed tab size in pixels. Either Height or Width can be set or both. + Value of 0 indicates that size is automatically calculated which is + default behavior. + + + + + Gets or sets whether focus rectangle is displayed when tab has input focus. + + + + + Gets or sets whether Tab-Strip control provides Tabbed MDI Child form support. Default value is false. + + + + + Gets or sets the maximum number of characters that will be used as Tab text from Mdi Child caption. + + + + + Gets or sets whether the Mdi Child Icon is displayed on Tab. + + + + + Gets or sets whether the Tab-strip is automatically hidden when there are not Mdi Child forms open. + + + + + Gets or sets whether flicker associated with switching maximized Mdi child forms is attempted to eliminate. You should set this property to false if you encounter any painting problems with your Mdi child forms. + + + + + Gets or sets Mdi Container form for which Tab-Strip is providing Tabbed MDI Child support. + + + + + Event delegate for SelectedTabChanged event. + + + + + Event delegate for SelectedTabChanging event. + + + + + Event delegate for TabMoved event + + + + + Event delegate for NavigateBack, NavigateForward and TabItemClose events. + + + + + Represents the event arguments for tab selection events. + + + + + Currently selected tab. + + + + + Tab being selected. + + + + + Specifies the action that caused the event. + + + + + Default constructor. + + Currently selected tab. + New selection. + + + + Represents the event arguments for tab selection events. + + + + + Currently selected tab. + + + + + Tab being selected. + + + + + Cancels the selection operation. + + + + + Specifies the action that caused the event. + + + + + Default constructor. + + Currently selected tab. + New selection. + + + + Represents the event arguments for tab moving events. + + + + + Tab being moved. + + + + + Moved from index. + + + + + Moving to index. + + + + + Cancels the operation. + + + + + Default Constructor + + Tab + Old Index + New Index + + + + Represents the event arguments for action events. + + + + + Cancels the operation. + + + + + Default Constructor. + + + + + Destroys tooltip window. + + + + + Specifies the tab alignment inside the Tab-Strip control. + + + + + Tabs are left aligned. + + + + + Tabs are right aligned. + + + + + Tabs are top aligned. + + + + + Tabs are bottom aligned. + + + + + Indicates tab strip style. + + + + + Default VS.NET like flat style. + + + + + Office 2003 like style. + + + + + OneNote like style. + + + + + VS.NET 2005 style tabs. + + + + + Tab style where tabs are centered and first and last tab have the corners rounded. This style does not support multi-line tabs or tab scrolling. + + + + + VS.NET 2005 dock style tabs. + + + + + VS.NET 2005 document style tabs. + + + + + Simulated theme style with the horizontal text alignment at all times. + + + + + Office 2007 document style. + + + + + Office 2007 dock style. + + + + + Metro UI style. + + + + + Defines delegate for the MeasureTabItem event. + + + + + Represents event arguments for MeasureTabItem event. + + + + + Gets the TabItem that is being measured. + + + + + Gets or sets the size of the TabItem. The default size calculated by the control will be set by default. You can inspect it and change it to the + custom size by setting this property. + + + + + Creates new instance of the class and initializes it with default values. + + TabItem being measured. + Default size. + + + + Defines delegate for the PreRenderTabItem and PostRenderTabItem events. + + + + + Represents event arguments for PreRenderTabItem and PostRenderTabItem event. + + + + + Gets the reference to the TabItem being rendered. You can use properties like DisplayRectangle to determine the rendering bounds for the tab. + + + + + When used in PreRenderTabItem event allows you to cancel the default rendering by setting this property to true. + + + + + Gets the reference to the Graphics object to render the tab on. + + + + + Creates new instance of the class and initializes it with default values. + + Default value for TabItem property. + Default value for Graphics property. + + + + Represents base class for tab display. + + + + + Main method for painting. + + Reference to graphics object + TabStrip to paint + + + + Gets or sets whether anti-alias is used for painting the tabs. Default value is true. + + + + + Gets or sets whether text is drawn horizontaly regardless of tab orientation. + + + + + Gets or sets whether close button is painted on each tab. + + + + + Provides display capabilities for TabStrip with Office 2007 Dock style. + + + + + Provides display capabilities for TabStrip with Office 2007 Document style. + + + + + Creates new instance of the class. + + + + + Represents class performing the display of tabs with RoundHeader style. + + + + + Provides display support for SimualtedTheme tab style. + + + + + Provides display capabilites for TabStrip with VS2005Dock style. + + + + + Creates new instance of the class. + + + + + Represent a task-dialog message box window. + + + + + Displays TaskDialog message. + + Title of the window. + Task dialog header. + Task dialog text. + Displayed buttons. + Result from task-dialog. + + + + Displays TaskDialog message. + + Title of the window. + Task dialog header. + Task dialog text. + Displayed buttons. + Specifies the predefined color for the dialog. + Result from task-dialog. + + + + Displays TaskDialog message. + + Title of the window. + Icon displayed on dialog. + Task dialog header. + Task dialog text. + Displayed buttons. + Result from task-dialog. + + + + Displays TaskDialog message. + + Title of the window. + Icon displayed on dialog. + Task dialog header. + Task dialog text. + Displayed buttons. + Specifies the predefined color for the dialog. + Result from task-dialog. + + + + Displays TaskDialog message. + + Specifies the content of the task dialog. + Result from task-dialog. + + + + Displays TaskDialog message. + + Window owner of the task dialog. + Specifies the content of the task dialog. + Result from task-dialog. + + + + Closes the task dialog if it is open with eTaskDialogResult.None result. + + + + + Closes the task dialog if it is open with specified result value. + + Value that will be used as return value from Show method. + + + + Gets or sets whether TaskDialog form has Windows Vista Glass enabled if running on + Windows Vista with Glass enabled. Default value is true. + + + + + Gets or sets the anti-alias text-rendering setting for the controls on task-dialog. Default value is true. + + + + + Occurs when any text markup link on Task-Dialog Box is clicked. Markup links can be created using "a" tag, for example: + Markup link + + + + + Specifies the information displayed on task-dialog. + + + + + Initializes a new instance of the TaskDialogInfo structure. + + Title of dialog. + Task-dialog icon + Header text. + Dialog main/content text. + Dialog buttons displayed. + Dialog background color. + Radio Button Commands + Button commands. + Check-box command. + Footer text + Footer image. + + + + Initializes a new instance of the TaskDialogInfo structure. + + Title of dialog. + Task-dialog icon + Header text. + Dialog main/content text. + Dialog buttons displayed. + Dialog background color. + Radio Button Commands + Button commands. + Check-box command. + Footer text + Footer image. + Indicates whether TaskDialog is top most. + + + + Initializes a new instance of the TaskDialogInfo structure. + + Title of dialog. + Task-dialog icon + Header text. + Dialog main/content text. + Dialog buttons displayed. + Dialog background color. + + + + Initializes a new instance of the TaskDialogInfo structure. + + Title of dialog. + Task-dialog icon + Header text. + Dialog main/content text. + Dialog buttons displayed. + + + + Initializes a new instance of the TaskDialogInfo structure. + + Title of dialog. + Task-dialog icon + Header text. + Dialog main/content text. + Dialog buttons displayed. + + + + Gets or sets the task-dialog window title. + + + + + Gets or sets the task-dialog header. + + + + + Gets or sets the task-dialog text. + + + + + Gets or sets the task-dialog buttons displayed. + + + + + Gets or sets the task-dialog background color. + + + + + Gets or sets the array of commands that will be used to create the radio-buttons displayed on task-dialog. Each command will be executed as radio-buttons are checked by user. + + + + + Gets or sets the array of commands that will be used to create the buttons displayed on task-dialog. Each command will be executed as buttons are clicked by user. + + + + + Gets or sets the footer text displayed on task-dialog. + + + + + Gets or sets the command that is used to initialize the footer check-box. Command will be executed when check-box state changes by end user. + + + + + Gets or sets the icon that is displayed on task dialog. + + + + + Gets or sets the image that is displayed in the task-dialog footer. Expected image size is 16x16 pixels. + + + + + Gets or sets whether TaskDialog form is top-most. Default value is false. + + + + + Gets or sets the TaskDialog default button. + + + + + Indicates whether task dialog form close button is enabled, default value is true. + + + + + Specifies the task dialog buttons. + + + + + OK button will be displayed. + + + + + Yes button will be displayed. + + + + + No button will be displayed. + + + + + Cancel button will be displayed. + + + + + Retry button will be displayed. + + + + + Close button will be displayed. + + + + + Specifies the task dialog return values. + + + + + No button was clicked because dialog was closed using TaskDialog.Close method. + + + + + OK button was clicked. + + + + + Yes button was clicked. + + + + + No button was clicked. + + + + + Cancel button was clicked. + + + + + Retry button was clicked. + + + + + Close button was clicked. + + + + + Specifies the custom result. Custom result can be specified if TaskDialog.Close method is called to close dialog. + + + + + Specifies the custom result. Custom result can be specified if TaskDialog.Close method is called to close dialog. + + + + + Specifies the custom result. Custom result can be specified if TaskDialog.Close method is called to close dialog. + + + + + Define icons available on TaskDialog. + + + + + No icon. + + + + + Blue flag icon. + + + + + Blue stop icon. + + + + + Light bulb, idea icon. + + + + + Check-mark icon. + + + + + Check-mark icon. + + + + + Trash-can delete icon. + + + + + Exclamation icon. + + + + + Flag icon. + + + + + Hand-stop icon. + + + + + Help icon. + + + + + Informational icon. + + + + + Informational icon. + + + + + No entry icon. + + + + + Shield icon. + + + + + Shield help icon. + + + + + Shield OK icon. + + + + + Shield stop icon. + + + + + Stop icon. + + + + + Stop icon. + + + + + Users icons. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Gets or sets the task-background color. + + + + + Gets the task-dialog result + + + + + Gets or sets the anti-alias text-rendering setting for the controls. + + + + + Defines TaskDialog colors. + + + + + Task dialog will use default background as specified by current theme. + + + + + Task dialog will use silver background color. + + + + + Task dialog will use tan background color. + + + + + Task dialog will use dark-blue background color. + + + + + Task dialog will use blue background color. + + + + + Task dialog will use red background color. + + + + + Task dialog will use olive-green background color. + + + + + Task dialog will use purple background color. + + + + + Task dialog will use aqua background color. + + + + + Task dialog will use orange background color. + + + + + Summary description for TextBoxItem. + + + + + Indicates whether property should be serialized by Windows Forms designer. + + + + + Resets the property to default value. + + + + + Occurs when ButtonCustom control is clicked. + + + + + Occurs when ButtonCustom2 control is clicked. + + + + + IBlock member implementation + + + + + Gets or sets a value indicating whether the text in the TextBox control should appear as the default password character. + + + + + Gets or sets the character used to mask characters of a password in a single-line TextBox control. + + + + + Gets or sets the text associated with the editable part of the item. + + + + + Gets or sets the item caption text displayed next to the text input. + + + + + Gets or sets the maximum number of characters the user can type or paste into the text box control. + + + + + Gets or sets whether watermark text is displayed when control is empty. Default value is true. + + + + + Gets or sets the watermark image displayed inside of the control when Text is not set and control does not have input focus. + + + + + Gets or sets the watermark image alignment. + + + + + + Gets or sets the watermark font. + + + + + Gets or sets the watermark text color. + + + + + Gets or sets the watermark hiding behaviour. Default value indicates that watermark is hidden when control receives input focus. + + + + + Gets or sets whether FocusHighlightColor is used as background color to highlight text box when it has input focus. Default value is false. + + + + + Gets or sets the color used as background color to highlight text box when it has input focus and focus highlight is enabled. + + + + + Gets or sets the text-alignment inside of the text box. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Gets the object that describes the settings for the custom button that can execute an custom action of your choosing when clicked. + + + + + Measures the element given available size. + + Size available to element + Reference to graphics object + + + + Measures the end tag of an element. Most implementations do not need to do anything but implementations like the ones + that change color should return state back at this time. + + + + + + + Renders element. + + Provides markup drawing context information. + + + + Renders element tag end. Most implementations do not need to do anything but mplementations like the ones + that change color should return state back at this time. + + Provides markup drawing context information. + + + + Provides final rectangle to element and lets it arrange it's content given new constraint. + + Final rectangle. + + + + + Arranges the element given the final size. Layout is two step process with Measure followed by Arrange. + + + + + + + Returns whether markup element is an container so it receives full available size of parent control for layout. + + + + + Returns whether markup element is an block element that always consumes a whole line in layout. + + + + + Returns whether layout manager switches to new line after processing this element. + + + + + Returns whether layout manager can start new line with this element. + + + + + Gets the collection of child elements if any for this markup element. + + + + + Gets or sets whether element size is valid. When size is not valid element Measure method will be called to validate size. + + + + + Gets element parent or null if parent is not set. + + + + + Gets or sets actual rendering bounds. + + + + + Gets or sets whether markup element is visible. + + + + + Gets or sets the element margin. + + + + + Gets or sets actual rendered bounds for a give markup element if applicable. + + + + + Returns whether markup element is an block element that always consumes a whole line in layout. + + + + + Indicates paragraph content alignment + + + + + Indicates paragraph content alignment + + + + + Gets reference to markup start element. + + + + + Returns whether layout manager can start new line with this element. + + + + + Gets or sets heading level. Values from 1 to 6 are valid. Default is 1. + + + + + Returns whether hyper-link contains specified coordinates. + + + + + + + Creates new instance of the class. + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the MarkupElement array. + + Array to copy to. + + + + Gets or sets the collection parent element. + + + + + Returns reference to the object in collection based on it's index. + + + + + Tests whether input text could be markup text. + + Text to test. + true if text could be markup, otherwise false + + + + Gets the style of the hyperlink in its default state. + + + + + Gets the style of the hyperlink when mouse is over the link. + + + + + Gets the style of the visited hyperlink. + + + + + + Represents the method that will handle the ResolveImage event. + + + + + Defines the text-markup hyperlink appearance style. + + + + + Initializes a new instance of the HyperlinkStyle class. + + + + + Initializes a new instance of the HyperlinkStyle class. + + + + + + + Initializes a new instance of the HyperlinkStyle class. + + + + + + + + Gets or sets hyperlink text color. + + + + + Gets or sets hyperlink back color. + + + + + Gets or sets the underline style for the hyperlink. + + + + + Gets whether style has been changed from its default state. + + + + + + Indicates that event has been handled and that ResolvedImage should be used. + + + + + Indicates the string key parameters in url-style for the image that needs to be resolved. + + + + + Indicates the resolved image value. + you need to set this value to the resolved image and you need to set Handled property to true. + + + + + Default constructor. + + + + + Gets or sets whether element size is valid. When size is not valid element Measure method will be called to validate size. + + + + + Returns whether layout manager switches to new line after processing this element. + + + + + Returns whether markup element is an block element that always consumes a whole line in layout. + + + + + Returns whether layout manager can start new line with this element. + + + + + Summary description for Themes. + + + + + Represents toast display control. This class is not for public use. + + + + + Initializes a new instance of the ToastDisplay class. + + + + + Specifies the alpha-blending, opacity for the content rendered by the control. Setting this property allows fading in and out of the control content. + + + + + Gets or sets the toast background color. + + + + + Gets or sets the toast glow color. + + + + + Gets or sets the image displayed on the toast. + + + + + Represents class used to display toast notifications. A toast notification is a message that appears on the surface of the screen for a moment, + but it does not take focus (or pause the current activity), so it cannot accept any user input. + Notification pops up on the surface of the specified Form or Control. + It only fills the amount of space required for the message and the user's current activity remains visible and interactive. + The notification automatically fades in and out after specified time interval. + Notification text supports text-markup. + + + + + Closes all toast notifications open on specified parent control. + + Parent control. + + + + Closes specified toast notification on parent control. + + Parent control. + Toast ID as returned by the Show method. + + + + Updates the already displayed toast text. Note that toast notification will not be resized. + + Parent control which was used to show toast. + Toast ID returned by the Show toast method. + New toast notification text. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Image to display next to toast text. + Interval in milliseconds after which the notification is hidden. + Specifies toast-glow color used. + Specifies the position of the toast notification. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Image to display next to toast text. + Interval in milliseconds after which the notification is hidden. + Specifies toast-glow color used. + Specifies the X position of the toast notification with its parent window. + Specifies the Y position of the toast notification with its parent window. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Image to display next to toast text. + Interval in milliseconds after which the notification is hidden. + /// Specifies toast-glow color used. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form, with default timeout interval. + + Parent control to display toast notification on top of + Message to display. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form, with default timeout interval. + + Parent control to display toast notification on top of + Message to display. + Specifies the position of the toast notification. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form, with default timeout interval. + + Parent control to display toast notification on top of + Message to display. + Image to display next to toast text. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Image to display next to toast text. + Interval in milliseconds after which the notification is hidden. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Interval in milliseconds after which the notification is hidden. + + + + Displays the toast notification on top of the specified parent control, we recommend always using a parent form. + + Parent form to display toast notification on top of + Message to display. + Interval in milliseconds after which the notification is hidden. + Specifies the position of the toast notification. + + + + Specifies the toast margin from the edges of the parent control. Default value is 16 pixels on all sides. + + + + + Specifies the default toast position within the parent control. Default value is BottomCenter. + + + + + Specifies default glow color around toast notification. Default value is Blue. + + + + + Specifies the default timeout interval for the toast notification. + + + + + Specifies the toast background color. + + + + + Specifies the toast text color. + + + + + Specifies the font used for the toast. + + + + + Specifies the custom glow color used when eToastGlowColor.Custom is used. + + + + + Specifies toast position within parent control. + + + + + Specifies the glow color around toast notification. + + + + + Summary description for NewToolbar. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Summary description for Tooltip. + + + + + Gets or sets the rectangle of the control or item tooltip is displayed for. + + + + + Gets or sets whether text-markup is enabled for the tooltips. + + + + + Specifies fixed location for tooltip window. + + + + + Raises PanBegin event. + + Provides event arguments. + + + + Raises PanBegin event. + + Provides event arguments. + + + + Raises PanBegin event. + + Provides event arguments. + + + + Raises Begin event. + + Provides event arguments. + + + + Raises End event. + + Provides event arguments. + + + + Raises PressAndTap event. + + Provides event arguments. + + + + Raises RotateBegin event. + + Provides event arguments. + + + + Raises Rotate event. + + Provides event arguments. + + + + Raises RotateEnd event. + + Provides event arguments. + + + + Raises TwoFingerTap event. + + Provides event arguments. + + + + Raises ZoomBegin event. + + Provides event arguments. + + + + Raises Zoom event. + + Provides event arguments. + + + + Raises ZoomEnd event. + + Provides event arguments. + + + + Raises TouchDown event. + + Provides event arguments. + + + + Raises TouchDown event. + + Provides event arguments. + + + + Raises TouchDown event. + + Provides event arguments. + + + + Initializes a new instance of the TouchHandler class. + + + + + + Initializes a new instance of the TouchHandler class. + + + + + + Initializes handler + + + + + The Windows message handler. + + + + + Decode the message and create a collection of event arguments + + + + + The last event in the current gesture event sequence + + + + + Register for touch event + + true if succeeded + + + + The event arguments that started the current gesture + + + + + Gets or sets whether palm rejection is enabled. + + + + + Check if Multi-touch support device is ready + + + + + Create new gesture event instance and decode the gesture info structure + + The gesture handler + The gesture information + + + + Gesture relative rotation angle for Rotate event. + + + + + Indicates calculated gesture center. + + + + + Gesture zoom factor for Zoom event. + + + + + Gesture relative panning translation for Pan event. + + + + + Gesture velocity vector of the pan gesture for custom inertia implementations. + + + + + The last touch arguments in this gesture event sequence. + + + + + The client location of gesture. + + + + + Is this the first event of a gesture. + + + + + It this last event of a gesture. + + + + + Has gesture triggered inertia. + + + + + The first touch arguments in this gesture event sequence. + + + + + Gets or sets whether event is handled. + + + + + EventArgs passed to Touch handlers + + + + + Create new touch event argument instance + + The target control + one of the inner touch input in the message + + + + Touch client coordinate in pixels + + + + + A touch point identifier that distinguishes a particular touch input + + + + + A set of bit flags that specify various aspects of touch point + press, release, and motion. + + + + + mask which fields in the structure are valid + + + + + touch event time + + + + + touch event time from system up + + + + + the size of the contact area in pixels + + + + + Is Primary Contact (The first touch sequence) + + + + + Specifies that movement occurred + + + + + Specifies that the corresponding touch point was established through a new contact + + + + + Specifies that a touch point was removed + + + + + Specifies that a touch point is in range + + + + + specifies that this input was not coalesced. + + + + + Specifies that the touch point is associated with a pen contact + + + + + The touch event came from the user's palm + + Set to true + + + + Gets or sets whether event is handled. + + + + + Get the current Digitizer Status + + + + + Initializes a new instance of the GESTURECONFIG structure. + + + + + + + + Specifies available digitizer capabilities + + + + + Gesture Info Interop Structure + + + + + A Simple POINTS Interop structure + + + + + A Simple POINT Interop structure + + + + + Touch API defined structures [winuser.h] + + + + + Represents class that holds User Interface static methods. + + + + + Gets the graphics path that represents triangle. + + Top left position of the triangle. + Size of the triangle. + Pointing direction of the triangle. + Returns graphics path for the triangle of given size and pointing in given direction. + + + + Creates the double arrow >> collapse expand image for the collapsable controls. + + Indicates the direction of the arrow + Color for the arrows + Indicates whether image is for vertical collapse/expand + + + + + Specifies the pointing direction of triangle. + + + + + Triangle point to the left. + + + + + Triangle point to the right. + + + + + Triangle point to the top. + + + + + Triangle point to the bottom. + + + + + Represents compare validator for SuperValidator control used to compare two input fields or input fields to specified value. + + + + + Represents base validator used by SuperValidator component. + + + + + Validates the input control. + + Input control to validate. + true if validation is successful otherwise false + + + + Gets the input control value. + + Control to return value for. + Controls value + + + + Gets the input control value. + + Control to return value for. + Controls value + + + + Raises the GetValue event. + + Event arguments. + + + + Occurs when validator retrieves the value for the control. It allows you to return value for the controls validator does not recognize. + + + + + Gets or sets the error message that is displayed by error provider when validation fails. + + + + + Gets the last validation result returned from Validate call. True if validation was successful or false if validation failed. + + + + + Returns SuperValidator control validator is assigned to. + + + + + Gets or sets whether error is displayed using the error provider on SuperValidator when validation fails. Default value is true. + + + + + Gets or sets whether validator is enabled. Default value is true. + + + + + Gets or sets the group name validation belongs to. When control belongs to optional validation group the validation is considered successful when any of the controls in the group validates. + + + + + Gets or sets the highlight color for control when validation fails if Highlighter component is used on SuperValidator. Default Value is None. + + + + + Gets or sets the value property name for the control to validate. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Gets or sets the control to compare validated control to. + + + + + Gets or sets the Value property name for the ControlToCompare control. + + + + + Gets or sets the value to compare to the validation control. + + + + + Gets or sets the operator used for comparison. + + + + + Specifies the validation comparison operators used by the CompareValidator. + + + + + A comparison for equality. + + + + + A comparison for inequality. + + + + + A comparison for greater than. + + + + + A comparison for greater than or equal to. + + + + + A comparison for less than. + + + + + A comparison for less than or equal to. + + + + + A comparison for data type only. + + + + + Initializes a new instance of the CustomValidator class. + + + + + Gets or sets custom data associated with the validator + + + + + Defines delegate for CustomValidator ValidateValue event. + + Sender + Event arguments + + + + Gets the reference to the control to validate. + + + + + Gets or sets whether control's value is valid. + + + + + Initializes a new instance of the ValidateValueEventArgs class. + + Control to validate. + + + + Defines an interface that can be implemented by custom error providers to be used with SuperValidator. + + + + + Sets the error state on the control. + + Control for which error state is being set. + The error message from validator. + + + + Clears the error state for the control. + + Control to clear error state for. + + + + Retrieves whether control is highlighted when it receives input focus. + + + + + Sets whether control is highlighted when it receives input focus. + + Reference to supported control. + Indicates whether to highlight control on focus. + + + + Retrieves the highlight color that is applied to the control. + + + + + Sets the highlight color for the control. + + Reference to supported control. + Highlight color. + + + + Updates the highlighted controls border. Usually call to this method is not needed but under + certain scenarios where highlighter does not automatically detects the change in visibility of + the highlighted control call to this method is necessary. + + + + + Indicates the highlight focus color. + + + + + Gets or sets the container control highlighter is bound to. The container control must be set in order for highlighter to work. + Container control should always be a form. + + + + + Gets or sets the array of colors used to render custom highlight color. Control expects 3 colors in array to be specified which define the highlight border. + + + + + Defines highlight colors provided by Highlighter control. + + + + + Initializes a new instance of the ErrorProviderWrapper class. + + + + + + Initializes a new instance of the ErrorProviderWrapper class. + + + + + + + Initializes a new instance of the HighlightPanel class. + + + + + + Gets or sets the array of colors used to render custom highlight color. Control expects 3 colors in array to be specified which define the highlight border. + + + + + Initializes a new instance of the HighlightRegion structure. + + + + + + + + Initializes a new instance of the RangeValidator class. + + + + + Initializes a new instance of the RangeValidator class. + + + + + Initializes a new instance of the RangeValidator class. + + + + + Gets or sets the maximum value control may have. + + + + + Gets or sets the minimum value control may have. + + + + + Indicates whether empty string of zero length is considered valid input. + + + + + Represents the regular expression validator used with SuperValidator control. + + + + + Initializes a new instance of the RegularExpressionValidator class. + + + + + Initializes a new instance of the RegularExpressionValidator class. + + + + + + Initializes a new instance of the RegularExpressionValidator class. + + + + + + Initializes a new instance of the RegularExpressionValidator class. + + + + + + Gets or sets regular expression used to validate controls value. + + + + + Gets or sets whether empty value is considered valid value by the validator. Default value is false. + + + + + Describes required field validator used with SuperValidator control. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Initializes a new instance of the RequiredFieldValidator class. + + + + + Raises EvaluateIsEmpty event. + + Event Arguments + + + + Occurs when controls value needs to be evaluated to check whether it is empty. You can use this event to perform custom evaluation. + + + + + Indicates whether empty string of zero length is considered valid input. + + + + + Initializes a new instance of the ValidatorGetValueEventArgs class. + + + + + + + Gets Control to retrieve value for. + + + + + Gets the Value to evaluate. + + + + + Gets validator that is requesting value. + + + + + Resets the Value set and indicates that validator will internally retrieve value for the control. + + + + + Gets or sets the value that will be used by validator. + + + + + Raises the CustomValidatorValidateValue event. + + Validator that needs validation. + Control to validate. + + + + Retrieves first level Validator for given control or return null if control does not have validator associated with it. + + + + + Associates first level Validator with given control. + + Reference to supported control. + Instance of validator class. If null is passed existing Validator is detached from the given control. + + + + Retrieves second level Validator for given control or return null if control does not have validator associated with it. + + + + + Associates second level Validator with given control. + + Reference to supported control. + Instance of validator class. If null is passed existing Validator is detached from the given control. + + + + Retrieves third level Validator for given control or return null if control does not have validator associated with it. + + + + + Associates third level Validator with given control. + + Reference to supported control. + Instance of validator class. If null is passed existing Validator is detached from the given control. + + + + Raises the GetValue event. + + Event arguments. + + + + Performs validation on all validators. It also uses error provider to display failed validations if validator has that enabled. + + Returns true if all validations succeeded or false if at least one validation has failed. + + + + Validate single control. Note that control must have validator assigned to it. This method will change LastFailedValidationResults collection. + + Control to validate. + returns true if validation succeeds or false if it fails + + + + Validate single control. Note that control must have validator assigned to it. This method will change LastFailedValidationResults collection. + + Control to validate. + Indicates whether to clear the last set of failed validations by calling ClearFailedValidations() method. + returns true if validation succeeds or false if it fails + + + + Removes all visual markers from failed validations that were placed on the controls. + + + + + Occurs when validator retrieves the value for the control. It allows you to return value for the controls validator does not recognize. + + + + + Occurs when CustomValidator needs to validate the control value. + + + + + Gets or sets whether validation is performed in steps meaning that if first level validation fails, second level is not validated + until first level validation succeeds. Default value is false which means that all validation levels are validated even if first level fails. + + + + + Gets the readonly collection that returns failed validations that were result of last Validate method call. + + + + + Indicates default ErrorProvider IconPadding when Highlighter is used with SuperValidator. Setting this property to 0 will allow you to set IconPadding for each control manually. + + + + + Gets or sets the error provider that is used by the validator to report validation errors. + + + + + Gets or sets the custom error provider that is used by validator to report errors. You can provide your own error validators by implementing IErrorProvider interface. + + + + + Gets or sets the Highlighter component that is used to highlight validation errors. + + + + + Gets or sets the validation type performed by the control. Default value is Manual. + + + + + Gets or sets the container control validator is bound to. The container control must be set for the ValidationType ValidatingEventOnContainer. + When ContainerControl is Form the validator handles the Closing event of the form to perform the validation and cancel the form closing. + You can disable that by setting either Enabled=false or Form.CausesValidation=false. + + + + + Gets or sets whether validation is performed. Default value is true. + + + + + Gets or sets whether Cancel argument in Validating event for validation type ValidatingEventPerControl is set to true when validation fails. + + + + + Specifies the validation type for SuperValidator control. + + + + + SuperValidator uses manual validation, i.e. you will call Validate method to perform validation. + + + + + Validation is performed per control from each controls Validating event. The Cancel is set to true on event arguments if validation fails. + + + + + Validation is performed for all controls from Validating event on container control. By default container control is Form that SuperValidator is on. + + + + + Defines validator control pair used by SuperValidator control. + + + + + Gets the validator associated with the control. + + + + + Gets control reference. + + + + + Initializes a new instance of the ValidatorControlPair structure. + + Validator associated with the control + Control reference + + + + Initializes a new instance of the ValidatorGetValueEventArgs class. + + + + + + + Gets Control to retrieve value for. + + + + + Gets validator that is requesting value. + + + + + Resets the Value set and indicates that validator will internally retrieve value for the control. + + + + + Gets or sets the value that will be used by validator. + + + + + Retrieves the show state and the restored, minimized, and maximized positions of the specified window. + + + A handle to the window. + + + A pointer to the WINDOWPLACEMENT structure that receives the show state and position information. + + Before calling GetWindowPlacement, set the length member to sizeof(WINDOWPLACEMENT). GetWindowPlacement fails if lpwndpl-> length is not set correctly. + + + + If the function succeeds, the return value is nonzero. + + If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + + + Options available when a form is tested for mose positions. + + + HTERROR: On the screen background or on a dividing line between windows + (same as HTNOWHERE, except that the DefWindowProc function produces a system + beep to indicate an error). + + + HTTRANSPARENT: In a window currently covered by another window in the + same thread (the message will be sent to underlying windows in the same thread + until one of them returns a code that is not HTTRANSPARENT). + + + HTNOWHERE: On the screen background or on a dividing line between + windows. + + + HTCLIENT: In a client area. + + + HTCAPTION: In a title bar. + + + HTSYSMENU: In a window menu or in a Close button in a child window. + + + HTGROWBOX: In a size box (same as HTSIZE). + + + HTMENU: In a menu. + + + HTHSCROLL: In a horizontal scroll bar. + + + HTVSCROLL: In the vertical scroll bar. + + + HTMINBUTTON: In a Minimize button. + + + HTMAXBUTTON: In a Maximize button. + + + HTLEFT: In the left border of a resizable window (the user can click + the mouse to resize the window horizontally). + + + HTRIGHT: In the right border of a resizable window (the user can click + the mouse to resize the window horizontally). + + + HTTOP: In the upper-horizontal border of a window. + + + HTTOPLEFT: In the upper-left corner of a window border. + + + HTTOPRIGHT: In the upper-right corner of a window border. + + + HTBOTTOM: In the lower-horizontal border of a resizable window (the + user can click the mouse to resize the window vertically). + + + HTBOTTOMLEFT: In the lower-left corner of a border of a resizable + window (the user can click the mouse to resize the window diagonally). + + + HTBOTTOMRIGHT: In the lower-right corner of a border of a resizable + window (the user can click the mouse to resize the window diagonally). + + + HTBORDER: In the border of a window that does not have a sizing + border. + + + HTOBJECT: Unknown...No Documentation Found + + + HTCLOSE: In a Close button. + + + HTHELP: In a Help button. + + + HTSIZE: In a size box (same as HTGROWBOX). (Same as GrowBox). + + + HTREDUCE: In a Minimize button. (Same as MinimizeButton). + + + HTZOOM: In a Maximize button. (Same as MaximizeButton). + + + + Hides the window and activates another window. + + + + + Activates and displays a window. If the window is minimized or + maximized, the system restores it to its original size and position. + An application should specify this flag when displaying the window + for the first time. + + + + + Activates the window and displays it as a minimized window. + + + + + Maximizes the specified window. + + + + + Activates the window and displays it as a maximized window. + + + + + Displays a window in its most recent size and position. This value + is similar to , except + the window is not actived. + + + + + Activates the window and displays it in its current size and position. + + + + + Minimizes the specified window and activates the next top-level + window in the Z order. + + + + + Displays the window as a minimized window. This value is similar to + , except the + window is not activated. + + + + + Displays the window in its current size and position. This value is + similar to , except the + window is not activated. + + + + + Activates and displays the window. If the window is minimized or + maximized, the system restores it to its original size and position. + An application should specify this flag when restoring a minimized window. + + + + + Sets the show state based on the SW_* value specified in the + STARTUPINFO structure passed to the CreateProcess function by the + program that started the application. + + + + + Windows 2000/XP: Minimizes a window, even if the thread + that owns the window is not responding. This flag should only be + used when minimizing windows from a different thread. + + + + + Represents Wizard control. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Resets the style to it's default value. + + + + + Resets the style to it's default value. + + + + + Simulates Back button click on Wizard control. Note that this method will raise the same events as + standard Wizard Back button click. + + + + + Simulates Next button click on Wizard control. Note that this method will raise the same events as + standard Wizard Next button click. + + + + + Simulates Cancel button click on Wizard control. Note that this method will raise the same events as + standard Wizard Cancel button click. + + + + + Simulates Finish button click on Wizard control. Note that this method will raise the same events as + standard Wizard Finish button click. + + + + + Raises BackButtonClick event. + + Event arguments + + + + Raises NextButtonClick event. + + Event arguments + + + + Raises FinishButtonClick event. + + Event arguments + + + + Raises CancelButtonClick event. + + Event arguments + + + + Raises HelpButtonClick event. + + Event arguments + + + + Raises WizardPageChanging event. + + Provides event arguments + + + + Raises WizardPageChanged event. + + Provides event arguments + + + + Occurs when Back button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Next button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Finish button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Cancel button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Help button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs before wizard page has changed and gives you opportunity to cancel the change. + + + + + Occurs after wizard page has changed. This event cannot be cancelled. To cancel the page change please use WizardPageChanging event. + + + + + Occurs when wizard buttons (Back, Next, Finish etc) are positioned and resized. + + + + + Gets or sets the header image. Default value is null which means that internal header image is used. You can hide header image + by setting HeaderImageVisible property. + + + + + Gets or sets whether header image is visible. Default value is true. + + + + + Gets or sets wizard button that is clicked when ENTER key is pressed. Default value is eWizardFormAcceptButton.FinishAndNext which + indicates that finish button will be clicked if available otherwise next button will be clicked. + + + + + Gets or sets wizard button that is clicked when ESCAPE key is pressed. Default value is eWizardFormCancelButton.Cancel which + indicates that Cancel button will be clicked. + + + + + Gets or sets whether all buttons are disabled while wizard page is changed which prevents users from clicking the buttons + if page change is taking longer. Default value is true. + + + + + Gets or sets whether wait cursor is displayed while page is changed. Default value is true. + + + + + Gets or sets the selected page index. You can set this property to change the currently selected wizard page. + + + + + Gets or sets selected wizard page. You can set this property to change the currently selected wizard page. + + + + + Gets the collection of Wizard pages. The order of WizardPage objects inside of this collection determines the flow of the wizard. + + + + + Returns a Stack of page history. Each time next page is displayed by wizard, previously visited page is added to the history. + When user commands Wizard back, the last page from the history is shown and removed from the stack. You should not modify this collection + directly since it is maintained by Wizard control. + + + + + Gets or sets the FlatStyle setting for the wizard buttons. Default value is FlatStyle.System + + + + + Gets or sets height of wizard command buttons. Default value is 22 pixels. + + + + + Gets or sets whether back button causes validation to be performed on any controls that require validation when it receives focus. Default value is false. + + + + + Gets or sets tab index of back button. Default value is 1. + + + + + Gets or sets a value indicating whether the user can give the focus to this back button using the TAB key. Default value is true. + + + + + Gets or sets caption of the back button. + + + + + Gets or sets width of the back button. Default value is 74. + + + + + Gets or sets auto size of the button. Default value is false. + + + + + Gets or sets auto size mode of the button. Default value is AutoSizeMode.GrowOnly. + + + + + Gets or sets whether next button causes validation to be performed on any controls that require validation when it receives focus. Default value is true. + + + + + Gets or sets tab index of next button. Default value is 2. + + + + + Gets or sets a value indicating whether the user can give the focus to button using the TAB key. Default value is true. + + + + + Gets or sets caption of the next button. + + + + + Gets or sets width of the next button. Default value is 74. + + + + + Gets or sets auto size of the button. Default value is false. + + + + + Gets or sets auto size mode of the button. Default value is AutoSizeMode.GrowOnly. + + + + + Gets or sets whether button causes validation to be performed on any controls that require validation when it receives focus. Default value is false. + + + + + Gets or sets tab index of the button. Default value is 4. + + + + + Gets or sets a value indicating whether the user can give the focus to button using the TAB key. Default value is true. + + + + + Gets or sets caption of the button. + + + + + Gets or sets width of the button. Default value is 74. + + + + + Gets or sets auto size of the button. Default value is false. + + + + + Gets or sets auto size mode of the button. Default value is AutoSizeMode.GrowOnly. + + + + + Gets or sets whether button causes validation to be performed on any controls that require validation when it receives focus. Default value is true. + + + + + Gets or sets tab index of the button. Default value is 4. + + + + + Gets or sets a value indicating whether the user can give the focus to button using the TAB key. Default value is true. + + + + + Gets or sets caption of the button. + + + + + Gets or sets width of the button. Default value is 74. + + + + + Gets or sets whether finish button is always visible next to the Next button. Default value is false which means that Finish + button will be visible only on last Wizard page and it will replace the Next button. When set to true Finish button is always visible next + to the Next button except on first Welcome wizard page. + + + + + Gets or sets auto size of the button. Default value is false. + + + + + Gets or sets auto size mode of the button. Default value is AutoSizeMode.GrowOnly. + + + + + Gets or sets whether button causes validation to be performed on any controls that require validation when it receives focus. Default value is false. + + + + + Gets or sets whether button is visible. Default value is true. + + + + + Gets or sets tab index of the button. Default value is 5. + + + + + Gets or sets a value indicating whether the user can give the focus to button using the TAB key. Default value is true. + + + + + Gets or sets caption of the button. + + + + + Gets or sets width of the button. Default value is 74. + + + + + Gets or sets auto size of the button. Default value is false. + + + + + Gets or sets auto size mode of the button. Default value is AutoSizeMode.GrowOnly. + + + + + Gets or sets the height of the wizard footer. Default value is 46 + + + + + Gets or sets the height of the wizard header. Default value is 60 + + + + + Gets or sets the header image alignment. Default value is right. + + + + + Gets or sets the header image size for interior wizard pages. Default value is 48x48 + + + + + Gets or sets indentation of header title label. Default value is 16. + + + + + Gets or sets indentation of header description label. Default value is 44. + + + + + + Indicates the font used to render caption header text. + + + + + Gets or sets whether description text displayed in wizard header is visible. + + + + + Gets or sets the header background style. + + + + + Gets or sets the footer background style. + + + + + Returns reference to internal Next button control. + + + + + Returns reference to internal Back button control. + + + + + Gets or sets whether Focus cues on wizard navigation buttons are enabled. Default value is true. + + + + + Gets or sets the visual style used for wizard buttons. + + + + + Provides data for LayoutWizardButtons event. + + + + + Gets or sets bounds of Back button. + + + + + Gets or sets bounds of Next button. + + + + + Gets or sets bounds of Finish button. + + + + + Gets or sets bounds of Cancel button. + + + + + Gets or sets bounds of Help button. + + + + + Creates new instance of the class. + + + + + Creates new instance of the class and initializes it with default values. + + + + + Defines delegate for WizardPageChange events. + + + + + Updates page state when one of the page appearance properties has changed. + + + + + Fires BeforePageDisplayed event. + + Event arguments + + + + Invokes the BeforePageDisplayed event. + + Event arguments + + + + Fires AfterPageDisplayed event. + + Event arguments. + + + + Invokes AfterPageDisplayed event. + + Event arguments + + + + Fires BeforePageDisplayed event. + + Event arguments + + + + Invokes the BeforePageDisplayed event. + + Event arguments + + + + Raises BackButtonClick event. + + Event arguments + + + + Invokes BackButtonClick event. + + + + + Raises NextButtonClick event. + + Event arguments + + + + Invokes NextButtonClick event. + + + + + Raises FinishButtonClick event. + + Event arguments + + + + Invokes FinishButtonClick event. + + + + + Raises CancelButtonClick event. + + Event arguments + + + + Invokes CancelButtonClick event. + + + + + Raises HelpButtonClick event. + + Event arguments + + + + Invokes HelpButtonClick event. + + + + + Occurs before page is displayed. This event can cancel the page change. You can perform any additional setup of the Wizard page in this event. + + + + + Occurs after page has been displayed.This event can cancel the page change. You can perform any additional setup of the Wizard page in this event. + + + + + Occurs after page is hidden. You can perform any additional steps that are needed to complete wizard step in this event. + + + + + Occurs when Back button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Next button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Finish button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Cancel button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Occurs when Help button is clicked. You can cancel any default processing performed by Wizard control by setting Cancel=true on event arguments. + + + + + Gets whether page is currently selected page in Wizard. + + + + + Gets or sets whether back button is enabled when page is active. Default value is eWizardButtonState.Auto which indicates that state is + automatically managed by control. + + + + + Gets or sets whether back button is visible when page is active. Default value is eWizardButtonState.Auto. + + + + + Gets or sets whether next button is enabled when page is active. Default value is eWizardButtonState.Auto which indicates that state is + automatically managed by control. + + + + + Gets or sets whether next button is visible when page is active. Default value is eWizardButtonState.Auto. + + + + + Gets or sets whether finish button is enabled when page is active. Default value is eWizardButtonState.Auto which indicates that state is + automatically managed by control. + + + + + Gets or sets whether cancel button is enabled when page is active. Default value is eWizardButtonState.Auto which indicates that state is + automatically managed by control. + + + + + Gets or sets whether cancel button is visible when page is active. Default value is eWizardButtonState.Auto. + + + + + Gets or sets whether help button is enabled when page is active. Default value is eWizardButtonState.Auto which indicates that state is + automatically managed by control. + + + + + Gets or sets whether help button is visible when page is active. Default value is eWizardButtonState.Auto. + + + + + Gets or sets the page header image when page is an interior page, InteriorPage=true. Default value is null. + + + + + Gets or sets the text that is displayed as title in wizard header when page is active. + + + + + Gets or sets the text that is displayed as description in wizard header when page is active. + + + + + Gets or sets the text that is displayed on form caption when page is active. Default value is empty string which indicates that form caption + is not changed when page becomes active. + + + + + Gets or sets whether page is interior page. Interior pages use wizard header area to display page title, description and optional image. They are also padded and do not + fill the client area of the Wizard. Default value is true. + You can set this value to false to hide header area and make page fill the client area of the wizard. + + + + + Gets or sets whether page is visible. Page visibility is managed by Wizard control and it should not be set directly. + + + + + Represents the collection of WizardPage objects which determines the flow of the wizard. + + + + + Adds new object to the collection. + + Object to add. + Index of newly added object. + + + + Adds an array of objects to the collection. + + Array of WizardPage objects. + + + + Inserts new object into the collection. + + Position of the object. + Object to insert. + + + + Returns index of the object inside of the collection. + + Reference to the object. + Index of the object. + + + + Returns whether collection contains specified object. + + Object to look for. + true if object is part of the collection, otherwise false. + + + + Removes specified object from the collection. + + + + + + Copies collection into the specified array. + + Array to copy collection to. + Starting index. + + + + Copies contained items to the WizardPage array. + + Array to copy to. + + + + Copies contained items to the WizardPage array. + + Array to copy to. + + + + Gets the parent this collection is associated with. + + + + + Returns reference to the object in collection based on it's index. + + + + + Returns reference to the object in collection based on it's name. + + + + + Provides data for Wizard Page Change events. + + + + + Specifies the new active wizard page. You can change this argument when handling WizardPageChanging event and provide newly selected page of your own. + + + + + Specifies page that was or currently is active. + + + + + Indicates the wizard button that was source of page change. + + + + + Creates new instance of the class with default values. + + New wizard page + Old or current wizard page + Page change source + + + + Provides data for Wizard Page Change events. + + + + + Allows you to cancel the page change. + + + + + Creates new instance of the class with default values. + + New wizard page + Old or current wizard page + Page change source + + + + Defines delegate for WizardPageChange events. + + + + + Defines delegate for WizardPageChange events. + + +
+
diff --git a/DPM2016/bin/Debug/FastReport.Bars.dll b/DPM2016/bin/Debug/FastReport.Bars.dll new file mode 100644 index 0000000..ce7c73e Binary files /dev/null and b/DPM2016/bin/Debug/FastReport.Bars.dll differ diff --git a/DPM2016/bin/Debug/FastReport.Editor.dll b/DPM2016/bin/Debug/FastReport.Editor.dll new file mode 100644 index 0000000..a0d20bc Binary files /dev/null and b/DPM2016/bin/Debug/FastReport.Editor.dll differ diff --git a/DPM2016/bin/Debug/FastReport.dll b/DPM2016/bin/Debug/FastReport.dll new file mode 100644 index 0000000..feaa65c Binary files /dev/null and b/DPM2016/bin/Debug/FastReport.dll differ diff --git a/DPM2016/bin/Debug/FlexCel.dll b/DPM2016/bin/Debug/FlexCel.dll new file mode 100644 index 0000000..8c93d59 Binary files /dev/null and b/DPM2016/bin/Debug/FlexCel.dll differ diff --git a/DPM2016/bin/Debug/Syncfusion.Core.dll b/DPM2016/bin/Debug/Syncfusion.Core.dll new file mode 100644 index 0000000..d5f894a Binary files /dev/null and b/DPM2016/bin/Debug/Syncfusion.Core.dll differ diff --git a/DPM2016/bin/Debug/Syncfusion.Shared.Base.dll b/DPM2016/bin/Debug/Syncfusion.Shared.Base.dll new file mode 100644 index 0000000..fea2bef Binary files /dev/null and b/DPM2016/bin/Debug/Syncfusion.Shared.Base.dll differ diff --git a/DPM2016/bin/Debug/XLSLib.dll b/DPM2016/bin/Debug/XLSLib.dll new file mode 100644 index 0000000..d0324ca Binary files /dev/null and b/DPM2016/bin/Debug/XLSLib.dll differ diff --git a/DPM2016/bin/Debug/_FRReporting.dll b/DPM2016/bin/Debug/_FRReporting.dll new file mode 100644 index 0000000..69b10ab Binary files /dev/null and b/DPM2016/bin/Debug/_FRReporting.dll differ diff --git a/DPM2016/bin/Debug/_FRReporting.pdb b/DPM2016/bin/Debug/_FRReporting.pdb new file mode 100644 index 0000000..9072919 Binary files /dev/null and b/DPM2016/bin/Debug/_FRReporting.pdb differ diff --git a/DPM2016/bin/Debug/_FRReporting.xml b/DPM2016/bin/Debug/_FRReporting.xml new file mode 100644 index 0000000..44c3ea8 --- /dev/null +++ b/DPM2016/bin/Debug/_FRReporting.xml @@ -0,0 +1,1327 @@ + + + + +_FRReporting + + + + + + Purpose: Data Access class for the table 'Auswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • bReport
  • +
  • sFilename
  • +
  • bExcel_Report
  • +
  • sSQL
  • +
  • sSQLType
  • +
  • sBeschreibung
  • +
  • sConnectionstring_Subreport
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungAuswertungParameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr
  • +
  • iAuswertungparameternr
  • +
  • sDBfeldname
  • +
  • iReihenfolge
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppe'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iParentid
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppeAuswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr
  • +
  • iAuswertungNr
  • +
  • bAktiv
  • +
  • daErstllt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungRptDatei'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungDateiNr
  • +
  • sFilename
  • +
  • sReportname
  • +
  • blobReportfile
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungparameternr
  • +
  • sBezeichnung
  • +
  • sOperator
  • +
  • sFeldbezug
  • +
  • sWert
  • +
  • sParamName
  • +
  • sParamType
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'key_tabelle'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iKeynr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Mitarbeiter_Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr
  • +
  • iAuswertungnr
  • +
  • sBeschreibung
  • +
  • sParameterdaten
  • +
  • sTitelzeile1
  • +
  • sTitelzeile2
  • +
  • bParamPrint
  • +
  • sSQLWhere
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'SecurityObject'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iSecurityObjectNr
  • +
  • sSecurityForm
  • +
  • sSecurityObjectType
  • +
  • sSecurityObject
  • +
  • sSecurityObjectItem
  • +
  • sSecurityObjectDescriotion
  • +
  • iLevel
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iMandantnr
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Initialisierung des Formulars + + + + + + + Auswertungen, für welche der User berechtigt ist, auslesen + + + + + + + Interne Relation aufbauen und Tree aufbauen + + + + + + + + Tree aufbauen + + + + + + + + Child-Nodes hinzufügen + + + + + + + + Klasse für das Speichern bzw. Auslesen von Image-Dateien in der Datenbank + + + Es werden folgende Datebanktabellen berücksichtigt: + + + Dokument Attribut DocImage + + Profile Attribut V_Uebersicht (Profillayout des C1TrueDBGrids der + Vertragsübersicht|Vertragselemente + + yes + + + + Grid-Layoutfile speichern + + C1Truedbgrind, von welchem das Layout gespeichert werden soll + Nummer des Grids: 1=Vertragsübersicht... + + + + + + Dokument in der Tabelle Dokument speichern + + Nummer des Dokument-Datensatzes + Zu speichender Dateiname + + + + + + Liest das Dokument aus der DB und speichert dieses unter einem temporären Filenamen ab + + + + + + + + Formular-Security-Objekte auslesen und auf DB schreiben bzw. Formular-Security zur Laufzeit setzen + + + + + + Formularsecurity setzen + + Aktuelles Formular + + + + + + Daten ab Datenbank laden + + + + + + Prüft die DB-Einträge mit den Formcontrols und bei Übereinstimmung werden die Security-Einstellungen gesetzt + + + + + + Security-Einstellungen setzen + + Betroffenes Objeckt (Menuitem, Conrol usw.) + Readonly ja/nein + Sichtbar ja/nein + Name des Unterobjektes - wird für die Spalteneinstellungen von C1TruedbGrids verwendet + + + + + Alle Controls des Formulars zusammensuchen und auf der DB speichern + + Betroffenes Formular + + + + + + Sämtliche Controls vom Formular auslesen + + + + + + + + Auslesen von MenuItems + + + + + + + + + Auslesen von ContextMenuItems + + + + + + + + + Auslesen von Menu-Subitems + + + + + + + + Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + Formular + Objekttyp + Objektname + Objektitem + + + + + + Klasse für ein Control-Objekt + + + + + + Neue Instanz erstellen + + Control-Objekt + Betroffenes Formular + Objekttyp + Objektname + Unterobjekt (z.B. bei Menus, Spalten von C1TrueDBGrids) + + + + + Schreibt einen Datnsatz in die Tabelle SecurityObjects + + + + + + +Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + + + + + + Formular schliessen + + + + + + + + Formualr schliessen + + + + + + + + Formular schliessen + + + + + + + + Mousedown-Ereignis auf dem Tree + + + + + + + + Nach Selektion eines Nodes Parameter neu aufbereiten und Auswerungsmöglichkeit (CR/CSV) anzeigen + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Parameter initialisieren + + + + + + Selektion Parameter + + + + + + + + Datenrow in den zur Auswertung gehörenden Parameterliste suchen + + + + + + + + Where Bedingung für die Abfrage zusammenstellen + + + + + + Where zusammenstellen + + + + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + +
+
diff --git a/DPM2016/frmMain.Designer.vb b/DPM2016/frmMain.Designer.vb new file mode 100644 index 0000000..b20b3f5 --- /dev/null +++ b/DPM2016/frmMain.Designer.vb @@ -0,0 +1,163 @@ + +Partial Class frmMain + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + + Private Sub InitializeComponent() + Me.mnuMain = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.StammdatenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.SpaltentitelToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.StammdatenToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem() + Me.AuswertungenToolStripMenuItem1 = New System.Windows.Forms.ToolStripMenuItem() + Me.PatientToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.AuswertungenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.PruefzifferToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.FinanzenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.RechnungenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.MahnungenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.FirmenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.mnuMain.SuspendLayout() + Me.SuspendLayout() + ' + 'mnuMain + ' + Me.mnuMain.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem, Me.StammdatenToolStripMenuItem, Me.PatientToolStripMenuItem, Me.FirmenToolStripMenuItem, Me.AuswertungenToolStripMenuItem, Me.FinanzenToolStripMenuItem}) + Me.mnuMain.Location = New System.Drawing.Point(0, 0) + Me.mnuMain.Name = "mnuMain" + Me.mnuMain.Size = New System.Drawing.Size(1199, 24) + Me.mnuMain.TabIndex = 0 + Me.mnuMain.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'StammdatenToolStripMenuItem + ' + Me.StammdatenToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.SpaltentitelToolStripMenuItem, Me.StammdatenToolStripMenuItem1, Me.AuswertungenToolStripMenuItem1}) + Me.StammdatenToolStripMenuItem.Name = "StammdatenToolStripMenuItem" + Me.StammdatenToolStripMenuItem.Size = New System.Drawing.Size(87, 20) + Me.StammdatenToolStripMenuItem.Text = "&Stammdaten" + ' + 'SpaltentitelToolStripMenuItem + ' + Me.SpaltentitelToolStripMenuItem.Name = "SpaltentitelToolStripMenuItem" + Me.SpaltentitelToolStripMenuItem.Size = New System.Drawing.Size(151, 22) + Me.SpaltentitelToolStripMenuItem.Text = "&Spaltentitel" + ' + 'StammdatenToolStripMenuItem1 + ' + Me.StammdatenToolStripMenuItem1.Name = "StammdatenToolStripMenuItem1" + Me.StammdatenToolStripMenuItem1.Size = New System.Drawing.Size(151, 22) + Me.StammdatenToolStripMenuItem1.Text = "Stammdaten" + ' + 'AuswertungenToolStripMenuItem1 + ' + Me.AuswertungenToolStripMenuItem1.Name = "AuswertungenToolStripMenuItem1" + Me.AuswertungenToolStripMenuItem1.Size = New System.Drawing.Size(151, 22) + Me.AuswertungenToolStripMenuItem1.Text = "&Auswertungen" + ' + 'PatientToolStripMenuItem + ' + Me.PatientToolStripMenuItem.Name = "PatientToolStripMenuItem" + Me.PatientToolStripMenuItem.Size = New System.Drawing.Size(56, 20) + Me.PatientToolStripMenuItem.Text = "Patient" + ' + 'AuswertungenToolStripMenuItem + ' + Me.AuswertungenToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.PruefzifferToolStripMenuItem}) + Me.AuswertungenToolStripMenuItem.Name = "AuswertungenToolStripMenuItem" + Me.AuswertungenToolStripMenuItem.Size = New System.Drawing.Size(96, 20) + Me.AuswertungenToolStripMenuItem.Text = "Auswertungen" + ' + 'PruefzifferToolStripMenuItem + ' + Me.PruefzifferToolStripMenuItem.Name = "PruefzifferToolStripMenuItem" + Me.PruefzifferToolStripMenuItem.Size = New System.Drawing.Size(128, 22) + Me.PruefzifferToolStripMenuItem.Text = "Pruefziffer" + ' + 'FinanzenToolStripMenuItem + ' + Me.FinanzenToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.RechnungenToolStripMenuItem, Me.MahnungenToolStripMenuItem}) + Me.FinanzenToolStripMenuItem.Name = "FinanzenToolStripMenuItem" + Me.FinanzenToolStripMenuItem.Size = New System.Drawing.Size(66, 20) + Me.FinanzenToolStripMenuItem.Text = "Finanzen" + ' + 'RechnungenToolStripMenuItem + ' + Me.RechnungenToolStripMenuItem.Name = "RechnungenToolStripMenuItem" + Me.RechnungenToolStripMenuItem.Size = New System.Drawing.Size(141, 22) + Me.RechnungenToolStripMenuItem.Text = "Rechnungen" + ' + 'MahnungenToolStripMenuItem + ' + Me.MahnungenToolStripMenuItem.Name = "MahnungenToolStripMenuItem" + Me.MahnungenToolStripMenuItem.Size = New System.Drawing.Size(141, 22) + Me.MahnungenToolStripMenuItem.Text = "Mahnungen" + ' + 'FirmenToolStripMenuItem + ' + Me.FirmenToolStripMenuItem.Name = "FirmenToolStripMenuItem" + Me.FirmenToolStripMenuItem.Size = New System.Drawing.Size(56, 20) + Me.FirmenToolStripMenuItem.Text = "&Firmen" + ' + 'frmMain + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(1199, 742) + Me.Controls.Add(Me.mnuMain) + Me.IsMdiContainer = True + Me.MainMenuStrip = Me.mnuMain + Me.Name = "frmMain" + Me.Text = "DPM" + Me.mnuMain.ResumeLayout(False) + Me.mnuMain.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents mnuMain As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents StammdatenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents SpaltentitelToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents StammdatenToolStripMenuItem1 As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents PatientToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents AuswertungenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents PruefzifferToolStripMenuItem As ToolStripMenuItem + Friend WithEvents FinanzenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents RechnungenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents MahnungenToolStripMenuItem As ToolStripMenuItem + Friend WithEvents AuswertungenToolStripMenuItem1 As ToolStripMenuItem + Friend WithEvents FirmenToolStripMenuItem As ToolStripMenuItem +End Class diff --git a/DPM2016/frmMain.resx b/DPM2016/frmMain.resx new file mode 100644 index 0000000..573a266 --- /dev/null +++ b/DPM2016/frmMain.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/DPM2016/frmMain.vb b/DPM2016/frmMain.vb new file mode 100644 index 0000000..2216035 --- /dev/null +++ b/DPM2016/frmMain.vb @@ -0,0 +1,109 @@ +Public Class frmMain + + Private Sub BeendenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles BeendenToolStripMenuItem.Click + Me.Close() + End Sub + + Private Sub StammdatenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles StammdatenToolStripMenuItem.Click + + End Sub + + Private Sub SpaltentitelToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SpaltentitelToolStripMenuItem.Click + Dim f As New frmSysadminTableSelector() + Dim tablename As String + tablename = (f.get_tablename()) + If tablename = "" Then Exit Sub + Dim db As New clsDB + db.Generate_SpaltenData(tablename) + End Sub + + Private Sub StammdatenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles StammdatenToolStripMenuItem1.Click + Dim f As New frmStammdaten + f.MdiParent = Me + f.Show() + End Sub + + Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Dim db As New clsDB + db.Get_Spaltendata() + Globals.Spaltendaten = db.dsDaten.Tables(0) + PatientToolStripMenuItem_Click(sender, e) + End Sub + + Private Sub PatientToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PatientToolStripMenuItem.Click + Dim f As New Patient + f.MdiParent = Me + + f.Show() + End Sub + + Private Sub AuswertungenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles AuswertungenToolStripMenuItem.Click + Dim rpt As New frmReportauswahl + rpt.MdiParent = Me + rpt.Show() + + End Sub + + Private Sub PruefzifferToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PruefzifferToolStripMenuItem.Click + Dim a As String + a = InputBox("Zahl") + MsgBox(Pruefziffer(a)) + End Sub + + Public Function Pruefziffer(ByVal zahl As String) As String + Dim ptab(9, 9) As Integer + Dim pz(9) As Integer + Dim s1, s2, s3 As String + + Dim i1, i2 As Long + + s1 = "0,9,4,6,8,2,7,1,3,5" + s2 = s1 + For i1 = 0 To 9 + For i2 = 0 To 9 + ptab(i1, i2) = Mid(s2, (i2 * 2) + 1, 1) + Next + s3 = Microsoft.VisualBasic.Left(s1, 1) + s1 = Microsoft.VisualBasic.Right(s1, Len(s1) - 2) + s1 = s1 + "," + s3 + s2 = s1 + Next + pz(0) = 0 + pz(1) = 9 + pz(2) = 8 + pz(3) = 7 + pz(4) = 6 + pz(5) = 5 + pz(6) = 4 + pz(7) = 3 + pz(8) = 2 + pz(9) = 1 + + Dim i, x, y, z, e As Integer + Dim xx As String + y = 0 + For i = 1 To Len(zahl) + x = Val(Mid(zahl, i, 1)) + y = ptab(x, y) + Next + Pruefziffer = Str(pz(y)) + End Function + + Private Sub RechnungenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RechnungenToolStripMenuItem.Click + Dim f As New frmFakturierung + f.MdiParent = Me + f.Show() + End Sub + + Private Sub AuswertungenToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles AuswertungenToolStripMenuItem1.Click + Dim f As New frmAuswertungen + f.MdiParent = Me + f.Show() + End Sub + + Private Sub FirmenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles FirmenToolStripMenuItem.Click + Dim f As New frmFirma + f.MdiParent = Me + f.Show() + End Sub +End Class diff --git a/DPM2016/obj/Debug/CoreCompileInputs.cache b/DPM2016/obj/Debug/CoreCompileInputs.cache new file mode 100644 index 0000000..a65f45f --- /dev/null +++ b/DPM2016/obj/Debug/CoreCompileInputs.cache @@ -0,0 +1 @@ +a28382a85791eb9a8423564ac25fab169f00dc0b diff --git a/DPM2016/obj/Debug/DPM2016.Behandlung.resources b/DPM2016/obj/Debug/DPM2016.Behandlung.resources new file mode 100644 index 0000000..3fea02b Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Behandlung.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Benhandungdetail.resources b/DPM2016/obj/Debug/DPM2016.Benhandungdetail.resources new file mode 100644 index 0000000..272543e Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Benhandungdetail.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Finanzen.resources b/DPM2016/obj/Debug/DPM2016.Finanzen.resources new file mode 100644 index 0000000..7925f80 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Finanzen.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Krankengeschichte.resources b/DPM2016/obj/Debug/DPM2016.Krankengeschichte.resources new file mode 100644 index 0000000..579312b Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Krankengeschichte.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Leistungen.resources b/DPM2016/obj/Debug/DPM2016.Leistungen.resources new file mode 100644 index 0000000..270c021 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Leistungen.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Patient.resources b/DPM2016/obj/Debug/DPM2016.Patient.resources new file mode 100644 index 0000000..207f235 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Patient.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.PatientAbrechnung.resources b/DPM2016/obj/Debug/DPM2016.PatientAbrechnung.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.PatientAbrechnung.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.PatientDetails.resources b/DPM2016/obj/Debug/DPM2016.PatientDetails.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.PatientDetails.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.Resources.resources b/DPM2016/obj/Debug/DPM2016.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.Resources.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.clsStammdaten_Bez.resources b/DPM2016/obj/Debug/DPM2016.clsStammdaten_Bez.resources new file mode 100644 index 0000000..ecb4c1e Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.clsStammdaten_Bez.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.clsStammdaten_flat.resources b/DPM2016/obj/Debug/DPM2016.clsStammdaten_flat.resources new file mode 100644 index 0000000..b0f08c1 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.clsStammdaten_flat.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.exe b/DPM2016/obj/Debug/DPM2016.exe new file mode 100644 index 0000000..c5f4f61 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.exe differ diff --git a/DPM2016/obj/Debug/DPM2016.frmAuswertungen.resources b/DPM2016/obj/Debug/DPM2016.frmAuswertungen.resources new file mode 100644 index 0000000..81e0815 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmAuswertungen.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmFakturierung.resources b/DPM2016/obj/Debug/DPM2016.frmFakturierung.resources new file mode 100644 index 0000000..ad88f52 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmFakturierung.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmFirma.resources b/DPM2016/obj/Debug/DPM2016.frmFirma.resources new file mode 100644 index 0000000..0598de1 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmFirma.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmFirmaAP.resources b/DPM2016/obj/Debug/DPM2016.frmFirmaAP.resources new file mode 100644 index 0000000..096158e Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmFirmaAP.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmLeistungDetail.resources b/DPM2016/obj/Debug/DPM2016.frmLeistungDetail.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmLeistungDetail.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmMain.resources b/DPM2016/obj/Debug/DPM2016.frmMain.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmMain.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmPrivatSelect.resources b/DPM2016/obj/Debug/DPM2016.frmPrivatSelect.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmPrivatSelect.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmReportView.resources b/DPM2016/obj/Debug/DPM2016.frmReportView.resources new file mode 100644 index 0000000..31ef3fd Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmReportView.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmReportauswahl.resources b/DPM2016/obj/Debug/DPM2016.frmReportauswahl.resources new file mode 100644 index 0000000..6166c07 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmReportauswahl.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmStammdaten.resources b/DPM2016/obj/Debug/DPM2016.frmStammdaten.resources new file mode 100644 index 0000000..e0901a4 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmStammdaten.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmSysadminTableSelector.resources b/DPM2016/obj/Debug/DPM2016.frmSysadminTableSelector.resources new file mode 100644 index 0000000..65dc2c4 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmSysadminTableSelector.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.frmprogress.resources b/DPM2016/obj/Debug/DPM2016.frmprogress.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.frmprogress.resources differ diff --git a/DPM2016/obj/Debug/DPM2016.pdb b/DPM2016/obj/Debug/DPM2016.pdb new file mode 100644 index 0000000..715bac6 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.pdb differ diff --git a/DPM2016/obj/Debug/DPM2016.vbproj.FileListAbsolute.txt b/DPM2016/obj/Debug/DPM2016.vbproj.FileListAbsolute.txt new file mode 100644 index 0000000..2d69578 --- /dev/null +++ b/DPM2016/obj/Debug/DPM2016.vbproj.FileListAbsolute.txt @@ -0,0 +1,52 @@ +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\Database1.mdf +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\Database1_log.ldf +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DPM2016.exe.config +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DPM2016.exe +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DPM2016.pdb +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DPM2016.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\Aga.Controls.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\C1.Win.C1TrueDBGrid.2.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DevComponents.DotNetBar.Schedule.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DevComponents.DotNetBar2.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\FastReport.Bars.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\FastReport.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\FastReport.Editor.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\Syncfusion.Core.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\_FRReporting.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\XLSLib.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\FlexCel.dll +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\Aga.Controls.pdb +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\C1.Win.C1TrueDBGrid.2.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DevComponents.DotNetBar.Schedule.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\DevComponents.DotNetBar2.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\_FRReporting.pdb +E:\Software-Projekte\DPM\DPM2016\DPM2016\bin\Debug\_FRReporting.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Behandlung.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Benhandungdetail.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmLeistungDetail.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Leistungen.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmPrivatSelect.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Finanzen.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmMain.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Krankengeschichte.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Patient.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.PatientAbrechnung.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.PatientDetails.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmReportauswahl.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmReportView.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmStammdaten.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.clsStammdaten_Bez.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.clsStammdaten_flat.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.Resources.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmSysadminTableSelector.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.vbproj.GenerateResource.Cache +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.exe.licenses +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.exe +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.xml +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.pdb +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmFakturierung.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmAuswertungen.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.vbprojResolveAssemblyReference.cache +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmprogress.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmFirma.resources +E:\Software-Projekte\DPM\DPM2016\DPM2016\obj\Debug\DPM2016.frmFirmaAP.resources diff --git a/DPM2016/obj/Debug/DPM2016.vbproj.GenerateResource.Cache b/DPM2016/obj/Debug/DPM2016.vbproj.GenerateResource.Cache new file mode 100644 index 0000000..7022095 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.vbproj.GenerateResource.Cache differ diff --git a/DPM2016/obj/Debug/DPM2016.vbprojResolveAssemblyReference.cache b/DPM2016/obj/Debug/DPM2016.vbprojResolveAssemblyReference.cache new file mode 100644 index 0000000..c7298d0 Binary files /dev/null and b/DPM2016/obj/Debug/DPM2016.vbprojResolveAssemblyReference.cache differ diff --git a/DPM2016/obj/Debug/DPM2016.xml b/DPM2016/obj/Debug/DPM2016.xml new file mode 100644 index 0000000..f075640 --- /dev/null +++ b/DPM2016/obj/Debug/DPM2016.xml @@ -0,0 +1,191 @@ + + + + +DPM2016 + + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Prüfung, ob Datenänderungen vorgenommen wurden. + + + + + + Allg Eventhandler für Chanage-Ereignise festlegen + + + + + + + Envent-Handler für Change-Ereignisse + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + diff --git a/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..998d3ba Binary files /dev/null and b/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..74bc168 Binary files /dev/null and b/DPM2016/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/DPM2016/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll b/DPM2016/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll new file mode 100644 index 0000000..169b997 Binary files /dev/null and b/DPM2016/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll differ diff --git a/DPM2016/obj/Debug/dpm2016.exe.licenses b/DPM2016/obj/Debug/dpm2016.exe.licenses new file mode 100644 index 0000000..f747295 Binary files /dev/null and b/DPM2016/obj/Debug/dpm2016.exe.licenses differ diff --git a/DPM2016/obj/Release/DesignTimeResolveAssemblyReferences.cache b/DPM2016/obj/Release/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..9cf1e3c Binary files /dev/null and b/DPM2016/obj/Release/DesignTimeResolveAssemblyReferences.cache differ diff --git a/DPM2016/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/DPM2016/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..a9cc9d4 Binary files /dev/null and b/DPM2016/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Datenmigration.txt b/Datenmigration.txt new file mode 100644 index 0000000..f769bc2 --- /dev/null +++ b/Datenmigration.txt @@ -0,0 +1,19 @@ +DB_Migration -> Fullconvert +adm_update_tables +Leistung: SSO-Nummer -> SSO_Nummer +Traif: SSO-Nummer -> SSO_Nummer +Tarif: SSO_Nummer -> INT -> Varchar(50) +Firma: E-Mail -> E_Mail +Privat: E-Mail -> E_Mail +Views +Stored Proc + + +Neue Tabellen: +Spalten +Auswertung +SQL_Statementes -> i +log -> identity +kg +status +Dentotar diff --git a/Dentotar/222_SSO_UV-MV-IV 2017_V.1.4.2.xls b/Dentotar/222_SSO_UV-MV-IV 2017_V.1.4.2.xls new file mode 100644 index 0000000..42c3c87 Binary files /dev/null and b/Dentotar/222_SSO_UV-MV-IV 2017_V.1.4.2.xls differ diff --git a/Dentotar/Dentotar.xlsx b/Dentotar/Dentotar.xlsx new file mode 100644 index 0000000..113c080 Binary files /dev/null and b/Dentotar/Dentotar.xlsx differ diff --git a/Dentotar/Dentotar142.xls b/Dentotar/Dentotar142.xls new file mode 100644 index 0000000..6340bb1 Binary files /dev/null and b/Dentotar/Dentotar142.xls differ diff --git a/Dentotar/Dentotar19.xls b/Dentotar/Dentotar19.xls new file mode 100644 index 0000000..05b2f28 Binary files /dev/null and b/Dentotar/Dentotar19.xls differ diff --git a/Dentotar/Kopie von DENTOTAR_V.1.9_PW.xlsx b/Dentotar/Kopie von DENTOTAR_V.1.9_PW.xlsx new file mode 100644 index 0000000..586250a Binary files /dev/null and b/Dentotar/Kopie von DENTOTAR_V.1.9_PW.xlsx differ diff --git a/_FRReporting/DB/clsAuswertung.vb b/_FRReporting/DB/clsAuswertung.vb new file mode 100644 index 0000000..3ed23a3 --- /dev/null +++ b/_FRReporting/DB/clsAuswertung.vb @@ -0,0 +1,590 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'Auswertung' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 18:27:01 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'Auswertung'. + ''' + Public Class clsAuswertung + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv, m_bExcel_Report, m_bReport As SqlBoolean + Private m_daMutiert_am, m_daErstellt_am As SqlDateTime + Private m_iAuswertungNr, m_iMutierer As SqlInt32 + Private m_sSQLType, m_sBeschreibung, m_sConnectionstring_Subreport, m_sFilename, m_sBezeichnung, m_sSQL As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungNr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • bReport. May be SqlBoolean.Null
  • + '''
  • sFilename. May be SqlString.Null
  • + '''
  • bExcel_Report. May be SqlBoolean.Null
  • + '''
  • sSQL. May be SqlString.Null
  • + '''
  • sSQLType. May be SqlString.Null
  • + '''
  • sBeschreibung. May be SqlString.Null
  • + '''
  • sConnectionstring_Subreport. May be SqlString.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertung_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bReport", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bReport)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFilename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFilename)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bExcel_Report", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bExcel_Report)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQL", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQL)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQLType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQLType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBeschreibung", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sConnectionstring_Subreport", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sConnectionstring_Subreport)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertung_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertung::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungNr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • bReport. May be SqlBoolean.Null
  • + '''
  • sFilename. May be SqlString.Null
  • + '''
  • bExcel_Report. May be SqlBoolean.Null
  • + '''
  • sSQL. May be SqlString.Null
  • + '''
  • sSQLType. May be SqlString.Null
  • + '''
  • sBeschreibung. May be SqlString.Null
  • + '''
  • sConnectionstring_Subreport. May be SqlString.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertung_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bReport", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bReport)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFilename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFilename)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bExcel_Report", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bExcel_Report)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQL", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQL)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQLType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQLType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBeschreibung", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sConnectionstring_Subreport", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sConnectionstring_Subreport)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertung_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertung::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertung_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertung_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertung::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungNr
  • + '''
  • sBezeichnung
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
  • bReport
  • + '''
  • sFilename
  • + '''
  • bExcel_Report
  • + '''
  • sSQL
  • + '''
  • sSQLType
  • + '''
  • sBeschreibung
  • + '''
  • sConnectionstring_Subreport
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertung_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Auswertung") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertung_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungNr"), Integer)) + If dtToReturn.Rows(0)("Bezeichnung") Is System.DBNull.Value Then + m_sBezeichnung = SqlString.Null + Else + m_sBezeichnung = New SqlString(CType(dtToReturn.Rows(0)("Bezeichnung"), String)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + If dtToReturn.Rows(0)("Report") Is System.DBNull.Value Then + m_bReport = SqlBoolean.Null + Else + m_bReport = New SqlBoolean(CType(dtToReturn.Rows(0)("Report"), Boolean)) + End If + If dtToReturn.Rows(0)("Filename") Is System.DBNull.Value Then + m_sFilename = SqlString.Null + Else + m_sFilename = New SqlString(CType(dtToReturn.Rows(0)("Filename"), String)) + End If + If dtToReturn.Rows(0)("Excel_Report") Is System.DBNull.Value Then + m_bExcel_Report = SqlBoolean.Null + Else + m_bExcel_Report = New SqlBoolean(CType(dtToReturn.Rows(0)("Excel_Report"), Boolean)) + End If + If dtToReturn.Rows(0)("SQL") Is System.DBNull.Value Then + m_sSQL = SqlString.Null + Else + m_sSQL = New SqlString(CType(dtToReturn.Rows(0)("SQL"), String)) + End If + If dtToReturn.Rows(0)("SQLType") Is System.DBNull.Value Then + m_sSQLType = SqlString.Null + Else + m_sSQLType = New SqlString(CType(dtToReturn.Rows(0)("SQLType"), String)) + End If + If dtToReturn.Rows(0)("Beschreibung") Is System.DBNull.Value Then + m_sBeschreibung = SqlString.Null + Else + m_sBeschreibung = New SqlString(CType(dtToReturn.Rows(0)("Beschreibung"), String)) + End If + If dtToReturn.Rows(0)("Connectionstring_Subreport") Is System.DBNull.Value Then + m_sConnectionstring_Subreport = SqlString.Null + Else + m_sConnectionstring_Subreport = New SqlString(CType(dtToReturn.Rows(0)("Connectionstring_Subreport"), String)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertung::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertung_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Auswertung") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertung_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertung::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungNr]() As SqlInt32 + Get + Return m_iAuswertungNr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungNrTmp As SqlInt32 = Value + If iAuswertungNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungNr", "iAuswertungNr can't be NULL") + End If + m_iAuswertungNr = Value + End Set + End Property + + + Public Property [sBezeichnung]() As SqlString + Get + Return m_sBezeichnung + End Get + Set(ByVal Value As SqlString) + m_sBezeichnung = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + + + Public Property [bReport]() As SqlBoolean + Get + Return m_bReport + End Get + Set(ByVal Value As SqlBoolean) + m_bReport = Value + End Set + End Property + + + Public Property [sFilename]() As SqlString + Get + Return m_sFilename + End Get + Set(ByVal Value As SqlString) + m_sFilename = Value + End Set + End Property + + + Public Property [bExcel_Report]() As SqlBoolean + Get + Return m_bExcel_Report + End Get + Set(ByVal Value As SqlBoolean) + m_bExcel_Report = Value + End Set + End Property + + + Public Property [sSQL]() As SqlString + Get + Return m_sSQL + End Get + Set(ByVal Value As SqlString) + m_sSQL = Value + End Set + End Property + + + Public Property [sSQLType]() As SqlString + Get + Return m_sSQLType + End Get + Set(ByVal Value As SqlString) + m_sSQLType = Value + End Set + End Property + + + Public Property [sBeschreibung]() As SqlString + Get + Return m_sBeschreibung + End Get + Set(ByVal Value As SqlString) + m_sBeschreibung = Value + End Set + End Property + + + Public Property [sConnectionstring_Subreport]() As SqlString + Get + Return m_sConnectionstring_Subreport + End Get + Set(ByVal Value As SqlString) + m_sConnectionstring_Subreport = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsAuswertungAuswertungParameter.vb b/_FRReporting/DB/clsAuswertungAuswertungParameter.vb new file mode 100644 index 0000000..f18e0d4 --- /dev/null +++ b/_FRReporting/DB/clsAuswertungAuswertungParameter.vb @@ -0,0 +1,510 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'AuswertungAuswertungParameter' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'AuswertungAuswertungParameter'. + ''' + Public Class clsAuswertungAuswertungParameter + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daErstellt_am, m_daMutiert_am As SqlDateTime + Private m_iMutierer, m_iReihenfolge, m_iAuswertungnr, m_iAuswertungAuswertungparameternr, m_iAuswertungparameternr As SqlInt32 + Private m_sDBfeldname As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungAuswertungparameternr
  • + '''
  • iAuswertungnr. May be SqlInt32.Null
  • + '''
  • iAuswertungparameternr. May be SqlInt32.Null
  • + '''
  • sDBfeldname. May be SqlString.Null
  • + '''
  • iReihenfolge. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungAuswertungParameter_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sDBfeldname", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sDBfeldname)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iReihenfolge", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iReihenfolge)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungAuswertungParameter_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungAuswertungParameter::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungAuswertungparameternr
  • + '''
  • iAuswertungnr. May be SqlInt32.Null
  • + '''
  • iAuswertungparameternr. May be SqlInt32.Null
  • + '''
  • sDBfeldname. May be SqlString.Null
  • + '''
  • iReihenfolge. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungAuswertungParameter_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sDBfeldname", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sDBfeldname)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iReihenfolge", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iReihenfolge)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungAuswertungParameter_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungAuswertungParameter::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungAuswertungparameternr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungAuswertungParameter_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungAuswertungParameter_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungAuswertungParameter::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungAuswertungparameternr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungAuswertungparameternr
  • + '''
  • iAuswertungnr
  • + '''
  • iAuswertungparameternr
  • + '''
  • sDBfeldname
  • + '''
  • iReihenfolge
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungAuswertungParameter_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungAuswertungParameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungAuswertungParameter_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungAuswertungparameternr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungAuswertungparameternr"), Integer)) + If dtToReturn.Rows(0)("Auswertungnr") Is System.DBNull.Value Then + m_iAuswertungnr = SqlInt32.Null + Else + m_iAuswertungnr = New SqlInt32(CType(dtToReturn.Rows(0)("Auswertungnr"), Integer)) + End If + If dtToReturn.Rows(0)("Auswertungparameternr") Is System.DBNull.Value Then + m_iAuswertungparameternr = SqlInt32.Null + Else + m_iAuswertungparameternr = New SqlInt32(CType(dtToReturn.Rows(0)("Auswertungparameternr"), Integer)) + End If + If dtToReturn.Rows(0)("DBfeldname") Is System.DBNull.Value Then + m_sDBfeldname = SqlString.Null + Else + m_sDBfeldname = New SqlString(CType(dtToReturn.Rows(0)("DBfeldname"), String)) + End If + If dtToReturn.Rows(0)("Reihenfolge") Is System.DBNull.Value Then + m_iReihenfolge = SqlInt32.Null + Else + m_iReihenfolge = New SqlInt32(CType(dtToReturn.Rows(0)("Reihenfolge"), Integer)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungAuswertungParameter::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungAuswertungParameter_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungAuswertungParameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungAuswertungParameter_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungAuswertungParameter::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungAuswertungparameternr]() As SqlInt32 + Get + Return m_iAuswertungAuswertungparameternr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungAuswertungparameternrTmp As SqlInt32 = Value + If iAuswertungAuswertungparameternrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungAuswertungparameternr", "iAuswertungAuswertungparameternr can't be NULL") + End If + m_iAuswertungAuswertungparameternr = Value + End Set + End Property + + + Public Property [iAuswertungnr]() As SqlInt32 + Get + Return m_iAuswertungnr + End Get + Set(ByVal Value As SqlInt32) + m_iAuswertungnr = Value + End Set + End Property + + + Public Property [iAuswertungparameternr]() As SqlInt32 + Get + Return m_iAuswertungparameternr + End Get + Set(ByVal Value As SqlInt32) + m_iAuswertungparameternr = Value + End Set + End Property + + + Public Property [sDBfeldname]() As SqlString + Get + Return m_sDBfeldname + End Get + Set(ByVal Value As SqlString) + m_sDBfeldname = Value + End Set + End Property + + + Public Property [iReihenfolge]() As SqlInt32 + Get + Return m_iReihenfolge + End Get + Set(ByVal Value As SqlInt32) + m_iReihenfolge = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsAuswertungGruppe.vb b/_FRReporting/DB/clsAuswertungGruppe.vb new file mode 100644 index 0000000..1448127 --- /dev/null +++ b/_FRReporting/DB/clsAuswertungGruppe.vb @@ -0,0 +1,470 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'AuswertungGruppe' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'AuswertungGruppe'. + ''' + Public Class clsAuswertungGruppe + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daMutiert_am, m_daErstellt_am As SqlDateTime + Private m_iParentid, m_iMutierer, m_iAuswertungGruppeNr As SqlInt32 + Private m_sBezeichnung As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeNr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • iParentid. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppe_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iParentid", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iParentid)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppe_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppe::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeNr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • iParentid. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppe_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iParentid", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iParentid)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppe_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppe::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppe_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppe_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppe::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungGruppeNr
  • + '''
  • sBezeichnung
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
  • iParentid
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppe_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungGruppe") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppe_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungGruppeNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungGruppeNr"), Integer)) + If dtToReturn.Rows(0)("Bezeichnung") Is System.DBNull.Value Then + m_sBezeichnung = SqlString.Null + Else + m_sBezeichnung = New SqlString(CType(dtToReturn.Rows(0)("Bezeichnung"), String)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + If dtToReturn.Rows(0)("Parentid") Is System.DBNull.Value Then + m_iParentid = SqlInt32.Null + Else + m_iParentid = New SqlInt32(CType(dtToReturn.Rows(0)("Parentid"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppe::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppe_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungGruppe") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppe_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppe::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungGruppeNr]() As SqlInt32 + Get + Return m_iAuswertungGruppeNr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungGruppeNrTmp As SqlInt32 = Value + If iAuswertungGruppeNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungGruppeNr", "iAuswertungGruppeNr can't be NULL") + End If + m_iAuswertungGruppeNr = Value + End Set + End Property + + + Public Property [sBezeichnung]() As SqlString + Get + Return m_sBezeichnung + End Get + Set(ByVal Value As SqlString) + m_sBezeichnung = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + + + Public Property [iParentid]() As SqlInt32 + Get + Return m_iParentid + End Get + Set(ByVal Value As SqlInt32) + m_iParentid = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsAuswertungGruppeAuswertung.vb b/_FRReporting/DB/clsAuswertungGruppeAuswertung.vb new file mode 100644 index 0000000..46a0871 --- /dev/null +++ b/_FRReporting/DB/clsAuswertungGruppeAuswertung.vb @@ -0,0 +1,469 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'AuswertungGruppeAuswertung' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'AuswertungGruppeAuswertung'. + ''' + Public Class clsAuswertungGruppeAuswertung + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daMutiert_am, m_daErstllt_am As SqlDateTime + Private m_iMutierer, m_iAuswertungGruppeNr, m_iAuswertungNr, m_iAuswertungGruppeAuswertungNr As SqlInt32 + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeAuswertungNr
  • + '''
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • + '''
  • iAuswertungNr. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstllt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppeAuswertung_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstllt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstllt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppeAuswertung_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppeAuswertung::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeAuswertungNr
  • + '''
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • + '''
  • iAuswertungNr. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstllt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppeAuswertung_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstllt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstllt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppeAuswertung_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppeAuswertung::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeAuswertungNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppeAuswertung_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungGruppeAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeAuswertungNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppeAuswertung_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppeAuswertung::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungGruppeAuswertungNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungGruppeAuswertungNr
  • + '''
  • iAuswertungGruppeNr
  • + '''
  • iAuswertungNr
  • + '''
  • bAktiv
  • + '''
  • daErstllt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppeAuswertung_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungGruppeAuswertung") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungGruppeAuswertungNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungGruppeAuswertungNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppeAuswertung_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungGruppeAuswertungNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungGruppeAuswertungNr"), Integer)) + If dtToReturn.Rows(0)("AuswertungGruppeNr") Is System.DBNull.Value Then + m_iAuswertungGruppeNr = SqlInt32.Null + Else + m_iAuswertungGruppeNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungGruppeNr"), Integer)) + End If + If dtToReturn.Rows(0)("AuswertungNr") Is System.DBNull.Value Then + m_iAuswertungNr = SqlInt32.Null + Else + m_iAuswertungNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungNr"), Integer)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstllt_am") Is System.DBNull.Value Then + m_daErstllt_am = SqlDateTime.Null + Else + m_daErstllt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstllt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppeAuswertung::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungGruppeAuswertung_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungGruppeAuswertung") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungGruppeAuswertung_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungGruppeAuswertung::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungGruppeAuswertungNr]() As SqlInt32 + Get + Return m_iAuswertungGruppeAuswertungNr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungGruppeAuswertungNrTmp As SqlInt32 = Value + If iAuswertungGruppeAuswertungNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungGruppeAuswertungNr", "iAuswertungGruppeAuswertungNr can't be NULL") + End If + m_iAuswertungGruppeAuswertungNr = Value + End Set + End Property + + + Public Property [iAuswertungGruppeNr]() As SqlInt32 + Get + Return m_iAuswertungGruppeNr + End Get + Set(ByVal Value As SqlInt32) + m_iAuswertungGruppeNr = Value + End Set + End Property + + + Public Property [iAuswertungNr]() As SqlInt32 + Get + Return m_iAuswertungNr + End Get + Set(ByVal Value As SqlInt32) + m_iAuswertungNr = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstllt_am]() As SqlDateTime + Get + Return m_daErstllt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstllt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsAuswertungRptDatei.vb b/_FRReporting/DB/clsAuswertungRptDatei.vb new file mode 100644 index 0000000..3c4e754 --- /dev/null +++ b/_FRReporting/DB/clsAuswertungRptDatei.vb @@ -0,0 +1,478 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'AuswertungRptDatei' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'AuswertungRptDatei'. + ''' + Public Class clsAuswertungRptDatei + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_daMutiert_am, m_daErstellt_am As SqlDateTime + Private m_blobReportfile As SqlBinary + Private m_iMutierer, m_iAuswertungDateiNr As SqlInt32 + Private m_sFilename, m_sReportname As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungDateiNr
  • + '''
  • sFilename. May be SqlString.Null
  • + '''
  • sReportname. May be SqlString.Null
  • + '''
  • blobReportfile. May be SqlBinary.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungRptDatei_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungDateiNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungDateiNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFilename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFilename)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sReportname", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sReportname)) + Dim iLength As Integer = 0 + If Not m_blobReportfile.IsNull Then + iLength = m_blobReportfile.Length + End If + scmCmdToExecute.Parameters.Add(New SqlParameter("@blobReportfile", SqlDbType.Image, iLength, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_blobReportfile)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungRptDatei_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungRptDatei::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungDateiNr
  • + '''
  • sFilename. May be SqlString.Null
  • + '''
  • sReportname. May be SqlString.Null
  • + '''
  • blobReportfile. May be SqlBinary.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungRptDatei_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungDateiNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungDateiNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFilename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFilename)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sReportname", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sReportname)) + Dim iLength As Integer = 0 + If Not m_blobReportfile.IsNull Then + iLength = m_blobReportfile.Length + End If + scmCmdToExecute.Parameters.Add(New SqlParameter("@blobReportfile", SqlDbType.Image, iLength, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_blobReportfile)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungRptDatei_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungRptDatei::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungDateiNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungRptDatei_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungDateiNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungDateiNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungRptDatei_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungRptDatei::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungDateiNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungDateiNr
  • + '''
  • sFilename
  • + '''
  • sReportname
  • + '''
  • blobReportfile
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungRptDatei_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungRptDatei") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungDateiNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungDateiNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungRptDatei_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungDateiNr = New SqlInt32(CType(dtToReturn.Rows(0)("AuswertungDateiNr"), Integer)) + If dtToReturn.Rows(0)("Filename") Is System.DBNull.Value Then + m_sFilename = SqlString.Null + Else + m_sFilename = New SqlString(CType(dtToReturn.Rows(0)("Filename"), String)) + End If + If dtToReturn.Rows(0)("Reportname") Is System.DBNull.Value Then + m_sReportname = SqlString.Null + Else + m_sReportname = New SqlString(CType(dtToReturn.Rows(0)("Reportname"), String)) + End If + If dtToReturn.Rows(0)("Reportfile") Is System.DBNull.Value Then + m_blobReportfile = SqlBinary.Null + Else + m_blobReportfile = New SqlBinary(CType(dtToReturn.Rows(0)("Reportfile"), Byte())) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungRptDatei::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_AuswertungRptDatei_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("AuswertungRptDatei") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_AuswertungRptDatei_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungRptDatei::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungDateiNr]() As SqlInt32 + Get + Return m_iAuswertungDateiNr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungDateiNrTmp As SqlInt32 = Value + If iAuswertungDateiNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungDateiNr", "iAuswertungDateiNr can't be NULL") + End If + m_iAuswertungDateiNr = Value + End Set + End Property + + + Public Property [sFilename]() As SqlString + Get + Return m_sFilename + End Get + Set(ByVal Value As SqlString) + m_sFilename = Value + End Set + End Property + + + Public Property [sReportname]() As SqlString + Get + Return m_sReportname + End Get + Set(ByVal Value As SqlString) + m_sReportname = Value + End Set + End Property + + + Public Property [blobReportfile]() As SqlBinary + Get + Return m_blobReportfile + End Get + Set(ByVal Value As SqlBinary) + m_blobReportfile = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsAuswertungsparameter.vb b/_FRReporting/DB/clsAuswertungsparameter.vb new file mode 100644 index 0000000..28dbf84 --- /dev/null +++ b/_FRReporting/DB/clsAuswertungsparameter.vb @@ -0,0 +1,550 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'Auswertungsparameter' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'Auswertungsparameter'. + ''' + Public Class clsAuswertungsparameter + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daErstellt_am, m_daMutiert_am As SqlDateTime + Private m_iMutierer, m_iAuswertungparameternr As SqlInt32 + Private m_sBezeichnung, m_sParamName, m_sOperator, m_sWert, m_sFeldbezug, m_sParamType As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungparameternr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • sOperator. May be SqlString.Null
  • + '''
  • sFeldbezug. May be SqlString.Null
  • + '''
  • sWert. May be SqlString.Null
  • + '''
  • sParamName. May be SqlString.Null
  • + '''
  • sParamType. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertungsparameter_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sOperator", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sOperator)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFeldbezug", SqlDbType.VarChar, 200, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFeldbezug)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sWert", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sWert)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParamName", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParamName)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParamType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParamType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertungsparameter_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungsparameter::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungparameternr
  • + '''
  • sBezeichnung. May be SqlString.Null
  • + '''
  • sOperator. May be SqlString.Null
  • + '''
  • sFeldbezug. May be SqlString.Null
  • + '''
  • sWert. May be SqlString.Null
  • + '''
  • sParamName. May be SqlString.Null
  • + '''
  • sParamType. May be SqlString.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertungsparameter_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBezeichnung", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBezeichnung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sOperator", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sOperator)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sFeldbezug", SqlDbType.VarChar, 200, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sFeldbezug)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sWert", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sWert)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParamName", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParamName)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParamType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParamType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertungsparameter_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungsparameter::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungparameternr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertungsparameter_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertungsparameter_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungsparameter::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iAuswertungparameternr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iAuswertungparameternr
  • + '''
  • sBezeichnung
  • + '''
  • sOperator
  • + '''
  • sFeldbezug
  • + '''
  • sWert
  • + '''
  • sParamName
  • + '''
  • sParamType
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertungsparameter_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Auswertungsparameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iAuswertungparameternr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungparameternr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertungsparameter_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iAuswertungparameternr = New SqlInt32(CType(dtToReturn.Rows(0)("Auswertungparameternr"), Integer)) + If dtToReturn.Rows(0)("Bezeichnung") Is System.DBNull.Value Then + m_sBezeichnung = SqlString.Null + Else + m_sBezeichnung = New SqlString(CType(dtToReturn.Rows(0)("Bezeichnung"), String)) + End If + If dtToReturn.Rows(0)("Operator") Is System.DBNull.Value Then + m_sOperator = SqlString.Null + Else + m_sOperator = New SqlString(CType(dtToReturn.Rows(0)("Operator"), String)) + End If + If dtToReturn.Rows(0)("Feldbezug") Is System.DBNull.Value Then + m_sFeldbezug = SqlString.Null + Else + m_sFeldbezug = New SqlString(CType(dtToReturn.Rows(0)("Feldbezug"), String)) + End If + If dtToReturn.Rows(0)("Wert") Is System.DBNull.Value Then + m_sWert = SqlString.Null + Else + m_sWert = New SqlString(CType(dtToReturn.Rows(0)("Wert"), String)) + End If + If dtToReturn.Rows(0)("ParamName") Is System.DBNull.Value Then + m_sParamName = SqlString.Null + Else + m_sParamName = New SqlString(CType(dtToReturn.Rows(0)("ParamName"), String)) + End If + If dtToReturn.Rows(0)("ParamType") Is System.DBNull.Value Then + m_sParamType = SqlString.Null + Else + m_sParamType = New SqlString(CType(dtToReturn.Rows(0)("ParamType"), String)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungsparameter::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Auswertungsparameter_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Auswertungsparameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Auswertungsparameter_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsAuswertungsparameter::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iAuswertungparameternr]() As SqlInt32 + Get + Return m_iAuswertungparameternr + End Get + Set(ByVal Value As SqlInt32) + Dim iAuswertungparameternrTmp As SqlInt32 = Value + If iAuswertungparameternrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iAuswertungparameternr", "iAuswertungparameternr can't be NULL") + End If + m_iAuswertungparameternr = Value + End Set + End Property + + + Public Property [sBezeichnung]() As SqlString + Get + Return m_sBezeichnung + End Get + Set(ByVal Value As SqlString) + m_sBezeichnung = Value + End Set + End Property + + + Public Property [sOperator]() As SqlString + Get + Return m_sOperator + End Get + Set(ByVal Value As SqlString) + m_sOperator = Value + End Set + End Property + + + Public Property [sFeldbezug]() As SqlString + Get + Return m_sFeldbezug + End Get + Set(ByVal Value As SqlString) + m_sFeldbezug = Value + End Set + End Property + + + Public Property [sWert]() As SqlString + Get + Return m_sWert + End Get + Set(ByVal Value As SqlString) + m_sWert = Value + End Set + End Property + + + Public Property [sParamName]() As SqlString + Get + Return m_sParamName + End Get + Set(ByVal Value As SqlString) + m_sParamName = Value + End Set + End Property + + + Public Property [sParamType]() As SqlString + Get + Return m_sParamType + End Get + Set(ByVal Value As SqlString) + m_sParamType = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsConnectionProvider.vb b/_FRReporting/DB/clsConnectionProvider.vb new file mode 100644 index 0000000..42e9750 --- /dev/null +++ b/_FRReporting/DB/clsConnectionProvider.vb @@ -0,0 +1,289 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Connection Provider class for Database connection sharing +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // This class implements IDisposable. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Configuration +Imports System.Data +Imports System.Data.SqlClient +Imports System.Collections + +Namespace DB + ' /// + ' /// Purpose: provides a SqlConnection object which can be shared among data-access tier objects + ' /// to provide a way to do ADO.NET transaction coding without the hassling with SqlConnection objects + ' /// on a high level. + ' /// + Public Class clsConnectionProvider + Implements IDisposable + +#Region " Class Member Declarations " + + Private m_scoDBConnection As SqlConnection + Private m_bIsTransactionPending, m_bIsDisposed As Boolean + Private m_stCurrentTransaction As SqlTransaction + Private m_alSavePoints As ArrayList + +#End Region + + + Public Sub New() + ' // Init the class + InitClass() + End Sub + + + ' /// + ' /// Purpose: Implements the IDispose' method Dispose. + ' /// + Overloads Public Sub Dispose() Implements IDisposable.Dispose + Dispose(True) + GC.SuppressFinalize(Me) + End Sub + + + ' /// + ' /// Purpose: Implements the Dispose functionality. + ' /// + Overridable Overloads Protected Sub Dispose(ByVal bIsDisposing As Boolean) + ' // Check to see if Dispose has already been called. + If Not m_bIsDisposed Then + If bIsDisposing Then + ' // Dispose managed resources. + If Not (m_stCurrentTransaction Is Nothing) Then + m_stCurrentTransaction.Dispose() + m_stCurrentTransaction = Nothing + End If + If Not (m_scoDBConnection Is Nothing) Then + ' // closing the connection will abort (rollback) any pending transactions + m_scoDBConnection.Close() + m_scoDBConnection.Dispose() + m_scoDBConnection = Nothing + End If + End If + End If + m_bIsDisposed = True + End Sub + + + ' /// + ' /// Purpose: Initializes class members. + ' /// + Private Sub InitClass() + ' // Create all the objects and initialize other members. + m_scoDBConnection = new SqlConnection() + m_bIsDisposed = False + m_stCurrentTransaction = Nothing + m_bIsTransactionPending = False + m_alSavePoints = new ArrayList() + End Sub + + + ' /// + ' /// Purpose: Opens the connection object. + ' /// + ' /// True, if succeeded, otherwise an Exception exception is thrown. + Public Function OpenConnection() As Boolean + Try + If (m_scoDBConnection.State And ConnectionState.Open) > 0 Then + ' // It's already open. + Throw New Exception("OpenConnection::Connection is already open.") + End If + m_scoDBConnection.Open() + m_bIsTransactionPending = False + m_alSavePoints.Clear() + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + + ' /// + ' /// Purpose: Starts a new ADO.NET transaction using the open connection object of this class. + ' /// + ' /// Name of the transaction to start + ' /// True, if transaction is started correctly, otherwise an Exception exception is thrown + Public Function BeginTransaction(sTransactionName As String) As Boolean + Try + If m_bIsTransactionPending Then + ' // no nested transactions allowed. + Throw New Exception("BeginTransaction::Already transaction pending. Nesting not allowed") + End If + If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then + ' // no open connection + Throw New Exception("BeginTransaction::Connection is not open.") + End If + ' // begin the transaction and store the transaction object. + m_stCurrentTransaction = m_scoDBConnection.BeginTransaction(IsolationLevel.ReadCommitted, sTransactionName) + m_bIsTransactionPending = True + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + + ' /// + ' /// Purpose: Commits a pending transaction on the open connection object of this class. + ' /// + ' /// True, if commit was succesful, or an Exception exception is thrown + Public Function CommitTransaction() As Boolean + Try + If Not m_bIsTransactionPending Then + ' // no transaction pending + Throw New Exception("CommitTransaction::No transaction pending.") + End If + If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then + ' // no open connection + Throw New Exception("CommitTransaction::Connection is not open.") + End if + ' // commit the transaction + m_stCurrentTransaction.Commit() + m_bIsTransactionPending = False + m_stCurrentTransaction.Dispose() + m_stCurrentTransaction = Nothing + m_alSavePoints.Clear() + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + + ' /// + ' /// Purpose: Rolls back a pending transaction on the open connection object of this class, + ' /// or rolls back to the savepoint with the given name. Savepoints are created with SaveTransaction(). + ' /// + ' /// Name of transaction to roll back. Can be name of savepoint + ' /// True, if rollback was succesful, or an Exception exception is thrown + Public Function RollbackTransaction(sTransactionToRollback As String) As Boolean + Try + If Not m_bIsTransactionPending Then + ' // no transaction pending + Throw New Exception("RollbackTransaction::No transaction pending.") + End If + If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then + ' // no open connection + Throw New Exception("RollbackTransaction::Connection is not open.") + End If + ' // rollback the transaction + m_stCurrentTransaction.Rollback(sTransactionToRollback) + ' // if this wasn't a savepoint, we've rolled back the complete transaction, so we + ' // can clean it up. + If Not m_alSavePoints.Contains(sTransactionToRollback) Then + ' // it's not a savepoint + m_bIsTransactionPending = False + m_stCurrentTransaction.Dispose() + m_stCurrentTransaction = Nothing + m_alSavePoints.Clear() + End If + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + + ' /// + ' /// Purpose: Saves a pending transaction on the open connection object of this class to a 'savepoint' + ' /// with the given name. + ' /// When a rollback is issued, the caller can rollback to this savepoint or roll back the complete transaction. + ' /// + ' /// Name of the savepoint to store the current transaction under. + ' /// True, if save was succesful, or an Exception exception is thrown + Public Function SaveTransaction(sSavePointName As String) As Boolean + Try + If Not m_bIsTransactionPending Then + ' // no transaction pending + Throw New Exception("SaveTransaction::No transaction pending.") + End If + If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then + ' // no open connection + Throw New Exception("SaveTransaction::Connection is not open.") + End If + ' // save the transaction + m_stCurrentTransaction.Save(sSavePointName) + ' // Store the savepoint in the list. + m_alSavePoints.Add(sSavePointName) + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + + ' /// + ' /// Purpose: Closes the open connection. Depending on bCommitPendingTransactions, a pending + ' /// transaction is commited, or aborted. + ' /// + ' /// Flag for what to do when a transaction is still pending. True + ' /// will commit the current transaction, False will abort (rollback) the complete current transaction. + ' /// True, if close was succesful, False if connection was already closed, or an Exception exception is thrown when + ' /// an error occurs + Public Function CloseConnection(bCommitPendingTransaction As Boolean) As Boolean + Try + If (m_scoDBConnection.State And ConnectionState.Open) = 0 Then + ' // No open connection + Return False + End If + If m_bIsTransactionPending Then + If bCommitPendingTransaction Then + ' // Commit the pending transaction + m_stCurrentTransaction.Commit() + Else + ' // Rollback the pending transaction + m_stCurrentTransaction.Rollback() + End If + m_bIsTransactionPending = False + m_stCurrentTransaction.Dispose() + m_stCurrentTransaction = Nothing + m_alSavePoints.Clear() + End If + ' // close the connection + m_scoDBConnection.Close() + Return True + Catch ex As Exception + ' // bubble exception + Throw ex + End Try + End Function + + +#Region " Class Property Declarations " + + Public ReadOnly Property stCurrentTransaction() As SqlTransaction + Get + Return m_stCurrentTransaction + End Get + End Property + + + Public ReadOnly Property bIsTransactionPending() As Boolean + Get + Return m_bIsTransactionPending + End Get + End Property + + + Public ReadOnly Property scoDBConnection() As SqlConnection + Get + Return m_scoDBConnection + End Get + End Property + Public WriteOnly Property sConnectionString() As String + Set (ByVal Value As String) + m_scoDBConnection.ConnectionString = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsDBInteractionBase.vb b/_FRReporting/DB/clsDBInteractionBase.vb new file mode 100644 index 0000000..f5a00c6 --- /dev/null +++ b/_FRReporting/DB/clsDBInteractionBase.vb @@ -0,0 +1,208 @@ +' ////////////////////////////////////////////////////////////////////////////////////////// +' // Description: Base class for Database Interaction. +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:15:46 +' // Because this class implements IDisposable, derived classes shouldn't do so. +' ////////////////////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Configuration +Imports System.Data +Imports System.Data.SqlClient +Imports System.Data.SqlTypes + +Namespace DB + ' /// + ' /// Purpose: Error Enums used by this LLBL library. + ' /// + Public Enum LLBLError + AllOk + ' // Add more here (check the comma's!) + End Enum + + + ' /// + ' /// Purpose: General interface of the API generated. Contains only common methods of all classes. + ' /// + Public Interface ICommonDBAccess + Function Insert() As Boolean + Function Update() As Boolean + Function Delete() As Boolean + Function SelectOne() As DataTable + Function SelectAll() As DataTable + End Interface + + + ' /// + ' /// Purpose: Abstract base class for Database Interaction classes. + ' /// + Public MustInherit Class clsDBInteractionBase + Implements IDisposable + Implements ICommonDBAccess + +#Region " Class Member Declarations " + + Protected m_scoMainConnection As SqlConnection + Protected m_iRowsAffected As Integer + Protected m_iErrorCode As SqlInt32 + Protected m_bMainConnectionIsCreatedLocal As Boolean + Protected m_cpMainConnectionProvider As clsConnectionProvider + Private m_sConnectionString As String + Private m_bIsDisposed As Boolean + +#End Region + + + ' /// + ' /// Purpose: Class constructor. + ' /// + Public Sub New() + ' // Initialize the class' members. + InitClass() + End Sub + + + ' /// + ' /// Purpose: Initializes class members. + ' /// + Private Sub InitClass() + ' // create all the objects and initialize other members. + m_scoMainConnection = new SqlConnection() + m_bMainConnectionIsCreatedLocal = True + m_cpMainConnectionProvider = Nothing + m_iErrorCode = New SqlInt32(LLBLError.AllOk) + m_bIsDisposed = False + End Sub + + + ' /// + ' /// Purpose: Implements the IDispose' method Dispose. + ' /// + Overloads Public Sub Dispose() Implements IDisposable.Dispose + Dispose(True) + GC.SuppressFinalize(Me) + End Sub + + + ' /// + ' /// Purpose: Implements the Dispose functionality. + ' /// + Overridable Overloads Protected Sub Dispose(ByVal bIsDisposing As Boolean) + ' // Check to see if Dispose has already been called. + If Not m_bIsDisposed Then + If bIsDisposing Then + ' // Dispose managed resources. + If m_bMainConnectionIsCreatedLocal Then + ' // Object is created in this class, so destroy it here. + m_scoMainConnection.Close() + m_scoMainConnection.Dispose() + m_bMainConnectionIsCreatedLocal = True + End If + m_cpMainConnectionProvider = Nothing + m_scoMainConnection = Nothing + End If + End If + m_bIsDisposed = True + End Sub + + + ' /// + ' /// Purpose: Implements the ICommonDBAccess.Insert() method. + ' /// + Public Overridable Function Insert() As Boolean Implements ICommonDBAccess.Insert + ' // No implementation, throw exception + Throw New NotImplementedException() + End Function + + + ' /// + ' /// Purpose: Implements the ICommonDBAccess.Delete() method. + ' /// + Public Overridable Function Delete() As Boolean Implements ICommonDBAccess.Delete + ' // No implementation, throw exception + Throw New NotImplementedException() + End Function + + + ' /// + ' /// Purpose: Implements the ICommonDBAccess.Update() method. + ' /// + Public Overridable Function Update() As Boolean Implements ICommonDBAccess.Update + ' // No implementation, throw exception + Throw New NotImplementedException() + End Function + + + ' /// + ' /// Purpose: Implements the ICommonDBAccess.SelectOne() method. + ' /// + Public Overridable Function SelectOne() As DataTable Implements ICommonDBAccess.SelectOne + ' // No implementation, throw exception + Throw New NotImplementedException() + End Function + + + ' /// + ' /// Purpose: Implements the ICommonDBAccess.SelectAll() method. + ' /// + Public Overridable Function SelectAll() As DataTable Implements ICommonDBAccess.SelectAll + ' // No implementation, throw exception + Throw New NotImplementedException() + End Function + + +#Region " Class Property Declarations " + + Public WriteOnly Property cpMainConnectionProvider() As clsConnectionProvider + Set(ByVal Value As clsConnectionProvider) + If Value Is Nothing Then + ' // Invalid value + Throw New ArgumentNullException("cpMainConnectionProvider", "Nothing passed as value to this property which is not allowed.") + End If + + ' // A connection provider object is passed to this class. + ' // Retrieve the SqlConnection object, if present and create a + ' // reference to it. If there is already a MainConnection object + ' // referenced by the membervar, destroy that one or simply + ' // remove the reference, based on the flag. + If Not (m_scoMainConnection Is Nothing) Then + ' // First get rid of current connection object. Caller is responsible + If m_bMainConnectionIsCreatedLocal Then + ' // Is local created object, close it and dispose it. + m_scoMainConnection.Close() + m_scoMainConnection.Dispose() + End If + ' // Remove reference. + m_scoMainConnection = Nothing + End If + m_cpMainConnectionProvider = CType(Value, clsConnectionProvider) + m_scoMainConnection = m_cpMainConnectionProvider.scoDBConnection + m_bMainConnectionIsCreatedLocal = False + End Set + End Property + + + Public ReadOnly Property iErrorCode() As SqlInt32 + Get + Return m_iErrorCode + End Get + End Property + + + Public Property sConnectionString() As String + Get + Return m_sConnectionString + End Get + Set (ByVal Value As String) + m_sConnectionString = Value + m_scoMainConnection.ConnectionString = m_sConnectionString + End Set + End Property + Public Readonly Property iRowsAffected() As Integer + Get + Return m_iRowsAffected + End Get + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsKey_tabelle.vb b/_FRReporting/DB/clsKey_tabelle.vb new file mode 100644 index 0000000..4105a0a --- /dev/null +++ b/_FRReporting/DB/clsKey_tabelle.vb @@ -0,0 +1,491 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'key_tabelle' +' // Generated by LLBLGen v1.21.2003.712 Final on: Freitag, 4. Januar 2013, 17:02:51 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'key_tabelle'. + ''' + Public Class clsKey_tabelle + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daErstellt_am, m_daMutiert_am As SqlDateTime + Private m_iMutierer, m_iKeynr, m_iKey_wert, m_iMandantnr As SqlInt32 + Private m_sBeschreibung As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • sBeschreibung
  • + '''
  • iKey_wert
  • + '''
  • iMandantnr. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iKeynr
  • + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_key_tabelle_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@sbeschreibung", SqlDbType.VarChar, 255, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@ikey_wert", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iKey_wert)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@imandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@baktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daerstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@damutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@imutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@ikeynr", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iKeynr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iKeynr = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@ikeynr").Value, Integer)) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_key_tabelle_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iKeynr
  • + '''
  • sBeschreibung
  • + '''
  • iKey_wert
  • + '''
  • iMandantnr. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_key_tabelle_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@ikeynr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iKeynr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sbeschreibung", SqlDbType.VarChar, 255, ParameterDirection.Input, False, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@ikey_wert", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iKey_wert)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@imandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@baktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daerstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@damutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@imutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_key_tabelle_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iKeynr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_key_tabelle_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@ikeynr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iKeynr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_key_tabelle_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iKeynr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iKeynr
  • + '''
  • sBeschreibung
  • + '''
  • iKey_wert
  • + '''
  • iMandantnr
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_key_tabelle_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("key_tabelle") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@ikeynr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iKeynr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_key_tabelle_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iKeynr = New SqlInt32(CType(dtToReturn.Rows(0)("keynr"), Integer)) + m_sBeschreibung = New SqlString(CType(dtToReturn.Rows(0)("beschreibung"), String)) + m_iKey_wert = New SqlInt32(CType(dtToReturn.Rows(0)("key_wert"), Integer)) + If dtToReturn.Rows(0)("mandantnr") Is System.DBNull.Value Then + m_iMandantnr = SqlInt32.Null + Else + m_iMandantnr = New SqlInt32(CType(dtToReturn.Rows(0)("mandantnr"), Integer)) + End If + If dtToReturn.Rows(0)("aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("mutierer"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_key_tabelle_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("key_tabelle") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_key_tabelle_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iKeynr]() As SqlInt32 + Get + Return m_iKeynr + End Get + Set(ByVal Value As SqlInt32) + Dim iKeynrTmp As SqlInt32 = Value + If iKeynrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iKeynr", "iKeynr can't be NULL") + End If + m_iKeynr = Value + End Set + End Property + + + Public Property [sBeschreibung]() As SqlString + Get + Return m_sBeschreibung + End Get + Set(ByVal Value As SqlString) + Dim sBeschreibungTmp As SqlString = Value + If sBeschreibungTmp.IsNull Then + Throw New ArgumentOutOfRangeException("sBeschreibung", "sBeschreibung can't be NULL") + End If + m_sBeschreibung = Value + End Set + End Property + + + Public Property [iKey_wert]() As SqlInt32 + Get + Return m_iKey_wert + End Get + Set(ByVal Value As SqlInt32) + Dim iKey_wertTmp As SqlInt32 = Value + If iKey_wertTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iKey_wert", "iKey_wert can't be NULL") + End If + m_iKey_wert = Value + End Set + End Property + + + Public Property [iMandantnr]() As SqlInt32 + Get + Return m_iMandantnr + End Get + Set(ByVal Value As SqlInt32) + m_iMandantnr = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsMitarbeiter_Auswertungsparameter.vb b/_FRReporting/DB/clsMitarbeiter_Auswertungsparameter.vb new file mode 100644 index 0000000..c0cce6c --- /dev/null +++ b/_FRReporting/DB/clsMitarbeiter_Auswertungsparameter.vb @@ -0,0 +1,510 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'Mitarbeiter_Auswertungsparameter' +' // Generated by LLBLGen v1.21.2003.712 Final on: Samstag, 2. März 2013, 14:18:33 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'Mitarbeiter_Auswertungsparameter'. + ''' + Public Class clsMitarbeiter_Auswertungsparameter + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bParamPrint As SqlBoolean + Private m_iAuswertungnr, m_iMitarbeiter_AuswertungsparameterNr, m_iMitarbeiternr As SqlInt32 + Private m_sTitelzeile2, m_sSQLWhere, m_sBeschreibung, m_sParameterdaten, m_sTitelzeile1 As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iMitarbeiternr. May be SqlInt32.Null
  • + '''
  • iAuswertungnr. May be SqlInt32.Null
  • + '''
  • sBeschreibung. May be SqlString.Null
  • + '''
  • sParameterdaten. May be SqlString.Null
  • + '''
  • sTitelzeile1. May be SqlString.Null
  • + '''
  • sTitelzeile2. May be SqlString.Null
  • + '''
  • bParamPrint. May be SqlBoolean.Null
  • + '''
  • sSQLWhere. May be SqlString.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iMitarbeiter_AuswertungsparameterNr
  • + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Mitarbeiter_Auswertungsparameter_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBeschreibung", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParameterdaten", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParameterdaten)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sTitelzeile1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTitelzeile1)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sTitelzeile2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTitelzeile2)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bParamPrint", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bParamPrint)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQLWhere", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQLWhere)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iMitarbeiter_AuswertungsparameterNr", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiter_AuswertungsparameterNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iMitarbeiter_AuswertungsparameterNr = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iMitarbeiter_AuswertungsparameterNr").Value, SqlInt32)) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Mitarbeiter_Auswertungsparameter_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsMitarbeiter_Auswertungsparameter::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iMitarbeiter_AuswertungsparameterNr
  • + '''
  • iMitarbeiternr. May be SqlInt32.Null
  • + '''
  • iAuswertungnr. May be SqlInt32.Null
  • + '''
  • sBeschreibung. May be SqlString.Null
  • + '''
  • sParameterdaten. May be SqlString.Null
  • + '''
  • sTitelzeile1. May be SqlString.Null
  • + '''
  • sTitelzeile2. May be SqlString.Null
  • + '''
  • bParamPrint. May be SqlBoolean.Null
  • + '''
  • sSQLWhere. May be SqlString.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Mitarbeiter_Auswertungsparameter_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMitarbeiter_AuswertungsparameterNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiter_AuswertungsparameterNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iAuswertungnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iAuswertungnr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sBeschreibung", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sBeschreibung)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sParameterdaten", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sParameterdaten)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sTitelzeile1", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTitelzeile1)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sTitelzeile2", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sTitelzeile2)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bParamPrint", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bParamPrint)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSQLWhere", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSQLWhere)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Mitarbeiter_Auswertungsparameter_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsMitarbeiter_Auswertungsparameter::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iMitarbeiter_AuswertungsparameterNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Mitarbeiter_Auswertungsparameter_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMitarbeiter_AuswertungsparameterNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiter_AuswertungsparameterNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Mitarbeiter_Auswertungsparameter_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsMitarbeiter_Auswertungsparameter::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iMitarbeiter_AuswertungsparameterNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iMitarbeiter_AuswertungsparameterNr
  • + '''
  • iMitarbeiternr
  • + '''
  • iAuswertungnr
  • + '''
  • sBeschreibung
  • + '''
  • sParameterdaten
  • + '''
  • sTitelzeile1
  • + '''
  • sTitelzeile2
  • + '''
  • bParamPrint
  • + '''
  • sSQLWhere
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Mitarbeiter_Auswertungsparameter_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Mitarbeiter_Auswertungsparameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iMitarbeiter_AuswertungsparameterNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iMitarbeiter_AuswertungsparameterNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Mitarbeiter_Auswertungsparameter_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iMitarbeiter_AuswertungsparameterNr = New SqlInt32(CType(dtToReturn.Rows(0)("Mitarbeiter_AuswertungsparameterNr"), Integer)) + If dtToReturn.Rows(0)("Mitarbeiternr") Is System.DBNull.Value Then + m_iMitarbeiternr = SqlInt32.Null + Else + m_iMitarbeiternr = New SqlInt32(CType(dtToReturn.Rows(0)("Mitarbeiternr"), Integer)) + End If + If dtToReturn.Rows(0)("Auswertungnr") Is System.DBNull.Value Then + m_iAuswertungnr = SqlInt32.Null + Else + m_iAuswertungnr = New SqlInt32(CType(dtToReturn.Rows(0)("Auswertungnr"), Integer)) + End If + If dtToReturn.Rows(0)("Beschreibung") Is System.DBNull.Value Then + m_sBeschreibung = SqlString.Null + Else + m_sBeschreibung = New SqlString(CType(dtToReturn.Rows(0)("Beschreibung"), String)) + End If + If dtToReturn.Rows(0)("Parameterdaten") Is System.DBNull.Value Then + m_sParameterdaten = SqlString.Null + Else + m_sParameterdaten = New SqlString(CType(dtToReturn.Rows(0)("Parameterdaten"), String)) + End If + If dtToReturn.Rows(0)("Titelzeile1") Is System.DBNull.Value Then + m_sTitelzeile1 = SqlString.Null + Else + m_sTitelzeile1 = New SqlString(CType(dtToReturn.Rows(0)("Titelzeile1"), String)) + End If + If dtToReturn.Rows(0)("Titelzeile2") Is System.DBNull.Value Then + m_sTitelzeile2 = SqlString.Null + Else + m_sTitelzeile2 = New SqlString(CType(dtToReturn.Rows(0)("Titelzeile2"), String)) + End If + If dtToReturn.Rows(0)("ParamPrint") Is System.DBNull.Value Then + m_bParamPrint = SqlBoolean.Null + Else + m_bParamPrint = New SqlBoolean(CType(dtToReturn.Rows(0)("ParamPrint"), Boolean)) + End If + If dtToReturn.Rows(0)("SQLWhere") Is System.DBNull.Value Then + m_sSQLWhere = SqlString.Null + Else + m_sSQLWhere = New SqlString(CType(dtToReturn.Rows(0)("SQLWhere"), String)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsMitarbeiter_Auswertungsparameter::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_Mitarbeiter_Auswertungsparameter_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("Mitarbeiter_Auswertungsparameter") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_Mitarbeiter_Auswertungsparameter_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsMitarbeiter_Auswertungsparameter::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iMitarbeiter_AuswertungsparameterNr]() As SqlInt32 + Get + Return m_iMitarbeiter_AuswertungsparameterNr + End Get + Set(ByVal Value As SqlInt32) + Dim iMitarbeiter_AuswertungsparameterNrTmp As SqlInt32 = Value + If iMitarbeiter_AuswertungsparameterNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iMitarbeiter_AuswertungsparameterNr", "iMitarbeiter_AuswertungsparameterNr can't be NULL") + End If + m_iMitarbeiter_AuswertungsparameterNr = Value + End Set + End Property + + + Public Property [iMitarbeiternr]() As SqlInt32 + Get + Return m_iMitarbeiternr + End Get + Set(ByVal Value As SqlInt32) + m_iMitarbeiternr = Value + End Set + End Property + + + Public Property [iAuswertungnr]() As SqlInt32 + Get + Return m_iAuswertungnr + End Get + Set(ByVal Value As SqlInt32) + m_iAuswertungnr = Value + End Set + End Property + + + Public Property [sBeschreibung]() As SqlString + Get + Return m_sBeschreibung + End Get + Set(ByVal Value As SqlString) + m_sBeschreibung = Value + End Set + End Property + + + Public Property [sParameterdaten]() As SqlString + Get + Return m_sParameterdaten + End Get + Set(ByVal Value As SqlString) + m_sParameterdaten = Value + End Set + End Property + + + Public Property [sTitelzeile1]() As SqlString + Get + Return m_sTitelzeile1 + End Get + Set(ByVal Value As SqlString) + m_sTitelzeile1 = Value + End Set + End Property + + + Public Property [sTitelzeile2]() As SqlString + Get + Return m_sTitelzeile2 + End Get + Set(ByVal Value As SqlString) + m_sTitelzeile2 = Value + End Set + End Property + + + Public Property [bParamPrint]() As SqlBoolean + Get + Return m_bParamPrint + End Get + Set(ByVal Value As SqlBoolean) + m_bParamPrint = Value + End Set + End Property + + + Public Property [sSQLWhere]() As SqlString + Get + Return m_sSQLWhere + End Get + Set(ByVal Value As SqlString) + m_sSQLWhere = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/DB/clsSecurityObject.vb b/_FRReporting/DB/clsSecurityObject.vb new file mode 100644 index 0000000..5d07551 --- /dev/null +++ b/_FRReporting/DB/clsSecurityObject.vb @@ -0,0 +1,570 @@ +' /////////////////////////////////////////////////////////////////////////// +' // Description: Data Access class for the table 'SecurityObject' +' // Generated by LLBLGen v1.21.2003.712 Final on: Dienstag, 1. Januar 2013, 19:36:38 +' // Because the Base Class already implements IDispose, this class doesn't. +' /////////////////////////////////////////////////////////////////////////// +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient + +Namespace DB + ''' + ''' Purpose: Data Access class for the table 'SecurityObject'. + ''' + Public Class clsSecurityObject + Inherits clsDBInteractionBase + +#Region " Class Member Declarations " + + Private m_bAktiv As SqlBoolean + Private m_daErstellt_am, m_daMutiert_am As SqlDateTime + Private m_iLevel, m_iMutierer, m_iMandantnr, m_iSecurityObjectNr As SqlInt32 + Private m_sSecurityForm, m_sSecurityObjectDescriotion, m_sSecurityObjectItem, m_sSecurityObject, m_sSecurityObjectType As SqlString + +#End Region + + + ''' + ''' Purpose: Class constructor. + ''' + Public Sub New() + ' // Nothing for now. + End Sub + + + ''' + ''' Purpose: Insert method. This method will insert one new row into the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iSecurityObjectNr
  • + '''
  • sSecurityForm. May be SqlString.Null
  • + '''
  • sSecurityObjectType. May be SqlString.Null
  • + '''
  • sSecurityObject. May be SqlString.Null
  • + '''
  • sSecurityObjectItem. May be SqlString.Null
  • + '''
  • sSecurityObjectDescriotion. May be SqlString.Null
  • + '''
  • iLevel. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • iMandantnr. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Insert() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_SecurityObject_Insert]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iSecurityObjectNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iSecurityObjectNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityForm", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityForm)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObject", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObject)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectItem", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectItem)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectDescriotion", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectDescriotion)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iLevel", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iLevel)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_SecurityObject_Insert' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsSecurityObject::Insert::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Update method. This method will Update one existing row in the database. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iSecurityObjectNr
  • + '''
  • sSecurityForm. May be SqlString.Null
  • + '''
  • sSecurityObjectType. May be SqlString.Null
  • + '''
  • sSecurityObject. May be SqlString.Null
  • + '''
  • sSecurityObjectItem. May be SqlString.Null
  • + '''
  • sSecurityObjectDescriotion. May be SqlString.Null
  • + '''
  • iLevel. May be SqlInt32.Null
  • + '''
  • bAktiv. May be SqlBoolean.Null
  • + '''
  • daErstellt_am. May be SqlDateTime.Null
  • + '''
  • daMutiert_am. May be SqlDateTime.Null
  • + '''
  • iMutierer. May be SqlInt32.Null
  • + '''
  • iMandantnr. May be SqlInt32.Null
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Update() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_SecurityObject_Update]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iSecurityObjectNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iSecurityObjectNr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityForm", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityForm)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectType", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectType)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObject", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObject)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectItem", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectItem)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@sSecurityObjectDescriotion", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_sSecurityObjectDescriotion)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iLevel", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iLevel)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@bAktiv", SqlDbType.Bit, 1, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_bAktiv)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daErstellt_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daErstellt_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@daMutiert_am", SqlDbType.DateTime, 8, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, m_daMutiert_am)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMutierer", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMutierer)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iMandantnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, m_iMandantnr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_SecurityObject_Update' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsSecurityObject::Update::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + ''' + ''' True if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iSecurityObjectNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function Delete() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_SecurityObject_Delete]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@iSecurityObjectNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iSecurityObjectNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + m_iRowsAffected = scmCmdToExecute.ExecuteNonQuery() + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_SecurityObject_Delete' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return True + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsSecurityObject::Delete::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + + ''' + ''' Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties needed for this method: + '''
    + '''
  • iSecurityObjectNr
  • + '''
+ ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
  • iSecurityObjectNr
  • + '''
  • sSecurityForm
  • + '''
  • sSecurityObjectType
  • + '''
  • sSecurityObject
  • + '''
  • sSecurityObjectItem
  • + '''
  • sSecurityObjectDescriotion
  • + '''
  • iLevel
  • + '''
  • bAktiv
  • + '''
  • daErstellt_am
  • + '''
  • daMutiert_am
  • + '''
  • iMutierer
  • + '''
  • iMandantnr
  • + '''
+ ''' Will fill all properties corresponding with a field in the table with the value of the row selected. + '''
+ Overrides Public Function SelectOne() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_SecurityObject_SelectOne]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("SecurityObject") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iSecurityObjectNr", SqlDbType.Int, 4, ParameterDirection.Input, False, 10, 0, "", DataRowVersion.Proposed, m_iSecurityObjectNr)) + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_SecurityObject_SelectOne' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + If dtToReturn.Rows.Count > 0 Then + m_iSecurityObjectNr = New SqlInt32(CType(dtToReturn.Rows(0)("SecurityObjectNr"), Integer)) + If dtToReturn.Rows(0)("SecurityForm") Is System.DBNull.Value Then + m_sSecurityForm = SqlString.Null + Else + m_sSecurityForm = New SqlString(CType(dtToReturn.Rows(0)("SecurityForm"), String)) + End If + If dtToReturn.Rows(0)("SecurityObjectType") Is System.DBNull.Value Then + m_sSecurityObjectType = SqlString.Null + Else + m_sSecurityObjectType = New SqlString(CType(dtToReturn.Rows(0)("SecurityObjectType"), String)) + End If + If dtToReturn.Rows(0)("SecurityObject") Is System.DBNull.Value Then + m_sSecurityObject = SqlString.Null + Else + m_sSecurityObject = New SqlString(CType(dtToReturn.Rows(0)("SecurityObject"), String)) + End If + If dtToReturn.Rows(0)("SecurityObjectItem") Is System.DBNull.Value Then + m_sSecurityObjectItem = SqlString.Null + Else + m_sSecurityObjectItem = New SqlString(CType(dtToReturn.Rows(0)("SecurityObjectItem"), String)) + End If + If dtToReturn.Rows(0)("SecurityObjectDescriotion") Is System.DBNull.Value Then + m_sSecurityObjectDescriotion = SqlString.Null + Else + m_sSecurityObjectDescriotion = New SqlString(CType(dtToReturn.Rows(0)("SecurityObjectDescriotion"), String)) + End If + If dtToReturn.Rows(0)("Level") Is System.DBNull.Value Then + m_iLevel = SqlInt32.Null + Else + m_iLevel = New SqlInt32(CType(dtToReturn.Rows(0)("Level"), Integer)) + End If + If dtToReturn.Rows(0)("Aktiv") Is System.DBNull.Value Then + m_bAktiv = SqlBoolean.Null + Else + m_bAktiv = New SqlBoolean(CType(dtToReturn.Rows(0)("Aktiv"), Boolean)) + End If + If dtToReturn.Rows(0)("Erstellt_am") Is System.DBNull.Value Then + m_daErstellt_am = SqlDateTime.Null + Else + m_daErstellt_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Erstellt_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutiert_am") Is System.DBNull.Value Then + m_daMutiert_am = SqlDateTime.Null + Else + m_daMutiert_am = New SqlDateTime(CType(dtToReturn.Rows(0)("Mutiert_am"), Date)) + End If + If dtToReturn.Rows(0)("Mutierer") Is System.DBNull.Value Then + m_iMutierer = SqlInt32.Null + Else + m_iMutierer = New SqlInt32(CType(dtToReturn.Rows(0)("Mutierer"), Integer)) + End If + If dtToReturn.Rows(0)("Mandantnr") Is System.DBNull.Value Then + m_iMandantnr = SqlInt32.Null + Else + m_iMandantnr = New SqlInt32(CType(dtToReturn.Rows(0)("Mandantnr"), Integer)) + End If + End If + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsSecurityObject::SelectOne::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + + ''' + ''' Purpose: SelectAll method. This method will Select all rows from the table. + ''' + ''' DataTable object if succeeded, otherwise an Exception is thrown. + ''' + ''' Properties set after a succesful call of this method: + '''
    + '''
  • iErrorCode
  • + '''
+ '''
+ Overrides Public Function SelectAll() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[pr_SecurityObject_SelectAll]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + Dim dtToReturn As DataTable = new DataTable("SecurityObject") + Dim sdaAdapter As SqlDataAdapter = new SqlDataAdapter(scmCmdToExecute) + + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + + Try + scmCmdToExecute.Parameters.Add(new SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + sdaAdapter.Fill(dtToReturn) + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'pr_SecurityObject_SelectAll' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsSecurityObject::SelectAll::Error occured.", ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + +#Region " Class Property Declarations " + + Public Property [iSecurityObjectNr]() As SqlInt32 + Get + Return m_iSecurityObjectNr + End Get + Set(ByVal Value As SqlInt32) + Dim iSecurityObjectNrTmp As SqlInt32 = Value + If iSecurityObjectNrTmp.IsNull Then + Throw New ArgumentOutOfRangeException("iSecurityObjectNr", "iSecurityObjectNr can't be NULL") + End If + m_iSecurityObjectNr = Value + End Set + End Property + + + Public Property [sSecurityForm]() As SqlString + Get + Return m_sSecurityForm + End Get + Set(ByVal Value As SqlString) + m_sSecurityForm = Value + End Set + End Property + + + Public Property [sSecurityObjectType]() As SqlString + Get + Return m_sSecurityObjectType + End Get + Set(ByVal Value As SqlString) + m_sSecurityObjectType = Value + End Set + End Property + + + Public Property [sSecurityObject]() As SqlString + Get + Return m_sSecurityObject + End Get + Set(ByVal Value As SqlString) + m_sSecurityObject = Value + End Set + End Property + + + Public Property [sSecurityObjectItem]() As SqlString + Get + Return m_sSecurityObjectItem + End Get + Set(ByVal Value As SqlString) + m_sSecurityObjectItem = Value + End Set + End Property + + + Public Property [sSecurityObjectDescriotion]() As SqlString + Get + Return m_sSecurityObjectDescriotion + End Get + Set(ByVal Value As SqlString) + m_sSecurityObjectDescriotion = Value + End Set + End Property + + + Public Property [iLevel]() As SqlInt32 + Get + Return m_iLevel + End Get + Set(ByVal Value As SqlInt32) + m_iLevel = Value + End Set + End Property + + + Public Property [bAktiv]() As SqlBoolean + Get + Return m_bAktiv + End Get + Set(ByVal Value As SqlBoolean) + m_bAktiv = Value + End Set + End Property + + + Public Property [daErstellt_am]() As SqlDateTime + Get + Return m_daErstellt_am + End Get + Set(ByVal Value As SqlDateTime) + m_daErstellt_am = Value + End Set + End Property + + + Public Property [daMutiert_am]() As SqlDateTime + Get + Return m_daMutiert_am + End Get + Set(ByVal Value As SqlDateTime) + m_daMutiert_am = Value + End Set + End Property + + + Public Property [iMutierer]() As SqlInt32 + Get + Return m_iMutierer + End Get + Set(ByVal Value As SqlInt32) + m_iMutierer = Value + End Set + End Property + + + Public Property [iMandantnr]() As SqlInt32 + Get + Return m_iMandantnr + End Get + Set(ByVal Value As SqlInt32) + m_iMandantnr = Value + End Set + End Property + +#End Region + + End Class +End Namespace diff --git a/_FRReporting/Formulare/FrmReportSelect.designer.vb b/_FRReporting/Formulare/FrmReportSelect.designer.vb new file mode 100644 index 0000000..8aa4451 --- /dev/null +++ b/_FRReporting/Formulare/FrmReportSelect.designer.vb @@ -0,0 +1,880 @@ + _ +Partial Class FrmReportSelect + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(FrmReportSelect)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.TSBtnQuit = New System.Windows.Forms.ToolStripButton() + Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator() + Me.tsbtnReportDesign = New System.Windows.Forms.ToolStripButton() + Me.TSBtnSetSecurityObject = New System.Windows.Forms.ToolStripButton() + Me.ImageList1 = New System.Windows.Forms.ImageList(Me.components) + Me.TreeAuswertungen = New System.Windows.Forms.TreeView() + Me.TreeContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.AlleKnotenSchliessenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.AlleKnotenÖffnenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.GrpAuswertung = New System.Windows.Forms.GroupBox() + Me.GrpParameter = New System.Windows.Forms.GroupBox() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.btnEditSQL = New System.Windows.Forms.Button() + Me.btnDeleteSavedParam = New System.Windows.Forms.Button() + Me.ComboboxMAParameter = New System.Windows.Forms.ComboBox() + Me.btnSave = New System.Windows.Forms.Button() + Me.BtnParamDel6 = New System.Windows.Forms.Button() + Me.BtnParamDel5 = New System.Windows.Forms.Button() + Me.BtnParamDel4 = New System.Windows.Forms.Button() + Me.BtnParamDel3 = New System.Windows.Forms.Button() + Me.BtnParamDel2 = New System.Windows.Forms.Button() + Me.BtnParamDel1 = New System.Windows.Forms.Button() + Me.BtnInitParam = New System.Windows.Forms.Button() + Me.cbandor6 = New System.Windows.Forms.ComboBox() + Me.cbparam7 = New System.Windows.Forms.ComboBox() + Me.cbvalue7 = New System.Windows.Forms.ComboBox() + Me.cbop7 = New System.Windows.Forms.ComboBox() + Me.cbandor5 = New System.Windows.Forms.ComboBox() + Me.cbparam6 = New System.Windows.Forms.ComboBox() + Me.cbvalue6 = New System.Windows.Forms.ComboBox() + Me.cbop6 = New System.Windows.Forms.ComboBox() + Me.cbandor4 = New System.Windows.Forms.ComboBox() + Me.cbandor3 = New System.Windows.Forms.ComboBox() + Me.cbandor2 = New System.Windows.Forms.ComboBox() + Me.cbandor1 = New System.Windows.Forms.ComboBox() + Me.cbparam5 = New System.Windows.Forms.ComboBox() + Me.cbparam4 = New System.Windows.Forms.ComboBox() + Me.cbparam3 = New System.Windows.Forms.ComboBox() + Me.cbparam2 = New System.Windows.Forms.ComboBox() + Me.cbparam1 = New System.Windows.Forms.ComboBox() + Me.Label6 = New System.Windows.Forms.Label() + Me.cbvalue5 = New System.Windows.Forms.ComboBox() + Me.cbop5 = New System.Windows.Forms.ComboBox() + Me.cbvalue4 = New System.Windows.Forms.ComboBox() + Me.cbop4 = New System.Windows.Forms.ComboBox() + Me.cbvalue3 = New System.Windows.Forms.ComboBox() + Me.cbop3 = New System.Windows.Forms.ComboBox() + Me.cbvalue2 = New System.Windows.Forms.ComboBox() + Me.cbop2 = New System.Windows.Forms.ComboBox() + Me.lblTitelWert = New System.Windows.Forms.Label() + Me.lblTitelOperator = New System.Windows.Forms.Label() + Me.lblParamTitel = New System.Windows.Forms.Label() + Me.cbvalue1 = New System.Windows.Forms.ComboBox() + Me.cbop1 = New System.Windows.Forms.ComboBox() + Me.ImageList2 = New System.Windows.Forms.ImageList(Me.components) + Me.grpBeschreibung = New System.Windows.Forms.GroupBox() + Me.txtbeschreibung = New System.Windows.Forms.TextBox() + Me.grpdb = New System.Windows.Forms.GroupBox() + Me.btnAufbereitenCSV = New System.Windows.Forms.Button() + Me.grpcr = New System.Windows.Forms.GroupBox() + Me.checkboxprintparam = New System.Windows.Forms.CheckBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.txtTitel2 = New System.Windows.Forms.TextBox() + Me.txtTitel1 = New System.Windows.Forms.TextBox() + Me.BtnAufbereitenCR = New System.Windows.Forms.Button() + Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) + Me.MenuStrip1.SuspendLayout() + Me.ToolStrip1.SuspendLayout() + Me.TreeContextMenuStrip1.SuspendLayout() + Me.GrpAuswertung.SuspendLayout() + Me.GrpParameter.SuspendLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.grpBeschreibung.SuspendLayout() + Me.grpdb.SuspendLayout() + Me.grpcr.SuspendLayout() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(732, 24) + Me.MenuStrip1.TabIndex = 4 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.TSBtnQuit, Me.ToolStripSeparator1, Me.tsbtnReportDesign, Me.TSBtnSetSecurityObject}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(732, 25) + Me.ToolStrip1.TabIndex = 3 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'TSBtnQuit + ' + Me.TSBtnQuit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnQuit.Image = CType(resources.GetObject("TSBtnQuit.Image"), System.Drawing.Image) + Me.TSBtnQuit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnQuit.Name = "TSBtnQuit" + Me.TSBtnQuit.Size = New System.Drawing.Size(23, 22) + Me.TSBtnQuit.Text = "Fenster schliessen" + Me.TSBtnQuit.ToolTipText = "Fenster schliessen" + ' + 'ToolStripSeparator1 + ' + Me.ToolStripSeparator1.AutoSize = False + Me.ToolStripSeparator1.ForeColor = System.Drawing.SystemColors.Control + Me.ToolStripSeparator1.Name = "ToolStripSeparator1" + Me.ToolStripSeparator1.Size = New System.Drawing.Size(6, 25) + ' + 'tsbtnReportDesign + ' + Me.tsbtnReportDesign.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.tsbtnReportDesign.Image = CType(resources.GetObject("tsbtnReportDesign.Image"), System.Drawing.Image) + Me.tsbtnReportDesign.ImageTransparentColor = System.Drawing.Color.Magenta + Me.tsbtnReportDesign.Name = "tsbtnReportDesign" + Me.tsbtnReportDesign.Size = New System.Drawing.Size(23, 22) + Me.tsbtnReportDesign.Text = "ToolStripButton1" + ' + 'TSBtnSetSecurityObject + ' + Me.TSBtnSetSecurityObject.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnSetSecurityObject.Image = CType(resources.GetObject("TSBtnSetSecurityObject.Image"), System.Drawing.Image) + Me.TSBtnSetSecurityObject.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnSetSecurityObject.Name = "TSBtnSetSecurityObject" + Me.TSBtnSetSecurityObject.Size = New System.Drawing.Size(23, 22) + Me.TSBtnSetSecurityObject.Text = "SecurityObjekte generieren" + ' + 'ImageList1 + ' + Me.ImageList1.ImageStream = CType(resources.GetObject("ImageList1.ImageStream"), System.Windows.Forms.ImageListStreamer) + Me.ImageList1.TransparentColor = System.Drawing.Color.Transparent + Me.ImageList1.Images.SetKeyName(0, "ReportFolder.png") + Me.ImageList1.Images.SetKeyName(1, "Report.png") + Me.ImageList1.Images.SetKeyName(2, "BOOK02.GIF") + Me.ImageList1.Images.SetKeyName(3, "rpt.png") + Me.ImageList1.Images.SetKeyName(4, "CR.png") + Me.ImageList1.Images.SetKeyName(5, "Text.ico") + Me.ImageList1.Images.SetKeyName(6, "README.GIF") + ' + 'TreeAuswertungen + ' + Me.TreeAuswertungen.ContextMenuStrip = Me.TreeContextMenuStrip1 + Me.TreeAuswertungen.Dock = System.Windows.Forms.DockStyle.Fill + Me.TreeAuswertungen.HideSelection = False + Me.TreeAuswertungen.HotTracking = True + Me.TreeAuswertungen.ImageIndex = 0 + Me.TreeAuswertungen.ImageList = Me.ImageList1 + Me.TreeAuswertungen.Location = New System.Drawing.Point(3, 16) + Me.TreeAuswertungen.Name = "TreeAuswertungen" + Me.TreeAuswertungen.SelectedImageIndex = 0 + Me.TreeAuswertungen.Size = New System.Drawing.Size(286, 533) + Me.TreeAuswertungen.TabIndex = 0 + ' + 'TreeContextMenuStrip1 + ' + Me.TreeContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.AlleKnotenSchliessenToolStripMenuItem, Me.AlleKnotenÖffnenToolStripMenuItem}) + Me.TreeContextMenuStrip1.Name = "TreeContextMenuStrip1" + Me.TreeContextMenuStrip1.Size = New System.Drawing.Size(192, 48) + ' + 'AlleKnotenSchliessenToolStripMenuItem + ' + Me.AlleKnotenSchliessenToolStripMenuItem.Name = "AlleKnotenSchliessenToolStripMenuItem" + Me.AlleKnotenSchliessenToolStripMenuItem.Size = New System.Drawing.Size(191, 22) + Me.AlleKnotenSchliessenToolStripMenuItem.Text = "Alle Knoten schliessen" + ' + 'AlleKnotenÖffnenToolStripMenuItem + ' + Me.AlleKnotenÖffnenToolStripMenuItem.Name = "AlleKnotenÖffnenToolStripMenuItem" + Me.AlleKnotenÖffnenToolStripMenuItem.Size = New System.Drawing.Size(191, 22) + Me.AlleKnotenÖffnenToolStripMenuItem.Text = "Alle Knoten öffnen" + ' + 'GrpAuswertung + ' + Me.GrpAuswertung.Controls.Add(Me.TreeAuswertungen) + Me.GrpAuswertung.Dock = System.Windows.Forms.DockStyle.Left + Me.GrpAuswertung.Location = New System.Drawing.Point(0, 49) + Me.GrpAuswertung.Name = "GrpAuswertung" + Me.GrpAuswertung.Size = New System.Drawing.Size(292, 552) + Me.GrpAuswertung.TabIndex = 0 + Me.GrpAuswertung.TabStop = False + Me.GrpAuswertung.Text = "Auswertungen" + ' + 'GrpParameter + ' + Me.GrpParameter.Controls.Add(Me.PictureBox1) + Me.GrpParameter.Controls.Add(Me.btnEditSQL) + Me.GrpParameter.Controls.Add(Me.btnDeleteSavedParam) + Me.GrpParameter.Controls.Add(Me.ComboboxMAParameter) + Me.GrpParameter.Controls.Add(Me.btnSave) + Me.GrpParameter.Controls.Add(Me.BtnParamDel6) + Me.GrpParameter.Controls.Add(Me.BtnParamDel5) + Me.GrpParameter.Controls.Add(Me.BtnParamDel4) + Me.GrpParameter.Controls.Add(Me.BtnParamDel3) + Me.GrpParameter.Controls.Add(Me.BtnParamDel2) + Me.GrpParameter.Controls.Add(Me.BtnParamDel1) + Me.GrpParameter.Controls.Add(Me.BtnInitParam) + Me.GrpParameter.Controls.Add(Me.cbandor6) + Me.GrpParameter.Controls.Add(Me.cbparam7) + Me.GrpParameter.Controls.Add(Me.cbvalue7) + Me.GrpParameter.Controls.Add(Me.cbop7) + Me.GrpParameter.Controls.Add(Me.cbandor5) + Me.GrpParameter.Controls.Add(Me.cbparam6) + Me.GrpParameter.Controls.Add(Me.cbvalue6) + Me.GrpParameter.Controls.Add(Me.cbop6) + Me.GrpParameter.Controls.Add(Me.cbandor4) + Me.GrpParameter.Controls.Add(Me.cbandor3) + Me.GrpParameter.Controls.Add(Me.cbandor2) + Me.GrpParameter.Controls.Add(Me.cbandor1) + Me.GrpParameter.Controls.Add(Me.cbparam5) + Me.GrpParameter.Controls.Add(Me.cbparam4) + Me.GrpParameter.Controls.Add(Me.cbparam3) + Me.GrpParameter.Controls.Add(Me.cbparam2) + Me.GrpParameter.Controls.Add(Me.cbparam1) + Me.GrpParameter.Controls.Add(Me.Label6) + Me.GrpParameter.Controls.Add(Me.cbvalue5) + Me.GrpParameter.Controls.Add(Me.cbop5) + Me.GrpParameter.Controls.Add(Me.cbvalue4) + Me.GrpParameter.Controls.Add(Me.cbop4) + Me.GrpParameter.Controls.Add(Me.cbvalue3) + Me.GrpParameter.Controls.Add(Me.cbop3) + Me.GrpParameter.Controls.Add(Me.cbvalue2) + Me.GrpParameter.Controls.Add(Me.cbop2) + Me.GrpParameter.Controls.Add(Me.lblTitelWert) + Me.GrpParameter.Controls.Add(Me.lblTitelOperator) + Me.GrpParameter.Controls.Add(Me.lblParamTitel) + Me.GrpParameter.Controls.Add(Me.cbvalue1) + Me.GrpParameter.Controls.Add(Me.cbop1) + Me.GrpParameter.Location = New System.Drawing.Point(295, 129) + Me.GrpParameter.Name = "GrpParameter" + Me.GrpParameter.Size = New System.Drawing.Size(425, 301) + Me.GrpParameter.TabIndex = 1 + Me.GrpParameter.TabStop = False + Me.GrpParameter.Text = "Parameter" + ' + 'PictureBox1 + ' + Me.PictureBox1.Image = CType(resources.GetObject("PictureBox1.Image"), System.Drawing.Image) + Me.PictureBox1.Location = New System.Drawing.Point(360, 65) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(39, 36) + Me.PictureBox1.TabIndex = 48 + Me.PictureBox1.TabStop = False + ' + 'btnEditSQL + ' + Me.btnEditSQL.Image = CType(resources.GetObject("btnEditSQL.Image"), System.Drawing.Image) + Me.btnEditSQL.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.btnEditSQL.Location = New System.Drawing.Point(398, 72) + Me.btnEditSQL.Name = "btnEditSQL" + Me.btnEditSQL.Size = New System.Drawing.Size(24, 29) + Me.btnEditSQL.TabIndex = 28 + Me.btnEditSQL.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.btnEditSQL.UseVisualStyleBackColor = True + ' + 'btnDeleteSavedParam + ' + Me.btnDeleteSavedParam.Image = CType(resources.GetObject("btnDeleteSavedParam.Image"), System.Drawing.Image) + Me.btnDeleteSavedParam.Location = New System.Drawing.Point(399, 21) + Me.btnDeleteSavedParam.Name = "btnDeleteSavedParam" + Me.btnDeleteSavedParam.Size = New System.Drawing.Size(19, 21) + Me.btnDeleteSavedParam.TabIndex = 47 + Me.btnDeleteSavedParam.UseVisualStyleBackColor = True + ' + 'ComboboxMAParameter + ' + Me.ComboboxMAParameter.FormattingEnabled = True + Me.ComboboxMAParameter.Location = New System.Drawing.Point(96, 21) + Me.ComboboxMAParameter.Name = "ComboboxMAParameter" + Me.ComboboxMAParameter.Size = New System.Drawing.Size(303, 21) + Me.ComboboxMAParameter.TabIndex = 46 + Me.ComboboxMAParameter.Visible = False + ' + 'btnSave + ' + Me.btnSave.Location = New System.Drawing.Point(15, 19) + Me.btnSave.Name = "btnSave" + Me.btnSave.Size = New System.Drawing.Size(75, 23) + Me.btnSave.TabIndex = 45 + Me.btnSave.Text = "Speichern" + Me.btnSave.UseVisualStyleBackColor = True + ' + 'BtnParamDel6 + ' + Me.BtnParamDel6.Image = CType(resources.GetObject("BtnParamDel6.Image"), System.Drawing.Image) + Me.BtnParamDel6.Location = New System.Drawing.Point(399, 270) + Me.BtnParamDel6.Name = "BtnParamDel6" + Me.BtnParamDel6.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel6.TabIndex = 44 + Me.BtnParamDel6.UseVisualStyleBackColor = True + ' + 'BtnParamDel5 + ' + Me.BtnParamDel5.Image = CType(resources.GetObject("BtnParamDel5.Image"), System.Drawing.Image) + Me.BtnParamDel5.Location = New System.Drawing.Point(399, 244) + Me.BtnParamDel5.Name = "BtnParamDel5" + Me.BtnParamDel5.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel5.TabIndex = 43 + Me.BtnParamDel5.UseVisualStyleBackColor = True + ' + 'BtnParamDel4 + ' + Me.BtnParamDel4.Image = CType(resources.GetObject("BtnParamDel4.Image"), System.Drawing.Image) + Me.BtnParamDel4.Location = New System.Drawing.Point(399, 216) + Me.BtnParamDel4.Name = "BtnParamDel4" + Me.BtnParamDel4.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel4.TabIndex = 42 + Me.BtnParamDel4.UseVisualStyleBackColor = True + ' + 'BtnParamDel3 + ' + Me.BtnParamDel3.Image = CType(resources.GetObject("BtnParamDel3.Image"), System.Drawing.Image) + Me.BtnParamDel3.Location = New System.Drawing.Point(399, 189) + Me.BtnParamDel3.Name = "BtnParamDel3" + Me.BtnParamDel3.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel3.TabIndex = 41 + Me.BtnParamDel3.UseVisualStyleBackColor = True + ' + 'BtnParamDel2 + ' + Me.BtnParamDel2.Image = CType(resources.GetObject("BtnParamDel2.Image"), System.Drawing.Image) + Me.BtnParamDel2.Location = New System.Drawing.Point(399, 163) + Me.BtnParamDel2.Name = "BtnParamDel2" + Me.BtnParamDel2.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel2.TabIndex = 40 + Me.BtnParamDel2.UseVisualStyleBackColor = True + ' + 'BtnParamDel1 + ' + Me.BtnParamDel1.Image = CType(resources.GetObject("BtnParamDel1.Image"), System.Drawing.Image) + Me.BtnParamDel1.Location = New System.Drawing.Point(399, 136) + Me.BtnParamDel1.Name = "BtnParamDel1" + Me.BtnParamDel1.Size = New System.Drawing.Size(19, 21) + Me.BtnParamDel1.TabIndex = 39 + Me.BtnParamDel1.UseVisualStyleBackColor = True + ' + 'BtnInitParam + ' + Me.BtnInitParam.Location = New System.Drawing.Point(15, 48) + Me.BtnInitParam.Name = "BtnInitParam" + Me.BtnInitParam.Size = New System.Drawing.Size(75, 23) + Me.BtnInitParam.TabIndex = 29 + Me.BtnInitParam.Text = "Initialisieren" + Me.BtnInitParam.UseVisualStyleBackColor = True + ' + 'cbandor6 + ' + Me.cbandor6.FormattingEnabled = True + Me.cbandor6.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor6.Location = New System.Drawing.Point(15, 271) + Me.cbandor6.Name = "cbandor6" + Me.cbandor6.Size = New System.Drawing.Size(52, 21) + Me.cbandor6.TabIndex = 23 + ' + 'cbparam7 + ' + Me.cbparam7.FormattingEnabled = True + Me.cbparam7.Location = New System.Drawing.Point(79, 271) + Me.cbparam7.Name = "cbparam7" + Me.cbparam7.Size = New System.Drawing.Size(128, 21) + Me.cbparam7.TabIndex = 24 + ' + 'cbvalue7 + ' + Me.cbvalue7.FormattingEnabled = True + Me.cbvalue7.Location = New System.Drawing.Point(271, 271) + Me.cbvalue7.Name = "cbvalue7" + Me.cbvalue7.Size = New System.Drawing.Size(128, 21) + Me.cbvalue7.TabIndex = 26 + ' + 'cbop7 + ' + Me.cbop7.FormattingEnabled = True + Me.cbop7.Location = New System.Drawing.Point(214, 271) + Me.cbop7.Name = "cbop7" + Me.cbop7.Size = New System.Drawing.Size(52, 21) + Me.cbop7.TabIndex = 25 + ' + 'cbandor5 + ' + Me.cbandor5.FormattingEnabled = True + Me.cbandor5.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor5.Location = New System.Drawing.Point(15, 244) + Me.cbandor5.Name = "cbandor5" + Me.cbandor5.Size = New System.Drawing.Size(52, 21) + Me.cbandor5.TabIndex = 19 + ' + 'cbparam6 + ' + Me.cbparam6.FormattingEnabled = True + Me.cbparam6.Location = New System.Drawing.Point(79, 244) + Me.cbparam6.Name = "cbparam6" + Me.cbparam6.Size = New System.Drawing.Size(128, 21) + Me.cbparam6.TabIndex = 20 + ' + 'cbvalue6 + ' + Me.cbvalue6.FormattingEnabled = True + Me.cbvalue6.Location = New System.Drawing.Point(271, 244) + Me.cbvalue6.Name = "cbvalue6" + Me.cbvalue6.Size = New System.Drawing.Size(128, 21) + Me.cbvalue6.TabIndex = 22 + ' + 'cbop6 + ' + Me.cbop6.FormattingEnabled = True + Me.cbop6.Location = New System.Drawing.Point(214, 244) + Me.cbop6.Name = "cbop6" + Me.cbop6.Size = New System.Drawing.Size(52, 21) + Me.cbop6.TabIndex = 21 + ' + 'cbandor4 + ' + Me.cbandor4.FormattingEnabled = True + Me.cbandor4.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor4.Location = New System.Drawing.Point(15, 217) + Me.cbandor4.Name = "cbandor4" + Me.cbandor4.Size = New System.Drawing.Size(52, 21) + Me.cbandor4.TabIndex = 15 + ' + 'cbandor3 + ' + Me.cbandor3.FormattingEnabled = True + Me.cbandor3.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor3.Location = New System.Drawing.Point(15, 190) + Me.cbandor3.Name = "cbandor3" + Me.cbandor3.Size = New System.Drawing.Size(52, 21) + Me.cbandor3.TabIndex = 11 + ' + 'cbandor2 + ' + Me.cbandor2.FormattingEnabled = True + Me.cbandor2.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor2.Location = New System.Drawing.Point(15, 163) + Me.cbandor2.Name = "cbandor2" + Me.cbandor2.Size = New System.Drawing.Size(52, 21) + Me.cbandor2.TabIndex = 7 + ' + 'cbandor1 + ' + Me.cbandor1.FormattingEnabled = True + Me.cbandor1.Items.AddRange(New Object() {"und", "oder"}) + Me.cbandor1.Location = New System.Drawing.Point(15, 136) + Me.cbandor1.Name = "cbandor1" + Me.cbandor1.Size = New System.Drawing.Size(52, 21) + Me.cbandor1.TabIndex = 3 + ' + 'cbparam5 + ' + Me.cbparam5.FormattingEnabled = True + Me.cbparam5.Location = New System.Drawing.Point(79, 217) + Me.cbparam5.Name = "cbparam5" + Me.cbparam5.Size = New System.Drawing.Size(128, 21) + Me.cbparam5.TabIndex = 16 + ' + 'cbparam4 + ' + Me.cbparam4.FormattingEnabled = True + Me.cbparam4.Location = New System.Drawing.Point(79, 190) + Me.cbparam4.Name = "cbparam4" + Me.cbparam4.Size = New System.Drawing.Size(128, 21) + Me.cbparam4.TabIndex = 12 + ' + 'cbparam3 + ' + Me.cbparam3.FormattingEnabled = True + Me.cbparam3.Location = New System.Drawing.Point(79, 163) + Me.cbparam3.Name = "cbparam3" + Me.cbparam3.Size = New System.Drawing.Size(128, 21) + Me.cbparam3.TabIndex = 8 + ' + 'cbparam2 + ' + Me.cbparam2.FormattingEnabled = True + Me.cbparam2.Location = New System.Drawing.Point(79, 136) + Me.cbparam2.Name = "cbparam2" + Me.cbparam2.Size = New System.Drawing.Size(128, 21) + Me.cbparam2.TabIndex = 4 + ' + 'cbparam1 + ' + Me.cbparam1.FormattingEnabled = True + Me.cbparam1.Location = New System.Drawing.Point(79, 106) + Me.cbparam1.Name = "cbparam1" + Me.cbparam1.Size = New System.Drawing.Size(128, 21) + Me.cbparam1.TabIndex = 0 + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.Label6.Location = New System.Drawing.Point(12, 88) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(59, 13) + Me.Label6.TabIndex = 38 + Me.Label6.Text = "und/oder" + ' + 'cbvalue5 + ' + Me.cbvalue5.FormattingEnabled = True + Me.cbvalue5.Location = New System.Drawing.Point(271, 217) + Me.cbvalue5.Name = "cbvalue5" + Me.cbvalue5.Size = New System.Drawing.Size(128, 21) + Me.cbvalue5.TabIndex = 18 + ' + 'cbop5 + ' + Me.cbop5.FormattingEnabled = True + Me.cbop5.Location = New System.Drawing.Point(214, 217) + Me.cbop5.Name = "cbop5" + Me.cbop5.Size = New System.Drawing.Size(52, 21) + Me.cbop5.TabIndex = 17 + ' + 'cbvalue4 + ' + Me.cbvalue4.FormattingEnabled = True + Me.cbvalue4.Location = New System.Drawing.Point(271, 190) + Me.cbvalue4.Name = "cbvalue4" + Me.cbvalue4.Size = New System.Drawing.Size(128, 21) + Me.cbvalue4.TabIndex = 14 + ' + 'cbop4 + ' + Me.cbop4.FormattingEnabled = True + Me.cbop4.Location = New System.Drawing.Point(213, 190) + Me.cbop4.Name = "cbop4" + Me.cbop4.Size = New System.Drawing.Size(52, 21) + Me.cbop4.TabIndex = 13 + ' + 'cbvalue3 + ' + Me.cbvalue3.FormattingEnabled = True + Me.cbvalue3.Location = New System.Drawing.Point(271, 163) + Me.cbvalue3.Name = "cbvalue3" + Me.cbvalue3.Size = New System.Drawing.Size(128, 21) + Me.cbvalue3.TabIndex = 10 + ' + 'cbop3 + ' + Me.cbop3.FormattingEnabled = True + Me.cbop3.Location = New System.Drawing.Point(213, 163) + Me.cbop3.Name = "cbop3" + Me.cbop3.Size = New System.Drawing.Size(52, 21) + Me.cbop3.TabIndex = 9 + ' + 'cbvalue2 + ' + Me.cbvalue2.FormattingEnabled = True + Me.cbvalue2.Location = New System.Drawing.Point(271, 136) + Me.cbvalue2.Name = "cbvalue2" + Me.cbvalue2.Size = New System.Drawing.Size(128, 21) + Me.cbvalue2.TabIndex = 6 + ' + 'cbop2 + ' + Me.cbop2.FormattingEnabled = True + Me.cbop2.Location = New System.Drawing.Point(213, 136) + Me.cbop2.Name = "cbop2" + Me.cbop2.Size = New System.Drawing.Size(52, 21) + Me.cbop2.TabIndex = 5 + ' + 'lblTitelWert + ' + Me.lblTitelWert.AutoSize = True + Me.lblTitelWert.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblTitelWert.Location = New System.Drawing.Point(272, 88) + Me.lblTitelWert.Name = "lblTitelWert" + Me.lblTitelWert.Size = New System.Drawing.Size(34, 13) + Me.lblTitelWert.TabIndex = 28 + Me.lblTitelWert.Text = "Wert" + ' + 'lblTitelOperator + ' + Me.lblTitelOperator.AutoSize = True + Me.lblTitelOperator.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblTitelOperator.Location = New System.Drawing.Point(210, 88) + Me.lblTitelOperator.Name = "lblTitelOperator" + Me.lblTitelOperator.Size = New System.Drawing.Size(56, 13) + Me.lblTitelOperator.TabIndex = 27 + Me.lblTitelOperator.Text = "Operator" + ' + 'lblParamTitel + ' + Me.lblParamTitel.AutoSize = True + Me.lblParamTitel.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, CType((System.Drawing.FontStyle.Bold Or System.Drawing.FontStyle.Underline), System.Drawing.FontStyle), System.Drawing.GraphicsUnit.Point, CType(0, Byte)) + Me.lblParamTitel.Location = New System.Drawing.Point(77, 88) + Me.lblParamTitel.Name = "lblParamTitel" + Me.lblParamTitel.Size = New System.Drawing.Size(64, 13) + Me.lblParamTitel.TabIndex = 26 + Me.lblParamTitel.Text = "Parameter" + ' + 'cbvalue1 + ' + Me.cbvalue1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.Suggest + Me.cbvalue1.FormatString = "N2" + Me.cbvalue1.FormattingEnabled = True + Me.cbvalue1.Location = New System.Drawing.Point(271, 106) + Me.cbvalue1.Name = "cbvalue1" + Me.cbvalue1.Size = New System.Drawing.Size(128, 21) + Me.cbvalue1.TabIndex = 2 + ' + 'cbop1 + ' + Me.cbop1.FormattingEnabled = True + Me.cbop1.Location = New System.Drawing.Point(213, 106) + Me.cbop1.Name = "cbop1" + Me.cbop1.Size = New System.Drawing.Size(52, 21) + Me.cbop1.TabIndex = 1 + ' + 'ImageList2 + ' + Me.ImageList2.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit + Me.ImageList2.ImageSize = New System.Drawing.Size(16, 16) + Me.ImageList2.TransparentColor = System.Drawing.Color.Transparent + ' + 'grpBeschreibung + ' + Me.grpBeschreibung.Controls.Add(Me.txtbeschreibung) + Me.grpBeschreibung.Location = New System.Drawing.Point(295, 49) + Me.grpBeschreibung.Name = "grpBeschreibung" + Me.grpBeschreibung.Size = New System.Drawing.Size(425, 74) + Me.grpBeschreibung.TabIndex = 29 + Me.grpBeschreibung.TabStop = False + Me.grpBeschreibung.Text = "Beschreibung" + ' + 'txtbeschreibung + ' + Me.txtbeschreibung.BorderStyle = System.Windows.Forms.BorderStyle.None + Me.txtbeschreibung.Dock = System.Windows.Forms.DockStyle.Left + Me.txtbeschreibung.Location = New System.Drawing.Point(3, 16) + Me.txtbeschreibung.Multiline = True + Me.txtbeschreibung.Name = "txtbeschreibung" + Me.txtbeschreibung.ReadOnly = True + Me.txtbeschreibung.ScrollBars = System.Windows.Forms.ScrollBars.Vertical + Me.txtbeschreibung.Size = New System.Drawing.Size(415, 55) + Me.txtbeschreibung.TabIndex = 0 + ' + 'grpdb + ' + Me.grpdb.Controls.Add(Me.btnAufbereitenCSV) + Me.grpdb.Location = New System.Drawing.Point(295, 436) + Me.grpdb.Name = "grpdb" + Me.grpdb.Size = New System.Drawing.Size(422, 54) + Me.grpdb.TabIndex = 30 + Me.grpdb.TabStop = False + Me.grpdb.Text = "Resultat als Datentabelle" + ' + 'btnAufbereitenCSV + ' + Me.btnAufbereitenCSV.Image = CType(resources.GetObject("btnAufbereitenCSV.Image"), System.Drawing.Image) + Me.btnAufbereitenCSV.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.btnAufbereitenCSV.Location = New System.Drawing.Point(6, 19) + Me.btnAufbereitenCSV.Name = "btnAufbereitenCSV" + Me.btnAufbereitenCSV.Size = New System.Drawing.Size(87, 23) + Me.btnAufbereitenCSV.TabIndex = 27 + Me.btnAufbereitenCSV.Text = "Tabelle" + Me.btnAufbereitenCSV.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.btnAufbereitenCSV.UseVisualStyleBackColor = True + ' + 'grpcr + ' + Me.grpcr.Controls.Add(Me.checkboxprintparam) + Me.grpcr.Controls.Add(Me.Label2) + Me.grpcr.Controls.Add(Me.Label1) + Me.grpcr.Controls.Add(Me.txtTitel2) + Me.grpcr.Controls.Add(Me.txtTitel1) + Me.grpcr.Controls.Add(Me.BtnAufbereitenCR) + Me.grpcr.Location = New System.Drawing.Point(295, 496) + Me.grpcr.Name = "grpcr" + Me.grpcr.Size = New System.Drawing.Size(422, 102) + Me.grpcr.TabIndex = 31 + Me.grpcr.TabStop = False + Me.grpcr.Text = "Resultat als Crystal-Report" + ' + 'checkboxprintparam + ' + Me.checkboxprintparam.AutoSize = True + Me.checkboxprintparam.Location = New System.Drawing.Point(297, 76) + Me.checkboxprintparam.Name = "checkboxprintparam" + Me.checkboxprintparam.Size = New System.Drawing.Size(116, 17) + Me.checkboxprintparam.TabIndex = 33 + Me.checkboxprintparam.Text = "Parameter drucken" + Me.checkboxprintparam.UseVisualStyleBackColor = True + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(8, 48) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(46, 13) + Me.Label2.TabIndex = 32 + Me.Label2.Text = "Titel Z2:" + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(8, 22) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(46, 13) + Me.Label1.TabIndex = 31 + Me.Label1.Text = "Titel Z1:" + ' + 'txtTitel2 + ' + Me.txtTitel2.Location = New System.Drawing.Point(60, 45) + Me.txtTitel2.Name = "txtTitel2" + Me.txtTitel2.Size = New System.Drawing.Size(353, 20) + Me.txtTitel2.TabIndex = 30 + ' + 'txtTitel1 + ' + Me.txtTitel1.Location = New System.Drawing.Point(60, 19) + Me.txtTitel1.Name = "txtTitel1" + Me.txtTitel1.Size = New System.Drawing.Size(353, 20) + Me.txtTitel1.TabIndex = 29 + ' + 'BtnAufbereitenCR + ' + Me.BtnAufbereitenCR.Image = CType(resources.GetObject("BtnAufbereitenCR.Image"), System.Drawing.Image) + Me.BtnAufbereitenCR.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft + Me.BtnAufbereitenCR.Location = New System.Drawing.Point(6, 73) + Me.BtnAufbereitenCR.Name = "BtnAufbereitenCR" + Me.BtnAufbereitenCR.Size = New System.Drawing.Size(87, 23) + Me.BtnAufbereitenCR.TabIndex = 28 + Me.BtnAufbereitenCR.Text = "Bericht" + Me.BtnAufbereitenCR.TextAlign = System.Drawing.ContentAlignment.MiddleRight + Me.BtnAufbereitenCR.UseVisualStyleBackColor = True + ' + 'FrmReportSelect + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(732, 601) + Me.Controls.Add(Me.grpBeschreibung) + Me.Controls.Add(Me.grpcr) + Me.Controls.Add(Me.grpdb) + Me.Controls.Add(Me.GrpAuswertung) + Me.Controls.Add(Me.GrpParameter) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.Name = "FrmReportSelect" + Me.Text = "Report-Auswahl" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + Me.TreeContextMenuStrip1.ResumeLayout(False) + Me.GrpAuswertung.ResumeLayout(False) + Me.GrpParameter.ResumeLayout(False) + Me.GrpParameter.PerformLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + Me.grpBeschreibung.ResumeLayout(False) + Me.grpBeschreibung.PerformLayout() + Me.grpdb.ResumeLayout(False) + Me.grpcr.ResumeLayout(False) + Me.grpcr.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents TSBtnQuit As System.Windows.Forms.ToolStripButton + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents btnAufbereitenCSV As System.Windows.Forms.Button + Friend WithEvents TreeAuswertungen As System.Windows.Forms.TreeView + Friend WithEvents ImageList1 As System.Windows.Forms.ImageList + Friend WithEvents GrpAuswertung As System.Windows.Forms.GroupBox + Friend WithEvents GrpParameter As System.Windows.Forms.GroupBox + Friend WithEvents cbandor6 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam7 As System.Windows.Forms.ComboBox + Friend WithEvents cbvalue7 As System.Windows.Forms.ComboBox + Friend WithEvents cbop7 As System.Windows.Forms.ComboBox + Friend WithEvents cbandor5 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam6 As System.Windows.Forms.ComboBox + Friend WithEvents cbvalue6 As System.Windows.Forms.ComboBox + Friend WithEvents cbop6 As System.Windows.Forms.ComboBox + Friend WithEvents cbandor4 As System.Windows.Forms.ComboBox + Friend WithEvents cbandor3 As System.Windows.Forms.ComboBox + Friend WithEvents cbandor2 As System.Windows.Forms.ComboBox + Friend WithEvents cbandor1 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam5 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam4 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam3 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam2 As System.Windows.Forms.ComboBox + Friend WithEvents cbparam1 As System.Windows.Forms.ComboBox + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents cbvalue5 As System.Windows.Forms.ComboBox + Friend WithEvents cbop5 As System.Windows.Forms.ComboBox + Friend WithEvents cbvalue4 As System.Windows.Forms.ComboBox + Friend WithEvents cbop4 As System.Windows.Forms.ComboBox + Friend WithEvents cbvalue3 As System.Windows.Forms.ComboBox + Friend WithEvents cbop3 As System.Windows.Forms.ComboBox + Friend WithEvents cbvalue2 As System.Windows.Forms.ComboBox + Friend WithEvents cbop2 As System.Windows.Forms.ComboBox + Friend WithEvents lblTitelWert As System.Windows.Forms.Label + Friend WithEvents lblTitelOperator As System.Windows.Forms.Label + Friend WithEvents lblParamTitel As System.Windows.Forms.Label + Friend WithEvents cbvalue1 As System.Windows.Forms.ComboBox + Friend WithEvents cbop1 As System.Windows.Forms.ComboBox + Friend WithEvents BtnAufbereitenCR As System.Windows.Forms.Button + Friend WithEvents BtnInitParam As System.Windows.Forms.Button + Friend WithEvents BtnParamDel6 As System.Windows.Forms.Button + Friend WithEvents BtnParamDel5 As System.Windows.Forms.Button + Friend WithEvents BtnParamDel4 As System.Windows.Forms.Button + Friend WithEvents BtnParamDel3 As System.Windows.Forms.Button + Friend WithEvents BtnParamDel2 As System.Windows.Forms.Button + Friend WithEvents BtnParamDel1 As System.Windows.Forms.Button + Friend WithEvents ImageList2 As System.Windows.Forms.ImageList + Friend WithEvents btnSave As System.Windows.Forms.Button + Friend WithEvents ComboboxMAParameter As System.Windows.Forms.ComboBox + Friend WithEvents btnDeleteSavedParam As System.Windows.Forms.Button + Friend WithEvents grpBeschreibung As System.Windows.Forms.GroupBox + Friend WithEvents txtbeschreibung As System.Windows.Forms.TextBox + Friend WithEvents TreeContextMenuStrip1 As System.Windows.Forms.ContextMenuStrip + Friend WithEvents AlleKnotenSchliessenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents AlleKnotenÖffnenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents grpdb As System.Windows.Forms.GroupBox + Friend WithEvents grpcr As System.Windows.Forms.GroupBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents txtTitel2 As System.Windows.Forms.TextBox + Friend WithEvents txtTitel1 As System.Windows.Forms.TextBox + Friend WithEvents checkboxprintparam As System.Windows.Forms.CheckBox + Friend WithEvents ToolStripSeparator1 As System.Windows.Forms.ToolStripSeparator + Friend WithEvents ToolTip1 As System.Windows.Forms.ToolTip + Friend WithEvents btnEditSQL As System.Windows.Forms.Button + Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox + Friend WithEvents tsbtnReportDesign As System.Windows.Forms.ToolStripButton + Friend WithEvents TSBtnSetSecurityObject As System.Windows.Forms.ToolStripButton +End Class diff --git a/_FRReporting/Formulare/FrmReportSelect.resx b/_FRReporting/Formulare/FrmReportSelect.resx new file mode 100644 index 0000000..7f7a2d3 --- /dev/null +++ b/_FRReporting/Formulare/FrmReportSelect.resx @@ -0,0 +1,599 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 126, 17 + + + + + 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 + 2Nd7AAAAAElFTkSuQmCC + + + + 229, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAQ + DwAAAk1TRnQBSQFMAgEBBwEAAYQBAAGEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo + AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA + AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 + AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA + AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm + AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM + AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA + ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz + AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ + AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM + AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA + AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA + AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ + AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ + AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA + AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm + ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ + Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz + AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA + AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM + AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM + ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM + Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA + AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM + AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ + AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz + AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm + AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw + AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wEABP8B9AHzCv8LAALP + BAAB8wwAAfAB7BAAA/8B8QFVAU8B9wnvCQABzwHdAs8DAAHsDf8B7QHxEAAC/wEIAVUBlwFVAU8BkQG1 + AQcBCQQZAesHAAHPA90CzwMAAewN/wHtAfEQAAH/AZgBVQGXAZgCVQFPAXIB8AH0A/8B4gHrBQABzwTd + A88DAAHsDf8B7QHxEAABmAF3AZcCmASXAQgE/wHiAesDAAHPBN0BzwEAAd0CzwMAAewB/woAARQB/wHt + AfEQAAH/AZ4BCAHzAfQBlwGdAYsBpgGGAc8D/wHiAesBAAHPBN0BzwEAAd0BAAHdAs8DAAHsAf8KAAEU + Af8B7QHxEAAC/wIIAfQClwGYAbQCpgHPAv8B4gHrAQAD3QMAAt0BAAHdAs8DAAHsAf8KAAEUAf8B7QHx + EAAD/wEIAcIBVQGXAvQDpgL/AeIB6wEAAd0BAAPdAQABzwHdAQADzwMAAewB/woAARQB/wHtAfEQAAT/ + AQgBnQHzAfQB3QKmAYsC/wHiAesBAAHdAQAC3QEAAt0BzwLdAs8DAAHsDf8B7QHxEAAE/wEZA/MCpgGL + A/QB4gHrAQAB3QEAAc8C3QHPA90B/wEAAdYDAAHsDf8B7QHxEAAE/wEZAfMBCQGmAYsBtQL0AvMBGQFt + AQAB3QEAAd0BzwLdAdYCFALWBAAB7A3/Ae0B8RAABP8BtAHPAbQBCQPzAfEDkgESAQAB3QHPA90B/wTW + Ac8EAAHsDf8B7QHxEAAD/wIJBvMB8AL/AfQBBwEAA90B/wEUAdYB3QPWARQEAAHsDf8B7QHxEAAE/wEZ + BvMB8AH/AfMB8AH/AQAB3QH/ARQB1gHdARQJAAHsDf8B7QHxEAAE/wEZBv8D8wL/AgAB1gHdARQLAAHs + ARIB/wEOAf8B6wHxAbwB7AH/ARAB/wEUAf8BQwHxEAAQ/xEAAewB7QEAAfIBAAH0AQAB7wESAUMBBwEA + Af8B8BMAAXkBMQFLDQAB8wvsAfMKAAHwAW0B8gQAAf8BtQS7CbUBkgIAAVkEegExAUsJAAGuBRkFCQHd + AfEKAAEBAfAC7wMAAf8BtQEZAfMCTQEZAq0BGQGXAU8BuwHdAbUBkgIAAXoBwwd6AVgGAAGuBhkB3QMJ + Ad0B8QcAA20BCwEQAe8B8gFtAgAB/wG1AfQBGQJNARkBsgGsARkBlwEuAbsB3QG1AZICAAGaARsIoAFY + BQABrgcZAd0CCQHdAfEGAAHtARABAAHsAesCAAHsAwAB/wG1AvQCGgHzAtMBGQGXAVUBuwHdAbUBkgIA + AZoBMQWgAnoCoAFLBAABrgkZAQkB3QHxBQAB9AETAbwB/wFtAQ4B9AH/ARQBbQHzAeoB/wG7BPQBGQLz + ARkBeAFWAQgBGQG7AZICAAGaAXoBwwSgAtwBoAHDATEEAAGuChkB3QHxBQAB7AFtAv8BAAEHAfMB8QH/ + AewBFAH0Af8BBwX0A/MEGQEJAZICAAGaAXoBGwHDAqAB3AIJAbwCwwFLAwABtAoZAQkB8QQAAfIBFAHy + Af8B9AFtAvQBBwHwAf8BBwH0Af8BBwHzAW0CFAFtAfMB6wIUARIB8AEZAQkBkgIAAZoEegFSAf8B3AIZ + AvYBMQMAAbQB9AkZAQkB8QQAAUMB7AL/AgAB8wH3Af8BBwG8ARQBAAH/AQcC/wb0ARkC8wEZAQkBkgIA + BKAB7wEZAbsBWAEaAf8B9AH/AfYDAAG0AvQIGQHWAfEDAAEHARID/wHsAf8C8gEHAfMB8AHzAQAB/wG8 + AfQB6wISAesB8wHsAhIBbQHxAfMBCQGSAgADoAGZAQkE3AEJARkBCQQAAbUD9AcZAdYB8QIAAf8BFAHv + Af8B9AHwAfMB/wEHAfAC8gGSAgAB/wG8BP8H9AEZAQkBkgIAAfYCoAHcARkC3AEJBBkBtQMAAbUE9AYZ + AdYB8QIAAeoBEwP/AfAB/wH3Af8BvAEHAfcB/wIAAf8BvAH0AewCbQHsAfQB7QJtAesB8gH0AQkBkgMA + ATEBuwP0BBkB9AG1BAABtQH/BfQEGQHWAfEDAAHyAW0B9AHtAW0B8QH/Ae0C/wHvAwAB/wHwB/8D9AHz + AfEBuwGSBQABCQL/AfQCGQH/AbUFAAEJAv8F9AEZAd0C1gHyBAAB8gFtAfIBAAHsAQcB9AEHAe0EAAH/ + AfAB/wHtBesB7AHyAfEBrgHqAWYB7wYAAfQC/wEZAf8BtQYAAQkD/wX0AdwB1AHsAf8JAAHvAewC8QQA + Af8B8Qn/AfIBvAH3AfQB/wcAAf8B1AH/AbUHAAHcBf8D9AEZAe0B/wsAAfIB6wUAAf8B8QT/AvQD8wHw + AewD/xIAAdwECQG7A7UBvBQAEP8BQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/wMA + Af8BxwG/AfwEAAH/AQcGAAH8AQcGAAHwAQcGAAHAAQcGAAGAAQcGAAGAAQcGAAGAAQcGAAGAAQcGAAGA + AQcGAAGAAQcGAAGAAQ8GAAGAAQ8GAAGBAT8GAAGHAf8GAAHfAf8BgAEBAgABxwH/AcABAQH/AY8CAAHA + AX8BwAEBAf8BhwIAAcABDwHAAQEB/AEDAgABwAEHAcABAQH4ASUCAAHAAQMBwAEBAfADAAHAAQMBwAEB + AfABgAIAAcABAQHAAQEB4AMAAcABAQHAAQEB4QGBAgABwAEBAcABAQHAAQECAAHAAQMBwAEBAYABAwIA + AcABAQHAAQEBgAEDAgAB4AEDAcABAQHAAQcCAAH4AQcBwAEBAeIBDwIAAfwBDwHAAQEB/wEPAgAB/gEf + AcABAwH/AZ8CAAL/AcABDwL/AgAL + + + + 442, 17 + + + + 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 + 309CAAAAAElFTkSuQmCC + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + + R0lGODlhEwAXAIEAAP8AAHCAkL+/vwAAACH/C05FVFNDQVBFMi4wAwEBAAAh+QQBAAACACwAAAAAEwAX + AAAIagAFCBxIsKBBAAgRGhSQsGBCAAEcIgwQkeDDigwnUpQ4caBGjBYTRhQJMuREkiVNolzo8eJGli01 + wlSZcuHDjjNv4oQp8iJPjT5tfsy4MybFikFDHqVp8mVMiEqdPsV4tGZVkFILXp05MyAAOw== + + + + 336, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAArtJREFUOE+F + k2tIU2Ecxk+5NedlurnNKctNw6GNLDFRS8xiSmpIVh+szAtrGKYoaQmBfVEMo5QunyQspC8S2U2yLENS + 0EpnkZcKU0sLL7ntaG5ruvN0znFw7IYPPPDy/n/P874f3pf4Q2La0jXMMH8pnKfxGpAdU1Ahehm25IsR + d1IEXbEHkmgz6wh6j5nJaYZhmcxKlBZfLeyq+STBMzsPrYt83JsXoMksRON3T9RPiXDlqy8ufJagclSK + sx/lyOxWg8m44gShy+VZOhzr8epnIt7ai9BrLUb3QglekKfQbi7F47kyPJw5g+apctSNZiDbqMKmDC+L + K04Q6YZ1ZKuVDzs1g7Vkd87gcK8aqgxv0hUniNTj68lm0p0emjBtM+HiYAOufriOycVJTCxO4Bq9vjTU + gFmbmWUOdIdAuV/EFSTr3chbc56wOc2gKArl/ecQ9USLE30HoX+dgpinm1EzVMvegGH2doYiIN2HK9iT + xyPrp0WwLptXoGUrCvpTkWMMwtFeFaqGDXBSy+yMYRKeh0G2T8wV7Mrlk5cnffFjaaWAuUXzdClOv1eg + eDAQfeRtdp8Rw0S3aSFO8+MK4rMF5PlxPywsWVjIOH8TVWNSVI+pUTEiR814CEyOUXbGMNpHEfBOkXIF + sVkCsmJEhnmHBRP2HtR9CUYt7QlbD1pmS1BNl9/4thtLlJ1lgu9HQpgs4wqijriTZcMKWBwke8pqOZxW + dJgr0W6qwKT9Jcso7myHIEnOFWzNdLcUDQTinXnIFfu/3piG4dMUAzedP/eQpGH8LoNRiUM9GqR1RkHX + EY2E9hjEtsUhsnUntC3xCH2QANXdRIibdmBDYywIlQf3lGmFy7YJBiIKxZS20A+aAhmC8+VQGhTw1wdA + khcI7xwlhFkbwcsMogiN9++faZUktP/1hVebYVwiiF+DdQhv93f/NQAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAbZJREFUOE99 + z8FqGkEYB3DfILc8Qa55j76C4KGXXortIWmTg7f0klJIIL1sJLQXhVJMmu4GN3VN1Fl3A0Wd3QRsum0W + FAUV10fIv9+3bBPCqAM/GPb7z39mU/9XFEUHs9lMLjKdTmUmk3mZxNVFBZJgmWw2e59Op+eX8A1T/yui + 6sZCe+82sfV28z6Xy6klk8lEDsrbuHu/uhRnxuPxn+TY4xqNRnL4y0avebQUZyirFgyHQ0nAtEob7dsQ + wd87tP2b2GAwiGcJtaDf70sC9kIr49Txcfs7QMu7jvV6vXiWUAvCMJQEptPB648n2DrU8bPj4cyqP7Aa + DjhD1IIgCCRBpd4k9lwXwgVniFrQ7XYlgXd9A9PtxM/2/Kd8mnGGqAW+70sC9mz3GJ9NBw3nCt9MK+Z5 + XjxLqAWtVksSlM4Fnn/4glcHJVyKJk7K1gOjcgHOELXAdV1JUGvQ/9YEqnVB+6fqQoAzRC0QQkjbtqGf + W/hOT57H+FEFZyj7WKBp2kqhUFjXdb1ommZI+mSyAM9CwzBKxWJxPZ/Pr6To8BrJkDdkh+yRfXJEPiV4 + z994xhnO0pnC2j+Ia2ryPbNY9wAAAABJRU5ErkJggg== + + + + 623, 17 + + + + AAABAAgAMDAQAAEABABoBgAAhgAAACAgEAABAAQA6AIAAO4GAAAYGBAAAQAEAOgBAADWCQAAEBAQAAEA + BAAoAQAAvgsAADAwAAABAAgAqA4AAOYMAAAgIAAAAQAIAKgIAACOGwAAGBgAAAEACADIBgAANiQAABAQ + AAABAAgAaAUAAP4qAAAoAAAAMAAAAGAAAAABAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAAAAAAA//8A/wAAAP8A/wD//wAA////AAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMwAAAAAAAAAAAA + AAAAAAAAAAAAAAAAADPzMzAAAAAAAAAAAAAAAAAAAAAAAAAAAzP7i4MzMAAAAAAAAAAAAAAAAAAAAAAA + A4P4uLi4uDMzAAAAAAAAAAAAAAAAAAAAA7P7i4uLi4uLMzMAAAAAAAAAAAAAAAAAA4P4uLi4uLi4uLgz + MwAAAAAAAAAAAAAAP7g/i4uLi4uLi4uLi4MzMAAAAAAAAAAAP4s/uLi4uLi4uLi4uLi4szAAAAAAAAAA + P7g/i4uLi4uLi4uLi4uLh4AAAAAAAAAAP4s/uLi4uLi4uLi4uLi4t7cAAAAAAAAAP7iz+4uLi4uLi4uL + i4uLh/gAAAAAAAAAP4uD+Li4uLi4uLi4uLi4t79wAAAAAAAAP7iz+4uLi4uLi4uLi4uLh/uAAAAAAAAA + P4uLP7i4uLi4uLi4uLi4t7+3AAAAAAAAP7i4P4uLi4uLi4uLi4uLh/v4AAAAAAAAP4uLP7i4uLi4uLi4 + d7i4t7+/AAAAAAAAP7i4P4uLi4uLi4uHiHuLh/v7cAAAAAAAP4uLP7i4uLi4uLh4iIe4t7+/gAAAAAAA + P7i4s/uLi4uLi4eIiIh7h/v79wAAAAAAP4uLiz///7i4uHiIiIiHt7+/uAAAAAAAP7i4uLMzM///94iI + iIiId/v7+3AAAAAAP4uLi4uLizMzP4iIiIiIh7+/v4AAAAAAP7i4uLi4uLi3g/+IiIiIiHv7+4cAAAAA + P4uLi4uLi4t4/z///4iIiIe/v7gAAAAAP7i4uLi4uLeP+IMzM///iIh7+/gAAAAAP4uLi4uLi3j/j4j4 + jzMz///4//8AAAAAP7i4uLi4t4//iPiPiPiPMzMzMzMAAAAAP4uLi4uLeP+I+I+I+I+I////gAAAAAAA + P7i4uLi3j/j4j4j4j4j4j///+AAAAAAAP/uLi4t4//iPiPiPiPiP/////4AAAAAAA/i4uLeP//+I+I+I + +I+I/////4AAAAAAA/+Li3j////4j4j4j4j4j///+AAAAAAAAD+4t4//////iPiPiPiP////8AAAAAAA + ADP/9///////+I+I+I+Ij//4AAAAAAAAAAAzN4///////4j4j4j///+AAAAAAAAAAAAAAHj///////iP + iPiP//gAAAAAAAAAAAAAAAeP//////+I+I///4AAAAAAAAAAAAAAAAB4///////4j///+AAAAAAAAAAA + AAAAAAAHj///////iP//gAAAAAAAAAAAAAAAAAAAeP////j////4AAAAAAAAAAAAAAAAAAAAB4///4CP + //+AAAAAAAAAAAAAAAAAAAAAAHj/+AgI//gAAAAAAAAAAAAAAAAAAAAAAAePh/+Aj4AAAAAAAAAAAAAA + AAAAAAAAAAB4f//4CAAAAAAAAAAAAAAAAAAAAAAAAAAHd3d3cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///////wAA/n//////AAD8B/////8AAPwAf////wAA+AAD////AAD4AAA///8AAPgA + AAP//wAA+AAAAB//AADwAAAAB/8AAPAAAAAD/wAA8AAAAAP/AADwAAAAAf8AAPAAAAAB/wAA8AAAAAD/ + AADwAAAAAP8AAPAAAAAAfwAA8AAAAAB/AADwAAAAAH8AAPAAAAAAPwAA8AAAAAA/AADwAAAAAB8AAPAA + AAAAHwAA8AAAAAAPAADwAAAAAA8AAPAAAAAABwAA8AAAAAAHAADwAAAAAAcAAPAAAAAABwAA8AAAAAAH + AADwAAAAAD8AAPAAAAAAHwAA8AAAAAAPAAD4AAAAAA8AAPgAAAAAHwAA/AAAAAA/AAD8AAAAAH8AAP8A + AAAA/wAA//AAAAH/AAD/+AAAA/8AAP/8AAAH/wAA//4AAA//AAD//wAAH/8AAP//gAA//wAA///AAH// + AAD//+AA//8AAP//8AH//wAA///4A///AAD///////8AACgAAAAgAAAAQAAAAAEABAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAAAAAAD/ + /wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzMzMAAAAAAA + AAAAAAAAAAM/uLMzMAAAAAAAAAAAAAADP4uLi4szMwAAAAAAAAAAAz+4uLi4uLizMwAAAAAAAAM/+4uL + i4uLi4uDAAAAAAAD8/i4uLi4uLi4t3AAAAAAA/P7i4uLi4uLi4fwAAAAAAPz+Li4uLi4uLi3twAAAAAD + 8/uLi4uLi4uLh/sAAAAAA/P4uLi4uLh4uLe/cAAAAAP7P4uLi4uHh4uH+/AAAAAD+LP4uLi4eIh4t7+3 + AAAAA/uD+4uLh4iIh4f7+wAAAAP4s///uHiIiIh3v79wAAAD+4szM///+IiIh/v78AAAA/i4uLgzMz// + //d/v7cAAAP4uLiwj/jzMzM/h//3AAAD+4uLCP+I+I+I8zMzMwAAA/i4sI/4+I+I+I//gAAAAAP7iwj/ + +I+I+I+I//gAAAAAOLCP//+I+I+I//+AAAAAAD+Hj///+I+I+I/4AAAAAAAD/3j///+I+I//gAAAAAAA + ADM3j///+I//+AAAAAAAAAAAAHj//////4AAAAAAAAAAAAAHj/+I//gAAAAAAAAAAAAAAHj4AI+AAAAA + AAAAAAAAAAAHgPgIAAAAAAAAAAAAAAAAAH//gAAAAAAAAAAAAAAAAAAHd3AAAAAAAAD/////+H///+AH + ///gAD//4AAD/+AAAP/gAAB/4AAAP+AAAD/gAAAf4AAAH+AAAA/gAAAP4AAAB+AAAAfgAAAD4AAAA+AA + AAHgAAAB4AAAA+AAAA/gAAAH8AAAD/AAAB/4AAA//AAAf//AAP//4AH///AD///4B////A////4f/ygA + AAAYAAAAMAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgIAAgAAAAIAA + gACAgAAAgICAAMDAwAAAAP8AAAAAAAD//wD/AAAA/wD/AP//AAD///8AAAAAAAAAAAAAAAAAADMzAAAA + AAAAAAAAA/+4szMAAAAAAAAAAz+Li4uDMzAAAAAAAz+4uLi4uLMzAAAAAz+Li4uLi4uHAAAAA/P4uLi4 + uLi3cAAAA/P7i4uLh4uH8AAAA/P4uLi4eHi3twAAA/s/i4uHiIeH+wAAA/g/+Lh4iIh3vzAAA/uDP/// + iIiH+7AAA/i4szMz////f7MAA/uLgP/4MzMz//8AA/i4D/+I+I+IczMAA/uA//j4j4j/+HAAA/8P/4iP + iPj/+AAAADD///+I+I//gAAAAAB////4j//4AAAAAAAH////iP/wAAAAAAAAf//wj/8AAAAAAAAAB49/ + CPAAAAAAAAAAAHf/8AAAAAAAAAAAAAd3dwAAAAAAw////8A///+AAf//gAA//4AAH/+AAB//gAAP/4AA + D/+AAAf/gAAH/4AAA/+AAAP/gAAB/4AAAf+AAAP/gAAD/4AAB//AAA//8AAf//gAP//8AH///gD///8B + ////g///KAAAABAAAAAgAAAAAQAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACA + gACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAAAAAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAA + AAAAAAAAAzMzMzMzMzA/P7i4uLi4MD8/i4uLi4swPz+4uLi4uDA/P4uLi4uLMD8/uLi4uLgwPz////// + /zA/MzMzMzMzAD+4f/////cAP4t/iIj/9wAD/3////AAAAAzf4iI9/gAAAB////3gAAAAHd3d3dwAP// + ///AAf//gAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAB//8AAf//AAH//4AB///AAf//8AP///AH + //8oAAAAMAAAAGAAAAABAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAA//v/AHNx + cwDWmpwAvY6MAP/z7wCUjowA/+/nAM6ehADvupwA1qaMAJyCcwDWspwA99O9AP/r3gD3vpQA57KMAPfb + xgD/484A/+fWAPfPrQD/17UA/9u9AO/PtQD/x5QA//PnAP/37wD/+/cA/8uUAP/PnAD/06UA/9etAO/L + pQD/27UA/9+9AM62nAD/48YA/+fOAPfjzgD/69YA/+/eAP/DewD/x4QA/7ZaAP/TnAD3z5wA/9elAPfT + pQD/pikA/9ulAO/XtQD/58YA/9+tAP/jrQD/9+cA/+e1AP/vzgD/670A/++9AP/31gD/98YA1tO9AP// + 9wDO18YAvcu1AMbjzgDv+/cApa6tAK3r5wCc+/cAtd/eAJT//wCc//8Apf//AK3//wC9//8Axv//AM7/ + /wDW//8A3v//AOf//wDv//8A9///AJT7/wCc+/8Atfv/AK3b3gCM9/8AlPf/AIzz/wCl9/8AnOfvAHPn + 9wCE7/8AnPP/AIS+xgCUx84Aa9vvAITr/wCM6/8AtfP/AOf7/wBCpr0AhOf/AM7v9wAYrtYAOYacAFrP + 7wBj1/cAWq7GAHvj/wB7z+cAUnmEALXv/wAAns4AAJbGAAiezgAIirUAEKbWABCSvQAhst4AIZ7GACmy + 3gAprtYAMbbeADGu1gA5vucAMaLGAEq63gBSy+8Aa9v/AHPf/wB73/8AjNfvAJTT5wCc2+8AzvP/AACa + zgAAksYACKLWAAiWxgAIjr0AEKLWABCezgAQfaUAGKreABim1gAhptYAGHmcACGizgAhlr0AIYqtADG2 + 5wBCw+8AKXmUAEK23gBKw+8AQqrOAFrP9wBSut4Aa9f/AGvT9wBjvt4Ac9v/AKXn/wCl2+8A7/v/ABii + 1gAhqt4AKbLnADGy5wBCvu8AUsf3AGPT/wBavucAQn2UAHPX/wBzx+cAhNv/AIzT7wCc4/8Avef3ANbz + /wBCuu8ASr7vAFLD9wBax/cAY8//AGvT/wBz0/8Ac8/3AHvX/wCc2/cAY8v/AGvP/wCE1/8AlNv/AJTX + 9wCc3/8Ard/3AOf3/wBry/8A3vP/AP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJycnJycAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAi6GnlIt3nJycnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + lAD/8+cA//fvAP/79wD/y5QA/8+cAP/TpQD/160A78ulAP/btQD/370AzracAP/jxgD/584A9+POAP/r + 1gD/794A/8N7AP/HhAD/tloA/9OcAPfPnAD/16UA99OlAP+mKQD/26UA79e1AP/nxgD/360A/+OtAP/3 + 5wD/57UA/+/OAP/rvQD/770A//fWAP/3xgDW070A///3AM7XxgC9y7UAxuPOAO/79wClrq0ArevnAJz7 + 9wC1394AlP//AJz//wCl//8Arf//AL3//wDG//8Azv//ANb//wDe//8A5///AO///wD3//8AlPv/AJz7 + /wC1+/8ArdveAIz3/wCU9/8AjPP/AKX3/wCc5+8Ac+f3AITv/wCc8/8AhL7GAJTHzgBr2+8AhOv/AIzr + /wC18/8A5/v/AEKmvQCE5/8Azu/3ABiu1gA5hpwAWs/vAGPX9wBarsYAe+P/AHvP5wBSeYQAte//AACe + zgAAlsYACJ7OAAiKtQAQptYAEJK9ACGy3gAhnsYAKbLeACmu1gAxtt4AMa7WADm+5wAxosYASrreAFLL + 7wBr2/8Ac9//AHvf/wCM1+8AlNPnAJzb7wDO8/8AAJrOAACSxgAIotYACJbGAAiOvQAQotYAEJ7OABB9 + pQAYqt4AGKbWACGm1gAYeZwAIaLOACGWvQAhiq0AMbbnAELD7wApeZQAQrbeAErD7wBCqs4AWs/3AFK6 + 3gBr1/8Aa9P3AGO+3gBz2/8Apef/AKXb7wDv+/8AGKLWACGq3gApsucAMbLnAEK+7wBSx/cAY9P/AFq+ + 5wBCfZQAc9f/AHPH5wCE2/8AjNPvAJzj/wC95/cA1vP/AEK67wBKvu8AUsP3AFrH9wBjz/8Aa9P/AHPT + /wBzz/cAe9f/AJzb9wBjy/8Aa8//AITX/wCU2/8AlNf3AJzf/wCt3/cA5/f/AGvL/wDe8/8A////AAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + + + \ No newline at end of file diff --git a/_FRReporting/Formulare/FrmReportSelect.vb b/_FRReporting/Formulare/FrmReportSelect.vb new file mode 100644 index 0000000..0c57fde --- /dev/null +++ b/_FRReporting/Formulare/FrmReportSelect.vb @@ -0,0 +1,1157 @@ +Imports System.Windows.Forms +Imports System.Drawing +Public Class FrmReportSelect + +#Region "Deklarationen" + Dim auswertungen As New TKB.Auswertung.clsAuswertung + Dim CtrlList As New List(Of Control) + Dim splits() As String + Dim dr As DataRow + Dim s As String = "" + Dim SQLWhere As String = "" + Friend selectPoint As New System.Drawing.Point() + Dim Auswertungsdaten As New DataSet + Dim On_Load As Boolean = False + Dim DescriptionToolTip As New ToolTip + Dim WhereModified As Boolean = False + Dim sec As New Utils.MySecurity + Dim cblist As New Collection +#End Region + +#Region "Formular" + ''' + ''' Formular schliessen + ''' + ''' + ''' + ''' + Private Sub btnAbbruch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) + Me.Close() + End Sub + ''' + ''' Formualr schliessen + ''' + ''' + ''' + ''' + Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click + btnAbbruch_Click(sender, e) + End Sub + + ''' + ''' Formular schliessen + ''' + ''' + ''' + ''' + Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click + btnAbbruch_Click(sender, e) + End Sub +#End Region + + Private Sub FrmReportSelect_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Try + auswertungen.Get_Auswertungen(Me.TreeAuswertungen) + Me.TreeAuswertungen.ExpandAll() + Me.TreeAuswertungen.SelectedNode = Me.TreeAuswertungen.Nodes(0) + Me.TreeAuswertungen.SelectedNode.ExpandAll() + Catch + End Try + sec.Set_Form_Security(Me) + End Sub + + Private Sub btnAufbereiten_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAufbereitenCSV.Click + Me.Cursor = Cursors.WaitCursor + + If Me.WhereModified = False Then Get_SQLWhere() + Me.Auswertungsdaten = Me.auswertungen.Get_Auswertungsdaten(Me.auswertungen.Auswertung.sSQL.Value, SQLWhere, Me.auswertungen.Auswertung.sSQLType.Value) + Dim f As New frmAuswertung(Me.TreeAuswertungen.SelectedNode.Text, Me.Auswertungsdaten) + f.MdiParent = Me.MdiParent + Me.Cursor = Cursors.Default + f.Show() + End Sub + + Private Sub BtnAufbereitenCR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAufbereitenCR.Click + showreport() + End Sub + Public Sub showreport() + Me.Cursor = Cursors.WaitCursor + Me.auswertungen.TitelZeile1 = Me.txtTitel1.Text + Me.auswertungen.TitelZeile2 = Me.txtTitel2.Text + + If Me.WhereModified = False Then Get_SQLWhere() + Me.Auswertungsdaten = Me.auswertungen.Get_Auswertungsdaten(Me.auswertungen.Auswertung.sSQL.Value, SQLWhere, Me.auswertungen.Auswertung.sSQLType.Value) + Dim f As New frmcrreporting(Me.Auswertungsdaten, Me.auswertungen.Auswertung.iAuswertungNr.Value, Me.auswertungen, Me.checkboxprintparam.Checked, False) + f.Text = "Auswertung " + Me.TreeAuswertungen.SelectedNode.Text + f.MdiParent = Me.MdiParent + Me.Cursor = Cursors.Default + f.Show() + f.DisplayReport() + End Sub + + Private Sub TreeAuswertungen_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles TreeAuswertungen.DoubleClick + 'If Me.TreeAuswertungen.SelectedNode.Tag > -1 Then btnAufbereiten_Click(sender, e) + End Sub + + ''' + ''' Mousedown-Ereignis auf dem Tree + ''' + ''' + ''' + ''' + Private Sub TreeStruktur_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeAuswertungen.MouseDown + Try + Dim mouseEvents As MouseEventArgs + mouseEvents = e + selectPoint.Y = mouseEvents.Y + selectPoint.X = mouseEvents.X + Me.TreeAuswertungen.SelectedNode = Me.TreeAuswertungen.GetNodeAt(selectPoint) + Catch ex As Exception + MsgBox(ex.Message) + End Try + End Sub + ''' + ''' Nach Selektion eines Nodes Parameter neu aufbereiten und Auswerungsmöglichkeit (CR/CSV) anzeigen + ''' + ''' + ''' + ''' + Private Sub TreeAuswertungen_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeAuswertungen.AfterSelect + Me.On_Load = True + Me.WhereModified = False + Me.PictureBox1.Visible = False + Try + Me.txtTitel1.Text = Me.TreeAuswertungen.SelectedNode.Text + Me.txtTitel2.Text = "" + Me.checkboxprintparam.Checked = True + Me.txtbeschreibung.Text = Me.TreeAuswertungen.SelectedNode.ToolTipText + DescriptionToolTip.SetToolTip(Me.txtbeschreibung, Me.txtbeschreibung.Text) + If Me.TreeAuswertungen.SelectedNode.Tag < 1 Then + Me.GrpParameter.Enabled = False + Me.BtnAufbereitenCR.Enabled = False + Me.btnAufbereitenCSV.Enabled = False + Me.grpcr.Enabled = False + Me.grpdb.Enabled = False + Exit Sub + End If + + Me.auswertungen.Get_Auswertung(Me.TreeAuswertungen.SelectedNode.Tag) + If Me.auswertungen.MitarbeiterAuswertungsparameter.Rows.Count > 0 Then + Me.ComboboxMAParameter.Visible = True + Try + Me.ComboboxMAParameter.DataSource = Nothing + Me.ComboboxMAParameter.DataSource = Me.auswertungen.MitarbeiterAuswertungsparameter + Me.ComboboxMAParameter.DisplayMember = "Beschreibung" + Me.ComboboxMAParameter.ValueMember = "Mitarbeiter_AuswertungsparameterNr" + Me.ComboboxMAParameter.SelectedIndex = -1 + Catch ex As Exception + End Try + Else + Me.ComboboxMAParameter.Visible = False + End If + If Me.auswertungen.AuswertungParameter.Rows.Count = 0 Then + Me.GrpParameter.Enabled = False + Else + Me.GrpParameter.Enabled = True + End If + If Me.auswertungen.Auswertung.bReport.Value = True Then + Me.BtnAufbereitenCR.Enabled = True + Me.grpcr.Enabled = True + Else + Me.BtnAufbereitenCR.Enabled = False + Me.grpcr.Enabled = False + End If + If Me.auswertungen.Auswertung.bExcel_Report.Value = True Then + Me.btnAufbereitenCSV.Enabled = True + Me.grpdb.Enabled = True + Else + Me.btnAufbereitenCSV.Enabled = False + Me.grpdb.Enabled = False + End If + + Init_Params() + + Catch ex As Exception + End Try + Me.On_Load = False + End Sub + +#Region "Parameters" + +#Region "Utils" + ''' + ''' Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + ''' die gefundnen Controls in der Liste L zur weiteren Bearbeitung + ''' + ''' Base-Contrlo (z.B. aktuelles Formular + ''' Schlüssel welcher gesucht werden soll + ''' Liste der gefundenen Objekte + ''' True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + ''' + ''' + Private Function GetControl(ByVal BaseControl As Control, ByVal Key As String, ByRef L As List(Of Control), Optional ByVal ReturnAtFirstElement As Boolean = False) As Boolean + If L Is Nothing Then L = New List(Of Control) + Dim Gut As Boolean + Dim ReturnFlag As Boolean = False + If Key IsNot Nothing Then Key = Key.ToLower + + If BaseControl.HasChildren = True Then + For Each ctl As Control In BaseControl.Controls + Gut = False + If Key Is Nothing Then + Gut = True + Else + If ctl.Name.Length >= Key.Length Then + Key = Key.ToLower + If Key.StartsWith("*") Then + If Key.Substring(1) = ctl.Name.ToLower.Substring(ctl.Name.Length - (Key.Length - 1), Key.Length - 1) Then Gut = True + ElseIf Key.EndsWith("*") Then + If Key.Substring(0, Key.Length - 1) = ctl.Name.ToLower.Substring(0, Key.Length - 1) Then Gut = True + Else + If Key = ctl.Name.ToLower Then Gut = True + End If + End If + End If + + If Gut = True Then + L.Add(ctl) + If ReturnAtFirstElement = True Then ReturnFlag = True + End If + If ReturnFlag = False Then + Call GetControl(ctl, Key, L) + End If + Next + End If + + If L.Count - 1 > -1 Then + Return True + Else + Return False + End If + End Function +#End Region + + ''' + ''' Parameter initialisieren + ''' + ''' + Private Sub Init_Params(Optional ByVal Initialize_ComboBox As Boolean = True) + If Initialize_ComboBox = True Then Me.ComboboxMAParameter.SelectedIndex = -1 + Me.CtrlList.Clear() + Me.GetControl(Me, "cb*", CtrlList) + For Each x As ComboBox In CtrlList + Try + x.DataSource = Nothing + x.Items.Clear() + x.Enabled = False + x.Text = "" + Catch ex As Exception + End Try + Next + + CtrlList.Clear() + Me.GetControl(Me, "cbandor*", CtrlList) + For Each x As ComboBox In CtrlList + x.Items.Clear() + x.Items.Add("und") + x.Items.Add("oder") + Next + + Me.cbparam1.Enabled = True + Me.cbop1.Enabled = True + Me.cbvalue1.Enabled = True + Me.cbandor1.Enabled = True + + Me.CtrlList.Clear() + Me.GetControl(Me, "cbparam*", CtrlList) + For Each x As ComboBox In CtrlList + For Each dr As DataRow In Me.auswertungen.AuswertungParameter.Rows + x.Items.Add(dr.Item("Bezeichnung")) + Next + Next + End Sub + + + + + + + + + + + ''' + ''' Selektion Parameter + ''' + ''' + ''' + ''' + Private Sub cbparam1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbparam1.SelectedIndexChanged, cbparam2.SelectedIndexChanged, _ + cbparam3.SelectedIndexChanged, cbparam4.SelectedIndexChanged, cbparam5.SelectedIndexChanged, cbparam6.SelectedIndexChanged, cbparam7.SelectedIndexChanged + If Me.On_Load Then Exit Sub + Me.WhereModified = False + Me.PictureBox1.Visible = False + Me.cblist.Clear() + Dim s As String = ParamNr(sender.name) + Dim cbop As String = "cbop" + s + dr = Findrow(sender.text) + + 'Operatoren festlegen + CtrlList.Clear() + Me.GetControl(Me, "cbop" + s, CtrlList) + For Each ob As ComboBox In CtrlList + ob.Items.Clear() + splits = dr.Item("Operator").ToString.Split(";") + For Each x As String In splits + ob.Items.Add(x) + Next + ob.SelectedIndex = 0 + Next + + ' Wenn ein Datenbezug ab DB oder eingegeben, dann aufbereiten + If dr.Item("Feldbezug").ToString <> "" Then + 'Feldbezug ab DB + If UCase(dr.Item("feldbezug").ToString.Substring(0, 3)) = "SP_" Then + Dim fb As New DataTable + fb = Me.auswertungen.get_rptparam_values(dr.Item("Feldbezug")) + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.DataSource = Nothing + x.AutoCompleteCustomSource.Clear() + x.Items.Clear() + x.DataSource = fb + x.DisplayMember = "Bezeichnung" + x.ValueMember = "KeyValue" + x.AutoCompleteSource = AutoCompleteSource.CustomSource + x.AutoCompleteMode = AutoCompleteMode.SuggestAppend + For Each r As DataRow In fb.Rows + x.AutoCompleteCustomSource.Add(r("Keyvalue").ToString + " " + r("Bezeichnung").ToString) + cblist.Add(New cbe(x.Name, r("Keyvalue").ToString, r("Keyvalue").ToString + " " + r("Bezeichnung").ToString)) + + x.AutoCompleteCustomSource.Add(r("keyvalue").ToString) + cblist.Add(New cbe(x.Name, r("Keyvalue").ToString, r("Keyvalue").ToString)) + + x.AutoCompleteCustomSource.Add(r("Searchvalue1").ToString) + cblist.Add(New cbe(x.Name, r("Keyvalue").ToString, r("Searchvalue1").ToString)) + + x.AutoCompleteCustomSource.Add(r("Keyvalue").ToString + " " + r("Searchvalue1").ToString) + cblist.Add(New cbe(x.Name, r("Keyvalue").ToString, r("Keyvalue").ToString + " " + r("Searchvalue1").ToString)) + Next + Next + + Else + 'Fixer Feldbezug + If dr.Item("Feldbezug").ToString <> "" Then + Dim selval() As String = dr.Item("Feldbezug").ToString.Split(";") + Dim cbvalue As String = "cbvalue" + s + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.DataSource = Nothing + x.Items.Clear() + For Each ss As String In selval + x.Items.Add(ss) + Next + Next + End If + End If + + End If + End Sub + + + + + + + ''' + ''' Datenrow in den zur Auswertung gehörenden Parameterliste suchen + ''' + ''' + ''' + ''' + Private Function Findrow(ByVal key As String) As DataRow + For Each dr As DataRow In Me.auswertungen.AuswertungParameter.Rows + If dr.Item("Bezeichnung") = key Then + Return dr + End If + Next + End Function + + 'Param-Nr auslesen + Private Function ParamNr(ByVal s As String) As String + Return s.Substring(Len(s) - 1, 1) + End Function + ''' + ''' Where Bedingung für die Abfrage zusammenstellen + ''' + ''' + Private Sub Get_SQLWhere() + Me.auswertungen.ParamCollection.Clear() + Dim s As String + Dim i As Integer + Me.SQLWhere = "" + + If Me.cbparam1.Text <> "" And Me.cbop1.Text <> "" And Me.cbvalue1.Text <> "" Then + Me.auswertungen.ParamCollection.Add(cbparam1.Text & " " & cbop1.Text & " " & cbvalue1.Text) + s = cbparam1.Text & " " & cbop1.Text & " " & cbvalue1.Text + SQLWhere = SQLWhere + get_where(1) + End If + If Me.cbandor1.Text <> "" And Me.cbparam2.Text <> "" And Me.cbop2.Text <> "" And Me.cbvalue2.Text <> "" Then + If Me.cbandor1.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(2) + If Me.cbandor1.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(2) + Me.auswertungen.ParamCollection.Add(cbandor1.Text + " " + cbparam2.Text & " " & cbop2.Text & " " & cbvalue2.Text) + s = s & "' & Chr(10) & Chr(13) & '" & cbandor1.Text & " " & cbparam2.Text & " " & cbop2.Text & " " & cbvalue2.Text + End If + If Me.cbandor2.Text <> "" And Me.cbparam3.Text <> "" And Me.cbop3.Text <> "" And Me.cbvalue3.Text <> "" Then + If Me.cbandor2.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(3) + If Me.cbandor2.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(3) + Me.auswertungen.ParamCollection.Add(cbandor2.Text + " " + cbparam3.Text & " " & cbop3.Text & " " & cbvalue3.Text) + s = s + " " + cbandor2.Text + " " + cbparam3.Text & " " & cbop3.Text & " " & cbvalue3.Text + End If + If Me.cbandor3.Text <> "" And Me.cbparam4.Text <> "" And Me.cbop4.Text <> "" And Me.cbvalue4.Text <> "" Then + If Me.cbandor3.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(4) + If Me.cbandor3.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(4) + Me.auswertungen.ParamCollection.Add(cbandor3.Text + " " + cbparam4.Text & " " & cbop4.Text & " " & cbvalue4.Text) + s = s + " " + cbandor3.Text + " " + cbparam4.Text & " " & cbop4.Text & " " & cbvalue4.Text + End If + + If Me.cbandor4.Text <> "" And Me.cbparam5.Text <> "" And Me.cbop5.Text <> "" And Me.cbvalue5.Text <> "" Then + If Me.cbandor4.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(5) + If Me.cbandor4.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(5) + Me.auswertungen.ParamCollection.Add(cbandor4.Text + " " + cbparam5.Text & " " & cbop5.Text & " " & cbvalue5.Text) + s = s + " " + cbandor4.Text + " " + cbparam5.Text & " " & cbop5.Text & " " & cbvalue5.Text + End If + If Me.cbandor5.Text <> "" And Me.cbparam6.Text <> "" And Me.cbop6.Text <> "" And Me.cbvalue6.Text <> "" Then + If Me.cbandor5.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(6) + If Me.cbandor5.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(6) + Me.auswertungen.ParamCollection.Add(cbandor5.Text + " " + cbparam6.Text & " " & cbop6.Text & " " & cbvalue6.Text) + s = s + " " + cbandor5.Text + " " + cbparam6.Text & " " & cbop6.Text & " " & cbvalue6.Text + End If + If Me.cbandor6.Text <> "" And Me.cbparam7.Text <> "" And Me.cbop7.Text <> "" And Me.cbvalue7.Text <> "" Then + If Me.cbandor6.Text = "und" Then SQLWhere = SQLWhere + " and " + get_where(7) + If Me.cbandor6.Text = "oder" Then SQLWhere = SQLWhere + " or " + get_where(7) + Me.auswertungen.ParamCollection.Add(cbandor6.Text + " " + cbparam7.Text & " " & cbop7.Text & " " & cbvalue7.Text) + s = s + " " + cbandor6.Text + " " + cbparam7.Text & " " & cbop7.Text & " " & cbvalue7.Text + End If + Me.auswertungen.FullParam = s + End Sub + + ''' + ''' Where zusammenstellen + ''' + ''' + ''' + ''' + Private Function get_where(ByVal nr As Integer) As String + Dim param As New ComboBox + Dim op As New ComboBox + Dim val As New ComboBox + Dim wertvalue As String = "" + Dim wertdbfeld As String = "" + Dim wertop As String = op.Text + + CtrlList.Clear() + Me.GetControl(Me, "cbparam" + Trim(Str(nr)), CtrlList) + param = CtrlList.Item(0) + + CtrlList.Clear() + Me.GetControl(Me, "cbop" + Trim(Str(nr)), CtrlList) + op = CtrlList.Item(0) + + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + Trim(Str(nr)), CtrlList) + val = CtrlList.Item(0) + + dr = Me.Findrow(param.Text) + + wertop = op.Text + + Dim paramtyp As String = "" + Dim paramsplit() As String = dr.Item("Paramtype").ToString.Split(";") + + Dim dbfeldsplit() As String = dr.Item("dbfeldname").ToString.Split(";") + If dbfeldsplit.Length > 1 And val.SelectedIndex > -1 Then + wertvalue = val.SelectedValue + wertdbfeld = dbfeldsplit(0) + paramtyp = paramsplit(0) + Else + wertvalue = val.Text + If dbfeldsplit.Length > 1 Then + wertdbfeld = dbfeldsplit(1) + paramtyp = paramsplit(1) + Else + wertdbfeld = dbfeldsplit(0) + paramtyp = paramsplit(0) + End If + End If + + Select Case UCase(paramtyp) + Case "VARCHAR", "STRING", "CHAR" + Return wertdbfeld + " " + wertop + " '" + wertvalue + "'" + Case "INTEGER", "INT" + Return wertdbfeld + " " + wertop + " " + wertvalue + "" + Case "DATEPART" + Select Case wertvalue + Case "letzte Woche" + Return wertdbfeld & " between dbo.get_dateperiode('LastWeek',1) and dbo.get_dateperiode('LastWeek',0)" + Case "letzter Monat" + Return wertdbfeld & " between dbo.get_dateperiode('LastMonth',1) and dbo.get_dateperiode('LastMonth',0)" + Case "letztes Quartal" + Return wertdbfeld & " between dbo.get_dateperiode('LastQuarter',1) and dbo.get_dateperiode('LastQuarter',0)" + Case "letztes Jahr" + Return wertdbfeld & " between dbo.get_dateperiode('LastYear',1) and dbo.get_dateperiode('LastYear',0)" + Case "aktuelle Woche" + Return wertdbfeld & " between dbo.get_dateperiode('ActWeek',1) and dbo.get_dateperiode('ActWeek',0)" + Case "aktueller Monat" + Return wertdbfeld & " between dbo.get_dateperiode('ActMonth',1) and dbo.get_dateperiode('ActMonth',0)" + Case "aktuelles Quartal" + Return wertdbfeld & " between dbo.get_dateperiode('ActQuarter',1) and dbo.get_dateperiode('ActQuarter',0)" + Case "aktuelles Jahr" + Return wertdbfeld & " between dbo.get_dateperiode('ActYear',1) and dbo.get_dateperiode('ActYear',0)" + End Select + 'Dim dtfrom As DateTime + 'Dim dtto As DateTime + 'dtfrom = Today + 'CalcDate(wertvalue, dtfrom, dtto) + 'Return wertdbfeld & " between '" & Formateddate(dtfrom, True) & "' and '" & Formateddate(dtto, False) + "'" + 'Dim dp As String + 'Select Case wertvalue + ' Case "letzte Woche" + ' CalcDate(wertvalue, dtfrom, dtto) + ' Case "letzte Woche" + ' Return "cast(datepart(week," & wertdbfeld & ") as int) " & wertop & " cast(datepart(week, getdate()) as int) - 1" + ' Case "letzer Monat" + ' Return "cast(datepart(month," & wertdbfeld & ") as int) " & wertop & " cast(datepart(month, getdate()) as int) - 1" + ' Case "letztes Quartal" + ' Return "cast(datepart(quarter," & wertdbfeld & ") as int) " & wertop & " cast(datepart(quarter, getdate()) as int) - 1" + ' Case "letztes Jahr" + ' Return "year(" & wertdbfeld & ") " & wertop & " year(getdate()) - 1" + ' Case "aktuelle Woche" + ' Return "cast(datepart(week," & wertdbfeld & ") as int) " & wertop & " cast(datepart(week, getdate()) as int)" + ' Case "aktueller Monat" + ' Return "cast(datepart(month," & wertdbfeld & ") as int) " & wertop & " cast(datepart(month, getdate()) as int)" + ' Case "aktuelles Quartal" + ' Return "cast(datepart(quarter," & wertdbfeld & ") as int) " & wertop & " cast(datepart(quarter, getdate()) as int)" + ' Case "aktuelles Jahr" + ' Return "year(" & wertdbfeld & ") " & wertop & " year(getdate())" + 'End Select + Case "DATUM" + Select Case wertop + Case "=" + Return wertdbfeld + " > convert(datetime,'" + wertvalue + " 00:00:00',104) and " + wertdbfeld + " < convert(datetime,'" + wertvalue + " 23:59:59',104)" + Case "<>" + Return wertdbfeld + " < convert(datetime,'" + wertvalue + " 00:00:00',104) and " + wertdbfeld + " > convert(datetime,'" + wertvalue + " 23:59:59',104)" + Case ">=" + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 00:00:00',104)" + Case ">" + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 23:59:59',104)" + Case "<" + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 00:00:00',104)" + Case "<=" + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 23:59:59',104)" + Case Else + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 00:00:00',104)" + End Select + Case "DATUM+1" + Dim d As DateTime = wertvalue + d = DateAdd(DateInterval.Day, 1, d) + wertvalue = d.ToString + Return wertdbfeld + " " + wertop + " convert(datetime,'" + wertvalue + " 00:00:00',104)" + Case "BOOLEAN" + If UCase(wertvalue) = "TRUE" Or UCase(wertvalue) = "JA" Then + Return wertdbfeld + " " + wertop + " 1" + Else + Return wertdbfeld + " " + wertop + " 0" + End If + Case Else + End Select + + End Function +#End Region + + + + Private Sub cbvalue1_DropDown(ByVal sender As Object, ByVal e As System.EventArgs) Handles cbvalue1.DropDown, cbvalue2.DropDown, _ + cbvalue3.DropDown, cbvalue4.DropDown, cbvalue5.DropDown, cbvalue6.DropDown, cbvalue7.DropDown + Try + Dim s As String = ParamNr(sender.name) + Dim nr As Integer = s + Dim param As New ComboBox + Dim op As New ComboBox + Dim val As New ComboBox + CtrlList.Clear() + Me.GetControl(Me, "cbparam" + Trim(Str(nr)), CtrlList) + param = CtrlList.Item(0) + + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + Trim(Str(nr)), CtrlList) + val = CtrlList.Item(0) + + dr = Me.Findrow(param.Text) + + If dr.Item("Paramtype") = "Datum" Then + Dim LocalMousePosition As Point + LocalMousePosition = val.PointToClient(Cursor.Position) + + Dim f As New frmCalendar + + f.Top = Me.Top + val.Top + 200 + f.Left = Me.Left + val.Width + 399 + f.ShowDialog() + If f.DialogResult = Windows.Forms.DialogResult.OK Then + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + Trim(Str(nr)), CtrlList) + param = CtrlList.Item(0) + param.Text = f.MonthCalendar1.SelectionRange.Start.Date + param.Focus() + End If + End If + Catch ex As Exception + End Try + End Sub + + Private Sub BtnInitParam_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnInitParam.Click + Me.Init_Params() + End Sub + + Private Sub cbandor1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbandor1.SelectedIndexChanged, _ + cbandor2.SelectedIndexChanged, cbandor3.SelectedIndexChanged, cbandor3.SelectedIndexChanged, cbandor4.SelectedIndexChanged, cbandor5.SelectedIndexChanged, _ + cbandor6.SelectedIndexChanged + If Me.On_Load Then Exit Sub + Me.WhereModified = False + Me.PictureBox1.Visible = False + s = Me.ParamNr(sender.name) + s = s + 1 + CtrlList.Clear() + Me.GetControl(Me, "cbparam" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Enabled = True + Next + CtrlList.Clear() + Me.GetControl(Me, "cbop" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Enabled = True + Next + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Enabled = True + Next + CtrlList.Clear() + Me.GetControl(Me, "cbandor" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Enabled = True + Next + End Sub + + Private Sub Init_ParamRow(ByVal s As String) + s = s + 1 + CtrlList.Clear() + Me.GetControl(Me, "cbparam" + s, CtrlList) + For Each x As ComboBox In CtrlList + Try + x.Text = "" + Catch ex As Exception + End Try + x.Enabled = False + Next + CtrlList.Clear() + Me.GetControl(Me, "cbop" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Text = "" + x.Enabled = False + Next + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Text = "" + x.Enabled = False + Next + CtrlList.Clear() + Me.GetControl(Me, "cbandor" + s, CtrlList) + For Each x As ComboBox In CtrlList + x.Text = "" + Next + End Sub + + + Private Sub BtnParamDel1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnParamDel1.Click, BtnParamDel2.Click, _ + BtnParamDel3.Click, BtnParamDel4.Click, BtnParamDel5.Click, BtnParamDel6.Click + Init_ParamRow(Me.ParamNr(sender.name)) + End Sub + + Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click + Me.On_Load = True + Dim s As String + CtrlList.Clear() + Me.GetControl(Me, "cbandor*", CtrlList) + For Each x As ComboBox In CtrlList + s = s + ParamNr(x.Name) + "~" + x.Text + ";" + Next + s = s + "|" + CtrlList.Clear() + Me.GetControl(Me, "cbparam*", CtrlList) + For Each x As ComboBox In CtrlList + s = s + ParamNr(x.Name) + "~" + x.Text + ";" + Next + s = s + "|" + CtrlList.Clear() + Me.GetControl(Me, "cbop*", CtrlList) + For Each x As ComboBox In CtrlList + s = s + ParamNr(x.Name) + "~" + x.Text + ";" + Next + s = s + "|" + CtrlList.Clear() + Me.GetControl(Me, "cbval*", CtrlList) + For Each x As ComboBox In CtrlList + s = s + ParamNr(x.Name) + "~" + x.Text + ";" + Next + Dim Bez As String = InputBox("Bezeichnung für die Parameter:", "Auswertungsparameter sichern") + If Me.WhereModified = False Then + If Bez <> "" Then Me.auswertungen.Save_MAParameter(Me.auswertungen.Auswertung.iAuswertungNr.Value, Bez, s, Me.txtTitel1.Text, Me.txtTitel2.Text, Me.checkboxprintparam.Checked, "") + Else + If Bez <> "" Then Me.auswertungen.Save_MAParameter(Me.auswertungen.Auswertung.iAuswertungNr.Value, Bez, s, Me.txtTitel1.Text, Me.txtTitel2.Text, Me.checkboxprintparam.Checked, Me.SQLWhere) + End If + If Me.auswertungen.MitarbeiterAuswertungsparameter.Rows.Count > 0 Then + Me.ComboboxMAParameter.Visible = True + Try + Me.ComboboxMAParameter.DataSource = Nothing + Me.ComboboxMAParameter.DataSource = Me.auswertungen.MitarbeiterAuswertungsparameter + Me.ComboboxMAParameter.DisplayMember = "Beschreibung" + Me.ComboboxMAParameter.ValueMember = "Mitarbeiter_AuswertungsparameterNr" + Catch ex As Exception + End Try + Else + Me.ComboboxMAParameter.Visible = False + End If + Me.On_Load = False + Try + For Each dr As DataRow In Me.auswertungen.MitarbeiterAuswertungsparameter.Rows + If dr.Item("Beschreibung") = Bez Then + Me.ComboboxMAParameter.SelectedValue = dr.Item(0) + Me.ComboboxMAParameter_SelectedIndexChanged(sender, e) + End If + Next + Catch + End Try + + End Sub + + Private Sub ComboboxMAParameter_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboboxMAParameter.SelectedIndexChanged + If Me.On_Load = True Then Exit Sub + Dim wheremod As Boolean = False + Me.WhereModified = False + Me.PictureBox1.Visible = False + Try + Dim s As String = "" + For Each dr As DataRow In Me.auswertungen.MitarbeiterAuswertungsparameter.Rows + If dr.Item("Mitarbeiter_AuswertungsparameterNr") = Me.ComboboxMAParameter.SelectedValue Then + s = dr.Item("Parameterdaten") + Me.txtTitel1.Text = dr.Item("Titelzeile1") + Me.txtTitel2.Text = dr.Item("Titelzeile2") + Me.checkboxprintparam.Checked = dr.Item("ParamPrint") + If dr.Item("SQLWhere").ToString <> "" Then + Me.SQLWhere = dr.Item("SQLWhere").ToString + Me.WhereModified = True + wheremod = True + Me.PictureBox1.Visible = True + End If + End If + Next + If s = "" Then Exit Sub + + Me.Init_Params(False) + + + Dim grp() As String = s.Split("|") + Dim andor As String = grp(0) + Dim param As String = grp(1) + Dim op As String = grp(2) + Dim val As String = grp(3) + + Dim tmpvalue() As String + Dim ValueItem() As String + Dim tmpparam() As String + Dim ParamItem() As String + Dim tmpop() As String + Dim opItem() As String + Dim tmpandor() As String + Dim andorItem() As String + Dim tmpcbidx As Integer + Dim vals() As String + + Dim CTLIndex As Integer + Dim CTLAndOr As String + Dim CTLParam As String + Dim CTLOP As String + Dim CTLValue As String + Dim CTLSplit() As String + Dim SelIndexSet As Boolean + + + Dim i As Integer + For i = 6 To 0 Step -1 + tmpvalue = val.ToString.Split(";") + If tmpvalue(i).ToString.Length > 2 Then + ValueItem = tmpvalue(i).Split("~") + CTLIndex = ValueItem(0) + CTLValue = ValueItem(1) + + tmpparam = param.Split(";") + ParamItem = tmpparam(i).Split("~") + CTLParam = ParamItem(1) + + tmpop = op.Split(";") + opItem = tmpop(i).Split("~") + CTLOP = opItem(1) + + If i > 1 Then + tmpandor = andor.Split(";") + andorItem = tmpandor(i - 1).Split("~") + CTLAndOr = andorItem(1) + End If + + 'Parameter + Dim l As New List(Of Control) + Me.GetControl(Me, "cbparam" + Trim(Str(CTLIndex)), l) + Dim x As ComboBox = l(0) + + SelIndexSet = False + Dim ii As Integer = 0 + For ii = 0 To x.Items.Count - 1 + If x.Items(ii).ToString = CTLParam Then + x.SelectedIndex = ii + SelIndexSet = True + End If + Next + If SelIndexSet = False Then x.Text = CTLParam + + 'Operator + l.Clear() + Me.GetControl(Me, "cbop" + Trim(Str(CTLIndex)), l) + x = l(0) + SelIndexSet = False + For ii = 0 To x.Items.Count - 1 + If x.Items(ii).ToString = CTLOP Then + x.SelectedIndex = ii + SelIndexSet = True + End If + Next + If SelIndexSet = False Then x.Text = CTLOP + + 'value + l.Clear() + Me.GetControl(Me, "cbvalue" + Trim(Str(CTLIndex)), l) + x = l(0) + SelIndexSet = False + For ii = 0 To x.Items.Count - 1 + If x.Items(ii).ToString = CTLValue Then + x.SelectedIndex = ii + SelIndexSet = True + End If + Next + If SelIndexSet = False Then x.Text = CTLValue + + 'andor + l.Clear() + Me.GetControl(Me, "cbandor" + Trim(Str(CTLIndex)), l) + x = l(0) + SelIndexSet = False + For ii = 0 To x.Items.Count - 1 + If x.Items(ii).ToString = CTLAndOr Then + x.SelectedIndex = ii + SelIndexSet = True + End If + Next + If SelIndexSet = False Then x.Text = CTLAndOr + + End If + Next + + If wheremod = True Then + Me.WhereModified = True + Me.PictureBox1.Visible = True + End If + + + Catch ex As Exception + End Try + End Sub + + + + + + + Private Sub ComboboxMAParameter_VisibleChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboboxMAParameter.VisibleChanged + Me.btnDeleteSavedParam.Visible = Me.ComboboxMAParameter.Visible + End Sub + + Private Sub btnDeleteSavedParam_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDeleteSavedParam.Click + Me.On_Load = True + If Me.ComboboxMAParameter.SelectedIndex = -1 Then Exit Sub + + Me.auswertungen.Delete_Parameter(Me.ComboboxMAParameter.SelectedValue) + 'Me.Init_Params() + Me.txtTitel1.Text = Me.TreeAuswertungen.SelectedNode.Text + Me.txtTitel2.Text = "" + Me.checkboxprintparam.Checked = True + + If Me.auswertungen.MitarbeiterAuswertungsparameter.Rows.Count > 0 Then + Me.ComboboxMAParameter.Visible = True + Try + Me.ComboboxMAParameter.DataSource = Nothing + Me.ComboboxMAParameter.DataSource = Me.auswertungen.MitarbeiterAuswertungsparameter + Me.ComboboxMAParameter.DisplayMember = "Beschreibung" + Me.ComboboxMAParameter.ValueMember = "Mitarbeiter_AuswertungsparameterNr" + Me.ComboboxMAParameter.SelectedIndex = -1 + Catch ex As Exception + End Try + Me.On_Load = False + Else + Me.ComboboxMAParameter.Visible = False + End If + + End Sub + + Private Sub AlleKnotenSchliessenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AlleKnotenSchliessenToolStripMenuItem.Click + Me.TreeAuswertungen.CollapseAll() + End Sub + + Private Sub AlleKnotenÖffnenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AlleKnotenÖffnenToolStripMenuItem.Click + Me.TreeAuswertungen.ExpandAll() + End Sub + + '#Region "Datumsfunktionen" + + ' Private Function CalcDate(ByVal typ As String, ByRef dtfrom As DateTime, ByRef dtto As DateTime) + ' Select Case UCase(typ) + ' Case "LETZTE WOCHE" + ' GetDates(dtfrom, dtto) + ' Case "LETZTER MONAT" + ' dtfrom = DateAdd(DateInterval.Month, -1, dtfrom) + ' dtto = GetLastDayOfMonth(dtfrom) + ' dtfrom = GetFirstDayOfMonth(dtfrom) + ' Case "LETZTES QUARTAL" + ' Dim d As DateTime + ' d = DateAdd(DateInterval.Quarter, -1, dtfrom) + ' dtfrom = FirstDayOfQuarter(d) + ' dtto = LastDayOfQuarter(d) + ' Case "LETZTES JAHR" + ' dtfrom = DateAdd(DateInterval.Year, -1, dtfrom) + ' Dim y As Integer = Year(dtfrom) + ' dtfrom = "01.01." + Str(y) + ' dtto = "31.12." + Str(y) + ' Case "AKTUELLE WOCHE" + ' dtfrom = DateAdd(DateInterval.Day, 7, dtfrom) + ' GetDates(dtfrom, dtto) + ' Case "AKTUELLER MONAT" + ' dtfrom = dtfrom + ' dtto = GetLastDayOfMonth(dtfrom) + ' dtfrom = GetFirstDayOfMonth(dtfrom) + ' Case "AKTUELLES QUARTAL" + ' Dim d As DateTime + ' d = dtfrom + ' dtfrom = FirstDayOfQuarter(d) + ' dtto = LastDayOfQuarter(d) + ' Case "AKTUELLES JAHR" + ' Dim y As Integer = Year(dtfrom) + ' dtfrom = "01.01." + Str(y) + ' dtto = "31.12." + Str(y) + ' End Select + ' End Function + + ' Private Sub GetDates(ByRef stDate As Date, ByRef endDate As Date) + ' Dim offset As Double = 0 + ' Select Case stDate.DayOfWeek + ' Case DayOfWeek.Monday : offset = 0 + ' Case DayOfWeek.Tuesday : offset = -1 + ' Case DayOfWeek.Wednesday : offset = -2 + ' Case DayOfWeek.Thursday : offset = -3 + ' Case DayOfWeek.Friday : offset = -4 + ' Case DayOfWeek.Saturday : offset = -5 + ' Case DayOfWeek.Sunday : offset = -6 + ' End Select + ' endDate = DateAdd(DateInterval.Day, (offset - 1), stDate) + ' stDate = DateAdd(DateInterval.Day, -7 + offset, stDate) + ' End Sub + + ' Private Function GetFirstDayOfMonth(ByVal dtDate As Date) As DateTime + ' Dim dtFrom As Date = dtDate + ' dtFrom = dtFrom.AddDays(-(dtFrom.Day - 1)) + ' Return dtFrom + ' End Function + + + ' Private Function GetLastDayOfMonth(ByVal dtDate As Date) As DateTime + ' Dim dtTo As Date = dtDate + ' dtTo = dtTo.AddMonths(1) + ' dtTo = dtTo.AddDays(-(dtTo.Day)) + ' Return dtTo + ' End Function + + ' Public Function FirstDayOfQuarter(ByVal DateIn As DateTime) _ + ' As DateTime + ' ' Calculate first day of DateIn quarter, + ' ' with quarters starting at the beginning of Jan/Apr/Jul/Oct + ' Dim intQuarterNum As Integer = (Month(DateIn) - 1) \ 3 + 1 + ' Return DateSerial(Year(DateIn), 3 * intQuarterNum - 2, 1) + ' End Function + + + ' Public Function LastDayOfQuarter(ByVal DateIn As Date) As Date + ' ' Calculate last day of DateIn quarter, + ' ' with quarters ending at the end of Mar/Jun/Sep/Dec + ' Dim intQuarterNum As Integer = (Month(DateIn) - 1) \ 3 + 1 + ' Return DateSerial(Year(DateIn), 3 * intQuarterNum + 1, 0) + ' End Function + + + ' Private Function Formateddate(ByVal dt As DateTime, ByVal start As Boolean) As String + ' If start Then + ' Return Format(dt, Globals.clsapplication.sReport_Datum_Format.Value) & " 00:00:00" + ' Else + ' Return Format(dt, Globals.clsapplication.sReport_Datum_Format.Value) & " 23:59:59" + ' End If + + ' End Function + '#End Region + + + Private Sub btnEditSQL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditSQL.Click + If Me.WhereModified = False Then Get_SQLWhere() + Dim f As New frmEditWhere + f.sql = Me.SQLWhere + f.ShowDialog() + If f.DialogResult = Windows.Forms.DialogResult.OK Then + If f.sql <> "" Then + Me.SQLWhere = f.sql + Me.WhereModified = True + Me.PictureBox1.Visible = True + Else + Me.WhereModified = False + Me.PictureBox1.Visible = False + End If + End If + f.Dispose() + End Sub + + Private Sub cbop1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbop1.SelectedIndexChanged, cbop2.SelectedIndexChanged, _ + cbop3.SelectedIndexChanged, cbop4.SelectedIndexChanged, cbop5.SelectedIndexChanged, cbop6.SelectedIndexChanged, cbop7.SelectedIndexChanged + If Me.On_Load Then Exit Sub + Me.WhereModified = False + Me.PictureBox1.Visible = False + End Sub + + Private Sub cbvalue1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbvalue1.SelectedIndexChanged, _ + cbvalue2.SelectedIndexChanged, cbvalue3.SelectedIndexChanged, cbvalue4.SelectedIndexChanged, cbvalue5.SelectedIndexChanged, cbvalue6.SelectedIndexChanged, cbvalue7.SelectedIndexChanged, _ + cbvalue1.TextChanged, cbvalue2.TextChanged, cbvalue3.TextChanged, cbvalue4.TextChanged, cbvalue5.TextChanged, cbvalue6.TextChanged, cbvalue7.TextChanged + If Me.On_Load Then Exit Sub + Me.WhereModified = False + Me.PictureBox1.Visible = False + End Sub + + + Private Sub tsbtnReportDesign_Click(sender As Object, e As EventArgs) Handles tsbtnReportDesign.Click + Try + Me.Cursor = Cursors.WaitCursor + Me.auswertungen.TitelZeile1 = Me.txtTitel1.Text + Me.auswertungen.TitelZeile2 = Me.txtTitel2.Text + + If Me.WhereModified = False Then Get_SQLWhere() + Me.Auswertungsdaten = Me.auswertungen.Get_Auswertungsdaten(Me.auswertungen.Auswertung.sSQL.Value, SQLWhere, Me.auswertungen.Auswertung.sSQLType.Value) + Dim f As New frmcrreporting(Me.Auswertungsdaten, Me.auswertungen.Auswertung.iAuswertungNr.Value, Me.auswertungen, Me.checkboxprintparam.Checked, True) + f.Text = "Auswertung " + Me.TreeAuswertungen.SelectedNode.Text + f.MdiParent = Me.MdiParent + Me.Cursor = Cursors.Default + f.Show() + f.DesignReport() + Catch + Me.Cursor = Cursors.Default + MsgBox("Keine Auswertung für die Bearbeitung ausgewählt") + End Try + + + End Sub + + Private Sub TSBtnSetSecurityObject_Click(sender As Object, e As EventArgs) Handles TSBtnSetSecurityObject.Click + If InputBox("Passwort:") <> "341211" Then Exit Sub + sec.List_Form_Controls(Me) + sec.Print_Screen(Me) + End Sub + + Private Sub cbvalue1_KeyDown(sender As Object, e As KeyEventArgs) Handles cbvalue1.KeyDown + If e.KeyCode = Keys.F1 Then + Dim d As New DataTable + d = cbvalue1.DataSource + Dim x As New DataTable + x = d.Copy + Dim f As New frmDataSelect + f.C1Daten.DataSource = x + f.C1Daten.DataMember = x.TableName + f.ShowDialog() + If f.selectedvalue <> "" Then Me.cbvalue1.Text = f.selectedvalue + End If + End Sub + + + Private Sub cbvalue1_Leave(sender As Object, e As EventArgs) Handles cbvalue1.Leave, cbvalue2.Leave, cbvalue3.Leave, cbvalue4.Leave, cbvalue5.Leave, cbvalue6.Leave, cbvalue7.Leave + Try + Dim s As String = ParamNr(sender.name) + Dim nr As Integer = s + Dim param As New ComboBox + Dim op As New ComboBox + Dim val As New ComboBox + + CtrlList.Clear() + Me.GetControl(Me, "cbvalue" + Trim(Str(nr)), CtrlList) + val = CtrlList.Item(0) + For i = 1 To cblist.Count + Dim cb As cbe = cblist.Item(i) + If cb.ComboboxName = val.Name And cb.Name = val.Text Then + val.SelectedValue = cb.Keyvalue + End If + Next + Catch ex As Exception + End Try + End Sub +End Class + + +Public Class cbe + Dim m_keyvalue As String + Dim m_name As String + Dim m_comboboxname As String + Property Keyvalue As String + Get + Return m_keyvalue + End Get + Set(value As String) + m_keyvalue = value + End Set + End Property + + Property Name As String + Get + Return m_name + End Get + Set(value As String) + m_name = value + End Set + End Property + Property ComboboxName As String + Get + Return m_comboboxname + End Get + Set(value As String) + m_comboboxname = value + End Set + End Property + Sub New(ByVal comboboxname As String, ByVal keyvalue As String, name As String) + Me.Keyvalue = keyvalue + Me.Name = name + Me.ComboboxName = comboboxname + End Sub +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmAuswertung.designer.vb b/_FRReporting/Formulare/frmAuswertung.designer.vb new file mode 100644 index 0000000..71221da --- /dev/null +++ b/_FRReporting/Formulare/frmAuswertung.designer.vb @@ -0,0 +1,185 @@ + _ +Partial Class frmAuswertung + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.components = New System.ComponentModel.Container() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmAuswertung)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.DateiToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.BeendenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.TSBtnQuit = New System.Windows.Forms.ToolStripButton() + Me.TSBtnPrint = New System.Windows.Forms.ToolStripButton() + Me.TSBtnExcelExport = New System.Windows.Forms.ToolStripButton() + Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton() + Me.C1Daten = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ContextMenuStrip1 = New System.Windows.Forms.ContextMenuStrip(Me.components) + Me.SpalteLöschenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.SaveFileDialog1 = New System.Windows.Forms.SaveFileDialog() + Me.BindingSource1 = New System.Windows.Forms.BindingSource(Me.components) + Me.MenuStrip1.SuspendLayout() + Me.ToolStrip1.SuspendLayout() + CType(Me.C1Daten, System.ComponentModel.ISupportInitialize).BeginInit() + Me.ContextMenuStrip1.SuspendLayout() + CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.AllowMerge = False + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.DateiToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(834, 24) + Me.MenuStrip1.TabIndex = 3 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'DateiToolStripMenuItem + ' + Me.DateiToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BeendenToolStripMenuItem}) + Me.DateiToolStripMenuItem.Name = "DateiToolStripMenuItem" + Me.DateiToolStripMenuItem.Size = New System.Drawing.Size(46, 20) + Me.DateiToolStripMenuItem.Text = "&Datei" + ' + 'BeendenToolStripMenuItem + ' + Me.BeendenToolStripMenuItem.Name = "BeendenToolStripMenuItem" + Me.BeendenToolStripMenuItem.Size = New System.Drawing.Size(120, 22) + Me.BeendenToolStripMenuItem.Text = "&Beenden" + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.TSBtnQuit, Me.TSBtnPrint, Me.TSBtnExcelExport, Me.ToolStripButton1}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 24) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(834, 25) + Me.ToolStrip1.TabIndex = 4 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'TSBtnQuit + ' + Me.TSBtnQuit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnQuit.Image = CType(resources.GetObject("TSBtnQuit.Image"), System.Drawing.Image) + Me.TSBtnQuit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnQuit.Name = "TSBtnQuit" + Me.TSBtnQuit.Size = New System.Drawing.Size(23, 22) + Me.TSBtnQuit.Text = "Fenster schliessen" + Me.TSBtnQuit.ToolTipText = "Fenster schliessen" + ' + 'TSBtnPrint + ' + Me.TSBtnPrint.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnPrint.Image = CType(resources.GetObject("TSBtnPrint.Image"), System.Drawing.Image) + Me.TSBtnPrint.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnPrint.Name = "TSBtnPrint" + Me.TSBtnPrint.Size = New System.Drawing.Size(23, 22) + Me.TSBtnPrint.Text = "Drucken" + Me.TSBtnPrint.Visible = False + ' + 'TSBtnExcelExport + ' + Me.TSBtnExcelExport.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnExcelExport.Image = CType(resources.GetObject("TSBtnExcelExport.Image"), System.Drawing.Image) + Me.TSBtnExcelExport.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnExcelExport.Name = "TSBtnExcelExport" + Me.TSBtnExcelExport.Size = New System.Drawing.Size(23, 22) + Me.TSBtnExcelExport.Text = "Export" + ' + 'ToolStripButton1 + ' + Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image) + Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta + Me.ToolStripButton1.Name = "ToolStripButton1" + Me.ToolStripButton1.Size = New System.Drawing.Size(23, 22) + Me.ToolStripButton1.Text = "Als Excel-Datei speichern" + ' + 'C1Daten + ' + Me.C1Daten.AlternatingRows = True + Me.C1Daten.ContextMenuStrip = Me.ContextMenuStrip1 + Me.C1Daten.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Daten.FilterBar = True + Me.C1Daten.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Daten.Images.Add(CType(resources.GetObject("C1Daten.Images"), System.Drawing.Image)) + Me.C1Daten.Location = New System.Drawing.Point(0, 49) + Me.C1Daten.Name = "C1Daten" + Me.C1Daten.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Daten.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Daten.PreviewInfo.ZoomFactor = 75.0R + Me.C1Daten.PrintInfo.PageSettings = CType(resources.GetObject("C1Daten.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Daten.ScrollTips = True + Me.C1Daten.Size = New System.Drawing.Size(834, 395) + Me.C1Daten.TabAction = C1.Win.C1TrueDBGrid.TabActionEnum.ColumnNavigation + Me.C1Daten.TabIndex = 6 + Me.C1Daten.Text = "C1TrueDBGrid1" + Me.C1Daten.PropBag = resources.GetString("C1Daten.PropBag") + ' + 'ContextMenuStrip1 + ' + Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.SpalteLöschenToolStripMenuItem}) + Me.ContextMenuStrip1.Name = "ContextMenuStrip1" + Me.ContextMenuStrip1.Size = New System.Drawing.Size(151, 26) + ' + 'SpalteLöschenToolStripMenuItem + ' + Me.SpalteLöschenToolStripMenuItem.Name = "SpalteLöschenToolStripMenuItem" + Me.SpalteLöschenToolStripMenuItem.Size = New System.Drawing.Size(150, 22) + Me.SpalteLöschenToolStripMenuItem.Text = "&Spalte löschen" + ' + 'frmAuswertung + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(834, 444) + Me.Controls.Add(Me.C1Daten) + Me.Controls.Add(Me.ToolStrip1) + Me.Controls.Add(Me.MenuStrip1) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.Name = "frmAuswertung" + Me.Text = "Auswertung" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + CType(Me.C1Daten, System.ComponentModel.ISupportInitialize).EndInit() + Me.ContextMenuStrip1.ResumeLayout(False) + CType(Me.BindingSource1, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents TSBtnQuit As System.Windows.Forms.ToolStripButton + Friend WithEvents C1Daten As C1.Win.C1TrueDBGrid.C1TrueDBGrid + Friend WithEvents TSBtnPrint As System.Windows.Forms.ToolStripButton + Friend WithEvents TSBtnExcelExport As System.Windows.Forms.ToolStripButton + Friend WithEvents SaveFileDialog1 As System.Windows.Forms.SaveFileDialog + Friend WithEvents ContextMenuStrip1 As System.Windows.Forms.ContextMenuStrip + Friend WithEvents SpalteLöschenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStripButton1 As System.Windows.Forms.ToolStripButton + Friend WithEvents BindingSource1 As System.Windows.Forms.BindingSource +End Class diff --git a/_FRReporting/Formulare/frmAuswertung.resx b/_FRReporting/Formulare/frmAuswertung.resx new file mode 100644 index 0000000..47b66f1 --- /dev/null +++ b/_FRReporting/Formulare/frmAuswertung.resx @@ -0,0 +1,944 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 229, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACkSURBVDhPlZALDsMwCEM5OkfLzbIaMGH5dJkligL2a1o5 + qP9RW3VVXYpzqLV2D+CZQVU/Y27uIg4OQQAJXz+hDsyEDtVQ7dib+1GH1fpUDljD6OF5HgjvKgHvN+iC + A0O1EvB+A8ghPvgqB4j9xPlHhidVB2lwwICfbkBxMAFGqHbszb1RGhywhtGxN/dGXAbgGD4CqACMMGZR + VwrA/Rtn/QiKfADckGXYsnwKqAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIESURBVDhPrZI/bxNBEMXnI/BR+AiUlNdBeVVEeWXKaxLR + RDoJRUKI4gQUqdBFKYgQSCslkYxsiU0IxMHG3iSYc/wnPkxD95iZ80JsE0RxI/3s9d695zezSz+mE1QJ + Tb9PUCU0La5QJVRMRriJ45MuMmP/yaKGiqsh/sbxpy6Ojs6wVD8B1y+Q7VoEYYx2uzOno8l4gEXyb7kK + pIqigKlZRfayzMA2HcIoxr2V9SUtjUd9LPKmfqop5oqTsTes+5Nu6+XrJS2Nh7y4Rsc5pJxCSkzn0vHM + rOV0D2I1TB5nSNJsTk+jQQ7PXq2hZqbm1FBS+WSOPxynS7eMmsVJqu/K+roHDS97EPbr77Hx7BW/ZFUk + 30lqWJghilOeWaLiIIx0fpIsepjqnvcQaND/CkHEhSS6oeSZJJVDklHEbBauln/iPQS6zM8hxDwPvVs8 + K2lFEsieCKM40YR+dsH9qNzj33d47T0EynsOgrS2dLKzknTy7BZIoZRmI4hw+26oeg/1LjoQ1jZ39H4t + lh4IH4ZplobZzDCQdEFp6D0EujhrQdjefYvNJzucZJZIjHht2SizfLqmUCOPtCpmK6vrqvfQefczhIOD + PaxtvIDheybz+x/EsNGoq95D7ssJPPu1d9pKeT3KKyJJFG7Pt+h59PT5b62HOq2PqBJqn35AlVCreYjq + OMQvjpZMWrGxmEkAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAABBaSURBVGhDrVp7dFXVmb+v3HvzfpBEwM44Ol1dqx0rUtHR + iMgSREjAtGUcsXnfPIlRRGg7C2ZkoJYqOkyXtbNmrU4fqJCAY2sVCA+XTrvsGhYIOoWEynswBAhJ7vu8 + 7r35ze/bNwkJJkwk/eO3zjn37LPP9/v2t7/vt/e5tlc/qMXK1mK0vFWK5dsfRcvWR/HU1iVY3rYYTdsX + 4unW+Vixbd6E8PQ1aGkbH0+2fh5X78/HM1sXYuXrJVixtZj3FqG5rRhNYlPbo2gUvPUwXj3kg02Mz3vc + hqxqO9KrbciuIiptyOC5x2dHis89cVS7huES1LrHhy8FzhrXVfB65P2UOjvcdTYebXDVj4b8lkUbW7bN + ha2prQQZNNpOY53NDjgabXA08JpHeyOv6/iiCULajoS9fhJosCs7BE4aLXAMQs6zfTY8uX2BEFiivC0N + bS122Jbz2OCETYyodykvTBQptVfhEvBF40EZxWdGYnQbO+Gkt2kDR8dTy5Gtc8AlhIg02rx8RzFsT7eW + quFwNNFwGu/0OZFTm4OCykLkVxUiqyYPmb4bQ8YkkF5bgMy6qciqnYaMmkKk+3LgrPXQuXbYWxzwcgQa + 31wM24ptpSrm1QjUO5BZnYkf7luPnUd/jd2ftGPPH393Q2gndh+9cbQffQ97ju0l9mDnsXexaf8LKCjP + Q6rMFZJIrbGhSQg0b1+iJq/EvIRNYdVN2NX5G4SsK9CiQRiGcUPQJwlD1xV0U0Mg5sfeznbc8sTNSK1g + SDFS0kmgeYcQ2LEInhrGvkxYxlxeZQH2dexTxlumDi0WHYQ2fB6NRRCJhxGORxEiwrwXIaJWEpql86jz + vjaMCNtFh/tKnoelHwVeDz4r/ai+TBOaEYdmJtDLZ9/t3I/c8qlwNno5cW3wco6pObCi7WGk1CSziKSn + TMb83qO/J3tDGaqzM8MyYFrmIOgVMUIZriMYMxG0LIRNCxFCMwg9xmOM7XjkMwKd7QwB+9JjhBhrhWlo + lB5nnwbb6PKs9GEOk7CMBPuPYHfnbuRX5is7bY2c4LS16U0SeEYRcKsbkklk8g0RCCfCCA1EECaiiaTR + Bo0XmINeC5NQiMcQXxjkb0MIqTYREg7T2EiS8ADvEf4BhgWPYd5TJNSRI8FjOCYIIcR3R00DMRIIDRIo + +KIEQokICdA4eRmhMRRMGhujZ+L0tMU2usGQIcSTEhIhIhiPIBAPkWiYHg8xZJIEIgn2RQQGSDo+9Cwd + YZJALMjnAzwKeM4QnTSBaJwTyRpgHDIUOPy6hBKHN67FMRAZQDwqJBhWWvJ3mXxRTryoPMvzCEMnRCO0 + mMVnLdVn3IrBiophMZhRhhmfjxocZSOoiOg8N3UNOp01eQI0Jh4d4Hmcw03v0StBDq3Ep8bOxeNBDrea + oMwWUU1nzMaRMAYQ0wYQNOMckTjnUkI5Ic45YUUiGNCjJMH5RTIROik0wLAhgoYfFknHIhZHmu+fLAGd + Wcikl8P0ysngSfwx8D/4KPgRcRiHg5/gUPAIz3kMHMGnvN9n9atYjmo0UCajRQIMtzDDpd/yozvShe7o + OZyPnsD/aqdxRv8Mp/RzOKGf4vEkzkZOw2/2KeM1S5wy2RGQCWYE0BPrxtJ1pSh8LA/ZT2Qis4z4Tja8 + ZRnwlmcia1kebiv/a6x5Yy26jPOM/z6GQIihEIbFeXRF78aBcx9i8dpizFwxE7d/9+u4ffUdmLnqHty5 + +i7M+O4M3LV6Ju5tvht7Onahz+xFhHNv0gQ0yQZGH7oTXZjZNAsFNdPxtXUzqEMyKQAzqVFSKQKdLPF8 + tsqLKWX5eHH/Szgf70Y/CWiM6b5YDw72HMB93/9bpJalwlPvgb2WmoaywMt+XHx3SpMLnsoUFHwnDy/8 + ehP8NDj4xUYgWQfcLA6jRoBZRFLblUQfStc9hr+o+TJ+dnYLHvrXBciuyIW3Ko2q00nl6ICNz7p9HtxU + NR0v738VZ81LuBzrxSc9RzH/nxYgrSKDlZ7tlGQhalk8Sd7WRPDaQxu+1vJVHLx8BAHOvQiTxuQJ0At6 + 3EIvY/tg10E8vGoeZq28Cz8/8wss+OkilvV0eOs5CiKwWB2d9GxqZRoKy6ZjffuPcKDnEB783kPIqcin + galJ40WyCAGqTZvId1Z/b3Uqbqu/FW93vs1w7WVRZAZjkZw0AckQUUmhPAaMK+i8fBjfXFOMou8X4d/+ + 9DM88gpJVHqV5BWjHE3suJHhUO1Bri8fX332b5BVlQtnlYQJlaQYrzQXjRcylO8pdamYVvElvPbha7gS + v8KQDal0HZloGl3BJaMQcIjevpaApEsrAZMkDMazRu8cv/IxStcswT2r7sfPO3+JRT9eiHTGv5trB7uQ + YOd2GuhqZJ9cadnZr/I2ySVHQO47qGnkfSRaXYCXdm5GX9zPd1A6iMNY3SOs/CMJ7OrchfyKKRxl9scR + l/VG4/ZFSQKy/JMXfZ6ACC8az3RosvOoEYafGaazrwOPP/cE5q6ai9dPbMEjm+chrdIDT4ObspyGisHq + SIOHwkbQxDlAye6geHRXuRhaeVi943s4b3UpWRKX+sE6Irrp+gS44FEEFv4/BCgJJHykkkZZkIIkEeSo + 9Jl+nOk/Dd/zVZi78gG0nn4D8zY9BG8FMwuzjJNx7WxIhtVV0PM03smlayqXjDnlGah/pZ75/xT8CT+L + JmsHC59JROm0cGL0HLghAmGmQvFEOGFQhMXo/TjnAn+nhokwVs8GTqHupRrMYTi9cfp1PLx5PlLL0+Dm + HFCxyjhNIhk2Dk5yLxfs3nIXijfOx2k+H2CBC5lBCj9RujLaCVW55Z0TInC9SSxiLjhCzIUlpFhVRReF + ZbERjqErfBGV/16FO9fdiS0ciUc2FGMKQ8NZzUU5PZ0ic0HCiUTcjWlIZf2Y9ew38EnvIZXlNFZ7XXQR + DTW1BAzqI4vXsv4YcxKz5kw4C4mkFfkrxkepInW+0BAJrVFwJTjU1C0d/k8x7+V59LobM9fOwm8+ewez + nytCej2zE2GvllTJEWDKdDekwVORhqbWRhwzP8Y58wzOECfN0zhlnMV5swuXjR4E9QA11BdSo2MTEEk7 + ZLxBj8RZEyIRVlgSCeghnPCfRskPSuDm85I+Myqzce8/3I+2rlbMev4b8LDQSY73sG+HhFGDkyPiQTpJ + 3FJ3M/6q7i8xvXEaCp8swE3NhbjVdys2796M/kS/Eo5/FgKykBGvW8zNMYZPhOm0n4XtT70nUfr8N5FB + Y1KkmjIuU6vTkFdWgPvWFeG1C79C0ctz4V7mQdpQmmU7OzNRCuM41edWxFV4NXNNvtxOeZKO9W9vQG+s + H1GuGSZNIMJhlEVMVBOdzgUJFyd98V4c9R/F0g2PUdClc3Jykg6mSRfj08NJnFWejbs33I0tMhLP3YM8 + Cj5vhWxWMY1KKqXRMqFVQZPtHCHAMCuoKsDLv93MSsx3qUQh8pwTmiO++/iNEGAaDVFKWwydKL3QT03U + EepAycbFyC7PUZ5UKVIMIRxMnVIQPTVe1oU0zFpfhDfOb8WcdfchtyKLWolzgil2VI0gJEN5KlNxx/IZ + ON53nAWNqVuK2eQJSCGT9QC9wZE4EzmHv9v4GDKqs5J5nt5zUJSJonQwJOwi7JjrpRK7+VsmXzj7n+eg + 9cwWzN3wACt2Jt9D7cTslKzOJEAiomRva/yy0kIXrQvMcKwLsk6eGIGklJAbnytksmPAKizF60TwDJa9 + WIbccqZIMb6FL2fYpLCqeqr4bDX7YFgM7V26fPSqLx3ZVdl48AdF+NWp/0DRD2fT2HQ42F5EnDwvZL3U + U7evugP7L3yAS4lLikCYcy3KkRACQ3NA7UqoOjBIYMeglJCXj6WFZBg1Vt9L8X7U/LQB6eX0PL0snlPq + k8OfQk8OQfYznSNgf5IgwTQa+OALs/FqxyuY/tQ0vtylnCDrAhlBJ+GgDV9ZNQPvfLofAZOZTgnJq5P4 + upV4PAKy+SQPd9ErX6+7M7kGYBxLWvTINni9aB/PMOzUQsPgvRRfCtcMFGxMr/llubjtqVuQ3ZBBIccw + k3kgISSQDeVmOqAxC1+q+wreobf7BxhGkyUgezRSUC4melC5yYe5ax5C0drZKPrHIszm8f619/P8Olj7 + AOasmcM1wRw8sFqeuRdT6wvgrROSko1kziRDUYi4SDy9OhdL/+Xv0TPQ+wUISD5mCryWgOzKaZQMAcbj + Ja4HzpsXWT27eezGBeMSevSL6NO6R+DCMHp53aVfZjtBNz7jWrkzfAzF6xdiyrJcZC7LRtbjechamo70 + b7MuPO6GZ6kXN5VNxYyq23E5cVERGDUHuDAangNCQOZAMguNvSaWdDagDSiZKyIrQrElW4hRSl5Do+zV + ZV/HGhNqi1BPKMh1lHUkGPMzTXbi4JWPcKj3CA5f/hhHLhzAR12/x393vY8/dP8O/3X2PRw++wdW4n61 + dWPx+Qmk0XG2VfhggkbGabBlUmjRGzo7NCi6rCgJ8TpAmT0WgsxeYrwINFOjytTEIdRRZoQKNIwA5UlQ + 9BVHN8YCaSSC/L1fqVP5TZMiOnECY9cB2ZUwKCd0kRSyt8mQkg0uQXIvM6IK3FiQe0E+J3MoTAOjhDgk + FA2qDbMAc3wgzhGkkXFKdFPIMWn4WThj/D2gyU5dkoAKoePtY2/uPrutmNlCqijTGXNyBteye469B1Pk + MkPIiAU5FwQkEpPd6iRk39OiUXGmvCHEuEYYgsVr2RvSCF0cIV6mZw2OgMlwUnuidIhIFFPnb6w5Jhfy + ptozpQN4DMtqkAucAN+18/g+5FVOU9lNpId8hlIEVm1drLbV5eOe5PiM2qnY27GPzKUGyPBR+1PI/TkQ + iXOpOARZU4zRZghBWQXKepxrgxDJt3fu5zrjZhbAawg8s22QgEpNLmT5hMDeZLzGBjiZBBxGIiiQ+B4H + Q+2G24+6P/j8ID7XVjCifYSI0fsDumwq+7G/Yw+mlk2jzpLaQ1uHQuiptmJ1IeXfXeNiHi7Azo53OWz9 + VJ6ysGZMc0iHIdfjYWS7sdoanEujIL+NwIi2QZk7hMaJ7Y9f4Bz4LQrV/pJLeV+crgg0t5WoT5cO/uD2 + OZFel4cX923kPNhNIvvw/rF2fMDzieB9hV3DGKvNEK5tK9dX77ejne9u73wP++j5XRR5P/pgI7Lqcuho + 52C02NAghUz+UjBEQL7DOuo8kK+B8kEtp2IacqrzJ4zsqimjMFabkRjVvnp0++yqaSrmp7KwieczfNRh + sjkm0bLcwYJGAm2KQKn6bCkLExFn8nXey7SaWsFy3+RlypK0xeo3EYhKHYmx2ozE9drKHhMlh8hyCW3Z + gxXp7WihEGS2VCMgBJpIIEVuDBJQH7uZkdzMtbL8c1HfyxfzCUF23EZgzDbDuKbtqPbUSUrgJW0R++To + 4LJTlGsqyXjkQ3crCdT/ZzEyyqnJy2xIq0nekM/4GTXJb7HyN4QbRSaRXpXEWPevhzS+WyDfsOVajmKX + HDPZX94yJ1ZuLYFt04E6NLYtwPK3StHw1rfge7MUtTseRf2OEjTsKFbH8bGYWDIuGt5cjDr2IZDzsfsY + D9fvu2lbCX7yoQ//B4xxLcfzFcCVAAAAAElFTkSuQmCC + + + + + iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAD49SURBVHhe7X0FQBXL9z9goqJidwcgCAq2Pp/dYnd397MV + u7u7u0XFBFRE7MCuZ4Figojtm/M/n9ndy+V6r4CA7/1/X8b3ebuzd9mdnc/nnDOzMWMWn+JTfIpP8Sk+ + xaf4FJ/iU3yKT/EpPsVeysWozRjAmMNYH48oAXWFOkPdoQ7/v0nmjByMoYwzjLeM7wwRj1/CNwbqEHU5 + hIG6RR3/5xIKZc9YyfjIIBW4CG09Ph/zPOp2EcOO8Z8RghVjHOMNI7YvOD5vPI+6Rp2j7v/VZMuAe/qH + 8WOBzc2EeWJzSpg+MVk6piCrCtYiVQVrSl0htUSaiqlF2oqpCEhfKRVlqJRSZKyUkjJVTkmZK1tRlspW + ImsVK8pWJYVEjiopRM6qyQnIXS055amWTDAoHyN/9WRUoLqlKFjdkmxqWJItw65GUlGoZlKyZzjUTEKF + ayURjrWSkFOtxFSktoQoqizlNv5N8D7kwMDf8N8KO17a1kgqj8nHFnwOPpelPGde9fwoSy6lXILLSNnV + 8nLZBV+DvBZcE1+b4GuU15pOuW6RhpfWan1w3YiUXD/JiljJOuO6E1yH4fUZsX5R56cZNox/Jf3JeMZA + oSLA3NJCJCmSUlj3ziWyzCokcm1wEnk3Oon8mxyF7ebCotAWB1F4i70osrWQcN5mJ4pvtxWldtiKMjtt + xB87C4oKuwqISrvzi6p78onqe/OJWu55Rd19eUS9fblFw/25RJMDOUVzjxyi5cHsos2h7KL94Wyi45Gs + osuRLKL70cyi57FMoo9XJtHfO6MYeDyDGHw8vRh2Mp0YcTKtGO2TRridYvgC1sLtNANLbOPfRvqkFcN5 + 3yEn0otB/LcD+Bh9vTKKXnzMHnzsrkeziE58rg58zraHsolWXIYWB3OIph45RaMDuUT9/bmFK5e1tnse + UWNvXlGNr6HynvzymsrvKijK8vWV2mEjSvA1u2y3k3VQeKu9sOc6Qd0U2FRY5NvoKHJznWXlukvDdYi6 + RJ0aq2sGOAAXvzVVZrxmoADhCrUwE0nKpiHrybaUcXNRyrq+qMi+owjlZuTd6URSALsLU6E9DlR4rz1J + AbjbUfF9dlRqvy1JAXgUpAoeBajSofwkBXA4H9U6kpfqHs1D9bhyG3rmoiaeOam5Vw6SAjiendqfyEYd + T2YlKQCfzNTzVGbqezoTSQGcyUCDz6anYefSkRTA+bQ09kJamnAxDYH4yZesaSKvj0MeAuDfh/O+Q/hv + pAD8Mspj9fLNRD2OsQB8slAnPlcHPqcUAJ+/hXcOauqVk6QAjuUmVy5rbS6zFACXvzJfS4WDBUgK4IAN + X6sNleDrlQJwLyTrwp7rRApglyPlY+Te4UQ51hcR2bYXpUxbilIarlOuW8F1HF7f4fUPLsDJb0lOjECG + fgHIgl1Wir/yi7QbXSj9VhfKtM05XgCxJIDMXJcZuE7TrXIRVn/ll3VtWP+MpwxHRpwma4Y/I0IBEthY + kdU8R7JeXUyk3VLMqABwUYW3sdvfV4hc9jPpB5j0nez2PWzoj4NM+iEmfW8BUeVIfqp+hEk/mpfq7M8j + XD1zUwOv3NTIOxc1PZhTtDieg1qdyE5tTzLxR7OJTj5ZqeupLNTdNwv18sos+vhlon5M2sCzTPzJDGLo + +fQ04nw6GsWkw+2Pu5SGJl62psmMsWdSi2lXU9OUK9Y0ifNup9OIsfz7aN53xIV0NMwnvRh8joXAx+p/ + hoXgnUn0YjH08M1M3ficnY9xKPDJRu24LK25TC0O5RDNjuekxlzWhlzmegdyi7rH8lCtY3mp+tF8VNU9 + v6h0mMXA1/rHoYJUdpeNKOVhSyUO2FIxrpOi2wsJR3d7ym9KAGtcRJrNxchqrqOsc63+9QBuwFGcpZkM + nFQHCxsrkXx2UZFyVXEhBbCmmEi/1kVkXucs/thnI7r7ZRWT7liLNYHJxNYXScTWl0nENh0Si+0qdrxS + sFPFrleJdNj9WsEeHRKKvSrc3yjYp2K/DgnEAeBtAuGh4qAOFuKQhuDwde13bX/8rTwGQzuudh55Xpxf + rywoF8qnlXe33jVo16VdJ6BdO+oB9YG6QR2hribetpZ1V47rMAsbUoa1zkIKgOs4Fdc16hx1b8gHAxzF + SSrGeM/QKc7c0Wpn4gH5/JMud/G32ljMPyUj03rnq3Z77fwb+OX0n/owjf/ekMT+3h/Nr575buYP+H03 + 9/f5an4V23y+8boKL84DJ75a+AOeHy38D3+wuHrog7J+jHGIsT9M2YZ1wCPMwn/fO4urWHrwdndeuodY + +O8KSXzVnc/tHgYk4XySqzuDk1zdEZLEX8OWt0lpa3BS2h5iKbH1rSVtfG1Jmxlbgi1pE+c3vbGkNa9S + 0GrG4qcpxKqXVrSSsYIx/7GVWP7CipYxlgZZ0ZxHKcXioJS0+HlKWsSY+XcqseBZKloQmIrmM6Y9SCXm + BqamuQGpaQ5j8j1rMeupNc1kzHhiTePvphH4DX+/8U0y2vM2kTj+JQGXKRm1OJuLsm8sKj1Aqs3FyWpT + CUo6pYgwz5xU3wNAAODIhRGrKSFjKwMnUE6W2IIsOub0TzLDkZKvK06puEDZ2FXB6gdcy0zL+CL2vU9M + 3p8syCvMTJz+bk6A73cLOhZmIY68txAnvlmQxFcLOhjKFsjw4gsGjn5KSO5vE4pDYQnpCK8fZhz8kIh2 + vUkk9r9PRAc+JJZwD01MsKC9oUlo7/sktIeXTDRtYkvaGZKUdr5LSjveWdKGF0nFuqCkYgsTvSUkGROc + jNa/VLDpbXLayFj/OjmtCkpOq1+moLWvU9AaBoieHWBNs55y6GCCZjxJQ9OepKWpj9PSmDtpxORHaWkS + Y+JDDjG30orxf6ejcYyxD9KT2430wu1+ehp9PwONvJeBRvhnEMPvZqRhjKF3MtKQqxnF4NuZaBBj4K1M + NOAS91xuZqZ+jL43slCfi1kE9oOIDn1MRGueWYoq3gXIWhVAspUlReLhdpILlReNH3AFzmItOTBCGToB + mFfISIlnO/knXaUUJu8eJ6rvk5fG3Egr9rxLQr7fzOnsP2Z0+qsZeb03F6c4f4rJ9mGA/ENMtvfXBASA + 8AMh7GoZxz4nlOTjgnezmz3AZB/kdQ8mf39YYtrOrnMvk+7OZIPwXXwuSTYTrZENS1733FJsZSveqpK9 + 5nkysepZMgHL2vCGyWaAbECSzRa+iolfGsgW/Vyx8OUvUtKSoFSS/JmMCSwAjfwpDLfbaYRG/gQI4GZa + oZE/BgK4nl7oyGcMZwHoyL+TiQZfySh05N/KTP0vZRY68hm9L2QRPa9npZ7Xssptk9hjoF76XstCabit + BQEkWV+KLCpkMBQAuAJnsZYmMXBwBZYJRIJJRUXi5aX8k68rQfl2O1ET75I043wl2nCxqNhz3Y72Xrel + vTdsafc1O9p2yUF43HOmky8qkl9wdTrxoqYA/EJqkd87Bi+9X9QSgG9wbfINrkM+b+vQsed1xInXvC7z + dekE48izusL7dV06/saVvBmer1zpYKCr8HxVjzxf16NjvDzywpX2P3UVWB55WY8OM/Y+cRW7HtVlVKc1 + V0vR0vNFaeHpIhKLzhaVWHK+GK2+Xp5WPs5HS1kES56lpAUBqaTlg/xxbPFjGbB8kO92C0ir4GY64XZD + A1s+yL+WXoy8lkFIywf5bPFDYfVMvCT/ciYxkCEtH+RfzCz6stXD8iX5F7KKHucVdDuXTXQ9m03ut5bF + PYbPac3trSQrSomEE4sKsyQ/3CcAZ7GSEjG0lj8OTGal0lHCtaUo6epi/jk4LrXyySlm+9YSKzfPoWmz + RtDocX1o1JheNGZ8Xxo3aSBNnj6Mlq2eRSfOHSX/+5fo1kN/uvPoGt15fJ3uPlXxRMG9pzcYNyPgfsBN + ehB4K4rgfQNu0AM+jlzibxk49vW/L9OJ88do0crpNH7KEHKbMFBi9PgBNGbiQJoycyRt2DmfBVKTFj1N + SQsZcwNScnxW3D7Ih+Vrbh/Ew/I1tw/ypeVrbh/kw/I1t8/kS8vX3D7Ih+Vrbh/kw/Jh9QxJ/rVs1M0/ + G3VldGEBdL6anbowVrK3gsisNpeQXJgzJzp+FIAzcBfjlI2BJ3q6E5j3LkiJ1pem7Jud/Jv75aKV3ADa + cr4UjZswgrp16UrNmzaj5k2aUsf2Hahnj540aOAgmj1nHp2+eI0ePntNz16FUtCbMAp6zcDSCF6+NcQH + ehn8gV4Hh9HrkA/0xgiC332kkNBwvHv/SYfgdx/4fCF04coNmjVnLg0cMJB69ezF6Em9uIy9eTmgX3+a + Mm0cLfKtyB6A3T9jIRpvUY75bP0xjPka+XD70vI18pn0zmeyi05XslPHKzmo89VsshHa6nwu5oIFwJxo + /KgAZ+AuxsmVoR1UmFklIvOZzlTA3YnqncjrP/9pavLmGL7tbBEa9FcvSX69uq7kWrsOteD1zh07Ud8+ + fWnGrDl05vINevryHb0K+USv333mZeTAfm8i4BO9Cf1MbxnBjJCwLzq8UxH64Qu9//iVwvSA/BsWyCX/ + WzRj5mzq27uvFGu3Ll106Nm9B41yG0JzjpfjVn0qGf/Rgjcd89PFWcyXlg+3r5HP6MgCAPkdLuegdoxO + nEfvpIC7I1kwJ2ZWCfUFAIC7GKdBDBxYQbZkwmJxKTGBrWHOw5T+B8MSycbeFj8nGjCgh2L9jCaNGlOr + 5i2oU4eO1Kd3H1UAtyiABRD4+j09DgqlR0Hv6OHzd3JpDA+fh8gl9jWGJy9CWVAREcAIZA/zjM+hAR4F + woHnuAgBzJgly9S1cxdGZx16dOtGI0b9RbO9y7L1p+LuGHffuA0Q05gvLf8XY750+yCe0cFPQTu/HKLt + 6RyijW8OuS/KkIA5ATcRuFK4i3GaxQj3APapqeB+RzrJXTfPD9yH/8Ldu29mtNlXEUBLJr11i5ZSBK1b + tooggLNXblPAq/eSuHsBbzn2v1EQYAS8/c7T13Id+/4M9wODI+DBs4h4/CJECR/6AujVm7p06hwB3bsq + ApjpWVa6flj/PBZA1GN++mjG/MxRivma25fks+W3vZSD2lzKSa19c4pWF3PKsoET5gak63sAcBfjNJcR + LoAiaaiHf1Zp9T4fzfy935sJb+7nr/V2EgMGdJcCaNygITViYB3tgN5c2VIAV2+zRXI8D/5Iz9gqDS1V + AzyE8lsoPdfbjnVDwLpfMLk/wyu0DcI4bHA74NK1WzSdBdCb4z/Ckz4QEoaPHETTj5aheU9S0VzGzMcp + f7mfL1v7sRTzpduH5WvkM/EtT+UULS/kovb8W+sLOcnMKY2hAMBdjFMEASRxSUVrXyWnM6oAfLmff5r7 + +JtOOdHAQT2pQ7v21KZVa4n2bdtKD6AJ4Lz/HUmIjM+fvsmlsq5Ay2vbPgCfv/Hym8x//PLtB3xifP76 + PQK+fPtOX7//I/FF3Yb9grlhiDYABICGH8oGdO6IZQcZBoaPHEgzPMvQwmepaQFjDnuB/0rMl25fJR+W + 3/JULtGCBdCc0ft6FmJu4kwAWkwRWcslE3vfJhReYebipBSAcodvo68jDRyoVCpEoAEVi5b2dG54nfe/ + zQ27j0yGStA3JsgIsP2b+vvX74LXhdz/2z+8boDveuD/SKj4h/8H4DjAZxbAW/YECAHTps+UDT54p3C0 + 5zDQiYaOGBBBAEueZaU9z5oJYLeKXYydgUBziR0BzcV2FdskWoitwNMWYouKzU8UbGJsfNJSYsNjoIVY + +KAStyGyy7gfWcyXbh+WD/J9conmjKY+uQUahJnL/tAGiH0P4FAlIRNuRr5M+omP8r6+vMO3gT0A2gCo + TBDfvm07Caz37NGDrU4RAFrisEiNNJDzXSVLl9f7TSP5H4PlzyAFowpJ8wrwIK9Cwuj8lZvc1ZtB3bt1 + 57IpZdQA8Q4Z1o+mHyvD8T81zWNseFmahPrv48ePXMrwf7GX57KK13QpeJKY89ieQ4BhzM+pF/NzEdw+ + LL8ZyD+fm5qcy03tODTkLJ8UpMeJB9AJoGxthXyQ7skCOPGZhfDFgtb5hAtAv1IhgB5sbdOmz6ILLIC3 + 7IZBiGaZGuEaseHb9dd5H+T/UfbFUvMgGqT3gKsH2MN85NABINQA7z58pqC37+ksd0UnT2UBdO0eoZyA + FMDQ/jTXszqtfl6QVjF2vaxNWgJh6qpMcZH/IO6Q+9vq3BDM+kPMl5avkt+ciYflg/zG5/IwclP+ionj + XgBlWAAg/yQEwL2AI+/MxZFQC7Hc00n050YgCG/Xpq0OqFhY29RpM6X7xQ2b9x/RT48EaBN8UtbRr1f6 + 9uFA/h037DQEv1fuC7wJxX2CTyw03GsAPuqARiUEMGnKdG7wdYtQTgDiHTxkIG08PohOvOkncSF0qkpP + 7BCsrspkKv9FPKMdbxxkG8BozAf5sPyTEEAeanQ2DzVkZOHwrMdVrApAiykQgHySd5hJhwfw/mxBx9kD + rDnpSH37KZXatnUbHZDvxt2rKSyAc+x+YYVBb8Nk1+zv58Exg9rNk92/AAW6riFD61Ii/zgohJ6+DKEz + l67TpMlT5T0AlA+NVa2s7Vm8Q4cMoZNnDlHot0cqAiQxvxsBYbvFxLsZZMyXrX015ku3D8tn8hufyC0a + ncgjGh7PIxowMv2ONgA8AB7fHv+agPCMXgqA1/UFoPUCtMrtyt0ruF1YH6zw2Zv39IgJ0e+r65OKpf5v + P8P9QMP7AiBcIR73EbR7CY+eh7AIguXt6ImTplIXPQFogLcaMngInT17VlokkuAorSUQo67KFJf57+I9 + ebwuKbuBxmK+tHyQz5bf4Exeqs9QBRAnHkAngNIsABCOx7jHPlj4e31W1lefKEx9+oZXKm4CAVhHZcPt + wvoCXr2TN2VeBIfRc/YEADxCEOcl1HXtN0Pg/oGC9zoEsqiAAOCVgqeMJy/f0ZMXCnCX8BELy/eiP02Y + NIU6d+ocgXyUFeId/Nfg/4QAkC6GdpXvAxjGfJ3bh+Wr5Lv65aWMZZP/HgFoz/DxZs6xjyyETwlopXdh + 6t27M7XVyG/RUgGvo7InTp5GfiwAuGF0BbVY/YYbhYjXANYjg2Fcf8VtCg24xxAkES6m5xDJ6/dSFPAu + py740/iJU6hTx846kWrlbcfihQDO+Plxo5N7Kox/uMGppdgmOLL8lXfDxJRHaamZXsxHg0+L+XD7Gvl1 + /fLFqQC0mCJK1zITHu+UlzcOhVn4HwhW1hcfLix69epEbbgy8QxAB67YTh070QR2u77sfp9w7AdJL1kE + EMJLJi7KwN/p4cVbJptJVohWPcPrMOVOogbVI8Ab3ONwceKcP42dMJk6dugky6ZfVoh38KC/6LSvL335 + 8kXi69evkph/A5dZAHgErYv5DP2YX987j3D1zivqeinIWEYKQB+x7wFK1TInzy8JCW/uQABH4QF4fQV7 + gJ49O8pKbdGsuQ4tGR3bd5QC8DmPx8HBkhiQBdI0Ag2h/aYQCytWbg3rQ5KrPgDSoLh8jvcGeMju/y63 + B06cvUJjxk2UDT79cgLwBIMGDJQeAK4f+Dc9wMWQ4fLxs6mYD/Kl9Z/OR7V92QMoAogTDxBBACAc7+lJ + AfBSE0CPHh3k/X/tiSCAR8Id2nWgcex2YX33A9/QY7ZGCZCFOG0E+E3Z50cyNaAh+ZAbdg+xZIIBpTH5 + lh4w0EDUgIbhrcevyNvvMrmNnUDtuMGnX04A4h3YfwAL4IxKwb/bBrjAApj0MJ3s5xuL+dLyVfJrncr/ + +wSgvKSZiA6GWPgf+ai8w7fcK6IAmjVpKl8KwXq7tu1pzPhJdPzMFW6Vv6I7Aa/pJpNx/dHLH3BDhbHf + IuDhS7r28IWCv1+QvxFcfRBEV+4H8fIF76/A0/cSjXIbT23btJNl1MqJJcKAIgA/lYJ/VwDng0eICSwA + YzFfE4BCfj6qyQLIEIcC0GKKKFnLXD4LwCvLEADe2gWWHitM3bu3ly5fq1ApAEY7rmy4XVjfTSYPpF28 + +5zO33n2yzh3O/AHnL1liAA6czNA/nb5/nPyZ0EcYwGMHD2OeyttTQrgtO9pXSMQADH/Bs6yAPAAylTM + r30sn6jFqHk0n6hxNL9QBaCP2PcALAD5xq58U5cFsPcNi4Exz8NBdOvWTrr8Zo2bRAAqWxPADVguW+dl + tsxL957/FBcN1o3jmQ4X7kIcgUbwTB7jKovgmO9FGjFqLHf92vxQTogXr4Wd8jmlawR++/ZNtcfYt/DI + 8mfejpDvG+jHfLT2dW4f5LPl1/DJT9V9CsSpBwgXQE1z3Wva+ADDI4zFwOtLjjkQBABLwttA+mjNrevR + Y8aT5+lLTH6QFMH1hxwCIsE1uZ+BuzeAPx9PH1cePGe3/1xa/A9gkRzxuUDDR46lVi1b/1BOhKt+ffrK + XsB/oRHo92akfNxsPOaz24flS/LzU7WTBSh96d8ggBIsAJAvP8rQBMCCWHLMnrp2bUtN2ZIaN2wUAWhd + jx49lo6y9cEKtRgNT3CdSdOWgH4Mj4iIRANXGZJwfUiif/QOF9k7XGBPcOjkBRo2YrTy4opBOSHevr37 + kN/p0yoFeKz8D335zt6AERL2TnzmpYbo5L/88y3aAvBlAeBdA1MxH25fI7+qFECKOBOAFlMgALHzTSKx + 43ViAQEcYAFAEIuP2lOXLopVNVLfCNLQsnlLGs6VfvDEOTp/+ykTESBx0Qi0336K2wF8HAXn+Hg/4NZT + jv9POf4/iQC/G49pv9cZGjx0hLT2RvUbRCgnxItXxeABtPR36COqebCpqM6o6tFMVDnQXFTa31xUYPy5 + r4Uo795SlNvbUpTZ20qU3t1KlGQU39VauOxsI4ruaCOK7GgrHLe3FXOubtHF9qji1OtRYrh/RpMxv/qR + /KLakQKi6uECojIjnSIAfcS+ByjOHgBf6OxjQAD7QhPRvveJaOFhe+rcubW0pIZcsRpQyc0aN6WevfrR + 0rVbaeu+Y7T9gBftULHTw5t2HTzOOEG7DwEnJfYcBnwUHPGhvcDRU3KJbbt1wP7K3+5i7OTj7OTjAdv3 + e9E2PsfWfZ60xf0Ybd57lJas3kTde/SWQm1YL7yMALbhVbFTPj66BuCtkNuUz92J8uwtQrm2FBE59hSl + bLuLUpZdzpRpo4vIsMOF0m0vRmm2FaPUa4uLlFtKUIrNJSjZppKUFJ9ubShFNTz7U+jXD9H2AD4sALxh + ZDzms+WDfLb8yicKSqgCiBMPEEEAIB+fZe0NtvDf8UrxBrP22YuOnVpJS2pQr74ODSVQuU2oS9ce1Lvv + QOo/cDANGDSUBjIGDxlGQ4aNZIxm1+wm4/MIxkhuqKG1PnL0eBrJ3bbRYybQmLETaTT34UfxuoTbBGUf + 7MvA3+IYQ4eP5uONokFDhtPAwcP5fEOp74DBfO5BsgwQaQNXLh+gV0Zsx6tiJ0+coM9fPkvceHuDbPY7 + UoF9jpRvm5OQQthThKQQNhcVUgg7XUgKYX0xASFYby1OUgirSwiXAy3oaViQJDS6AjjxapQYcjuTyZgv + LV8lv9Lx3ygA+REmwB4AH2fiI9D5h+ypY8eWsiJRsfVd61H9uvpwZWtrKCsZYmjKXgExt0XT5tSCQwTC + RMsWeH7QitpwA03/QQ1a7IB8bIvHzRoMnuahrdGK/x7A8ZrzsQHZMGX33qQhWz2XAWWR5TMoYyP+rVf3 + nrIXoDUCb7MHKORRmOwOFCabHY5CCsGkR3CO4BFsttYUV9/eUemMvgCOvxwt/rqVWd7kCY/5BXQxH25f + I7/CcRtK+zvaAMW4DbDlVRKx+WUSoRMAe4T5hwtRhw4tpAD0KzUcXOk6qNuYAM0KdeC8YpGGYHfN0Ny1 + ljcF7VgKjJUj4rZ6dVig/Hc9u/Ug31OnVAqI7obcIcfdDsJhl4MotLOwsGUUhBC2OwrpEbYWEVII7A2y + bWKPsMlZIDRk21RK7HlwxGhsjyq8WQADL2X+MeYzQH6lQwUlKjD+PFhQqALQR+x7gGI1LGh3aFLaxdgR + nNhf+1J3HnuADh2aywpHZf4a6v4EpvY13P4rUI4FofXo2k16AC3dDb1Dzty+KcLXJ4Xg4SA9gi17BCkE + Q4/A3iDXnuK07N5G+vDxQ7Qs3jDv+WK0fI3cVMyX5LPl/+ltQ+UZcekBIggA5MtPsV8l9t8dkph2hySh + OR721L59c2lN+Czsl8FEmISx/WMR8BTdu3TlNsBJXSPw7rtbVPyoHbkcKUTOe+2FFMJBB5JCgEeAELiN + kF9tI+R1L0qjr07hbp/yFFHlUqbo5o8FuQm8Qq5z+wYxX1q+Sv4fXraUptRvEIALC0D7Dh8C2PyCwwFj + 6p5Com27ZtKS6taq/etgIgBjBEUGo8eLBiDebp27kLe3l64ReDv4OpU+ZkslWQTF3QsJCKHoTzxCO79u + 9P5bmCQwpgI4ygLAhyOmYj7cvkK+DZWLYwFoMQUCEBhtY32Qpdj+Kon/Trb+XSyI2ewB2rZtalIAdWrW + igBsA2ma+42AunWlNUZAPYO8EchYrgIew7AMkQF/j49D0AvQGoH3Qm5ROQ8bUeaArSi931aU3Gcnirvb + CRcWQ1F4hD32Qmsj1DlcTzwNCTAaz38Fh5+7iV7ns+r6+YYxvzyX6w9GuQM2oiyXTxWAPuLGA2A8nW0Y + V0cKQGkPzD5oT21YACDVkGygdo2aOoBk9AZw7x0td7xEghY9Xsnq0Lad/EhD+1yrCwOkwDJ1kF/zql/2 + qtvwbR/2x6vdOA5u9KCRqQkBZahVowbVqs7gJcphWEaUCx+HnDx5UrVBogfvb3OMLUjlYWUQgqctldJ5 + BBaC6hGqHq9Il15cipHFG+YPsQB6+GczGfMl+Wz5ZblMZTztyPp3hQCQj6FXNrMAdqjj8MzyKEStWzdW + KhqVbAJ1atWSL1+OHjWa5syeQwvmz2csoIULFtKihYto8aLFtGTxYlq6ZKnEsqVLafnSZbR8mSGWK0v8 + xvssk/svoSX897NnzZJjEiCUVK5YiSr+WYEq/FGe/iz3B5UvV06uV69SlWpWrx6hbBAKBIQ2gJYggEpc + +RXZ7f55kC1OulsbrnAWAjwCC6GcpzMdf+EZY8IN8x7P3ES3q4oAfoz5XA5YviQfovxNAnBmAWjj7kAA + 294mpW3BSWn6fjtq1aqRtK4a1aoZBSrctU4dGvzXX7R582Y6fvw4+fj4/BpO6uOkDnDfBw8eZHHNloSW + LVWaSpcoSaWKl6CSxYpTCZdiclm5QkWqXrVqhPLVrllTfhvg6eVJX759kY3AB6G3ZPytcgKDVxYQUgjs + ESQBcMFe9rTl8VoZLmJbAAdYAF1YAD/GfFsZ8+H2Yfkgv6QUgBw2Lk4EoMUUCECseW4pB1za/Cqp//rn + aA8kFRN32YmWLRtSzWrVpXUZA35DrB49ahTt2bNHEunr60unuN/9A8Eq8Bv2iQ68vLykd2jcsCFVLP+n + Yvlly1G5MmWlGCAAbK9WuUqE8sEL4IPWLR6bKCD0KX368onuBV+jmuiDM9D/rqLG4opwxwdtxVR/NxH2 + McxoDI8p9gW6yW/+TMX8MuyBpBfidkkJhioAfcSBB6huQZveYmg1eICk/hiRa1uwJU3bZ0fNm9eXFVm1 + UmWjqF61mrxBA/e/e/duSTDi7ZEjR+jAgQM67Nu3T2L//v3k6ekZbRFAACuWL6emjRtLSwfZUgjs+suW + LiO9AcJAFQ4P+uWrweVr1aoljdwyhI4+P0AfuDX/9/ubulux2tM3zSMMP9dZhH17r9przC3eMO8e4CY6 + XM5uIuarIYgtvwTaI0cLUeqScecBdAIoWj2BJB9DrW3SBMBtgmn7bKlZs3rSqlCxxoDf0EIfNXKUFADI + h7tGzB45fLj8KGPo4MH0F8dvjOEznLetW7tOhgpjRBsCQjnBIQCCWsrtgqaNGsvzVuI2AAQA0jUvAK8A + ceiXD+Jt1qIJNVtRlybdHEbX312mu++vUj08ij2dl+p45hPynjyLoPulOvQ8NDBWCTfM72UB4KNPndvX + xXzV7cPymXiQX4wbo79NANo4extZAFtYAGgTTHW3pSZN6uoq3BjwGxpmI4ePkAIAsbt27qQ+vXvL3gMs + EIBQ0HiDWGbOmEHHjh0z6QW08AHicTx4DHiRhQsXyhBgygP8wULANv3ywQs0btaQai8uRy3PVKMVf8+h + 068PU4Mzeag+Q76Rw0Joc740PQy7HeuEG+b3PHUTbS/mNBnz4fY18l2O2FOqOBSAFlNEkeoJxPKA5GIZ + AwLY9NqSNr1JRpN221KjRnVkRcLSjAFkoGEGa9+9a5ckbNvWrfIzbcRoEAOgoeZSpChVYIImTpggLVon + gFO+utAB4Bje3t6S+KNHj9Lhw4fJfe9emjd3LjVq0EAnAJy/PFs9BFCSz4ElvIBh+Ro3bUC1F5Wlqt4O + 1ON8Y1pybxxp7+PjvbzmJx3EicB9RmN2bGPXEzc5FsAPMX+/EvNxY6oYbk7tLSRwl1IVgD5i3wOwAGjd + a2V0zbUvk/qvDrQUq7lBOGarjWjYsLZiaVyxxgBxoP89fOhQafkgbgv3Btq1aUPlmBAQDxQr6kxFCjtK + Kx0/bhwdPnRItvZxjx5LQ8KBQ7yPh4eHbDfg2LNmzqSG9evrBAmB/cEow70CCABLbNPKhn2wb6Mm9anO + gjJU+WhBquftTB3PVqJm53PJd/ObncwvDgatky1+JJAkV9QU2/mdLAB8F6hz+7qYr7p9eWfSXnlWwUj5 + O0IABKANrQoBYCBjeICJuwpS/fo1pZUhzhoDKhoufgjH+R3bd8jGGgSAm0DorhV3dpHkOzsVoaKOTpKw + sWPGSpeOfSU8vaRH0AiXDUcmfT83GmH56F1s2bKFpk2dKkMIiMVxcH7p/jn+Q2RlSpaSosNv2EcLBw0a + u1LdxaWp6vECVIP7366+Nsq3eYzFd9wEXhHTUmwTbpjf/thNNGfxmYr50vKZeNyIcjrk8HsE4FQtgSR/ + lb4AuFE4gQVQr14NWdGwLg0gFhUPwOKqcUML9wF27NhB3l6KB8AnWaWZEGd2+wDIlx6A93cb7UZ7mViQ + rhGPhiMsfZ+7O7kD/DvaFDjm9u3bacP6DRw6JlIdDjey+4fzczlwDnQBITQ0BFE+lFezfqB+o7osgFLy + 6RuewdfzzSu/z59+rx29DXsVqwRHlt/2yE00Zc9jKubD7WvkO0IAJX5DG4AFIBY9TSEWPrESa18k9d/A + AtjIDcLxOwtQ3brVdDdeIoArHgARaGj9NWgQe4Dt0qI3b9okbwUj9hdlyy/C5Ds5FKbC9g6SoJEjRtIu + bi+AdM3Fo4sorZ1JR1sCLh/Ew/I38fFWr1otPQfuOxjeCAL5aF9gHd4Av8NraV6gXoM65Lq4hOz2ocHX + 6EwuGn2lhggKfWI0TscltrIAMAaA1s83jPl4DuEkn0XYi8K7HYQqAH3EjQfAePnAqiBLWvcyGSM5jdlW + gGrXriJdq9aYMwR+Q08AAti+bRt5cut+w/r11LJ5c0kIrF6SX8ieHOwKSeKGDxsmyZWks7Xrkw4RbePj + bFWJX8/HWrt2LS1btkx2NdGbwHm1toVGPjwM1nFOGQrYC6C9gV6Ca/1aVG9RCXI9lZcans5NLc7lokcf + /KNksbGd38wCaMi9D2MxX1o+yGfLL4zH0wyrOPQAOgE4qgLAUOorn1nSqufJGMnJbUt+qlWzks7KDAEC + QCgEMHDAAHkrGI231atXyxs2iPv2tnZUyMaWbAvakJ2NjTwWPtfGviAdLh6Ew9KxbePGjTrS16xZQ6tW + raIVK1bQokWLaBgLB11JrVGptS0gMkcHBykE/KYJE4AI6rrWpAYLi1OjU3mo+elc1PpcDvJ8PV83qJPK + jUxxnd/00E008MtrMuY7QgAq+fYehVkAKX+HABJK8pepAljD1o9xA8fuUDwAKhWVawgQAELhZvHxxfp1 + 62XDDbdscXvY3s6O8uXJQ3mB3Lkpf9685MJ/M6B/f0mw5t41S1+3bp2O9JUrVtLy5cul5S9ZsoTmzJkj + HwbBrWttCq1dAQ/jyOEFYkC5NHGibBBorTrVqPFSZ2n5GHyx3cUcNOJuHrodFvsPeyLLb/zbTeAmlH7M + R2tfi/lw+xr5eCchLgWgxRThWDWhmPc4pZj7KKVYHphMEQD3CqZxAVq1bigr0ZB8QBMAGlp9+/SR5KHF + jlu2eCxcolgxKsyW6cDkOBQqRE5MFlwyPAC8xIYNGyTpAPIrV6qkL10mnxouXrxYWv6CBQtoxowZ1L9v + P9mIlBbPx5Tg0FKYQwtCDAQBEegLAeWrUasyNVteRA7NhhG6cCt28NWMYtzNkuJ56H2jsTqusJ4FUMcr + ny7mF9ViPkOSv8tB2KvvKtoxUhSXAtBH7HuAwlUT0tIgZSaNZYHK9CroFSy+louGLSpPdetVkRWpWZ0G + VDQqGR4AI4euXLlKxvH1TOi4sWPl3UAMJoXxhPBsH8v+/frR9GnTJdka6YBm6YsWMekLFdLnz59P8+bN + k08Bp0yZIs+BRiTIRmiR4PCCEIN1eAKIQwPKCJFWrV6BWixzlMS3Z3S8kp2G3lWGf136oJX4Ln7ft4Lr + HrjJL4EMY77O7YN8Njy7A45ky1AFECceIIIAQD5G0l7KAlgZlIJWvkhBK4KsaM6l7NRn8h9UpXoZaVU6 + y2OgwiECdMswbiAsFw1BuHY0BDWCEcNBLgALR37F8hXy+T+2wdJxm1chfD7Nncuks8ufzcQDsP6JEyfK + eQoQ30G4HdoUBQuSbQEFyEMY+uUDIIJKVcpTiyUO1ImvpSOjC4sA5A+/l5FGXsskvN/MJKHeC4htwg3z + a++7yQ9BdG4flq8X86Xlq+Tj24XfJgCQv4ixhAWwLDAFLXuWgpYyFj1JRVNOZ6e2ParI7hUqFRWtVTYq + GNs7d+pE85g4WD9cutaIWy3j+Qr5IEeDJHwBEw6y58yVJM+aOYtmzpxJM6ZPp2nTpklMnTKVpk5lsPWP + GztOjvyNsBJOfAGyyZ9fAusO3ObQyqYBnqBipXLUYpEDdb6QnToxul3KJscBBjAU/PgHeejeB29JUGwT + bphfzQLA/QhTMR9uXyO/4H4nSh6HAtBiinDgNsCsh6kEpkRbEmglLX/FCwWYbGnuda6wmc3IlVvTcPlF + 4V71XCxa2rjzN3H8BOVNILZmvBUE9z13LhM8i8mdAXJnsPufxu58Kk2aNFk+Exg/bjyNHcsYM47GcT9/ + rNsYGsPQLTmUjB0zhkYMHy7HKC5dsiQVtkeX0i4C0A4owh5JVzaGM5evRDEXqu5anlqvtie8idOV0f1K + Fkn8qGvpxSgMDs2YcsdFvHj/0Gjcjk2suucm30EwFfNtdxQW+Fil4HZHkX+7k1AFoI/Y9wAsAN1AyosC + FAGgW4hZtjBV3IKHaWm2ryMNHN+QWrVqRo0aulLDBq68rC/7+3hvb9jQodJVL2DLXihjOFz6AunSJaRb + nyvj+SwWBO7rQxCatQMzuG0AD4DtOBYgvQIvp0yeLJ834OWOZtzFxFNBPBhq2KAe1a9flxrUR5nqyTI1 + alSfGjOaNW1EbTo3ofbzi1OX47mp+7Ws1I3R83oWGnU/A43GsPBMvps6UviG500o9ENwrFq8YX7lvTGi + 8skCun6+/a7CEWK+JJ8tP/8+J8rHiEsPEEEAIB8DKS8MSEnLpQfgJaZYgwCepqRFmGbtpDON3/4HDVtf + ioatrkmzNv9Fu/ZtoWNHj+qe7587d14HPz8/xhk1f47OnDlLp0+fltvPnDkjh21BHk8FsUQe2/H76dO+ + ch3j+2GJY3t7ecqHSHhOgFvG63esoLFrB1D7JdWozZKK1HZJBeq89E/qsbw89Vr1B/VeU4H6balAvX0K + UM+r2hDuWanX9cw0GkPDA+oEEWP/Tk/j/s5Ah56NFVp7ACmmhBvml98dI/A+oqmYLy1fJT+vexFK9jsE + YF8loSQfM2AuYAEsfWbFYPIZiwJT0vwnykRLC56m5nVrmv4gLU2/XYT2BU6ilx8eyWHXPn36JIF1Dch/ + /vw5wjauEKPbtOHbAKx//Pghwjb8jf42LAPePaDdj5ZS/8uVqfWZAtTmbC7qdj479b2clfr5Z2Fkpb5M + fJ/LWag3L3tzvhejt39mafFyfgAWgEK+MmnEmNs5xN0PR+RNIqToEhxZftmdsfItYFMxH25fIz8PBFDs + N8wXYF8lkZh6P7WYct9aYFaN+Wzx8x4rmPMoJc1izFQx5UFqmnm/AK1+1Ii8gpbRq7AASU5UoYlCl//8 + iV68f0BPQi/q4RI9eneRHvNSH4bbHr67QKdebKIZt1tT94sFqPulrDTgSib662omGsQYoIG39VfRD3n/ + TJJ4HTBXkATmDUorpt51EEHv7xqN4THFEhZA+YM2JmO+/BJJ/T4xN8NSEYA+4sIDJKI5AdZyOlXMZIkZ + NU3Nq4dJj1Y/mqbqOeYWcfzFND5+OpqMc+jN4qUBU7pMfJSOJj5MRxhdS07xwksNuhk/2Iph0SM5piO+ + KzGeoRfjjVk8/l47lnZ8LDcHNaFv4lOMr88wv/j2OPkOoKmYL8lny8+N7xL3FiVVAHHiAXQCKMQCUObS + tY50Ll3MfLHqYcwFgBcwboXtpgl3sykC0xOAXNcTgDy3Co0gDbBYkDf1UW669G49TbpdTMjGHciWhKfX + xXhAEwzmCVIEZHA8KTicOz2dDJ7C5Y3Zx6CG+UW3xskPUUzFfGn5Kvk59/xGAUR1Lt2OftnFyr+nq5fz + axWC+Brw+TzNe1pQHh/n0aATgAqTHoGhETbpYUa6ELpaHv/Gm8Pcr88qyY+qxcO7KMdUjq+da/rjbOT/ + Zrcsr5Z+5XrVVZkW3hwn8C6AqZgPt6+Rn52R9He0AVgAYuK9qMylm1a098sh5t8cbzS+RRUv3/8t5j0o + oRw/utDKooe9gcPEB733+A8Gjg2P70ZivISR4yiIeL6Z9x25PXAnQvljAtQd3gNQYr4yHoF0+9uUmI/P + 0XMysmNsAoYqAH3Evgewq5woynPptjudQyyLgQcI+fBSbApyjWDx2rqpvGmPkI42PG4tvvyjfLmLhPN9 + +ecDbX7eksuruHxDi8dS8yLIhx/P+PlQ3q98TO34ckVN0c3PuzFeFD9SyGTMl+SrI5Rk3e0cpx4gggBM + xXxUkP68em18c4qlD2aolxO9CvgmPtOugD6REm4sr08IygeseVaFXoc9NXq+4G9PuNtazESMTxdOuCoA + eUzt+Oq5ws+fjo4Hj6N/RPSHhTPMz70xQTgfLmQy5kvLV8nHEDVxOW1cBAGYnks34vz5eKV58f3oCwCN + Pr+QOTTuTsZfEoB+HuTMe2pDb77e/+n5H3704f2zRG7xKvmaAAzPh+WMJ9no7gePKF+vlgzzs69PkO/8 + mYr5cPsa+ZnjWABaTBG2lRNFef58zHEziy8CFxYdXH2zg9sXmSLE11/F5Lu5xc23B42exxCeQVP4bzKE + XxNg5JhRwfR7tuJ56G2j54kqUHdOexx0/XzDmJ9VHZMo80ZlXCJVAPqIfQ/AAjAZ80G+bE2r06k2O5lL + LLw3U9Vz1Cwg8PMFmvu0gEmLjk4eIroSGvX3+EM/vBU7X7SNtsWbyq96VO+HNoe6KlNk+ZnXJsrHv6Zi + viQfo5PtdKGMO1zYA/wwd3DcCACVYyzmS+vXm0u3yYncYv7dqAvgxft7YnlgaZMVGt38gWejxD/iu3r0 + qBEQwu2BxQEuUuQ4nkb+rwhgzJ304kTwhF9+f2C6/0SB28CmYr60fJAvxyksRol/hwBsWADhMf/nc+k2 + PpFHzLs7S72cn18w+s8+L+aKnS/bkIaNT9r8cv7Y2xEU9vFdtCpcyz/+dIr79VmjTbix/PTHWejWh73y + +qJ6fi1N858kMD6hqZgPt6+Rnz6OBaDFFBZAYpMx33D+fIxzP+XqJKPx7b8Or6DJYixbMEiMKabdsxEB + odeMnudnQN3h9q+pmJ9xg4vIwEi/vpjAKKWqAPQR+x6gYKXEUZ4/v753XjHnTtQ8ANJ/KY/YvfFJqxh7 + AG19U1Bdevchel8WTb4ySRTY72g85sPyQT5bPkYmTbu9OCX6HSEAAgiP+WwhejHfcP58V6+8Ytbt2erl + RI8ApH87/+r9Q7EssGSUCI48n472PxvJbZKov1Q66cpkeevXVMyXlq+Sn2YbC8D5NwnAVMw3nD8fAyrM + vPX/rwCQf/rpDM18kj0KBEeeH38ni7gZtlu2B7TjyxU1GeYnXp4s8ro7RYz53NrXYj7cvka+dRwLQIsp + okAlbgMg7utiPrt9NeYPu5pRDGUMYQy+klGObT/+8hSj8e3/J9wKPiTOvVoVK7j51sPoOYwBdYf+vxLz + nfVivouM+WnXFRNpGNZriwsMVZ9QEYA+Yt8DsAD0Yj43+PRiviSfLX/w7Uw0iFHjWH4x7eYcVc9Rszh1 + Vab/9fy4S1MEegBaP98w5qdZV1zA8lNvLUGpGKoA4sQDRBCAqZgvLV8lf+CtTISRtabGC0CXopsfe3GK + yM4NQJ3bN4j50vJV8jE/QUJn67gXQH4WgKmYD7evkT/gVmbCK82Tb8xVLyf2K+j/et7t4lSRlWO/qZgP + t6+Rb8VIEIcC0GKKyF8x8Q8xH8RL8i9nEgMZAy5lEv0vZRaVDxcUbhemGo1v8YgcqLvM3PXT+vlKzGe3 + r8b8VGuKi5RrSgir1SUEZidJUFQKQB9x4AEqJjEZ8yX5bPkY474foyILYOL1eaqeY99C/q/nIQDEf1Mx + X5Iv5ygqSckYFooA4sQDRBCAqZgvLV8lH+PcY2zdEVdi9kqYuirT/1p+qN8YOQWNqZgvLV8l33LTbxJA + PhaAqZgPt6+R34dRiT1Ada/29On7Z3lBsV1B/5fzqLPqHu1ko89UzIfb18hPuqlUnApAiykQgK6fbxjz + +13MLPpezCL6MHpfyCIaHc8jsm4sKzyf+BqNcfEwDdQZ6k6/n28Y85OtKiksGZieLsnKUsL8d7QB4AFM + xXxJPls+Zrnoyeh8Nrvsx1Y82pY+fov99+b/r+bff/0g6yyymC/JZ8tPsrEUJWaoAoh1DzCLoRNArjKJ + TcZ8afkq+fLbuvNZRbWT+eU8ei18BtPDt8bfydNSfP6jeP7xlayrVEw0rP5nMV9avkp+og2lydz+hxtB + 4C7GaRBDJ4B0BRJSP3/jMR9uX0f+tWzU7Vw20flKdjm/jtWWkoRpVbc9OiwVrl2wXFHT/3IedbL21h5R + 3KMFWTHBmgB+FvPh9jXyE64pRWbZkxkKANzFOLkytJgiLNNYiI7u6Y3G/J4MWD0A8vFpWBdGB7/scn6d + FKtLcvwqIwpuqSeaHhki+vlMEP1PTQyHj976/0gedYC6QJ2gbhDXrdjVRyXmJ15RSiRaUVokXF5aWEx0 + FmZWCXU8qQB3MU7ZGN8Z0gOYmZtRnXnWRmO+JB+W75+NujJAfuer2akTe4EOl3NQHa+8Ip+7k1R3UlYu + LgIuTIf/4TzqIzkbiLT8KMZ8ST5bf4L1Zci8d0GFn3DrB2fgLsYpEcOfoTtBwVqW1OdaZqMxX0c+E49v + A0F+xysYbSsHtfPLITD6FgY/xKQLmHIF8+9oEyCUPmArSusNhy5HxZaTIdhRMd1AiYXkoEly4CQMm8bh + xUnCQU7jhpcolQEVCusGVCh0QJn6FV/X2u7XPq92JMz+iYkf5YcXLEx8eIHHr9rHF8pr2EXkK1mYIjbH + 5qLy3jxe0Mi2y5mybnKWcwfjUW3mnS56j2sVpN/gIrtxyo0c7s6hRY+5hWXDLrxbByAfWT/fMObD8kG+ + xdrSZFYqnaEAwBm4i5U0iaE7QeLk5tT2cEajMV9HPqMjC0BHPqPt6RyiDQsAY++2YrQ8lUvIgZjP56am + jCYnc4sm5/JQo7N5qCEDw7PXP6PMnR+V+fMjm1dPGW9fmWApKmPvRjYmT2Tf6kX2Dl9k9/Z/GvNh+XD9 + sP6ZzmRmmcBQAOAs1pIDI5SBE0gUapRM9DxnPObD8kE+Yj8gLR/k++YQrX1zipanACbfJ5doxmjqw8Qz + +RgXF+Py411CSb53HiEnaYji/PmRzatnOMeOybF3ozgmj+H3+ZG9t2/4Dl9k9/Z/FvMl+cvKCPOlZYTZ + nxl1vKgAV+As1lJCxlYGDi4VljCpObkuTGcy5kvLB/mw/Es5SFo+ky8tn61eWj7Ih+WfA9jyQT4sn61e + Wj6TLy0/ivPnRzav3s/G24/KOHyRfZ//0/f2Yfk/PM9HSIh6P18/5kvLZwGYDbUns8QWmtVr/IArcBar + qRjjPUM7GaXOlVC0PJQpkpivkg+3D8vXyIfbh+Vr5MPtw/I18lWXryMfbj+S+fMjm1dPGW9fmWDJ6Ni7 + GHVbIx9uH5avkQ+3H8n3+ZG9tx/Z8/wox3yQv64MmU10EWaZLXV8MCAAcASu4iTNZEQ4YeaiSai1V5Zo + xfxmejG/sYmYX9cvn17Mj9r8+ZHNq2cs5v9s7N1YifnayxyxFfOZeEn+/OJkVvCHQaGQB0dxlqwZFxk4 + kQ6ZnJOIpruymIz50vLVmC/dvhbz1bl4DGM+3ib+acxnRCvmm5hjJ7KxdyPG/Mi/z48Y8yN/hy/6Mb+0 + kG5/Elu+Qr4hLjDAUZwmR8ZThqY4qb4UWRJQlanpRdvz2U3GfNngU2O+tPw4jfmYV88uwrx6kY23H9k4 + fDGP+dG7t/9DzF9cWpj1tyWzdEn0LV5bByfg5rek0oxAhn4ByDyBmchTIznV2pCJWp3LESHmS7evxnyd + 2/9pzGe3r4v5UZs/P7J59bSYH9Wxd3855mtuP7Zi/prSZD7Wkfv66YWZRXh9M7T6Bxfg5LemsoxnjB8K + lCiZOWUpY0ml3dIJ1/3ZqNm5XP/Jfr6c9v2nMZ/dfrRiPrt9rcEXzZhvaRjz15cmi0nOwrxbfjJztCaz + pD/087X8cwa4+FeSDcOH8Q8DhYkIczORIIm5SJEtochU2lLkqpVC5KyZQuTQQ3aghpVENhVZqyvIokNK + kRmollJkUpFRDxmqAqlEeg1VUol0KtJKpBZpgMoKrPWQuhJgLVKpSAlUVGClIoVEGpG8QjiS6cHyTwVJ + /0yroHxakUQPicunk0j0RzgSqkgAlAPSCwsV5o6phVmGpMIskYWsQ6N1q9Q56h4c/KvJijGO8YaBghkq + ND4f+3nUNeocdf+fSOYMO8YixkeGYYHj87GTR92ijlHXqPP/XEKhsjKGMs4w3jK0J4nGLig+//M86g51 + iLr8i4G6/U8SbyrlYtRloPDzGevjESXMYaDOajNQh/EpPsWn+BSf4lN8ik/xKT7Fp/gUn+JTzJOZ2f8D + TH6groYT4jkAAAAASUVORK5CYII= + + + + 469, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}OddRow{BackColor:224, 224, 224;}Style3{}Footer{}Style14{}FilterBar{ForeColor:Black;BackColor:255, 255, 192;}Heading{ForeColor:ControlText;Border:Flat,ControlDark,0, 1, 0, 1;AlignVert:Center;BackColor:Control;Wrap:True;}Style5{}Editor{}Style10{AlignHorz:Near;}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style6{}Style1{}Caption{AlignHorz:Center;}Style2{}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 832, 393</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 832, 393</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + + 332, 17 + + + 626, 17 + + + + AAABAAgAICAQAAEABADoAgAAhgAAABAQEAABAAQAKAEAAG4DAAAwMAAAAQAIAKgOAACWBAAAICAAAAEA + CACoCAAAPhMAABAQAAABAAgAaAUAAOYbAAAwMAAAAQAgAKglAABOIQAAICAAAAEAIACoEAAA9kYAABAQ + AAABACAAaAQAAJ5XAAAoAAAAIAAAAEAAAAABAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAAAAAAA//8A/wAAAP8A/wD//wAA////ABEQ + AAAAAAAAAAAAAAAAARERF4iIiIiIiIiIiIiIiAERERf///////////////gBEREX///////////////4 + ARERF///////////////+AERERf///////////////gBEREX///////////////4ARERF/////////// + ////+AERERf///////////////gBEREX///////////////4ARERF///////////////+AERERf///// + //////////gBEREX///////////////4ARERF///////////////+AERERf///////////////gBEREX + ///////////////4ARERF///////////////+AERERf///////////////gBEREX///////////////4 + ARERF///////////////+AERERf///////////////gBEREX///////////////4ARERF/////////// + ////+AERERf///////////////gBEREX///////////////4ARERF////////////3AAAAERERf///// + //////9/+HAREREX////////////f4cBERERF////////////3hwERERERf///////////93AREREREX + ////////////cBERERERF3d3d3d3d3d3d3ERERER4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AA + AAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AA + AAfgAAAH4AAAB+AAAAfgAAAP4AAAH+AAAD/gAAB/4AAA/+AAAf8oAAAAEAAAACAAAAABAAQAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAAA + AAAA//8A/wAAAP8A/wD//wAA////ABEAAAAAAAABEXiIiIiIiAERf//////4ARF///////gBEX////// + +AERf//////4ARF///////gBEX//////+AERf//////4ARF///////gBEX//////+AERf//////4ARF/ + ////8AABEX/////49xERf/////hxERF3d3d3dxERwAH//8AB///AAf//wAEBEcAB///AAf//wAH//8AB + ARHAAf//wAH//8AB///AAQERwAH//8AD///AB///wA8BESgAAAAwAAAAYAAAAAEACAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8Azs7OANbW1gDe3t4A5+fnAO/v7wD39/cA///3AP/3xgD/770A7961AP/n + rQD/9+cA/+/WAP+1QgD/rTEA/60pAP+cAAD/xnMA/71jAP+1UgD3jAAA/9alAP+1WgDWcwAA53sAAO+E + AAD/794A/+fOAP/37wD/3r0A786tAP/WrQD/zpwA98aUAN6lawDenFoA3pRKAN6MOQDnrXsA/9a1APfO + rQDvxqUA772UAOe1jAC9YxgA/+fWAP/exgDevaUA972UAP/OrQDerYwA/9a9AN61nADnvaUA3qWEANac + ewD/7+cA/97OAM6UewDGjHMA1q2cAM6llADWnIQAtYRzAK17awC9hHMAxoRzAK2EewC9e2sAtXNjAMac + lAC9lIwAtYyEAKV7cwCte3MApXNrALV7cwCtc2sAvXNrALVrYwCtY1oA9+/vAP/39wD3zs4A/87OAP/G + xgD/vb0Ae1paALWEhACte3sA/7W1AKVzcwCca2sA/62tAJRjYwD/paUAjFpaAJxjYwC1c3MAhFJSAP+c + nACUWloAjFJSAK1jYwCESkoApVpaAJxSUgClUlIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAbm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5u + bm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5u + blhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYbm5ubm5ubm5ubm5ua2thYWFhYWdkZGRk + ZGRkZGRkZGRkZGRkZGRkZGRkZGRpaWlYbm5ubm5ubm5ubm5ubFRVVVVVVVVVVVVVVVVVVVVVVVVVVVVV + VVVVVVVVVVVVIWlYbm5ubm5ubm5ubm5ubAEcLy8vLy8vLy8eHh4eHjQ0KCgoKCgoKCAgICAyMjIyVWRY + bm5ubm5ubm5ubm5ubAEcOi8vLy8vLy8vHh4eHh40NCgoKCgoKCgoKCAgIDIyVWRYbm5ubm5ubm5ubm5u + agEcHBwvLy8vLy8vLy8eHh4eHjQ0KCgoKCgoKCAgIDIyVWRYbm5ubm5ubm5ubm5uagIcHBwcOi8vLy8v + Ly8eHh4eHh40NCgoKCgoKCgoICAgVWRYbm5ubm5ubm5ubm5uagIcHBwcHDovLy8vLy8vLx4eHh4eNDQo + KCgoKCgoKCAgVWdYbm5ubm5ubm5ubm5uagIcHBwcHBwcLy8vLy8vLy8eHh4eHjQ0NCgoKCgoKCggVmFY + bm5ubm5ubm5ubm5uUQIuHBwcHBwcHC8vLy8vLy8vLx4eHh4eNDQoKCgoKCgoVmFYbm5ubm5ubm5ubm5u + UQIuLi4cHBwcHBwcLy8vLy8vLy8eHh4eHh40KCgoKCgoVmFYbm5ubm5ubm5ubm5uaAIuLi4cHBwcHBwc + HC8vLy8vLy8vHh4eHh4eNCgoKCgoVmFYbm5ubm5ubm5ubm5uaAIuLi4uLhwcHBwcHBw6Ly8vLy8vLy8e + Hh4eHjQ0KCgoV2FYbm5ubm5ubm5ubm5uUAMNLi4uLi4uHBwcHBwcHC8vLy8vLy8vHh4eHh40NCgoV2ZY + bm5ubm5ubm5ubm5uUAMNDS4uLi4uLhwcHBwcHDovLy8vLy8vLx4eHh4eHjQ0V2ZYbm5ubm5ubm5ubm5u + RgMbDQ0uLi4uLi4cHBwcHBwcOi8vLy8vLy8vHh4eHh40V19Ybm5ubm5ubm5ubm5uRgMbGxsNDS4uLi4u + LhwcHBwcHDovLy8vLy8vLx4eHh4eW19Ybm5ubm5ubm5ubm5uTwMbGxsbDQ0uLi4uLi4cHBwcHBwcLy8v + Ly8vLy8vHh4eW19Ybm5ubm5ubm5ubm5uTwQbGxsbGw0NLi4uLi4uHBwcHBwcHDovLy8vLy8vLx4eW2JY + bm5ubm5ubm5ubm5uRQQbGxsbGxsbLi4uLi4uLi4cHBwcHBwcLy8vLy8vLy8eW11Ybm5ubm5ubm5ubm5u + RQQbGxsbGxsbGw0NLi4uLi4uHBwcHBwcHC8vLy8vLy8vW11Ybm5ubm5ubm5ubm5uQwQ5ORsbGxsbGxsN + DS4uLi4uLi4cHBwcHBw6Ly8vLy8vW11Ybm5ubm5ubm5ubm5uQwQ5OTkbGxsbGxsbGw0uLi4uLi4uHBwc + HBwcOi8vLy8vW11Ybm5ubm5ubm5ubm5uPAQMOTk5ORsbGxsbGxsNDS4uLi4uLhwcHBwcHDovLy8vXl1Y + bm5ubm5ubm5ubm5uPAQMOTk5ORsbGxsbGxsbGw0NLi4uLi4cHBwcHBwcLy8vXl1Ybm5ubm5ubm5ubm5u + OwQMDDk5OTk5GxsbGxsbGxsNLi4uLi4uHBwcHBwcHDovXlxYbm5ubm5ubm5ubm5uOwUdDAwMOTk5OTkb + GxsbGxsbDS4uLi4uLi4cHBwcHBwcXlxYbm5ubm5ubm5ubm5uOAUdDB0MDDk5OTk5GxsbGxsbGw0NLi4u + Li4uHBwcHBwcYFxYbm5ubm5ubm5ubm5uOAUdHR0MDAwMOTk5ORsbGxsbGxsbDS4uLi4uLhwcHBwcYEpY + bm5ubm5ubm5ubm5uPwUdHR0dDAwMDDk5OTkbGxsbGxsbGw0NLi4uLi4uHBwcYEpYbm5ubm5ubm5ubm5u + PwUdHR0dHR0MDAwMOTk5GxsbGxsbGxsNDS4uLi4uLhwcYEpYbm5ubm5ubm5ubm5uNwUdHR0dHR0dHQwM + OTk5OTkbGxsbGxsbDQ0uLi4uLi4cYFpYbm5ubm5ubm5ubm5uN1JTHR0dHR0dHR0MDDk5OTk5GxsbGxsb + GxsNDS4uLi4uZVpYbm5ubm5ubm5ubm5uMwZTUx0dHR0dHR0MDAwMDDk5OTkbGxsbGxsbDQ0uLi4uZURY + bm5ubm5ubm5ubm5uMwYHB1NTHR0dHR0dHQwMDAw5OTk5GxsbGxsbGxsNLi4uZURYbm5ubm5ubm5ubm5u + LAYHBwdTUx0dHR0dHR0dDAwMOTk5ORsbGxsbGxsNDQ0uZURYbm5ubm5ubm5ubm5uLAYHBwcHB1MdHR0d + HR0dHQwMDDk5OTkbGxsbV1tbXl5gZVlYbm5ubm5ubm5ubm5uLAYHBwcHB1NTHR0dHR0dHR0dDAwMOTk5 + GxtISElJSUlZY2pYbm5ubm5ubm5ubm5uKwYABwcHBwcHU1MdHR0dHR0dHQwMDDk5OTlMFBEVGhkYLVhu + bm5ubm5ubm5ubm5uKwAAAAAHBwcHB1NTHR0dHR0dHR0MDAw5OTlOIRQODxAmWG5ubm5ubm5ubm5ubm5u + MQAAAAAABwcHBwdTU1MdHR0dHR0dDAwMDDlBFhcUDiVYbm5ubm5ubm5ubm5ubm5uMQAAAAAAAAAHBwcH + B1MdHR0dHR0dHQwMDAxLCxMXJFhubm5ubm5ubm5ubm5ubm5uIgAAAAAAAAAABwcHBwdTUx0dHR0dHR0d + DAxNCRIjWG5ubm5ubm5ubm5ubm5ubm5uIgAAAAAAAAAAAAAHBwcHB1NTHR0dHR0dHQxACCdYbm5ubm5u + bm5ubm5ubm5ubm5uIQAAAAAAAAAAAAAGBgYGBgYGBgYGUlIFBQVAClhubm5ubm5ubm5ubm5ubm5ubm5u + ISgoICkpKR8qKio2NjAwNTU1PT09Pj4+R0dCSW5ubm5ubm5ubm5ubm5u////////AAD///////8AAP4A + AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/ + AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA + AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/ + AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwA + AAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/AAD8AAAAAD8AAPwAAAAAPwAA/AAAAAA/ + AAD8AAAAAH8AAPwAAAAA/wAA/AAAAAH/AAD8AAAAA/8AAPwAAAAH/wAA/AAAAA//AAD8AAAAH/8AAPwA + AAA//wAAKAAAACAAAABAAAAAAQAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD//v0A/f39AP/9 + /AD8/PsA//z5AP/8+AD7+/sA/vv3AP/69gD5+fkA//n1AP759AD3+PcA//jzAP748wD++PIA//fxAPb2 + 9gD+9/EA9fb2AP738AD+9vAA/vbvAP717wD09PQA/vXuAP717QD99e0A/fXsAPLz8wD+9OwA/vTrAP30 + 6wDx8vIA/vPqAP3z6gD+8+kA/fPpAP7y6QD+8ugA/fLoAP3y5wDv8PAA/vHnAP7x5gD98eUA/fDmAO7u + 7wD98OUA/fDkAP3v5QD97+QA/u/jAP3v4wD97+IA/e7jAP3u4gDs7OwA/e7hAAAAAAD97eEA/e3gAOrr + 6gD97d8A/ezfAP3s3gD87N4A/ezdAP3r3gD97NwA6OnpAP3r3AD869wA/evbAP3q2wD86tsA/eraAPzq + 2gD96tkA5ufnAP3p2QD86dkA/enYAP3p1wD86NkA5eblAPzo2AD86NcA/OjWAPzn1wD959YA/OfWAPzn + 1QDj5OQA/OfUAPzm1QD859MA/ufSAPzm1ADi4+MA/ObTAPzm0gD85dMA/OXSAPzl0QD75dEA/OTRAPzk + 0AD75NAA/OTPAPvkzwD749AA/OPPAPzjzgD85MwA++POAPzjzQD84s4A/OLNAPvizQD84swA++LMAPvi + ywD84cwA/OHLAPvhywD74coA+eHKAPzgygD74MoA/ODJAPvgyQD74MgA+9/IAPvfxwD738YA+97HAPve + xgD73sUA9t3HAPvdxQD73cQA+93DAPTcxwD73MMA+tzDAPvcwgD63MIA+9vBAPvbwAD628AA8tnFAPva + vwD927sA+tq+APvavQD72b4A+tm+APDYwwD62b0A+9i8APrYvAD62LsA+ti6AO7WwgD617oA+te5APrX + uAD61rkA/dK/APrWuAD617YA+ta3AOzUwAD61bgA+tW2APnVtgD21bUA+tS1APrUswDp0b4A+tOzAPnT + sgD+1awA9NK0APnSsAD60a4A8dCyAObNuwDu0bAA7dCvAOTMuQD/2JYA782xAOLKuQDtzK8A7MquAN/H + twDexrYA6sesAP/MmQDcxLQA68eoAOfEqwDawrMA5sKpANjAsgD/zoUA5MGoANa+sADiwKYA68CeAPez + swDTu68A372lANy7pADQuKwAzrerAPesrADMtakAybKoAM2xqADltpEA9qGiAP+9YADVpZkAzK2KAPia + mgDRo5MA/rVUAM2ekQDJmY4Ax5iNANiViQCqmpAAxpaMAMWVjADWk4cA1ZOGAMOTjADXkoQAw5KLANaP + gwDLmXMA0JxoAO6hRwD/qTEAu4puAPyiIgDLj1MA55U4AN6LNgDVgjUAAAAAAGZmZgD+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+///////////////////////////////+/v7+/v7+/uXi + 5+jp6ezt8PLy8vLy8vLy8vLy8vDq//7+/v7+/v7+3qqqqqqqqqqqqqqqqqqqqqqqqqqqye7//v7+/v7+ + /v7dZISGio2SlZaZoKKnq7GztLe6u7uq7v/+/v7+/v7+/txkfoKGh4uOlJebnKGkp6+ws7a2uqrv//7+ + /v7+/v7+2l51fYGEh4uOkZeWnqGjpquss7O3qu///v7+/v7+/v7ZVm91en6Dh4qNj5WXm6CipqitsLaq + 7//+/v7+/v7+/tZQam5xd36ChYqNj5SVmZ2goamtsKrv//7+/v7+/v7+1kdlaGlxcnyBhIeLjpOVlpuh + o6aoqu///v7+/v7+/v7SR11jZWlxdHl+hIeKjY6TlpmeoKaq7//+/v7+/v7+/s8/WFxjZ2lsdHd9hIWH + io6TlZmdoqrv//7+/v7+/v7+zT9NU1hdY2htcXR5fYOHi42SlJaZqu///v7+/v7+/v7KOkhOUlRcY2Zp + b3Z5fYKFio2PlJeq7//+/v7+/v7+/sc6QkhKUVdcY2dobG91eYKFh4qOkarv//7+/v7+/v7+xjBAQ0RJ + TVdZXWFnaXFyeX6BhoiLqu///v7+/v7+/v7DKzk9QURKTFFXXGNnaWxyd3uBhomq7//+/v7+/v7+/sAi + NDY9QENGS1JTWF9jamtueHl/hKrv//7+/v7+/v7+vSIsMTY5PkNESk5SWF1jZWtwcnh9qu///v7+/v7+ + /v61HikqLjU3O0FCSE5RUlxgZWlscniq7//+/v7+/v7+/rUZIyYsLTQ4OUBCSUpPV1ldY2hrbqrv//7+ + /v7+/v7+rhQdISYqLTE2OT1BRExOVVRbY2hqqu///v7+/v7+/v6lEhccICMnLC8yNjtBQkhMUVdcX2Wq + 7//+/v7+/v7+/p8NFhgaHyEmKS80NjtAQkNLUVdaXaru//7+/v7+/v7+mA0QExYaGyAlKS0xNjk+QENI + TVJYqvP//v7+/v7+/v6QCgsPEBUaGx0jJyotNDc7PkXV2+Dk8f/+/v7+/v7+/owHCAkMEBMXGh8jJigt + MzY73/b7/P34//7+/v7+/v7+gAQFCAkMDhAVGhshIygqMTTU4ff5+v/+/v7+/v7+/v57AgMFBggLDBAT + FxsfJCYsMcvQ5vX//v7+/v7+/v7+/nMBAQMFBgkJDA8RFxwcJCYsv8H0//7+/v7+/v7+/v7+YgACBwoN + FBkiKzA6P0dQXmS+4//+/v7+/v7+/v7+/v64mqissrm8wsTFyMzO0dPX2M7r/v7+/v7+/v7+//////gA + AA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AA + AA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAH/AAAD/wAAB/8AAA//AA + Af8oAAAAEAAAACAAAAABAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4JJBAPemQwBmZmYArntuALWC + cgC7iHUA6rN3AMKPeQDIlXwAs4h+AM+cgADVooMA1qOEANyphwDeq4gAuI6LALaRiwDBlpMAxJmVAMac + lgDJnpcA0qSXANOmmADMoZkA1qiaANmtnQDuvaUA77+oAPWzqgDwwasA+tCuAPDDrwDxxbEA+dKxAPrT + sQD61LQA8si1APrVtQD71bYA8sm3APrWuAD717gA+9e5APTJugDzzLoA+ti7APvZvAD62rwA8829APvZ + vgD62r4A+9q/APrbvwD728AA+tzBAPvcwgD73MMA+93DAPvcxAD73sQA+97GAPvfxgD738cA++DIAPvg + yQD74coA/OHKAPvhywD84csA/9XMAPzizAD74s0A++POAPzjzgD85M8A/OTQAPzk0QD85dEA/OXSAPzl + 0wD85tMA/ObUAPzn1AD85tUA/OfWAP3n1gD86NcA/OjYAP3p2AD96dkA/OraAP3q2gD86tsA/evbAPzr + 3AD8690A/ezdAP3s3gD97N8A/e3fAP3u4AD97eEA/e7hAP3u4gD97+IA/e/jAP3v5AD98OUA/vDlAP3x + 5gD98ecA/fLnAP3y6AD+8ukA/fPqAP7z6gD98+sA/fPsAP307AD+9OwA/fXtAP717QD+9e4A/vbuAP72 + 8AD+9/EA/vjxAP748gD++PMA/vn0AP769QD/+vcA//v3AP/7+AD//fsA//77AAAAAAD///8AAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIiIiAICAgICAgICAgIC + AoiIiAMZGBYVFxQTEhEQDwKIiIgERD87NzItKSMhHhoCiIiIBUpGQDw4My4oJSIbAoiIiAdSTElCPjo1 + LyomHQKIiIgIV1NOSUM/OzYxLR8CiIiICl9bVFBKRkA8NzQgAoiIiAtkYFxWUExHQT05JAKIiIgNbGZi + XVhTTUhCPicCiIiIDXJtaWNeWVVPSkQsAoiIiA14c29qZWFaVlBLMAKIiIgNf3p2cGtnYVtXUSsCiIiI + DYOAfHdxbWhFRRwJAoiIiA2GhIF9eXRuAQEAAoiIiIgNiYeFgn57dQ0GAoiIiIiIDQ0NDQ0NDgwNAoiI + iIjgAf7+wAFqbsABfoLAAY2PwAGZncABqa3AAe//wAH+/sAB/v7AAWVowAFyfMABh4vAAZWWwAOjpsAH + 7//AD/7+KAAAADAAAABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACsrAAY3EhIOORwOEjMaDRQzGg0UMxoNFDMaDRQzGg0UMxoNFDMaDRQzGg0UMxoNFDMa + DRQzGg0UMxoNFDMaDRQzGg0UMxoNFDMaDRQzGg0UMxoNFDMaDRQzGg0UMRgMFTMaDRQzGg0UMxoNFDMa + DRQzGg0UMxoNFDMaDRQzGg0UMxoNFDMaDRQ5HA4SNxISDisrAAYAAAACAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAADMfChkzHA43NBwOSTQaDU8zGg1QMxoNUDMaDVAzGg1QMxoNUDMa + DVAzGg1QMxoNUDMaDVAzGg1QMxoNUDMaDVAzGg1QMxoNUDMaDVAzGg1QMxoNUDMaDVAzGg1QMhwNUTMa + DVAzGg1QMxoNUDMaDVAzGg1QMxoNUDMaDVAzGg1QMxoNUDQaDU80HA5JMxwONzMfChkrKwAGAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMcDjczGg14MhsNojMaDa4zGg2vMxoNrzMa + Da8zGg2vMxoNrzMaDa8zGg2vMxoNrzMaDa8zGg2vMxoNrzMaDa8zGg2vMxoNrzMaDa8zGg2vMxoNrzMa + DbA0HA+yMxoNsDMaDbAzGg2wMxoNrzMaDa8zGg2vMxoNrzMaDa8zGg2vMxoNrzMaDa4yGw2iMxoNeDMc + Djc3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJJfX/+QXV3/j1xc/45b + W/+NWlr/jFlZ/4tYWP+JVlb/h1RU/4dUVP+GU1P/hFFR/4NQUP+DUFD/g1BQ/4NQUP+DUFD/g1BQ/4NQ + UP+DUFD/g1BQ/4NQUP+DUFD/g1BQ/4NQUP+DUFD/g1BQ/4NQUP+DUFD/g1BQ/4NQUP+CT0//gE1N/39M + TP+ATU3/MxsNoTQYDko5HA4SAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJRh + Yf/yzMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///M + zP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///MzP//zMz//8zM///M + zP//zMz//8zM///Mmf+BT0//MxoNrjQaDU8zGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJRhYf/MzMz/++DH//vfxv/738X/+97F//vdxP/73MP/+tvB//vcwP/72sD/+tq+//vZ + vv/62bz/+9i7//vYuv/617n/+ta4//rVt//61bb/+tW1//rUtP/607P/+tOy//nSsP/50a//+dGv//rR + rv/60Kz/+c+s//nPq//6zqn/+c2o///Ky/+CUFD/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJViYv/Nzc3//OHJ//vfyP/738f/+97G//vexf/73cT/+9zD//vc + wv/728D/+9vA//vavv/72r3/+9m9//vYu//62Lr/+9e6//vXuP/61rf/+tW3//rVtf/61LT/+tOz//rT + s//60rH/+tKw//rSr//50a7/+tCt//nQrP/5z6v/+s6q///Jyf+EU1L/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJdkZP/Ozs7/++HK//vhyf/74Mn/+9/H//ve + xv/73sX/+97E//vcw//73ML/+9zB//vbwP/727//+9q+//vZvf/62Lv/+ti7//rYuv/717n/+ta4//rV + t//61bb/+tW1//rUs//507L/+tKx//rSsP/50a//+dGu//nQrv/6z6z/+c+r///IyP+FVFP/MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJhlZf/Q0ND/++HL//zi + y//84Mr/++DJ//vfyP/838f/+97G//vexP/73cP/+9zC//vbwv/728H/+tq///vavv/62b7/+9m8//vY + u//72Lr/+te5//vXuP/61bf/+tW2//rVtf/61LT/+tSy//rSsv/50rD/+tKw//nRrv/60K7/+tCs///G + x/+HVVT/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJlm + Zv/R0dH//OPN//zizP/84cz//ODK//vhyf/838j//N/H//vexv/73sX//N7E//vcw//73ML/+9zB//va + wP/72r//+tq+//vZvf/62Lz/+ti6//vXuf/617n/+ta3//rVt//61Lb/+tS0//rTs//507P/+tKx//rS + sP/60a//+tCu///Fxf+IV1b/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJxpZ//S0tL//OPP//zjzv/74s3/++LM//zhy//74cn/++DI//zfx//83sf//N7G//ve + xP/73MP/+9zC//vbwf/728D/+9q///vZvv/72b3/+ti8//vYu//717r/+9a5//rWuP/61bf/+tW2//rU + tP/61LT/+tSy//rTsv/60rD/+dGv///Dw/+JWVf/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ5raP/T09P//OXQ//vkz//8487//OLN//zhzP/74cv/++HK//vg + yP/738f/+97G//zexf/73sX/+93E//vcw//73ML/+9vA//rawP/62r7/+tm+//rYvP/62Lv/+9i6//rX + uf/617j/+ta3//rVtv/61LX/+tS0//rTs//607L/+dKx///Cwv+LWVj/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKFuav/V1dX//OXS//zk0f/849D//OPO//zi + zf/84sz//OHL//vhyv/84Mn/++DI//vex//73sb/+93F//vdxP/73cP/+9zB//vcwf/727//+9q+//va + vf/72b3/+ti7//rYu//617r/+ta4//rWt//61rb/+tW1//rUtP/607P/+tOz///BwP+MW1r/MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKNwa//W1tb//ObT//zl + 0v/85ND/++TP//zkzv/7483/++LN//vizP/84Mv/++HJ//vgyP/738f/+97G//vexf/73sT/+93E//vc + wv/73MH/+9vA//rav//62r7/+9m9//rZvP/62Lr/+ti5//vXuf/61rf/+tW3//rVtv/61bT/+tOz//+/ + v/+NXVv/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKVy + bP/X19f//ObU//zm0//85tL//OXR//zk0P/848///OPO//vizf/74sz/++HL//zhyv/84Mj/+9/I//ve + x//73sX/+97E//vdw//73MP/+tzB//vbwP/728D/+9q+//vavf/72Lz/+ti7//rYuv/617n/+ta4//rW + tv/61bb/+tS0//++vf+OX1z/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAKh1bv/Y2Nj//OfW//zm1f/85tP//OXS//zl0f/85ND//OPQ//zjzv/84s3//OLN//vh + y//84Mr/++DJ//vgyP/738f/+97G//vexf/73cT/+9zD//vcwv/728H/+9vA//ravv/62r7/+9m8//vY + vP/617r/+9i5//rXuP/61bf/+ta3//+8vP+QYF7/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAKt4b//a2tr//OjX//zn1v/859X//ObU//zm0//85dL//OXR//zk + 0P/848//++LO//vizP/84sv/++HL//zgyv/738j/+9/H//zfxv/83sb/+93E//vdw//73MP/+9vB//rb + wP/72r//+9q+//vZvf/62bv/+ti6//rYuv/617n/+ta4//+7uv+SYV//MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK57cP/b29v//ejZ//zo1//86Nf//OfV//zn + 1P/85tT//OXS//vl0f/85ND//OPP//vjzv/84s3/++HM//zhyv/74Mr//ODI//zfyP/738f/+97F//vd + xP/73cT/+9zC//rbwv/628D/+tu///vavv/72b3/+tm8//rYu//62Lr/+te5//+6uf+SY2H/MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALB9cf/c3Nz//OnZ//3p + 2f/86df//OjW//zo1f/85tX//ObU//zm0//75dH/++TQ//zj0P/8487//OLN//vhzf/74cv/++HK//vg + yf/738j/+97H//vexf/73sX/+93E//vcw//63ML/+9vB//vbv//72r7/+tm+//vZvP/72Lv/+te7//+4 + uP+UZGL/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALJ/ + c//d3d3//Orb//zq2v/96tn//OnY//zo1//86Nb//efV//zm1P/85tL//OXS//zk0f/849D//OPP//zi + zv/84sz/++HM//vhyv/84Mn//ODI//vfx//73sb/+97F//vdxP/73cP/+9zC//vcwf/628D/+9u///rZ + vv/62bz/+ti7//+2t/+VZmT/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAALaDdP/f39///Ovc//3q2//96tv//enZ//zp2P/96Nf//OjW//zn1f/85tT//OXT//zl + 0v/85NH//OTQ//vjz//8487/++LN//ziy//84cv/++DJ//vgyP/838j//N/G//vexf/73sT/+93D//vc + wv/73ML/+9vB//vawP/72r7/+tq9//+1tf+XaGX/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAALiFdf/g4OD//eze//zr3f/969z//Ora//zq2v/86dn//OnY//3n + 1v/859X//OfV//zm0//85tL/++XR//zk0P/749D/++PO//zizf/74sz/++HL//vgyv/74Mn/++DI//zf + x//73sb/+93F//vdw//73MP/+tzC//vbwf/727//+9q+//+0tP+YaWf/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALuId//h4eH//O3f//3s3//87N3//evc//3q + 2//86tr//OnZ//zp2P/96Nf//OjV//zn1f/85tT//ObT//zl0v/75ND//OTP//vjzv/8487//OLN//vh + y//84cr//ODJ//vgyP/738f/+97G//vexf/73cT/+93D//vcwv/73MH/+9vA//+ysv+Zamj/MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6LeP/i4uL//e7g//3t + 4P/97d7//eze//3r3P/86tz//Ora//3p2f/86dj//ejX//zo1v/859X//OfU//zm0//85tL//OXR//vk + 0P/85M///OLO//zjzP/84cv//OHK//vhyf/74Mn/+9/I//vfx//73sb/+97F//vdxP/73ML/+tvC//+w + sf+bbGr/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCN + ef/k5OT//e7i//3u4f/87eD//ezf//3s3v/9693//evc//3r2//96dr//enZ//zo2P/859f//OfV//zn + 1P/85tT//ObS//zl0f/85ND/++PQ//zjzv/7487/++LM//vhy//74cr//ODJ//vfyP/83sb//N7G//ze + xf/73sT/+9zC//+wr/+cbWv/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAMOQe//l5eX//fDj//3v4v/97uH//e3g//3t4P/87N7//evd//3q3P/969v//Ora//3p + 2f/96dj//OjW//zo1f/859X//ObU//zm0v/85dL/++XQ//zkz//848//++PN//vizf/74sz/++HK//vg + yv/738j/+9/H//vfxv/73cX/+97E//+urf+db2z/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAMWSff/m5ub//vDl//3v5P/+7+P//e7h//3u4P/97d///e3e//3r + 3f/8693//erb//3q2v/86tn//enY//zp1//86Nb//OfW//zm1P/85tP//OXS//zl0f/85ND/++TP//vi + zv/84s3//OLM//vhyv/74Mn//ODJ//vfx//738b/+97F//+srf+fcW3/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMiVfv/n5+f//fHm//7w5f/97+T//u/j//3u + 4v/97uH//e3g//3s3//8693//Ovd//zq2//969r//era//zp2P/96df//OfX//3n1f/859X//ObU//zl + 0v/85NH//OTQ//zjz//8487//OLN//zizP/74cv//OHK//vgyf/738j//N/H//+rq/+gcm//MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMqXf//p6en//fLn//3x + 5v/98eb//fDl//3v4//97uL//e7h//3t4P/97eD//eze//zr3f/869z//erb//zp2v/96dn//OjY//zo + 1//959b//OfV//zm0//85dL//OXS//vl0f/75ND/++PP//zizf/74s3//OHL//zgyv/74Mr/++DI//+p + qf+hdHD/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM2a + gP/q6ur//vLp//7x5//98uf//fDm//3w5f/+7+P//e7j//3u4f/97eD//e3g//3s3//97N7//evc//zq + 2//96tv//erZ//zo2P/96Nf//OfW//zn1f/85tT//ObT//zm0f/85NH//OTQ//zjzv/7487//OLN//zh + y//74cv/++DK//+oqP+idXL/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAANCdgf/r6+v//fPq//7y6f/98uj//fHn//7x5v/98OX//fDk//3v4v/97uL//e7h//3t + 4P/97N///eve//3r3P/969v//era//zp2v/86dj//OnX//3o1v/859X//ObU//zm0//85tL//OXR//zk + 0f/848///OPO//vizf/74sz/++HL//+np/+jd3P/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAANOggv/s7Oz//fTs//3z6v/98+r//fLo//3x5//98eb//vDl//3w + 5f/+7+T//e/j//3u4f/97eD//e3f//3s3v/97N3//Ovc//3q2//96tr//OnZ//zo2P/96Nf//OjV//zn + 1P/859P//OXT//vl0f/85dD//OPQ//vjzv/84s7/++LM//+lpf+leXT/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANWihP/u7u7//vXt//707P/+8+v//vPq//3y + 6P/98uj//fHn//7x5v/98OX//fDk//3v4//97uL//e7h//3t3//97N///eze//3r3P/869v//Ora//3p + 2f/96dj//ejX//zo1v/859X//OfU//zm0//85dL//OTR//zk0P/75M///OPO//+kpP+menb/MxoNrzMa + DVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANilhf/v7+///vXu//71 + 7f/+9Oz//fPr//7z6v/+8+r//vLo//3y5//+8eb//fDl//3v5P/97uP//e/h//3u4P/97eD//O3f//zs + 3v/9693//erc//zq2//86tn//enY//3o1//86Nf//efV//zn1f/85tP//OXS//zl0f/85ND/++TP//+i + o/+oe3f/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANqn + hv/w8PD//vbw//727//99u3//vTt//306//+8+v//vPp//3y6f/+8uj//fHn//3w5f/97+T//e/k//7v + 4v/97uH//e3g//3t3//97N7//evd//zr3P/969v//era//zp2P/86Nj//OjX//zn1v/95tX//efU//zm + 0//85dH//OXQ//+goP+pfXj/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAN2qiP/x8fH//vfx//738P/+9e///fbu//717f/99Oz//vTr//3z6v/98+n//fHn//7x + 5v/98eb//fDl//3w5P/97+P//e7i//3u4f/97eD//e3f//3r3f/969z//erc//zq2v/96dn//OnY//zo + 1//86Nb//OfU//zm1P/85dP//OXS//+gn/+qf3n/MxoNrzMaDVAzGg0UAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOCtiv/z8/P//vjz//738v/+9/D//vbw//327v/+9e3//fTt//30 + 6//+8+r//fLp//7y6f/+8ef//vDm//3w5f/98OT//e/j//3u4v/97uH//e3g//3s3//97N7//Ozd//3r + 3P/96tr//OnZ//zp2P/96dj//OfW//zn1f/85tX//ObU//+enf+rgHv/MxoNrzMaDVAzGg0UAAAAAgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOOwi//09PT///j0//748//++PL//vfx//73 + 8P/+9u///vXu//707P/+9Ov//vPr//3y6v/+8un//fLo//3x5v/98OX//fDk//3v4//97+L//e7h//zu + 4P/97d///Oze//3r3f/869z//erb//3q2v/86dn//ejX//zo1//86Nb//OfV//+cnf+sgn3/NBsNrTQa + DU8zGg0UAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOWyjP/19fX//vn2///4 + 9P/++PP//vfy//748f/+9/D//vXv//727v/99e3//vTs//706//98ur//vLp//3y5//98ef//vHm//7v + 5f/97+P//e/i//3v4v/87uD//ezf//3s3//97N3//Ovc//+8vf//uLf//7Oz//+urv//qan//6Sk//+g + n/+ug37/Nx4RozgcEUk5HA4SAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOe0 + jv/29vb//vr3//769v/++fT//vj0//748//+9/H//vfx//727//+9u///fXt//717f/+8+v//vPr//7y + 6f/+8uj//fLn//7x5v/98OX//fDk//3v4//97uL//e7h//3t3//97d//upGK/7mPiP+2jIb/tYqF/7OI + hP+yh4P/sYaB/7BwcP+bamn/OyEVhUAgFzg7JxQNAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAOq3j//4+Pj//vv4//769//++fb///n1//749P/++PL//vfy//738f/+9vD//vbu//31 + 7v/+9e3//vPr//7z6//98+r//vLp//7y6P/98eb//fDl//7v5f/97+T//e7i//3u4f/97eD/pXJs//+0 + Uv//mQD/9Y8A/+uFAP/gegD/1nAA/79mGf9+UU7XQSUZUkQiGh5VKysGAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAO26kP/5+fn//vz6///7+P//+/f//vr2//759v/++fT//vjz//73 + 8v/+9/H//vbw//727//+9e7//vXt//716//+8+v//vLq//3y6f/98ej//fHn//3x5v/98OX//e/k//3v + 4//97uH/qHVu///Mmf//tFL//7BE//+rNv//qC3/2Yw5/4BTUNhAIxpXRyMcJE0zGgqAAAACAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPC9kf/6+vr///37///8+v///Pn///v4//76 + 9v/++vb//vn1//758//++PP//vfx//738f/99vD//vXv//717v/+9Oz//fTr//3z6v/98+n//fHo//3x + 5//98eb//fHl//3w5P/97+P/q3hv///Wo///t1v//7RS//+wRP/bk0n/g1ZS2EMmGldFKRwlRi4XC4AA + AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPPAkv/7+/v///38///9 + /P///Pv//vz5//77+P/++/f///r2//759f//+fT//vjy//748v/+9/D//vbv//727//+9e3//fXs//70 + 7P/98+r//vLp//3y6f/98ef//vDm//3w5f/98OX/rntw///grf//u2f//7db/92bW/+HWlTYQyYaV0Up + HCVGLhcLgAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPXC + k//9/f3///7+//7+/P///fz//vz7//78+f/++/j//vv3///69v/++fX//vj0//749P/++PL//vfx//72 + 8P/+9u///vXu//307f/99Oz//vTr//7z6v/+8un//fHo//7x5//98Ob/sH1x///ruP//wHT/3qFq/4pd + VthDJhpXRSkcJUYuFwuAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAPfElf/+/v7//////////v///v3//v78//79+////Pr///v4///79///+vf///r2///5 + 9f//+PP///jy//748f/+9/D//vbw//717v/+9e3//vTs//7z7P/+8+r//vLp//7y6P/98ef/sn9z///1 + wv/gqHv/jmFX2kYpHVhMKRwlRi4XC4AAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPrHl/////////////7+/v/9/f3//Pz8//z8/P/7+/v/+vr6//r6 + +v/5+fn/+Pj4//f39//39/f/9vb2//X19f/19fX/9PT0//Pz8//z8vL/8vHw//Hw7//w7uz/8O3r/+/s + 6f/u6+j/toN0/+zftv+OYlbkRikbaUsyJSlVKxUMgAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7Lmf/81rH/+tSw//jRrv/1z63/882r//HL + qv/uyKn/7MWo/+rDpv/owaX/5b+k/+O9ov/guqH/3ref/9u1nv/as53/17Gb/9Wumv/SrJn/0KqY/86n + lv/LpZX/yaOU/8agkv/EnpH/uIV1/7WCdJ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAPwAAAAADwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAH + AAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwA + AAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAH + AAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwA + AAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAH + AAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/AAAAAAHAAD8AAAAAA8AAPwA + AAAAHwAA/AAAAAA/AAD8AAAAAH8AAPwAAAAA/wAA/AAAAAH/AAD8AAAAP/8AACgAAAAgAAAAQAAAAAEA + IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANxISDjYXDyE0GhAxNhsNOTQa + DTszGg08MxoNPDMaDTwzGg08MxoNPDMaDTwzGg08MxoNPDMaDTwzGg08MxoNPDMaDTwzGg08MxoNPDMa + DTw0Gg07MhsOODQaCjE2Fw8hNxISDlUAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2Fw8hNBoNTjMb + DXMzGw2GMxoNizMaDYwzGg2MMxoNjDMaDYwzGg2MMxoNjDMaDYwzGg2MMxoNjDMaDYwzGg2MMxoNjDMa + DYwzGg2MMxoNjDMaDYs0Gw2FMxsNczIaDU02Fw8hQCAACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAM2b + iuvSn5Pwy5qN9siXi/nGlov6xpaL+sWUivrEk4r6wpGJ+sKQifrCkIn6wpCJ+sKQifrCkIn6wpCJ+sKQ + ifrCkIn6wpCJ+sKQifrCkIn6wpCJ+sKQifnXkob4MxsNczQaEDFAFRUMAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAAzbGo//3Sv//90r///dK///3Sv//90r///dK///3Sv//90r///dK///3Sv//90r///dK///3S + v//90r///dK///3Sv//90r///dK///3Sv//90r///8yZ/9WRhfo0GQ2FMRsNOTsUFA0AAAABAAAAAAAA + AAAAAAAAAAAAAAAAAADJsqj/4eLi//vgyf/738j/+97G//vdxf/63MP/+9vB//vawP/62r//+tm9//rY + vP/617n/+ta4//nVtv/51LX/+tSz//nTsv/50rD/+tGv//rRrf/90r//1ZGF+zMaDYs0Gg07NxISDgAA + AAEAAAAAAAAAAAAAAAAAAAAAAAAAAMy1qf/i5OP/++HL//vgyv/738j/+9/H//vexf/73cT/+tzC//rb + wP/62r7/+9q9//vYvP/62Lr/+te5//rVuP/61Lb/+tS0//rTs//60rL/+dKw//3Sv//UkYT7MxoNjDMa + DTw3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAzrer/+Pk5P/8483//OHL//zgyv/74Mn/+9/H//ve + xf/73cT/+9zD//rbwP/727//+tm+//vZvP/62Lv/+te6//rWuP/61rb/+tS1//rUtP/507L//dK//9SR + hPszGg2MMxoNPDcSEg4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAADQuKz/5ebm//vkz//8483/++LM//vh + y//84Mn/+9/H//vexv/73cX/+93D//vbwf/628D/+tq+//rZvf/62Lz/+te6//rXuP/61rf/+tW1//rT + s//90r//1JGE+zMaDYwzGg08NxISDgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAANK6rv/m5+f/++XR//zk + z//848///OLN//vhy//74Mr/++DI//vexv/73cX/+93D//rcwv/728H/+9q///vZvv/62bz/+9i7//rW + uf/61bf/+tW2//3Sv//UkYT7MxoNjDMaDTw3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAA07yv/+fo + 6P/85tP//OXS//zl0P/848///OPO//zhzP/84Mr/++DJ//vfx//73sX/+93E//vcwv/728H/+9vA//ra + vv/72L3/+ti7//rXuv/617j//dK//9SRhPszGg2MMxoNPDcSEg4AAAABAAAAAAAAAAAAAAAAAAAAAAAA + AADWvrD/6Onp//zn1f/85tT//ObT//zl0f/848//++PN//zizP/74cv/++DJ//vfx//73sb/+93F//rd + xP/728L/+9vA//vZv//62b7/+tm8//rXuv/90r//1JGE+zMaDYwzGg08NxISDgAAAAEAAAAAAAAAAAAA + AAAAAAAAAAAAANjAsv/p6ur//OjX//zn1v/85tT//OXT//zl0f/85ND/++PO//zizf/84cv/++DJ//vg + yP/738f/+97G//vdxP/73ML/+tvB//vav//72b7/+ti8//3Sv//UkYT7MxoNjDMaDTw3EhIOAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAA2sKz/+rr6//96dr//enY//zo1//859X//ObU//vl0v/75ND//OPP//vj + zv/84sz//OHL//zgyf/738f/+97F//vdxf/63MP/+tzB//vbwP/72r7//dK//9SRhPszGg2MMxoNPDcS + Eg4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAADcxLT/6+zs//3r3P/86tr//OnZ//3o1//859b//ObU//zm + 0v/85dH/++TP//zizv/84sz//OHL//vgyv/74Mj/+97G//vdxf/73cP/+tzC//rbwP/90r//1JGE+zMa + DYwzGg08NxISDgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAN7Gtv/t7e3//eze//3r3P/969v//enZ//zo + 2P/859b//ObU//zl0//85dL//OTQ//vkzv/8483//OLM//vgyv/74Mj/+9/H//vexv/73cT/+9zD//3S + v//UkYT7MxoNjDMaDTw3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAA38e3/+7u7//97d///Oze//3s + 3f/869v//era//zo2P/86Nb//OfV//zn0//85dP//OXR//zjz//8487//OLM//vhy//84Mr/+9/I//vf + xv/73sT//dK//9SRhPszGg2MMxoNPDcSEg4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAADiyrn/7+/v//3u + 4v/97eH//ezf//3s3f/969v//Orb//3p2f/86Nj//OfW//zm1P/85dP//OXR//zk0P/8487//OLN//vi + y//84Mr/+9/I//vex//90r//1JGE+zMaDYwzGg08NxISDgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAOTM + uf/w8fH//e/k//3v4//97eH//e3f//zs3v/97Nz//erb//zp2f/96dj//OjX//zn1P/85tT/++XR//zk + 0f/85M//++LN//zizP/74cr/++DJ//3Sv//UkYT7MxoNjDMaDTw3EhIOAAAAAQAAAAAAAAAAAAAAAAAA + AAAAAAAA5s27//Hy8v/+8ef//fDl//3v4//97uL//e3g//zt3v/97N3//evb//zp2v/86dn//OjX//zn + 1f/85tT//ObT//zk0f/749D//OPO//vizf/84cv//dK//9SRhPszGg2MMxoNPDcSEg4AAAABAAAAAAAA + AAAAAAAAAAAAAAAAAADo0L3/8vPz//3y6P/98uf//fHl//7v4//97+L//O7h//3s3//97N7//evc//zq + 2v/96dn//OnY//zn1v/85tX//ObT//zl0f/85ND//OPO//vizf/90r//1JGE+zMaDYwzGg08NxISDgAA + AAEAAAAAAAAAAAAAAAAAAAAAAAAAAOrRvv/z9PT//vPq//3z6f/+8ef//fHm//3v5P/97uP//e7i//3t + 3//97N7//Ovd//3r2//96tn//OjY//zo1v/859X//ObU//zl0v/85NH//OTP//3Sv//UkYT7MxoNjDMa + DTw3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAA7NTA//X19f/99ez//fPr//3y6f/98uf//vHm//3w + 5f/97+P//e7i//3t4f/97N///evd//zq2//86tr//OjZ//3p1//959b//ObU//zl0v/75NH//dK//9SR + hPszGg2MMxoNPDcSEg4AAAABAAAAAAAAAAAAAAAAAAAAAAAAAADu1sL/9vb2//727//99e3//vTr//7z + 6v/+8un//vHn//3w5v/98OT//e/j//zu4f/97N///eze//3r3P/86tv//enZ//zo2P/859b//OfU//zm + 0//90r//1JGE+zMaDYwzGg08NxISDgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAPDYw//39/f//vbw//71 + 7//99e7//vTs//306v/98+n//fHo//3w5v/97+T//e/j//3u4f/97d///eze//zs3f/96tv//enZ//zo + 2P/859f//OfV//3Sv//VkYX7MxoNizQaDTs3EhIOAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAA8tnF//j4 + +P/++PL//vfx//728P/+9e7//vTt//706//+8+n//fLo//7x5v/98OX//e/j//3u4v/97eD//O3f//zs + 3v/969z//era//zp2f/86Nf//dK//9WNgfs3HhGHNh8SOTckEg4AAAABAAAAAAAAAAAAAAAAAAAAAAAA + AAD03Mf/+fn5///59f/++PP//vjx//738P/+9e7//vXt//307P/+8+r//vLp//3x5//+8Ob//e/k//3v + 4v/97uH//e3g//3r3v/3s7P/96ys//ahov/4mpr/1pCC+z4jF3xBKBkzQCsVDAAAAAEAAAAAAAAAAAAA + AAAAAAAAAAAAAPbdx//6+/v//vv3///69f/++PT//vjy//738f/+9u///vXu//707P/+8+r//fPp//7x + 6P/+8eb//e/l//3v4//97uH/5baR/+6hR//nlTj/3os2/9WCNf+1gGHqSS8iYkg0Jyc5ORwJAAAAAQAA + AAAAAAAAAAAAAAAAAAAAAAAA+ODK//z8+///+/n//vv3///69v/++fT///jz//738v/+9/D//vXu//71 + 7f/99Ov//vPq//7y6P/98ef//fDl//3v5P/rwJ7//71g//+pMf/8oiL/x4ZG7V9DM39RNys8WUAzFEBA + QAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD64sr//fz9///9+////Pn///v4//769//++fX//vnz//74 + 8v/+9vH//vbv//717f/+9Oz//fPq//3y6f/+8ef//fDl/+vHqP//zoX//rVU/82VXe5fQzSDVDgsQFg7 + MRpJSSQHAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPzkzP/+/v7///79///9/P///Pr///z4///6 + 9//++vb//vn0//748///9/H//vbv//317f/99O3//fPq//3z6f/+8ef/7dCv///Ylv/Ik2rwXkEzhlE6 + K0JVQi8bYEBACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/ufS///////9/f3/+/v7//n5 + +f/3+Pf/9fb2//T09P/y8vL/7/Dw/+7u7v/s7Oz/6uvq/+jp6f/l5+f/5OXk/+Lj4//u0bD/yqqG9lw/ + MKJROCxSWkIxH2BAQAgAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+1Kr5/dq5+frX + tvn51rT59tSz+fTRsvnxz7D578yv+e3Lrfnsyaz56caq+ebDqfnkwaf548Cm+eG+pPneu6P527mi+d+v + j8bap4YUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8AAAA/AAAAHwAAAB8AAAAfAA + AAHwAAAB8AAAAfAAAAHwAAAB8AAAAfAAAAHwAAAB8AAAAfAAAAHwAAAB8AAAAfAAAAHwAAAB8AAAAfAA + AAHwAAAB8AAAAfAAAAHwAAAB8AAAAfAAAAHwAAAB8AAAA/AAAAPwAAAH8AAAD/AAAf8oAAAAEAAAACAA + AAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzHA43MxoNeDIbDaIzGg2uMxoNrzMa + Da8zGg2vMxoNrzMaDa8zGg2vMxoNrjIbDaIzGg14MxwONwAAAAAAAAAArntu/9mtnf/WqJr/06aY/9Kk + l//MoZn/yZ6X/8aclv/EmZX/wZaT/7aRi/+4jov/MxsNoTQYDkoAAAAAAAAAALWCcv/84cv/++DI//ve + xP/73ML/+tq+//rYu//717j/+tS0//nSsf/60K7/7r2l/zMaDa40Gg1PAAAAAAAAAAC7iHX//OTP//zi + zP/74Mn/+97G//vcw//72r//+9m8//rWuP/61bX/+tOx/++/qP8zGg2vMxoNUAAAAAAAAAAAwo95//zn + 1P/85NH//OPO//zhyv/738f/+9zE//vbwP/62rz/+9e5//vVtv/wwav/MxoNrzMaDVAAAAAAAAAAAMiV + fP/86Nj//ObV//zl0v/8487/++HL//vgyP/73sT/+tzB//vZvv/62Lv/8MOv/zMaDa8zGg1QAAAAAAAA + AADPnID//Ovd//3q2v/859b//ObT//zkz//84sz/++DJ//vexv/73ML/+tu///HFsf8zGg2vMxoNUAAA + AAAAAAAA1aKD//3u4P/97N3//Orb//zo1//85tP//OTR//vizf/74cr/+9/G//vdw//yyLX/MxoNrzMa + DVAAAAAAAAAAANyph//+8OX//e7h//3s3//969v//enY//zm1f/85dH/++PO//zhyv/738f/8sm3/zMa + Da8zGg1QAAAAAAAAAADcqYf//fPq//3x5v/97+P//e3f//zr3P/96dn//efW//zl0//85M///OHL//PM + uv8zGg2vMxoNUAAAAAAAAAAA3KmH//317f/+8+r//fLn//3v5P/97eH//eze//zq2v/86Nf//ObT//zk + 0P/zzb3/NRsPqjUaDU0AAAAAAAAAANyph//++PL//vXu//307P/98uj//fDl//3u4v/97N7//era//zo + 2P/85tT/9Mm6/zogEZk9IhNDAAAAAAAAAADcqYf///r3//748//+9vD//vTs//7y6f/98eb//e/i///V + zP//1cz/9bOq/6l4bOBCKBh0SCccLgAAAAAAAAAA3KmH///9+///+/f//vn0//738f/+9e3//fPr//3x + 5//3pkP/96ZD/+CSQP5HKxqRTi4gSFk3IRcAAAAAAAAAANyph/////////77///7+P/++vX//vjx//72 + 7v/98+z/3KmH/+qzdv5oSDLCTzMkZFM3IiVVORwJAAAAAAAAAADcqYf/3KmH/9yph//cqYf/3KmH/9yp + h//eq4j/1qOE/9yph//ZqYktAAAAAAAAAAAAAAAAAAAAAMAAAADAAAAAwAAAAMAAAADAAK7/wADn/8AA + 0f/AAM//wADP/8AAzf/AAMv/wADK/8AAyP/AAMb/wADF/8APw/8= + + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmAuswertung.vb b/_FRReporting/Formulare/frmAuswertung.vb new file mode 100644 index 0000000..0b67064 --- /dev/null +++ b/_FRReporting/Formulare/frmAuswertung.vb @@ -0,0 +1,254 @@ +Imports C1.Win.C1TrueDBGrid +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Imports System.Drawing +Imports System.Windows.Forms + +Public Class frmAuswertung + +#Region "Deklarationen" + Dim Auswertungsdaten As DataSet + Dim Auswertungsname As String + + +#End Region + + + + ''' + ''' Initialisierung des Formulars + ''' + ''' + ''' + Sub New(ByVal Auswertungname As String, ByRef Auswerungsdaten As DataSet, Optional tempfilepath As String = "") + Me.InitializeComponent() + If tempfilepath <> "" Then Globals.TmpFilepath = tempfilepath + Me.Text = Me.Text + ": " + Auswertungname + Me.Auswertungsdaten = Auswerungsdaten + Me.Auswertungsname = Auswertungname + End Sub + + Private Sub frmAuswertung_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Try + Me.C1Daten.DataSource = Me.Auswertungsdaten + Me.C1Daten.DataMember = Me.Auswertungsdaten.Tables(0).TableName + + Dim i As Integer + For i = 0 To Me.Auswertungsdaten.Tables(0).Columns.Count - 1 + Me.C1Daten.Splits(0).DisplayColumns(i).AutoSize() + If C1Daten.Columns(i).DataType.Name = "DateTime" Then + C1Daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss" + End If + If C1Daten.Columns(i).Caption = "Journaleintrag" Then + C1Daten.Splits(0).DisplayColumns(i).Width = 250 + End If + C1Daten.Splits(0).DisplayColumns(i).Locked = True + Next + Catch + End Try + End Sub + + + Private Sub TSBtnExcelExport_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnExcelExport.Click + Cursor = Cursors.WaitCursor + Dim fn As String = System.IO.Path.GetRandomFileName + fn = fn.Substring(0, Len(fn) - 4) + fn = Globals.TmpFilepath + "\" + fn + "" + Dim xls As New XLSLib.clsXLSLib + xls.Write_Excel(fn, Me.Auswertungsdaten.Tables(0)) + Dim fnn As String = fn + ".xls" + Rename(fn, fnn) + Process.Start(fnn) + Cursor = Cursors.Default + Exit Sub + Me.SaveFileDialog1.AddExtension = True + Me.SaveFileDialog1.Filter = "Excel-Dateien|*.xls|CSV-Dateien|*.CSV" + Me.SaveFileDialog1.DefaultExt.Insert(0, "*.xls") + + Me.SaveFileDialog1.ShowDialog() + If Me.SaveFileDialog1.FileName <> "" Then + If Me.SaveFileDialog1.FileName.EndsWith("xls") Then + Me.DatatableToExcel(Me.Auswertungsdaten.Tables(0), Me.SaveFileDialog1.FileName) + Else + Me.C1Daten.ExportToDelimitedFile(Me.SaveFileDialog1.FileName, C1.Win.C1TrueDBGrid.RowSelectorEnum.AllRows, ";", "", "", True, System.Text.Encoding.Default.BodyName) + End If + End If + + Exit Sub + + If Me.C1Daten.Splits(0).Rows.Count > 0 Then + Me.SaveFileDialog1.AddExtension = True + Me.SaveFileDialog1.DefaultExt.Insert(0, "*.csv") + Me.SaveFileDialog1.Filter = "CSV-Dateien|*.CSV" + Me.SaveFileDialog1.ShowDialog() + If Me.SaveFileDialog1.FileName <> "" Then + ' Me.C1Daten.ExportToDelimitedFile(Me.SaveFileDialog1.FileName, C1.Win.C1TrueDBGrid.RowSelectorEnum.AllRows, ";", "", "", "", True, System.Text.Encoding.Default.BodyName) + Me.C1Daten.ExportToDelimitedFile(Me.SaveFileDialog1.FileName, C1.Win.C1TrueDBGrid.RowSelectorEnum.AllRows, ";", "", "", True, System.Text.Encoding.Default.BodyName) + End If + + End If + End Sub + + Public Shared Function DatatableToExcel(ByVal aDataTable As DataTable, ByVal aOutputFilename As String) As Boolean + Application.DoEvents() + 'Dim f As New FrmFortschritt + Dim app As New Object + Dim wb As New Object + Dim ws As New Object + Try + ' f.Show() + Application.DoEvents() + ' f.ProgressBar1.Minimum = 0 + ' f.ProgressBar1.Maximum = aDataTable.Rows.Count + app = CreateObject("Excel.application") + 'Dim wb As Object + 'Dim ws As Object + ' Dim app As New Excel.ApplicationClass + ' Dim wb As Excel.Workbook + ' Dim ws As Excel.Worksheet + wb = app.Workbooks.add() + 'wb = app.Workbooks.Add() + ws = wb.ActiveSheet() + Dim dc As DataColumn + Dim dr As DataRow + Dim colIndex As Integer + Dim rowIndex As Integer + ' Columns erstellen + For Each dc In aDataTable.Columns + colIndex += 1 + app.Cells(1, colIndex) = dc.ColumnName + Next + ' Rows hinzufügen + For Each dr In aDataTable.Rows + ' f.ProgressBar1.Value = rowIndex + rowIndex += 1 + colIndex = 0 + For Each dc In aDataTable.Columns + colIndex += 1 + Try + app.Cells(rowIndex + 1, colIndex) = dr(dc.ColumnName) + Catch ex As Exception + Dim s As String = dr(dc.ColumnName) + s = "'" + s + Try + app.Cells(rowIndex + 1, colIndex) = s + Catch ex1 As Exception + app.Cells(rowIndex + 1, colIndex) = "'* Text beim Export entfernt" + End Try + End Try + Next + Next + ws.Columns.AutoFit() + wb.SaveAs(aOutputFilename) + app.Workbooks.Open(aOutputFilename) + ' Excel anzeigen wenn fertig exportiert + app.Visible = True + ws = Nothing + wb = Nothing + app = Nothing + + 'f.Close() + Return True + Catch ex As Exception + 'f.Close() + MsgBox(ex.Message) + End Try + + + End Function + + + Private Sub TSBtnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnPrint.Click + Dim fontbold As New Font("Arial", 12, FontStyle.Bold) + Dim fontregular As New Font("Arial", 12, FontStyle.Regular) + + With Me.C1Daten.PrintInfo + .PageHeaderStyle.Font = fontbold + .PageSettings.Margins.Bottom = 20 + .PageSettings.Margins.Top = 80 + .PageSettings.Landscape = True + .PageFooter = "Seite \p von \P" & vbLf & "Druckdatum " & Now() + .PageHeader = Me.Auswertungsname + .ShowProgressForm = True + .UseGridColors = True + .RepeatColumnHeaders = True + .VarRowHeight = .RowHeightEnum.StretchToFit + .WrapText = C1.Win.C1TrueDBGrid.PrintInfo.WrapTextEnum.NoWrap + .PageBreak = .PageBreaksEnum.OnColumn + .FillAreaWidth = .FillEmptyEnum.None + .PrintPreview() + End With + + End Sub + + + Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click + Me.Close() + End Sub + + Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click + Me.Close() + End Sub + + + + Private Sub C1Daten_FetchScrollTips(ByVal sender As Object, ByVal e As C1.Win.C1TrueDBGrid.FetchScrollTipsEventArgs) Handles C1Daten.FetchScrollTips + Try + Select Case e.ScrollBar + Case C1.Win.C1TrueDBGrid.ScrollBarEnum.Horizontal + e.ScrollTip = Me.C1Daten.Columns(e.ColIndex).Caption + Case C1.Win.C1TrueDBGrid.ScrollBarEnum.Vertical + e.ScrollTip = CStr(e.Row + 1) & " / " & CStr(Me.Auswertungsdaten.Tables(0).Rows.Count) + End Select + e.TipStyle.ForeColor = Color.Blue + Catch + End Try + + End Sub + + Private Sub ContextMenuStrip1_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles ContextMenuStrip1.Opening + If Me.C1Daten.SelectedCols.Count > 0 Then SpalteLöschenToolStripMenuItem.Enabled = True Else Me.SpalteLöschenToolStripMenuItem.Enabled = False + End Sub + + Private Sub SpalteLöschenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SpalteLöschenToolStripMenuItem.Click + Dim i As Integer + For i = 0 To Me.C1Daten.SelectedCols.Count - 1 + Me.Auswertungsdaten.Tables(0).Columns.Remove(Me.C1Daten.SelectedCols(i).Caption) + Me.Auswertungsdaten.AcceptChanges() + Next + Me.C1Daten.DataSource = Nothing + Me.C1Daten.DataSource = Me.Auswertungsdaten + Me.C1Daten.DataMember = Me.Auswertungsdaten.Tables(0).TableName + + For i = 0 To Me.Auswertungsdaten.Tables(0).Columns.Count - 1 + Me.C1Daten.Splits(0).DisplayColumns(i).AutoSize() + If C1Daten.Columns(i).DataType.Name = "DateTime" Then + C1Daten.Columns(i).NumberFormat = "dd.MM.yyyy HH:mm:ss" + End If + If C1Daten.Columns(i).Caption = "Journaleintrag" Then + C1Daten.Splits(0).DisplayColumns(i).Width = 250 + End If + C1Daten.Splits(0).DisplayColumns(i).Locked = True + Next + + End Sub + + Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click + Me.SaveFileDialog1.AddExtension = True + Me.SaveFileDialog1.Filter = "Excel-Dateien|*.xls|CSV-Dateien|*.CSV" + Me.SaveFileDialog1.DefaultExt.Insert(0, "*.xls") + + Me.SaveFileDialog1.ShowDialog() + If Me.SaveFileDialog1.FileName <> "" Then + If Me.SaveFileDialog1.FileName.EndsWith("xls") Then + Me.DatatableToExcel(Me.Auswertungsdaten.Tables(0), Me.SaveFileDialog1.FileName) + Process.Start(Me.SaveFileDialog1.FileName) + Else + Me.C1Daten.ExportToDelimitedFile(Me.SaveFileDialog1.FileName, C1.Win.C1TrueDBGrid.RowSelectorEnum.AllRows, ";", "", "", True, System.Text.Encoding.Default.BodyName) + Process.Start(Me.SaveFileDialog1.FileName) + End If + End If + End Sub +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmCRReporting.designer.vb b/_FRReporting/Formulare/frmCRReporting.designer.vb new file mode 100644 index 0000000..9a08198 --- /dev/null +++ b/_FRReporting/Formulare/frmCRReporting.designer.vb @@ -0,0 +1,52 @@ + _ +Partial Class frmcrreporting + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.PreviewControl1 = New FastReport.Preview.PreviewControl() + Me.SuspendLayout() + ' + 'PreviewControl1 + ' + Me.PreviewControl1.BackColor = System.Drawing.SystemColors.AppWorkspace + Me.PreviewControl1.Font = New System.Drawing.Font("Tahoma", 8.0!) + Me.PreviewControl1.Location = New System.Drawing.Point(12, 12) + Me.PreviewControl1.Name = "PreviewControl1" + Me.PreviewControl1.PageOffset = New System.Drawing.Point(10, 10) + Me.PreviewControl1.Size = New System.Drawing.Size(643, 283) + Me.PreviewControl1.TabIndex = 0 + ' + 'frmcrreporting + ' + Me.ClientSize = New System.Drawing.Size(284, 261) + Me.Controls.Add(Me.PreviewControl1) + Me.Name = "frmcrreporting" + Me.ResumeLayout(False) + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents DateiToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents BeendenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents TSBtnQuit As System.Windows.Forms.ToolStripButton + Friend WithEvents PreviewControl1 As FastReport.Preview.PreviewControl +End Class diff --git a/_FRReporting/Formulare/frmCRReporting.resx b/_FRReporting/Formulare/frmCRReporting.resx new file mode 100644 index 0000000..d58980a --- /dev/null +++ b/_FRReporting/Formulare/frmCRReporting.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmCRReporting.vb b/_FRReporting/Formulare/frmCRReporting.vb new file mode 100644 index 0000000..5a54781 --- /dev/null +++ b/_FRReporting/Formulare/frmCRReporting.vb @@ -0,0 +1,122 @@ +Imports System.Windows.Forms +Imports FastReport + +Public Class frmcrreporting + + Dim ds As DataSet + Dim auswertungnr As Integer + Dim dms As New Utils.MyDocMgmt + Dim auswertung As New TKB.Auswertung.clsAuswertung + Dim rptfilename As String + Dim printparam As Boolean = True + Dim StandardAuswertung As Boolean = True + Dim Design As Boolean = False + + Sub New(ByRef ds As DataSet, ByVal Auswertungnr As Integer, ByRef auswertung As TKB.Auswertung.clsAuswertung, ByVal printparam As Boolean, ByVal Design As Boolean) + InitializeComponent() + Me.ds = ds + Me.auswertungnr = Auswertungnr + Me.auswertung = auswertung + Me.printparam = printparam + Me.StandardAuswertung = True + Me.Design = Design + End Sub + Sub New(ByRef ds As DataSet, ByVal Auswertungnr As Integer) + InitializeComponent() + Me.ds = ds + Me.auswertungnr = Auswertungnr + Me.StandardAuswertung = False + End Sub + Private Sub frmcrreporting_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + + End Sub + + Public Sub DesignReport() + Me.Cursor = Cursors.WaitCursor + Application.DoEvents() + rptfilename = dms.Get_RptDatei(Me.auswertungnr) + + Dim i As Integer + ds.Tables(0).TableName = "Daten" + For i = 1 To ds.Tables.Count - 1 + ds.Tables(i).TableName = "Daten_" + Trim(Str(i)) + Next + + Dim report As New Report + Try + If rptfilename <> "" Then report.Load(rptfilename) + report.RegisterData(ds) + report.GetDataSource("Daten").Enabled = True + report.SetParameterValue("Titel1", auswertung.TitelZeile1) + report.SetParameterValue("Titel2", auswertung.TitelZeile2) + If Me.printparam Then + i = 0 + Dim s As String = "" + + For i = 1 To Me.auswertung.ParamCollection.Count + If s <> "" Then s = s + "|" + s = s + Me.auswertung.ParamCollection.Item(i).ToString + Next + report.SetParameterValue("Parameters", s) + End If + Cursor = Cursors.Default + report.Preview = Me.PreviewControl1 + report.Design() + report.Dispose() + Me.Close() + Catch ex As Exception + MsgBox(ex.Message) + End Try + + End Sub + + Public Sub DisplayReport() + Me.Cursor = Cursors.WaitCursor + Application.DoEvents() + rptfilename = dms.Get_RptDatei(Me.auswertungnr) + + Dim i As Integer + ds.Tables(0).TableName = "Daten" + For i = 1 To ds.Tables.Count - 1 + ds.Tables(i).TableName = "Daten_" + Trim(Str(i)) + Next + + Dim report As New Report + Try + If rptfilename <> "" Then report.Load(rptfilename) + report.RegisterData(ds) + report.GetDataSource("Daten").Enabled = True + report.SetParameterValue("Titel1", auswertung.TitelZeile1) + report.SetParameterValue("Titel2", auswertung.TitelZeile2) + If Me.printparam Then + i = 0 + Dim s As String = "" + + For i = 1 To Me.auswertung.ParamCollection.Count + If s <> "" Then s = s + "|" + s = s + Me.auswertung.ParamCollection.Item(i).ToString + Next + report.SetParameterValue("Parameters", s) + End If + Cursor = Cursors.Default + report.Preview = Me.PreviewControl1 + report.Show() + Catch ex As Exception + MsgBox(ex.Message) + End Try + + End Sub + + Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click + Me.Close() + End Sub + + Private Sub TSBtnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TSBtnQuit.Click + Me.Close() + End Sub + + + + +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmCalendar.designer.vb b/_FRReporting/Formulare/frmCalendar.designer.vb new file mode 100644 index 0000000..56cca9b --- /dev/null +++ b/_FRReporting/Formulare/frmCalendar.designer.vb @@ -0,0 +1,62 @@ + _ +Partial Class frmCalendar + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.MonthCalendar1 = New System.Windows.Forms.MonthCalendar() + Me.btnok = New System.Windows.Forms.Button() + Me.SuspendLayout() + ' + 'MonthCalendar1 + ' + Me.MonthCalendar1.Dock = System.Windows.Forms.DockStyle.Top + Me.MonthCalendar1.Location = New System.Drawing.Point(0, 0) + Me.MonthCalendar1.Name = "MonthCalendar1" + Me.MonthCalendar1.TabIndex = 0 + ' + 'btnok + ' + Me.btnok.Dock = System.Windows.Forms.DockStyle.Top + Me.btnok.Location = New System.Drawing.Point(0, 162) + Me.btnok.Name = "btnok" + Me.btnok.Size = New System.Drawing.Size(162, 23) + Me.btnok.TabIndex = 1 + Me.btnok.Text = "OK" + Me.btnok.UseVisualStyleBackColor = True + ' + 'frmCalendar + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(162, 183) + Me.Controls.Add(Me.btnok) + Me.Controls.Add(Me.MonthCalendar1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow + Me.Name = "frmCalendar" + Me.StartPosition = System.Windows.Forms.FormStartPosition.Manual + Me.Text = "Kalender" + Me.ResumeLayout(False) + + End Sub + Friend WithEvents MonthCalendar1 As System.Windows.Forms.MonthCalendar + Friend WithEvents btnok As System.Windows.Forms.Button +End Class diff --git a/_FRReporting/Formulare/frmCalendar.resx b/_FRReporting/Formulare/frmCalendar.resx new file mode 100644 index 0000000..d58980a --- /dev/null +++ b/_FRReporting/Formulare/frmCalendar.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmCalendar.vb b/_FRReporting/Formulare/frmCalendar.vb new file mode 100644 index 0000000..90f8294 --- /dev/null +++ b/_FRReporting/Formulare/frmCalendar.vb @@ -0,0 +1,29 @@ +Imports System.Windows.Forms +Public Class frmCalendar + + Private Sub MonthCalendar1_DateChanged(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DateRangeEventArgs) Handles MonthCalendar1.DateChanged + End Sub + + Private Sub MonthCalendar1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MonthCalendar1.KeyDown + If e.KeyCode = Keys.Escape Then + Me.DialogResult = Windows.Forms.DialogResult.Cancel + Me.Close() + End If + End Sub + + Private Sub frmCalendar_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown + If e.KeyCode = Keys.Escape Then + Me.DialogResult = Windows.Forms.DialogResult.Cancel + Me.Close() + End If + End Sub + + Private Sub btnok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnok.Click + Me.DialogResult = Windows.Forms.DialogResult.OK + Me.Close() + End Sub + + Private Sub frmCalendar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + End Sub +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmDataSelect.Designer.vb b/_FRReporting/Formulare/frmDataSelect.Designer.vb new file mode 100644 index 0000000..ea252c0 --- /dev/null +++ b/_FRReporting/Formulare/frmDataSelect.Designer.vb @@ -0,0 +1,92 @@ + _ +Partial Class frmDataSelect + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmDataSelect)) + Me.ToolStrip1 = New System.Windows.Forms.ToolStrip() + Me.TSBtnQuit = New System.Windows.Forms.ToolStripButton() + Me.C1Daten = New C1.Win.C1TrueDBGrid.C1TrueDBGrid() + Me.ToolStrip1.SuspendLayout() + CType(Me.C1Daten, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'ToolStrip1 + ' + Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.TSBtnQuit}) + Me.ToolStrip1.Location = New System.Drawing.Point(0, 0) + Me.ToolStrip1.Name = "ToolStrip1" + Me.ToolStrip1.Size = New System.Drawing.Size(451, 25) + Me.ToolStrip1.TabIndex = 4 + Me.ToolStrip1.Text = "ToolStrip1" + ' + 'TSBtnQuit + ' + Me.TSBtnQuit.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image + Me.TSBtnQuit.Image = CType(resources.GetObject("TSBtnQuit.Image"), System.Drawing.Image) + Me.TSBtnQuit.ImageTransparentColor = System.Drawing.Color.Magenta + Me.TSBtnQuit.Name = "TSBtnQuit" + Me.TSBtnQuit.Size = New System.Drawing.Size(23, 22) + Me.TSBtnQuit.Text = "Fenster schliessen" + Me.TSBtnQuit.ToolTipText = "Fenster schliessen" + ' + 'C1Daten + ' + Me.C1Daten.AllowUpdate = False + Me.C1Daten.AlternatingRows = True + Me.C1Daten.Dock = System.Windows.Forms.DockStyle.Fill + Me.C1Daten.FilterBar = True + Me.C1Daten.GroupByCaption = "Drag a column header here to group by that column" + Me.C1Daten.Images.Add(CType(resources.GetObject("C1Daten.Images"), System.Drawing.Image)) + Me.C1Daten.Location = New System.Drawing.Point(0, 25) + Me.C1Daten.Name = "C1Daten" + Me.C1Daten.PreviewInfo.Location = New System.Drawing.Point(0, 0) + Me.C1Daten.PreviewInfo.Size = New System.Drawing.Size(0, 0) + Me.C1Daten.PreviewInfo.ZoomFactor = 75.0R + Me.C1Daten.PrintInfo.PageSettings = CType(resources.GetObject("C1Daten.PrintInfo.PageSettings"), System.Drawing.Printing.PageSettings) + Me.C1Daten.ScrollTips = True + Me.C1Daten.Size = New System.Drawing.Size(451, 284) + Me.C1Daten.TabAction = C1.Win.C1TrueDBGrid.TabActionEnum.ColumnNavigation + Me.C1Daten.TabIndex = 7 + Me.C1Daten.Text = "C1TrueDBGrid1" + Me.C1Daten.PropBag = resources.GetString("C1Daten.PropBag") + ' + 'frmDataSelect + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(451, 309) + Me.Controls.Add(Me.C1Daten) + Me.Controls.Add(Me.ToolStrip1) + Me.Name = "frmDataSelect" + Me.Text = "Datenauswahl" + Me.ToolStrip1.ResumeLayout(False) + Me.ToolStrip1.PerformLayout() + CType(Me.C1Daten, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents ToolStrip1 As System.Windows.Forms.ToolStrip + Friend WithEvents TSBtnQuit As System.Windows.Forms.ToolStripButton + Friend WithEvents C1Daten As C1.Win.C1TrueDBGrid.C1TrueDBGrid +End Class diff --git a/_FRReporting/Formulare/frmDataSelect.resx b/_FRReporting/Formulare/frmDataSelect.resx new file mode 100644 index 0000000..ab02966 --- /dev/null +++ b/_FRReporting/Formulare/frmDataSelect.resx @@ -0,0 +1,172 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAACkSURBVDhPlZALDsMwCEM5OkfLzbIaMGH5dJkligL2a1o5 + qP9RW3VVXYpzqLV2D+CZQVU/Y27uIg4OQQAJXz+hDsyEDtVQ7dib+1GH1fpUDljD6OF5HgjvKgHvN+iC + A0O1EvB+A8ghPvgqB4j9xPlHhidVB2lwwICfbkBxMAFGqHbszb1RGhywhtGxN/dGXAbgGD4CqACMMGZR + VwrA/Rtn/QiKfADckGXYsnwKqAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAA0SURBVChTdYkBCgAgDAL9/6eLIsd0eSCKhw/r9aCLtC88 + vAdHMEIXKUIUhMK76EfagglgA6CqHOQpL6GyAAAAAElFTkSuQmCC + + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0 + dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAACRTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5QYWdlU2V0dGluZ3MHAAAAD3ByaW50ZXJTZXR0aW5ncwVjb2xvcglwYXBlclNp + emULcGFwZXJTb3VyY2URcHJpbnRlclJlc29sdXRpb24JbGFuZHNjYXBlB21hcmdpbnMEBAQEBAQEJ1N5 + c3RlbS5EcmF3aW5nLlByaW50aW5nLlByaW50ZXJTZXR0aW5ncwIAAAAgU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuVHJpU3RhdGUCAAAAIVN5c3RlbS5EcmF3aW5nLlByaW50aW5nLlBhcGVyU2l6ZQIAAAAjU3lz + dGVtLkRyYXdpbmcuUHJpbnRpbmcuUGFwZXJTb3VyY2UCAAAAKVN5c3RlbS5EcmF3aW5nLlByaW50aW5n + LlByaW50ZXJSZXNvbHV0aW9uAgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAf + U3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuTWFyZ2lucwIAAAACAAAACQMAAAAF/P///yBTeXN0ZW0uRHJh + d2luZy5QcmludGluZy5UcmlTdGF0ZQEAAAAFdmFsdWUAAgIAAAAACgoKAfv////8////AAkGAAAABQMA + AAAnU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRlclNldHRpbmdzEgAAAAtwcmludGVyTmFtZQpk + cml2ZXJOYW1lCm91dHB1dFBvcnQLcHJpbnRUb0ZpbGUUcHJpbnREaWFsb2dEaXNwbGF5ZWQKZXh0cmFi + eXRlcwlleHRyYWluZm8GY29waWVzBmR1cGxleAdjb2xsYXRlE2RlZmF1bHRQYWdlU2V0dGluZ3MIZnJv + bVBhZ2UGdG9QYWdlB21heFBhZ2UHbWluUGFnZQpwcmludFJhbmdlDGRldm1vZGVieXRlcw1jYWNoZWRE + ZXZtb2RlAQEBAAAABwAEBAQAAAAABAAHAQEHAgceU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuRHVwbGV4 + AgAAACBTeXN0ZW0uRHJhd2luZy5QcmludGluZy5UcmlTdGF0ZQIAAAAkU3lzdGVtLkRyYXdpbmcuUHJp + bnRpbmcuUGFnZVNldHRpbmdzAgAAAAgICAgiU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcuUHJpbnRSYW5n + ZQIAAAAHAgIAAAAKBgcAAAAACQcAAAAAAAAACv//Bfj///8eU3lzdGVtLkRyYXdpbmcuUHJpbnRpbmcu + RHVwbGV4AQAAAAd2YWx1ZV9fAAgCAAAA/////wH3/////P///wAJCgAAAAAAAAAAAAAADycAAAAAAAAF + 9f///yJTeXN0ZW0uRHJhd2luZy5QcmludGluZy5QcmludFJhbmdlAQAAAAd2YWx1ZV9fAAgCAAAAAAAA + AAAACgUGAAAAH1N5c3RlbS5EcmF3aW5nLlByaW50aW5nLk1hcmdpbnMIAAAABGxlZnQFcmlnaHQDdG9w + BmJvdHRvbQpkb3VibGVMZWZ0C2RvdWJsZVJpZ2h0CWRvdWJsZVRvcAxkb3VibGVCb3R0b20AAAAAAAAA + AAgICAgGBgYGAgAAAGQAAABkAAAAZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZ + QAEKAAAAAQAAAAkDAAAAAfP////8////AAoKCgHy/////P///wAJDwAAAAEPAAAABgAAAGQAAABkAAAA + ZAAAAGQAAAAAAAAAAABZQAAAAAAAAFlAAAAAAAAAWUAAAAAAAABZQAs= + + + + <?xml version="1.0"?><Blob><Styles type="C1.Win.C1TrueDBGrid.Design.ContextWrapper"><Data>HighlightRow{ForeColor:HighlightText;BackColor:Highlight;}Style8{}Style7{}Style2{}EvenRow{BackColor:White;}Normal{}RecordSelector{AlignImage:Center;}Inactive{ForeColor:InactiveCaptionText;BackColor:InactiveCaption;}OddRow{BackColor:224, 224, 224;}Style3{}Footer{}Style14{}Heading{AlignVert:Center;Border:Flat,ControlDark,0, 1, 0, 1;Wrap:True;BackColor:Control;ForeColor:ControlText;}Style5{}Editor{}Style10{AlignHorz:Near;}FilterWatermark{ForeColor:InfoText;BackColor:Info;}Style16{}Selected{ForeColor:HighlightText;BackColor:Highlight;}Style15{}Style13{}Style12{}Style11{}Style4{}Style9{}Group{Border:None,,0, 0, 0, 0;AlignVert:Center;BackColor:ControlDark;}Style1{}Caption{AlignHorz:Center;}Style6{}FilterBar{ForeColor:Black;BackColor:255, 255, 192;}</Data></Styles><Splits><C1.Win.C1TrueDBGrid.MergeView Name="" AlternatingRowStyle="True" CaptionHeight="17" ColumnCaptionHeight="17" ColumnFooterHeight="17" FilterBar="True" MarqueeStyle="DottedCellBorder" RecordSelectorWidth="17" DefRecSelWidth="17" VerticalScrollGroup="1" HorizontalScrollGroup="1"><CaptionStyle parent="Style2" me="Style10" /><EditorStyle parent="Editor" me="Style5" /><EvenRowStyle parent="EvenRow" me="Style8" /><FilterBarStyle parent="FilterBar" me="Style13" /><FilterWatermarkStyle parent="FilterWatermark" me="Style14" /><FooterStyle parent="Footer" me="Style3" /><GroupStyle parent="Group" me="Style12" /><HeadingStyle parent="Heading" me="Style2" /><HighLightRowStyle parent="HighlightRow" me="Style7" /><InactiveStyle parent="Inactive" me="Style4" /><OddRowStyle parent="OddRow" me="Style9" /><RecordSelectorStyle parent="RecordSelector" me="Style11" /><SelectedStyle parent="Selected" me="Style6" /><Style parent="Normal" me="Style1" /><ClientRect>0, 0, 449, 282</ClientRect><BorderSide>0</BorderSide></C1.Win.C1TrueDBGrid.MergeView></Splits><NamedStyles><Style parent="" me="Normal" /><Style parent="Normal" me="Heading" /><Style parent="Heading" me="Footer" /><Style parent="Heading" me="Caption" /><Style parent="Heading" me="Inactive" /><Style parent="Normal" me="Selected" /><Style parent="Normal" me="Editor" /><Style parent="Normal" me="HighlightRow" /><Style parent="Normal" me="EvenRow" /><Style parent="Normal" me="OddRow" /><Style parent="Heading" me="RecordSelector" /><Style parent="Normal" me="FilterBar" /><Style parent="FilterBar" me="FilterWatermark" /><Style parent="Caption" me="Group" /></NamedStyles><vertSplits>1</vertSplits><horzSplits>1</horzSplits><Layout>None</Layout><DefaultRecSelWidth>17</DefaultRecSelWidth><ClientArea>0, 0, 449, 282</ClientArea><PrintPageHeaderStyle parent="" me="Style15" /><PrintPageFooterStyle parent="" me="Style16" /></Blob> + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmDataSelect.vb b/_FRReporting/Formulare/frmDataSelect.vb new file mode 100644 index 0000000..37dd3b5 --- /dev/null +++ b/_FRReporting/Formulare/frmDataSelect.vb @@ -0,0 +1,28 @@ +Public Class frmDataSelect + + Dim m_selectedvalue As String + Property SelectedValue As String + Get + Return m_selectedvalue + End Get + Set(value As String) + m_selectedvalue = value + End Set + End Property + Private Sub frmDataSelect_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.C1Daten.Splits(0).DisplayColumns(0).Width = 0 + End Sub + + Private Sub C1Daten_Click(sender As Object, e As EventArgs) Handles C1Daten.DoubleClick + Me.SelectedValue = Me.C1Daten.Columns(0).Value + Me.DialogResult = Windows.Forms.DialogResult.OK + Me.Close() + End Sub + + + Private Sub C1Beziehungen_MouseDown(sender As Object, e As Windows.Forms.MouseEventArgs) Handles C1Daten.MouseDown + Me.C1Daten.Bookmark = Me.C1Daten.RowContaining(e.Y) + Exit Sub + End Sub + +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmEditWhere.designer.vb b/_FRReporting/Formulare/frmEditWhere.designer.vb new file mode 100644 index 0000000..53e2ce3 --- /dev/null +++ b/_FRReporting/Formulare/frmEditWhere.designer.vb @@ -0,0 +1,62 @@ + _ +Partial Class frmEditWhere + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmEditWhere)) + Me.Editor = New System.Windows.Forms.RichTextBox + Me.Button1 = New System.Windows.Forms.Button + Me.SuspendLayout() + ' + 'Editor + ' + Me.Editor.Location = New System.Drawing.Point(12, 12) + Me.Editor.Name = "Editor" + Me.Editor.Size = New System.Drawing.Size(646, 168) + Me.Editor.TabIndex = 0 + Me.Editor.Text = "" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(12, 186) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(75, 23) + Me.Button1.TabIndex = 1 + Me.Button1.Text = "Speichern" + Me.Button1.UseVisualStyleBackColor = True + ' + 'frmEditWhere + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(670, 222) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.Editor) + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.Name = "frmEditWhere" + Me.Text = "Edit Where-Klausel" + Me.ResumeLayout(False) + + End Sub + Friend WithEvents Editor As System.Windows.Forms.RichTextBox + Friend WithEvents Button1 As System.Windows.Forms.Button +End Class diff --git a/_FRReporting/Formulare/frmEditWhere.resx b/_FRReporting/Formulare/frmEditWhere.resx new file mode 100644 index 0000000..4d79d5c --- /dev/null +++ b/_FRReporting/Formulare/frmEditWhere.resx @@ -0,0 +1,418 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAQAMDAAAAEAIACoJQAARgAAACAgAAABACAAqBAAAO4lAAAYGAAAAQAgAIgJAACWNgAAEBAAAAEA + IABoBAAAHkAAACgAAAAwAAAAYAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8AAACBAAAAvgAAAMsAAADLAAAAywAA + AMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAA + AMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAvgAAAIEAAAAfAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAYgAAAPEDAwP/LCwr/z4+ + PP8/Pjz/Pz48/z8+PP8/Pjz/Pz48/z8+PP8/Pjz/Pz48/z8+PP8/Pjz/Pz48/z4+PP8+Pjz/Pj48/z4+ + PP8+Pjz/Pj48/z4+PP8+Pjz/Pj48/z4+PP8+Pjz/Pj48/z4+PP8+Pjz/LCwr/wMDA/8AAADxAAAAYgAA + AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABbAAAA/Ds6 + Of/Cvrv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le + 2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/+Le2v/i3tv/4t7a/8G+ + u/87Ojn/AAAA/AAAAFsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + ABEAAADqNTQz/9rX0//k4Nz/7Orn//Px7//z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py + 8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py + 8P/z8fD/7Orn/+Pg3P/a19P/NTQz/wAAAOoAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAGIBAQH/raqo/+Th3f/29fT//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//b19P/k4d3/raqn/wEBAf8AAABiAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJcTEhL/3tvY/+7s6v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/u7Or/3tvX/xMSEv8AAACXAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMbGxr/5eLe//Tz8v/+/v7//v7+//7+ + /v/+/v7//f39//T09P/6+vr//f39//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/08/L/5eLe/xsb + Gv8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMbGxr/5uPf//X0 + 8//+/v7//v7+//7+/v/+/v7/4uLi/5WVlf+NjY3/mpqa/6Wlpf+ysrL/v7+//8zMzP/b29v//Pz8//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/29PP/5uPf/xsbGv8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMbGxv/5+Th//b08//+/v3//v79//7+/f/+/v3/9fT0/6KjpP+4xtT/ornQ/42apv+Oj4//kZGQ/5SU + lP+Yl5f/sLCv/+zs6//+/v3//v79//7+/f/+/v3//v79//7+/f/+/v3//v79//7+/f/+/v3//v79//7+ + /f/+/v3//v79//7+/f/29PP/5+Th/xsbGv8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMbGxv/6OTh//X08//9/f3//f39//39/f/9/f3//f39/9fc4v/d6fX/yNzw/6TG + 6P+Eq9P/fpew/5GWmv+ZmZn/nZ2d/6SkpP/S0tL/+/v7//39/f/9/f3//f39//39/f/9/f3//f39//39 + /f/9/f3//f39//39/f/9/f3//f39//39/f/19PP/6OTh/xsbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMbGxv/6OXi//X08//9/f3//f39//39/f/9/f3//f39//b4 + +//W5PP/3en1/8jc8P+fxuj/RL/r/x687f9Jr9D/nKCh/6Ojo/+oqKj/vLy8/+/v7//9/f3//f39//39 + /f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/29fP/6OXi/xsbG/8AAACjAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMbGxv/6ebj//b18//9/f3//f39//39 + /f/9/f3//f39//39/f/W5PP/1eTz/8zm9v8q0Pv/ANL+/wDW/v8AyP7/N7Xf/6KnqP+rq6v/r6+v/7W1 + tf/b29v/+/v7//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/29fT/6ebj/xsb + G/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcGxv/6ufk//b0 + 8//9/Pz//fz8//38/P/9/Pz//fz8//38/P/o7/f/wNfu/0HR+v8Ayv7/AM/+/wDT/v8A1P7/AMb+/zm3 + 4f+qrq//srKy/7a2tv+7u7v/y8vL//Hx8f/9/Pz//fz8//38/P/9/Pz//fz8//38/P/9/Pz//fz8//38 + /P/29PT/6ufk/xwbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMcGxv/6+jl//b19P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/7+/z/mdLv/wLW/v8Ayv7/AMz+/wDR + /v8A1P7/ANP+/wDE/v89uOP/sbW2/7m5uf++vr7/wsLC/8nJyf/l5eX/+/v7//z8/P/8/Pz//Pz8//z8 + /P/8/Pz//Pz8//z8/P/29fT/6+jl/xwbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMcGxv/6+nm//b18//8/Pv//Pz7//z8+//8/Pv//Pz7//z8+//8/Pv/qOT5/wDL + /v8A1f7/AMz+/wDP/v8A0/7/ANX+/wDR/v8Awv7/P7rm/7e8vf/AwMD/xsbG/8vLy//R0ND/3dzc//X1 + 9P/8/Pv//Pz7//z8+//8/Pv//Pz7//z8+//29fT/6+nm/xwbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBv/7Orn//b18//7+/v/+/v7//v7+//7+/v/+/v7//v7 + +//7+/v/7/j7/zrO/f8Ay/7/ANX+/wDO/v8A0f7/ANX+/wDW/v8Az/7/AMD+/0G86P+/xMX/ysrJ/8/P + zv/T09P/2NjY/97e3v/v7+7/+vr6//v7+//7+/v/+/v7//v7+//29fT/7Orn/xwcG/8AAACjAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBv/7evo//b19P/7+/r/+/r6//v6 + +v/7+/r/+/r6//v6+v/7+/r/+/r6/+r2+v84zf3/AMv+/wDV/v8Az/7/ANP+/wDX/v8A1/7/AM3+/wC+ + /v9Fvuv/yMzN/9HR0f/W1tb/3Nvb/+Hg4P/n5ub/7+7u//j49//7+vr/+/r6//v6+v/29fT/7evo/xwc + G/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBv/7uzp//b1 + 8//6+vn/+vr5//r6+f/6+vn/+vr5//r6+f/6+vn/+vr5//r6+f/p9vr/Oc79/wDK/v8A1f7/ANH+/wDV + /v8A2f7/ANf+/wDL/v8AvP7/R8Du/87U1f/a2tn/3t7e/+Tk4//p6en/7+/u//T09P/6+fn/+vr5//r6 + +f/29fT/7uzp/xwcG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMcHBz/7uzq//b08//6+fn/+vn5//r5+f/6+fn/+vn5//r5+f/6+fn/+vn5//r5+f/6+fn/6PX5/znN + /f8Ayf7/ANT+/wDS/v8A1/7/ANv+/wDY/v8AyP7/ALn+/0rC8f/X3N3/4uHh/+fm5v/t7Oz/8vHx//j3 + 9//6+fn/+vn5//r5+f/29PP/7uzq/xwcHP8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMcHBz/7+3r//X08//5+fj/+fn4//n5+P/5+fj/+fn4//n5+P/5+fj/+fn4//n5 + +P/5+fj/+fn4/+j1+f83zP3/AMj+/wDT/v8A0/7/ANn+/wDe/v8A2f7/AMb+/wC3/v9OxPP/3+Pk/+rp + 6f/w7+7/9fX0//n4+P/5+fj/+fn4//n5+P/29fP/7+3r/xwcHP8AAACjAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBz/8O7s//X08//5+Pf/+fj3//n49//5+Pf/+fj3//n4 + 9//5+Pf/+fj3//n49//5+Pf/+fj3//n49//p9Pj/OMv9/wDH/v8A0v7/ANX+/wDb/v8A4P7/ANr+/wDD + /v8AtP7/T8X2/+br7P/z8vH/+Pf2//n49//5+Pf/+fj3//n49//29PP/7+3r/xwcHP8AAACjAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBz/8e/t//X08//49/b/+Pf2//j3 + 9v/49/b/+Pf2//j39v/49/b/+Pf2//j39v/49/b/+Pf2//j39v/49/b/5/P3/zjL/P8Axv7/ANH+/wDW + /v8A3f7/AOL+/wDa/v8Awf7/ALL+/1LH+f/w9PT/+Pf2//j39v/49/b/+Pf2//j39v/18/L/7+3r/xwc + HP8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMcHBz/8fDu//X0 + 8v/39vX/9/b1//f29f/39vX/9/b1//f29f/39vX/9/b1//f29f/39vX/9/b1//f29f/39vX/9/b1/+jz + 9v81yfz/AMX+/wDQ/v8A2P7/AOD+/wDk/v8A2/7/AL7+/wCv/v9VyPv/8vX1//f29f/39vX/9/b1//b1 + 9P/z8vD/7uzq/xwcG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMdHBz/8vDv//Xz8v/39vX/9/b1//f29f/39vX/9/b1//f29f/39vX/9/b1//f29f/39vX/9/b1//f2 + 9f/39vX/9/b1//f29f/n8vX/N8n8/wDD/v8Az/7/ANn+/wDi/v8A5v7/ANz+/wC7/v8ArP7/U8b7//D0 + 9f/39vX/9vX0//X08v/y8O7/7ero/xwbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMdHBz/8/Hw//Xz8v/29fP/9vXz//b18//29fP/9vXz//b18//29fP/9vXz//b1 + 8//29fP/9vXz//b18//29fP/9vXz//b18//29fP/5fH0/zjI/P8Awv7/AM7+/wDa/v8A5P7/AOj+/wDd + /v8BuP7/Oazk/6Cztf/Vz8n/9PPx//Px7//v7ev/6+jl/xsbG/8AAACjAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHRz/8/Lx//Tz8v/19PP/9fTy//X08v/19PP/9fTy//X0 + 8v/19PP/9fTy//X08v/19PP/9fTy//X08v/19PP/9fTy//X08v/19PP/9fTy/+Xw8/82x/z/AMD+/wDM + /v8A3P7/AOb+/wzq/f+X2uL/zMW+/7ivpP+lmIr/z8nB//Dt6//s6ef/5+Tg/xsaGv8AAACjAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHR3/9PPy//Tz8f/08/L/9PPy//Tz + 8v/08/L/9PPy//Tz8v/08/L/9PPy//Tz8v/08/L/9PPy//Tz8v/08/L/9PPy//Tz8f/08/L/9PPx//Tz + 8f/k7/L/OMb7/wC+/v8Ay/7/Cd38/7Hn6//q5+T/3tnU/83Fvv+4r6T/pJiK/8vEvP/o5OD/4t7Y/xoa + Gf8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHR3/9fTy//Ty + 8f/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py8P/z8vD/8/Lw//Py + 8P/z8vD/8/Lw//Py8P/z8vD/4u7x/zjF+/8AvP7/c8fb/93Z1P/q5+T/6ufk/97Z1P/Nxb7/v7at/6ud + mf/Ox8D/29XO/xkYF/8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMdHR3/9vTz//Py8P/y8e//8vHv//Lx7//y8e//8vHv//Lx7//y8e//8vHv//Lx7//y8e//8vHv//Lx + 7//y8e//8vHv//Lx7//y8e//8vHv//Lx7//y8e//8vHv/+Lt8P9Hwe//sa+o/83Fvv/e2dX/6ufk/+rn + 5f/a0Nb/l1LA/2kJq/+TWbD/0MfA/xgXFf8AAACjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMdHR3/9vX0//Py8P/y8O7/8vDu//Lw7v/y8O7/8vDu//Lw7v/y8O7/8vDu//Lw + 7v/y8O7/8vDu//Lw7v/y8O7/8vDu//Lw7v/y8O7/8vDu//Lw7v/y8O7/8vDu//Lw7v/d2tb/o5aJ/7iv + pP/Nxr7/3tnV/97R3/+RKNn/dQDJ/2kAtf9iAKr/k1iw/xUTE/8AAADKAAAADAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHR3/9/b1//Px7//w7+3/8O/t//Dv7f/w7+3/8O/t//Dv + 7f/w7+3/8O/t//Dv7f/w7+3/8O/t//Dv7f/w7+3/8O/t//Dv7f/w7+3/8O/t//Dv7f/w7+3/8O/t//Du + 7P/v7ev/wLet/6OWif+4r6X/0cjG/5Azzv9+ANj/fADW/3QAx/9oALT/YwCr/zcAXf8AAAD/AAAAlgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHR3/+Pf2//Lx7//v7ev/7+3r/+/t + 6//v7ev/7+3r/+/t6//v7ev/7+3r/+/t6//v7ev/7+3r/+/t6//v7ev/7+3r/+/t6//v7ev/7+3r/+/t + 6//v7ev/7+3r/+7s6v/u6+n/6+nm/7yzqf+mmo3/onO0/3IAwv93AM3/fQDX/3wA1v90AMf/bgC+/2wA + uf8hADn/AAAA9AAAABYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMdHR3/+Pj3//Lw + 7v/u7Or/7uzq/+7s6v/u7Or/7uzq/+7s6v/u7Or/7uzq/+7s6v/u7Or/7uzq/+7s6v/u7Or/7uzq/+7s + 6v/u7Or/7uzq/+7s6v/u7Or/7uvp/+3q6P/n4+D/0srC/8/Gvf/FvbT/g0ac/20Auf9xAMH/dwDN/30A + 2P+CAN7/gADa/3cAy/9EAHT/AAAA/wAAADkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMdHR3/+fj3//Hv7v/t6+n/7evp/+3r6f/t6+n/7evp/+3r6f/t6+n/7evp/+3r6f/t6+n/7evp/+3r + 6f/t6+n/7evp/+3r6f/t6+n/7evp/+3r6P/s6uj/6+nm/+Tg3P/Jv7X/6ubi//z8/P/29fT/5uDi/5hR + yf9tALn/cQDB/3oA0f+FAOP/hwDm/34A2P87AGb/AAAA/QAAACoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMdHR3/+fn4//Hv7f/s6uf/7Onn/+zp5//s6uf/7Onn/+zp5//s6uf/7Onn/+zp + 5//s6uf/7Onn/+zp5//s6uf/7Onn/+zp5//s6uf/7Onn/+vp5v/r6OX/6OXi/8vCuP/u6+j/9vX0/+Tg + 3f/h3dn/4d3Z/9/Y2P+TSsP/bQC6/3QAxv98ANX/gQDe/20Auv8JAA//AAAA0AAAAAQAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMeHR3/+vr5//Du7P/r6Ob/6+jl/+vo5f/r6Ob/6+jl/+vo + 5f/r6Ob/6+jl/+vo5f/r6Ob/6+jl/+vo5f/r6Ob/6+jl/+vo5f/r6OX/6ufl/+nm4//o5eH/4NvX/9PL + wv/8+/v/4+Dc/+Hd2f/h3dn/4d3Z/+Hd2f/s6Or/nFnL/20Auf90AMX/XwCj/wwAFf8AAADtAAAANQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMeHh7/+/r6//Du7P/q5+T/6ufk/+rn + 5P/q5+T/6ufk/+rn5P/q5+T/6ufk/+rn5P/q5+T/6ufk/+rn5P/q5+T/6ufk/+rn5P/p5uP/6OXi/+fj + 4P/l4d3/19HK/+Ld1//z8vH/4d3Z/+Hd2f/h3dn/4d3Z/+/t6//w8PD/QEBA/w4AGf8UACP/AgAD/wAA + AO0AAAA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKMeHh7/+/v7/+/t + 6//p5uP/6OXi/+jl4v/p5uP/6OXi/+jl4v/p5uP/6OXi/+jl4v/p5uP/6OXi/+jl4v/p5uP/6OXi/+jk + 4f/n5OD/5eLe/+Pf3P/g3Nj/0srC/+Tg2//x8O7/4d3Z/+Hd2f/h3dn/7+3r//Ly8v8/Pz//AAAA+QAA + AMgAAADMAAAAlQAAACMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AKMeHh7//Pz7/+/s6v/n5OH/5+Th/+fk4f/n5OH/5+Th/+fk4f/n5OH/5+Th/+fk4f/n5OH/5+Th/+fk + 4f/n5OH/5uPg/+Xi3//k4N3/4t7a/9/b1v/b1tH/y8O6/+Pe2f/y8O7/4d3Z/+Hd2f/v7ev/8PDw/z8/ + P/8AAAD4AQEBVwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAKMeHh7//Pz8/+7s6v/m4t//5uLf/+bi3//m49//5uLf/+bi3//m49//5uLf/+bi + 3//m49//5uLf/+bi3//l4t7/5OHd/+Pf2//h3dj/3tnV/9rUz//Vzsj/xLqv/+Hb1v/x8O7/4d3Z/+/t + 6//s7Oz/QEBA/wAAAPkBAQFXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJcVFRX/9vb2//Ty8f/l4d3/5OHd/+Th3f/l4d3/5OHd/+Th + 3f/l4d3/5OHd/+Th3f/l4d3/5OHd/+Tg3P/j39v/4t3Z/9/b1//d2NP/2dPO/9PNxv/MxLv/ua6i/97Y + 0//y8O7/7+3r/+7u7v85OTn/AAAA+QEBAVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGIBAQH/wcHB//39/f/r6Ob/49/c/+Pf + 3P/j39z/49/c/+Pf3P/j39z/49/c/+Pf3P/j39v/4t7b/+Hd2f/g3Nj/3tnV/9vW0f/X0sz/0szE/8vC + uv/Atq3/raCT/9vWz//7+/v/7Ozs/zk5Of8AAAD4AQEBWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAADqOzs7//T0 + 9P/+/f3/9PPx/+7r6f/t6+j/7evo/+3r6P/t6+j/7evo/+3r6P/t6uf/6+nm/+rn5P/o5eH/5eHd/+Hc + 2P/b1tD/1M3F/8nAt/+7sKX/ppiK/9vVzv/s7Oz/Ojo6/wAAAPgBAQFYAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAABbAAAA/EJCQv/a2tr//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//39/f/9/Pz/+/r6//n4 + 9v/29PL/8e/s/+vo5P/j3tn/2NHJ/8nAtf+3q57/oZGA/8rEvf85OTn/AAAA+AAAAFkAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAABAAAAYgAAAPEEBAT/MjIy/0dHR/9HR0f/R0dH/0dHR/9HR0f/R0dH/0ZG + Rv9GRkb/RUVF/0VERP9EQ0L/QkFA/0A/Pv89PDr/Ojc0/zUyL/8vKyf/KSQf/xoYF/8AAAD4AQEBWAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8AAACBAAAAvQAAAMsAAADLAAAAywAA + AMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAAAMsAAADLAAAAywAA + AMsAAABXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////yBP8AAAAA//IE/AAAAAA/8gT8AAAAAD/yBPgA + AAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf + 8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgA + AAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf + 8gT4AAAAAB/yBPgAAAAAH/IE+AAAAAAf8gT4AAAAAA/yBPgAAAAAD/IE+AAAAAAH8gT4AAAAAAfyBPgA + AAAAB/IE+AAAAAAH8gT4AAAAAA/yBPgAAAAAH/IE+AAAAAA/8gT4AAAAA//yBPgAAAAH//IE+AAAAA// + 8gT4AAAAH//yBPgAAAA///IE/AAAAH//8gT8AAAA///yBP8AAAH///IE////////8gQoAAAAIAAAAEAA + AAABACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAMgAA + AEIAAABEAAAARAAAAEQAAABEAAAARAAAAEQAAABEAAAARAAAAEQAAABEAAAARAAAAEQAAABEAAAARAAA + AEQAAABEAAAAQgAAADIAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFgAA + AIgLCwrcJSUk7CopKO4qKSjuKiko7iopKO4qKSjuKiko7iopKO4pKSjuKSko7ikpKO4pKSjuKSko7ikp + KO4pKSjuKSko7ikpKO4lJSTsCwsK3AAAAIgAAAAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAQFBQWxUE9N/tXRzv/m4+D/5+Th/+fk4f/n5OH/5+Th/+fk4f/n5OH/5+Th/+fk4f/n5OH/5+Th/+fk + 4f/n5OH/5+Th/+fk4f/n5OH/5+Th/+bj4P/U0c7/UE9N/gUFBbEAAAAEAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAALywsK/rCv7z/8vHv//n4+P/6+vn/+vr5//r6+f/6+vn/+vr5//r6+f/6+vn/+vr5//r6 + +f/6+vn/+vr5//r6+f/6+vn/+vr5//r6+f/6+vn/+fj4//Lx7//Cv7v/LCwr+gAAAC8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAABnWVdW/+ro5v/+/v7//v7+//39/f/7+/v//f39//39/f/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+/+ro5v9ZV1b/AAAAZwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1eXVv/7+7s//7+/v/+/v7/9/f3/8bGxv+0tLT/wMDA/87O + zv/Z2dn/7u7u//39/f/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7/8O7s/15d + W/8AAABtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbV9eXf/w7u3//f39//39/f/7+/v/ysvN/73N + 3f+dssb/ipai/5CUl/+enZ3/xcXF//Pz8//9/fz//f39//39/f/9/f3//f39//39/f/9/f3//f39//39 + /f/w7u3/X15c/wAAAG0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtX15d//Du7f/9/f3//f39//39 + /f/x8/b/1+Xz/8Ta7/+Bud3/SrDT/3aks/+hoaL/v7+//+jo6P/9/f3//f39//39/f/9/f3//f39//39 + /f/9/f3//f39//Hv7f9fXl3/AAAAbQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1gXl3/8e/t//38 + /P/9/Pz//fz8//38/P/X5fP/rd/1/xLP/P8A0/7/DMb3/2Cxyv+sra3/s7Oz/9nZ2f/09PT//fz8//38 + /P/9/Pz//fz8//38/P/9/Pz/8e/u/2BeXf8AAABtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWBf + Xv/y8O7//Pz8//z8/P/8/Pz//Pz8/9rr9v9G1Pj/AMv+/wDQ/v8A0v7/DMT3/3y0yP+1trb/v7+//9DQ + 0P/x8fH//Pv7//z8/P/8/Pz//Pz8//z8/P/y8O7/YF9e/wAAAG0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAABtYWBe//Lx7v/7+/r/+/v7//v7+v/7+/v/5/b6/0zW/P8A0P7/AM7+/wDT/v8A0/7/DsL4/228 + 1v/Cw8P/ysrK/9TU1P/n5+b/+Pj3//v7+v/7+/r/+/v7//Lx7/9hYF7/AAAAbQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAG1hYF//8vHv//r6+v/6+vr/+vr6//r6+v/5+vr/x+76/xjN/f8A0f7/ANH+/wDV + /v8A0P7/DsH5/4zD2P/Nzs7/1tbW/97d3f/s7Ov/9vb2//r6+v/6+vr/8vHv/2FgX/8AAABtAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAbWJhYP/z8e//+vn5//r5+f/6+fn/+vn5//r5+f/6+fn/xe36/zPQ + /f8A0f7/ANP+/wDY/v8A0v7/D7/6/3vI5f/b3Nv/4+Li/+zr6//z8/P/+vn5//r5+f/z8fD/YmFg/wAA + AG0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtYmFg//Px8P/5+fj/+fn4//n5+P/5+fj/+fn4//n5 + +P/3+Pj/xO35/xjL/f8A0P7/ANb+/wDb/v8Azf7/EL37/53T6P/m5ub/8O/v//f29v/5+fj/+fn4//Py + 8P9iYWD/AAAAbQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1iYmH/8/Lw//j39v/49/b/+Pf2//j3 + 9v/49/b/+Pf2//j39v/49/b/xOv4/zLN/P8Az/7/ANf+/wDe/v8A0P7/Ebr8/4rU8//09PP/+Pf2//j3 + 9v/49/b/8/Hw/2JhYf8AAABtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWNiYf/z8vD/9/b1//f2 + 9f/39vX/9/b1//f29f/39vX/9/b1//f29f/19fX/xOr3/xfI/f8Az/7/ANz+/wDg/v8Ayv7/Erj8/6zh + 9//29vX/9/b1//b19P/x8O7/YmFg/wAAAG0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtZGJi//Ty + 8f/29fT/9vX0//b19P/29fT/9vX0//b19P/29fT/9vX0//b19P/29fT/w+n2/zLK/P8Azv7/ANz+/wDj + /v8Azv7/GbT6/6fT5v/u7Or/9PPx/+/t6/9hX1//AAAAbQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AG1kY2L/8/Lx//X08v/19PL/9fTy//X08v/19PL/9fTy//X08v/19PL/9fTy//X08v/z8/L/wuj0/xjF + /f8AzP7/AOH+/wXm/f93yOD/qbS0/8G5r//p5uP/6+jm/19eXP8AAABtAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAbWRkZP/08vH/8/Lx//Py8f/z8vH/8/Lx//Py8f/z8vH/8/Lx//Py8f/z8vH/8/Lw//Py + 8f/z8vD/wObz/zHG+/8Oy/n/jt7n/+fj4P/X0cz/ua+l/7mwp//f2tX/W1lX/wAAAG0AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAABtZWRk//Ty8f/y8e//8vHv//Lx7//y8e//8vHv//Lx7//y8e//8vHv//Lx + 7//y8e//8vHv//Lx7//w8O//v+Xy/1O84P/AxMH/5ODd/+fj4P/Frsf/i02r/7WXuv9WU1D/AAAAbQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1lZWT/9PLx//Hv7f/x7+3/8e/t//Hv7f/x7+3/8e/t//Hv + 7f/x7+3/8e/t//Hv7f/x7+3/8e/t//Hv7f/x7+3/0MvF/6+kmf/Mxb7/y67W/4QR1P9wAMH/bhOt/0Ec + V/8AAACmAAAAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWVlZf/08vH/7+3r/+/t6//v7ev/7+3r/+/t + 6//v7ev/7+3r/+/t6//v7ev/7+3r/+/t6//v7ev/7+3r/+7t6//o5eL/wbiv/62bof+NO8L/egDS/3oA + 0v9uAL3/XwCk/w4AGfEAAABRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABtZmZl//Py8f/t6+n/7evp/+3r + 6f/t6+n/7evp/+3r6f/t6+n/7evp/+3r6f/t6+n/7evp/+3r6f/t6+j/6+fl/9zV0P/c1tD/xLLC/4g6 + uv9xAMH/eQDR/4IA3/98ANT/KwBK/wAAAHcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG1mZmX/8/Lw/+zq + 5//s6ef/7Orn/+zp5//s6uf/7Onn/+zq5//s6ef/7Orn/+zp5//s6uf/6+nn/+rn5f/a1M7/5+Le/+7r + 6f/m4uD/0LzW/34gvv9zAMX/gADc/3gAzf8RAB30AAAAVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWdm + Zv/z8fD/6ufl/+rn5P/q5+X/6ufk/+rn5f/q5+T/6ufl/+rn5P/q5+X/6ufk/+rn5P/o5eL/49/b/9nT + zP/x7+7/4d3Z/+Hd2f/k4N3/yLfR/10ajP9NAIP/GgAt+wAAAIIAAAAMAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAABtZ2dn//Px8P/p5uP/6OXi/+nm4//o5eL/6ebj/+jl4v/p5uP/6OXi/+nm4//o5eL/5+Tg/+Th + 3v/d19L/3tjS/+zq5//h3dn/5ODd/+7t7P9YWFj+CgcM5QQACNEAAACCAAAADQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAG1oaGf/8/Hv/+bj4P/m4+D/5uPg/+bj4P/m4+D/5uPg/+bj4P/m4+D/5uPf/+Th + 3v/i3tr/3tnV/9PMxv/Z08z/7Onn/+Tg3f/b2tn/WFhY/gAAAJUBAQETAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAZ2JiYv/08vH/5eHd/+Th3f/l4d3/5OHd/+Xh3f/k4d3/5eHd/+Tg + 3f/j39v/4d3Z/93Y0//X0cv/yMC3/9PMxP/v7ev/7evq/1RUVP4HBweyAQEBEwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvMTEx+tjY2P/u6+r/5+Ph/+bj4P/m4+D/5uPg/+bj + 4P/l4t7/5ODd/+Hd2f/e2dT/1tHK/83FvP+3rKH/ysK5/97e3v9UVFT9AAAAlQEBARQAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQGBgaxWlpa/uzs7P/5+Pf/+Pf2//j3 + 9v/49/b/9/f2//f19P/08/H/7+3q/+nm4v/d19H/zcW7/7Gklv/At63/VFRU/QYGBrIBAQEUAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAACIDAwM3Coq + KuwvLy/uLy8v7i8vL+4uLi7uLi4u7i4tLe4sLCvuKyop7igmJe4kIiDuHhsY7hQSEe4AAACVAQEBFAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAcAAAAyAAAAQgAAAEQAAABEAAAARAAAAEQAAABEAAAARAAAAEQAAABEAAAARAAAAEQAAABEAAAARAAA + ABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPgAAB/wAAAP4AAAB+AA + AAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AAAAfgAAAH4AAAB+AA + AAfgAAAH4AAAA+AAAAPgAAAD4AAAA+AAAAPgAAAH4AAAP+AAAH/gAAD/4AAB//AAA//4AAf/KAAAABgA + AAAwAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAYgAA + AGYAAABmAAAAZgAAAGYAAABmAAAAZgAAAGYAAABmAAAAZgAAAGYAAABmAAAAZgAAAGIAAAAoAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG5APj38i4mG/5COi/+Qjov/kI6L/5COi/+Qjov/kI6L/5CO + i/+Qjov/kI6L/5COi/+Qjov/kI6L/4uJh/8/Pj38AAAAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHTg3 + N/rm4+D/9vX0//j49//4+Pf/+Pj3//j49//4+Pf/+Pj3//j49//4+Pf/+Pj3//j49//4+Pf/+Pj3//b1 + 9P/l4+D/ODc2+gAAAB0AAAAAAAAAAAAAAAAAAAAAAAAATnx6eP/39vb//v7+//39/f/6+vr//f39//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/39vb/fHp4/wAAAE4AAAAAAAAAAAAA + AAAAAAAAAAAAUoB/ff/5+fj//v79//T09P+foqb/m6St/6SkpP+0tLT/5eXl//7+/f/+/v3//v79//7+ + /f/+/v3//v79//7+/f/6+fj/gH99/wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoF/fv/5+Pj//f39//39 + /f/g6PH/xNnv/3mx1f9kprz/oKGh/8zMzP/5+fn//f39//39/f/9/f3//f39//39/f/5+Pj/gX9+/wAA + AFIAAAAAAAAAAAAAAAAAAAAAAAAAUoKAf//5+Pf//fz8//38/P/u8/j/qNz0/wrO/f8A0f7/RLbZ/62u + rv/AwMD/7e3t//38/P/9/Pz//fz8//38/P/5+Pj/goB//wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoOB + gP/5+Pf//Pz7//z8+//7+/v/UNX5/wDN/v8A0f7/AM/+/0u63/+7vL3/x8fH/+Pj4//6+vn//Pz7//z8 + +//5+Pf/g4GA/wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoSDgf/4+Pf/+/r6//v6+v/7+vr/w+37/w7O + /f8A0P7/ANX+/wDM/v9Rv+X/zM3N/9fX1//l5OT/9/b2//v6+v/49/f/hIOB/wAAAFIAAAAAAAAAAAAA + AAAAAAAAAAAAUoWEgv/49/b/+vn5//r5+f/6+fn/+vn5/8Hs+v8Ozf3/ANP+/wDY/v8Ayf7/V8Ps/9zd + 3f/o5+f/8/Ly//r5+f/49/b/hYSC/wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoWEg//39vX/+fj3//n4 + 9//5+Pf/+fj3//n49//A6/n/Dsv9/wDU/v8A3P7/AMb+/1/I8v/s7e3/9/f2//n49//39vX/hYSD/wAA + AFIAAAAAAAAAAAAAAAAAAAAAAAAAUoaFhP/29fT/9/b1//f29f/39vX/9/b1//f29f/39vX/v+n3/w3J + /f8A1v7/AOD+/wDD/v9lzPn/9vb1//f29f/19PP/hYSD/wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoeG + hf/19PP/9vX0//b19P/29fT/9vX0//b19P/29fT/9vX0/77o9v8Ox/3/ANj+/wDj/v8Av/7/h8bi/+3r + 6P/y8O7/g4KA/wAAAFIAAAAAAAAAAAAAAAAAAAAAAAAAUoiHh//08/L/9PPy//Tz8v/08/L/9PPy//Tz + 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 + rEGAAaxBgAGsQYAHrEGAD6xBwB+sQQ== + + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmEditWhere.vb b/_FRReporting/Formulare/frmEditWhere.vb new file mode 100644 index 0000000..489dba5 --- /dev/null +++ b/_FRReporting/Formulare/frmEditWhere.vb @@ -0,0 +1,22 @@ +Public Class frmEditWhere + + Dim m_sql As String + Property sql() As String + Get + Return m_sql + End Get + Set(ByVal value As String) + m_sql = value + End Set + End Property + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Me.sql = Me.Editor.Text + Me.DialogResult = Windows.Forms.DialogResult.OK + Me.Close() + End Sub + + Private Sub frmEditWhere_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Me.Editor.Text = Me.sql + End Sub +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/frmViewer.Designer.vb b/_FRReporting/Formulare/frmViewer.Designer.vb new file mode 100644 index 0000000..31989a4 --- /dev/null +++ b/_FRReporting/Formulare/frmViewer.Designer.vb @@ -0,0 +1,37 @@ + _ +Partial Class frmViewer + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.SuspendLayout() + ' + 'frmViewer + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(284, 262) + Me.Name = "frmViewer" + Me.Text = "frmViewer" + Me.ResumeLayout(False) + + End Sub +End Class diff --git a/_FRReporting/Formulare/frmViewer.resx b/_FRReporting/Formulare/frmViewer.resx new file mode 100644 index 0000000..7080a7d --- /dev/null +++ b/_FRReporting/Formulare/frmViewer.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/_FRReporting/Formulare/frmViewer.vb b/_FRReporting/Formulare/frmViewer.vb new file mode 100644 index 0000000..fba6276 --- /dev/null +++ b/_FRReporting/Formulare/frmViewer.vb @@ -0,0 +1,3 @@ +Public Class frmViewer + +End Class \ No newline at end of file diff --git a/_FRReporting/Formulare/sample.Designer.vb b/_FRReporting/Formulare/sample.Designer.vb new file mode 100644 index 0000000..88417b6 --- /dev/null +++ b/_FRReporting/Formulare/sample.Designer.vb @@ -0,0 +1,37 @@ + _ +Partial Class sample + Inherits System.Windows.Forms.Form + + 'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Wird vom Windows Form-Designer benötigt. + Private components As System.ComponentModel.IContainer + + 'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich. + 'Das Bearbeiten ist mit dem Windows Form-Designer möglich. + 'Das Bearbeiten mit dem Code-Editor ist nicht möglich. + _ + Private Sub InitializeComponent() + Me.SuspendLayout() + ' + 'sample + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(824, 591) + Me.Name = "sample" + Me.Text = "sample" + Me.ResumeLayout(False) + + End Sub +End Class diff --git a/_FRReporting/Formulare/sample.resx b/_FRReporting/Formulare/sample.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/_FRReporting/Formulare/sample.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/_FRReporting/Formulare/sample.vb b/_FRReporting/Formulare/sample.vb new file mode 100644 index 0000000..03bb3da --- /dev/null +++ b/_FRReporting/Formulare/sample.vb @@ -0,0 +1,3 @@ +Public Class sample + +End Class \ No newline at end of file diff --git a/_FRReporting/Klassen/Crypto.vb b/_FRReporting/Klassen/Crypto.vb new file mode 100644 index 0000000..e6f4afa --- /dev/null +++ b/_FRReporting/Klassen/Crypto.vb @@ -0,0 +1,34 @@ +Module Crypto + Public Function EncryptText(ByVal strText As String, ByVal strPwd As String) + Dim i As Integer, c As Integer + Dim strBuff As String + + strPwd = UCase$(strPwd) + If Len(strPwd) Then + For i = 1 To Len(strText) + c = Asc(Mid$(strText, i, 1)) + c = c + Asc(Mid$(strPwd, (i Mod Len(strPwd)) + 1, 1)) + strBuff = strBuff & Chr(c And &HFF) + Next i + Else + strBuff = strText + End If + EncryptText = strBuff + End Function + + Public Function DecryptText(ByVal strText As String, ByVal strPwd As String) + Dim i As Integer, c As Integer + Dim strBuff As String + strPwd = UCase$(strPwd) + If Len(strPwd) Then + For i = 1 To Len(strText) + c = Asc(Mid$(strText, i, 1)) + c = c - Asc(Mid$(strPwd, (i Mod Len(strPwd)) + 1, 1)) + strBuff = strBuff & Chr(c And &HFF) + Next i + Else + strBuff = strText + End If + DecryptText = strBuff + End Function +End Module \ No newline at end of file diff --git a/_FRReporting/Klassen/Globals.vb b/_FRReporting/Klassen/Globals.vb new file mode 100644 index 0000000..d9a675b --- /dev/null +++ b/_FRReporting/Klassen/Globals.vb @@ -0,0 +1,11 @@ +Module Globals + Public Spaltendaten As New DataTable + Public sConnectionString As String + Public conn As New DB.clsConnectionProvider + + Public ConnectionFileName As String = "" + Public Mitarbeiternr As Integer + Public TmpFilepath As String + Public SecurityDaten As New DataSet + +End Module \ No newline at end of file diff --git a/_FRReporting/Klassen/MyDocMgmt.vb b/_FRReporting/Klassen/MyDocMgmt.vb new file mode 100644 index 0000000..1f30119 --- /dev/null +++ b/_FRReporting/Klassen/MyDocMgmt.vb @@ -0,0 +1,425 @@ +Imports C1.Win.C1TrueDBGrid +Imports System +Imports System.IO +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Imports System.Diagnostics + +' +Namespace Utils + ''' + ''' Klasse für das Speichern bzw. Auslesen von Image-Dateien in der Datenbank + ''' + ''' + ''' Es werden folgende Datebanktabellen berücksichtigt: + ''' + ''' + ''' Dokument Attribut DocImage + ''' + ''' Profile Attribut V_Uebersicht (Profillayout des C1TrueDBGrids der + ''' Vertragsübersicht|Vertragselemente + ''' + ''' yes + Public Class MyDocMgmt + ''' + ''' Grid-Layoutfile speichern + ''' + ''' C1Truedbgrind, von welchem das Layout gespeichert werden soll + ''' Nummer des Grids: 1=Vertragsübersicht... + ''' + ''' + Public Function Save_LayoutFile(ByRef c1data As C1TrueDBGrid, ByVal GridNo As Integer, ByVal Profilnr As Integer) As Boolean + Dim filename As String = Globals.TmpFilepath(+Trim(Str(Profilnr)) + Trim(Str(GridNo)) + ".lyt") + c1data.SaveLayout(filename) + + Dim Connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from profil where profilnr = " & Str(Profilnr), Connection) + 'mitarbeiternr=" + Str(Globals.clsmitarbeiter.iMitarbeiternr.Value) + Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Read) + Dim mydata(fs.Length) As Byte + fs.Read(mydata, 0, fs.Length) + fs.Close() + Try + Connection.ConnectionString = Globals.sConnectionString + Connection.Open() + DA.Fill(ds, "profil") + Dim myRow As DataRow + If ds.Tables(0).Rows.Count = 0 Then + ' Neues Profil sepeichern + myRow = ds.Tables(0).NewRow + myRow.Item(1) = Globals.Mitarbeiternr + myRow.Item(2) = "" + Select Case GridNo + Case 1 + myRow.Item(3) = mydata + End Select + ds.Tables(0).Rows.Add(myRow) + DA.Update(ds, "profil") + Else + myRow = ds.Tables(0).Rows(0) + Select Case GridNo + Case 1 + myRow.Item(3) = mydata + End Select + DA.Update(ds, "profil") + End If + Catch ex As Exception + MsgBox(ex.Message) + Return False + End Try + fs = Nothing + cb = Nothing + ds = Nothing + DA = Nothing + Connection.Close() + Connection = Nothing + Return True + + End Function + + Private Function Get_Layoutfile_from_db(ByVal filename As String, ByVal GridNo As Integer, ByVal Profilnr As Integer) As Boolean + 'Exit Function + Dim connection As New SqlConnection() + Dim da As New SqlDataAdapter("Select * From profil where profilnr=" & Str(Profilnr), connection) + 'mitarbeiternr=" + Str(Globals.clsmitarbeiter.iMitarbeiternr.Value) + Dim CB As SqlCommandBuilder = New SqlCommandBuilder(da) + Dim ds As New DataSet() + Try + connection.ConnectionString = Globals.sConnectionString + connection.Open() + da.Fill(ds, "docs") + Dim myRow As DataRow + myRow = ds.Tables(0).Rows(0) + Dim MyData() As Byte + Select Case GridNo + Case 1 + MyData = myRow.Item(3) + + End Select + + Dim K As Long + K = UBound(MyData) + Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write) + fs.Write(MyData, 0, K) + fs.Close() + fs = Nothing + Return True + Catch ex As Exception + Return False + End Try + CB = Nothing + ds = Nothing + da = Nothing + connection.Close() + connection = Nothing + Return True + End Function + + Public Function Get_Layout(ByRef c1data As C1TrueDBGrid, ByVal GridNo As Integer, ByVal Profilnr As Integer) As Boolean + Dim filename As String = Globals.TmpFilepath + Trim(Str(Profilnr)) + Trim(Str(GridNo)) + ".lyt" + If File.Exists(filename) Then + c1data.LoadLayout(filename) + Return True + End If + If Get_Layoutfile_from_db(filename, GridNo, Profilnr) Then + c1data.LoadLayout(filename) + Return True + End If + Return False + End Function + + ''' + ''' Dokument in der Tabelle Dokument speichern + ''' + ''' Nummer des Dokument-Datensatzes + ''' Zu speichender Dateiname + ''' + ''' + + Public Function Save_Document(ByVal Dokumentnr As Integer, ByVal Filename As String) As Boolean + Dim Connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from dokument where dokumentnr =" + Str(Dokumentnr), Connection) + Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim fs As New FileStream(Filename, FileMode.OpenOrCreate, FileAccess.Read) + Dim mydata(fs.Length) As Byte + fs.Read(mydata, 0, fs.Length) + fs.Close() + Try + Connection.ConnectionString = Globals.sConnectionString + Connection.Open() + DA.Fill(ds, "Dokument") + Dim myRow As DataRow + If ds.Tables(0).Rows.Count = 0 Then + Return False + Else + myRow = ds.Tables(0).Rows(0) + myRow.Item(16) = mydata + DA.Update(ds, "Dokument") + End If + Catch ex As Exception + MsgBox(ex.Message) + Return False + End Try + fs = Nothing + cb = Nothing + ds = Nothing + DA = Nothing + Connection.Close() + Connection = Nothing + Return True + End Function + + ''' + ''' Liest das Dokument aus der DB und speichert dieses unter einem temporären Filenamen ab + ''' + ''' + ''' + ''' + Public Function Get_Dokument(ByVal DokumentNr As Integer) As String + Dim Filename As String = Globals.TmpFilepath + If Right(Filename, 1) <> "\" Then Filename = Filename + "\" + + Dim connection As New SqlConnection() + Dim da As New SqlDataAdapter("Select * From Dokument where DokumentNr=" + Str(DokumentNr), connection) + Dim CB As SqlCommandBuilder = New SqlCommandBuilder(da) + Dim ds As New DataSet() + Try + connection.ConnectionString = Globals.sConnectionString + connection.Open() + da.Fill(ds, "Dokument") + Dim myRow As DataRow + myRow = ds.Tables(0).Rows(0) + Select Case myRow.Item("Speichertypnr") + Case 1 + Dim MyData() As Byte + MyData = myRow.Item(16) + + Dim K As Long + K = UBound(MyData) + Filename = Filename + myRow.Item(6) + Dim fs As New FileStream(Filename, FileMode.OpenOrCreate, FileAccess.Write) + fs.Write(MyData, 0, K) + fs.Close() + fs = Nothing + Case 2 + Filename = myRow.Item("OriginalFilename_incl_Path") + Case 3 + Filename = myRow.Item("OriginalFilename_incl_Path") + Case Else + Filename = myRow.Item("OriginalFilename_incl_Path") + End Select + + Catch ex As Exception + MsgBox(ex.Message, MsgBoxStyle.Critical) + Return "" + Finally + connection.Close() + connection = Nothing + End Try + CB = Nothing + ds = Nothing + da = Nothing + Return Filename + End Function + + Public Function Show_Document(ByVal Dokumentnr As Integer) As Boolean + Dim tmpfilename As String = Me.Get_Dokument(Dokumentnr) + If tmpfilename <> "" Then + OpenSystemFile(tmpfilename) + Return True + End If + Return False + End Function + + Public Function OpenSystemFile(ByVal sFileName As String) As Boolean + If Len(sFileName) > 0 Then + System.Diagnostics.Process.Start(sFileName) + ' + ' ShellExecute(GetDesktopWindow(), vbNullString, sFileName, vbNullString, vbNullString, vbNormalFocus) + Return True + End If + End Function + + Public Function Save_RptDatei(ByVal Auswertungnr As Integer, ByVal AuswertungName As String) As String + Dim filename As String = AuswertungName + Dim Connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from AuswertungRptDatei where AuswertungDateiNr = " & Str(Auswertungnr), Connection) + Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Read) + Dim mydata(fs.Length) As Byte + fs.Read(mydata, 0, fs.Length) + fs.Close() + Try + Connection.ConnectionString = Globals.sConnectionString + Connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + If ds.Tables(0).Rows.Count = 0 Then + ' Neues Datei speichern + myRow = ds.Tables(0).NewRow + myRow.Item(0) = Auswertungnr + myRow.Item(1) = AuswertungName + myRow.Item(2) = RptName(AuswertungName) + myRow.Item(3) = mydata + myRow.Item(4) = Now + myRow.Item(5) = Now + myRow.Item(6) = Globals.Mitarbeiternr + ds.Tables(0).Rows.Add(myRow) + DA.Update(ds, "RptFile") + Else + myRow = ds.Tables(0).Rows(0) + myRow.Item(1) = AuswertungName + myRow.Item(2) = RptName(AuswertungName) + myRow.Item(3) = mydata + myRow.Item(5) = Now + myRow.Item(6) = Globals.Mitarbeiternr + DA.Update(ds, "RptFile") + End If + Catch ex As Exception + MsgBox(ex.Message) + Return False + End Try + fs = Nothing + cb = Nothing + ds = Nothing + DA = Nothing + Connection.Close() + Connection = Nothing + Return RptName(AuswertungName) + End Function + + Public Function RptName(ByVal path As String) As String + Dim i As Integer + Dim file As String = path + i = InStrRev(file.Trim, "\") + If i = 0 Then + Return file.Trim + Else + Return Right(file.Trim, Len(file.Trim) - i) + End If + End Function + + Public Function Get_RptDatei(ByVal Auswertungnr As String, Optional ByVal fname As String = "") As String + Dim connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from AuswertungRptDatei where AuswertungDateiNr = " & Str(Auswertungnr), connection) + Dim CB As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim Filename As String = "" + Try + connection.ConnectionString = Globals.sConnectionString + connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + myRow = ds.Tables(0).Rows(0) + Dim MyData() As Byte + Filename = Globals.TmpFilepath + "\" + myRow.Item(2).ToString + If fname <> "" Then + Filename = fname + End If + MyData = myRow.Item(3) + Dim K As Long + K = UBound(MyData) + Dim fs As New FileStream(Filename, FileMode.OpenOrCreate, FileAccess.Write) + fs.Write(MyData, 0, K) + fs.Close() + fs = Nothing + Catch ex As Exception + Return "" + End Try + CB = Nothing + ds = Nothing + DA = Nothing + connection.Close() + connection = Nothing + Return Filename + End Function + + Public Function Save_Architekturfile(ByVal Applikationnr As Integer, ByVal iFilename As String) + Dim filename As String = iFilename + Dim Connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from ApplikationArchitektur where applikationnr = " & Str(Applikationnr), Connection) + Dim cb As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim fs As New FileStream(filename, FileMode.OpenOrCreate, FileAccess.Read) + Dim mydata(fs.Length) As Byte + fs.Read(mydata, 0, fs.Length) + fs.Close() + Try + Connection.ConnectionString = Globals.sConnectionString + Connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + If ds.Tables(0).Rows.Count = 0 Then + ' Neues Datei speichern + myRow = ds.Tables(0).NewRow + myRow.Item(0) = Applikationnr + myRow.Item(1) = mydata + ' myRow.Item(4) = Now + ' myRow.Item(5) = Now + ' myRow.Item(6) = Globals.clsmitarbeiter.iMitarbeiternr.Value + ds.Tables(0).Rows.Add(myRow) + DA.Update(ds, "RptFile") + Else + myRow = ds.Tables(0).Rows(0) + myRow.Item(1) = mydata + ' myRow.Item(2) = RptName(AuswertungName) + ' myRow.Item(3) = mydata + ' myRow.Item(5) = Now + ' myRow.Item(6) = Globals.clsmitarbeiter.iMitarbeiternr.Value + DA.Update(ds, "RptFile") + End If + Catch ex As Exception + MsgBox(ex.Message) + Return False + End Try + fs = Nothing + cb = Nothing + ds = Nothing + DA = Nothing + Connection.Close() + Connection = Nothing + End Function + + Public Function Get_Architekturfile(ByVal Applikationnr As String, Optional ByVal fname As String = "") As String + Dim connection As New SqlConnection() + Dim DA As New SqlDataAdapter("select * from ApplikationArchitektur where applikationnr = " & Str(Applikationnr), connection) + Dim CB As SqlCommandBuilder = New SqlCommandBuilder(DA) + Dim ds As New DataSet() + Dim Filename As String = "" + Try + connection.ConnectionString = Globals.sConnectionString + connection.Open() + DA.Fill(ds, "RptFile") + Dim myRow As DataRow + myRow = ds.Tables(0).Rows(0) + Dim MyData() As Byte + Filename = Globals.TmpFilepath + "\architekturfile.xml" + If fname <> "" Then + Filename = fname + End If + MyData = myRow.Item(1) + Dim K As Long + K = UBound(MyData) + Dim fs As New FileStream(Filename, FileMode.OpenOrCreate, FileAccess.Write) + fs.Write(MyData, 0, K) + fs.Close() + fs = Nothing + Catch ex As Exception + Return "" + End Try + CB = Nothing + ds = Nothing + DA = Nothing + connection.Close() + connection = Nothing + Return Filename + End Function + + End Class + +End Namespace diff --git a/_FRReporting/Klassen/MySecurity.vb b/_FRReporting/Klassen/MySecurity.vb new file mode 100644 index 0000000..14a6518 --- /dev/null +++ b/_FRReporting/Klassen/MySecurity.vb @@ -0,0 +1,816 @@ +Imports C1.Win.C1TrueDBGrid +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Imports System.Windows.Forms +Imports System.Drawing +Namespace Utils + ''' + ''' Formular-Security-Objekte auslesen und auf DB schreiben bzw. Formular-Security zur Laufzeit setzen + ''' + ''' + + Public Class MySecurity + + Dim SecurityData As DataSet = Globals.SecurityDaten + Dim connection As New SqlConnection() + Dim da As New SqlDataAdapter("", connection) + + Dim IntForm As Object + Dim ctlcol As New Collection + Dim formname As String = "" + + + + ''' + ''' Formularsecurity setzen + ''' + ''' Aktuelles Formular + ''' + ''' + Public Function Set_Form_Security(ByRef f As Object) + IntForm = f + formname = f.Name + 'Load form DB + Load_Data(f.Name) + 'Load FormObjects + Me.ctlcol.Clear() + formname = f.Name + For Each ctl As Control In f.Controls + Objectanalysis(ctl) + ' AddHandler ctl.HelpRequested, AddressOf Object_MouseDown + 'ctl.ContextMenuStrip = Globals.TTContextMenuStrip + 'AddHandler ctl.KeyDown, AddressOf Object_MouseDown + Next + Set_Security() + + End Function + + Public Function Set_Menu_Security(ByRef f As Form, ByRef menu As ToolStripMenuItem, ByVal Menuname As String) + IntForm = f + formname = f.Name + Load_Data(f.Name) + Me.ctlcol.Clear() + formname = f.Name + Dim ctl As Object = menu + Dim typ As System.Type = ctl.GetType + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, Menuname, ctl.Name)) + + Set_Security() + 'If Globals.Set_ToolTips = True Then + ' tt.Edit_ToolTips(f, ctlcol) + 'Else + ' tt.Set_ToolTips(f) + 'End If + + End Function + + + Public Function Set_Form_Readonly(ByRef f As Form) + IntForm = f + Me.formname = f.Name + Load_Data(f.Name) + Me.ctlcol.Clear() + For Each ctl As Control In f.Controls + Objectanalysis_readonly(ctl) + Next + End Function + Public Function Set_Form_Default(ByRef f As Form) + IntForm = f + Me.formname = f.Name + Load_Data(f.Name) + Me.ctlcol.Clear() + For Each ctl As Control In f.Controls + Objectanalysis_default(ctl) + Next + End Function + + Private Function Objectanalysis_readonly(ByRef ctl As Object) As String + Dim typ As System.Type = ctl.GetType + Select Case LCase(typ.Name) + Case "splitcontainer" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmpsplit As SplitContainer = ctl + For Each ctrl As Object In tmpsplit.Panel1.Controls + Objectanalysis_readonly(ctrl) + Next + For Each ctrl As Object In tmpsplit.Panel2.Controls + Objectanalysis_readonly(ctrl) + Next + Case "tabcontrol", "clsmytabcontrol" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabcontrol As TabControl = ctl + For Each ctl In tmptabcontrol.TabPages + Objectanalysis_readonly(ctl) + Next + Case "tabpage" + Dim tmptabpage As TabPage = ctl + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, tmptabpage.Parent.Name, 1)) + + For Each ctl In tmptabpage.Controls + Objectanalysis_readonly(ctl) + Next + Case "groupbox" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabpage As GroupBox = ctl + For Each ctl In tmptabpage.Controls + Objectanalysis_readonly(ctl) + Next + Case "panel" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmppanel As Panel = ctl + For Each ctl In tmppanel.Controls + Objectanalysis_readonly(ctl) + Next + Case "textbox" + Dim x As TextBox = ctl + x.BackColor = Color.LightGray + x.ForeColor = Color.Black + x.ReadOnly = True + Case "maskedtextbox" + Dim x As MaskedTextBox = ctl + x.BackColor = Color.LightGray + x.ForeColor = Color.Black + x.ReadOnly = True + Case "combobox" + Dim x As ComboBox = ctl + x.Enabled = False + x.BackColor = Color.LightGray + x.ForeColor = Color.Black + Case "checkbox" + Dim x As CheckBox = ctl + x.Enabled = False + Case "radiobutton" + Dim x As RadioButton = ctl + x.Enabled = False + Case "comboboxtree" + Dim x As Object = ctl + x.enabled = False + x.BackColor = Color.LightGray + x.ForeColor = Color.Black + Case "richtextbox" + Dim x As Object = ctl + x.BackColor = Color.LightGray + x.ForeColor = Color.Black + x.ReadOnly = True + Case "button" + Dim x As Button = ctl + x.Enabled = False + Case "listbox" + Dim x As Object = ctl + ctl.enabled = False + Case "checkedlistbox" + Dim x As Object = ctl + ctl.enabled = False + Case "datetimepicker" + Dim x As Object = ctl + ctl.enabled = False + + Case Else + End Select + End Function + + Private Function Objectanalysis_default(ByRef ctl As Object) As String + Dim typ As System.Type = ctl.GetType + Select Case LCase(typ.Name) + Case "splitcontainer" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmpsplit As SplitContainer = ctl + For Each ctrl As Object In tmpsplit.Panel1.Controls + Objectanalysis_default(ctrl) + Next + For Each ctrl As Object In tmpsplit.Panel2.Controls + Objectanalysis_default(ctrl) + Next + Case "tabcontrol", "clsmytabcontrol" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabcontrol As TabControl = ctl + For Each ctl In tmptabcontrol.TabPages + Objectanalysis_default(ctl) + Next + Case "tabpage" + Dim tmptabpage As TabPage = ctl + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, tmptabpage.Parent.Name, 1)) + For Each ctl In tmptabpage.Controls + Objectanalysis_default(ctl) + Next + Case "groupbox" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabpage As GroupBox = ctl + For Each ctl In tmptabpage.Controls + Objectanalysis_default(ctl) + Next + Case "panel" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmppanel As Panel = ctl + For Each ctl In tmppanel.Controls + Objectanalysis_default(ctl) + Next + Case "textbox" + Dim x As TextBox = ctl + x.BackColor = Color.White + x.ForeColor = Color.Black + x.Enabled = True + Case "maskedtextbox" + Dim x As MaskedTextBox = ctl + x.BackColor = Color.White + x.ForeColor = Color.Black + x.Enabled = True + Case "combobox" + Dim x As ComboBox = ctl + x.Enabled = True + x.BackColor = Color.White + x.ForeColor = Color.Black + + Case "checkbox" + Dim x As CheckBox = ctl + x.Enabled = True + Case "radiobutton" + Dim x As RadioButton = ctl + x.Enabled = True + Case "comboboxtree" + Dim x As Object = ctl + x.enabled = True + x.BackColor = Color.White + x.ForeColor = Color.Black + Case "richtextbox" + Dim x As Object = ctl + x.BackColor = Color.White + x.ForeColor = Color.Black + x.readonly = True + Case "button" + Dim x As Button = ctl + x.Enabled = True + Case "listbox" + Dim x As Object = ctl + ctl.enabled = True + Case "checkedlistbox" + Dim x As Object = ctl + ctl.enabled = True + Case "datetimepicker" + Dim x As Object = ctl + ctl.enabled = True + Case Else + End Select + End Function + + + + ''' + ''' Daten ab Datenbank laden + ''' + ''' + Private Sub Load_Data(ByVal Formname As String) + Try + 'xxx + If SecurityData.Tables.Count > 0 Then + SecurityData.Tables.Clear() + End If + ' Exit Sub + Catch ex As Exception + End Try + SecurityData.Tables.Clear() + Dim sqlcmd As New SqlCommand + + sqlcmd.CommandText = "dbo.my_security_get_data" + sqlcmd.Parameters.Add("@FormName", SqlDbType.VarChar, 255) + sqlcmd.Parameters.Add("@Mitarbeiternr", SqlDbType.Int, 4) + sqlcmd.Parameters(0).Value = Formname + sqlcmd.Parameters(1).Value = Globals.Mitarbeiternr + + sqlcmd.CommandType = CommandType.StoredProcedure + sqlcmd.Connection = connection + Try + connection.ConnectionString = Globals.sConnectionString + connection.Open() + da.SelectCommand = sqlcmd + da.Fill(SecurityData, "SecurityTable") + Globals.SecurityDaten.Tables.Add(SecurityData.Tables(0).Copy) + Catch ex As Exception + Finally + connection.Close() + da.Dispose() + sqlcmd.Dispose() + End Try + End Sub + ''' + ''' Prüft die DB-Einträge mit den Formcontrols und bei Übereinstimmung werden die Security-Einstellungen gesetzt + ''' + ''' + Private Sub Set_Security() + Dim i As Integer + For i = 0 To Me.SecurityData.Tables(0).Rows.Count - 1 + Dim SecurityObject As String = Me.SecurityData.Tables(0).Rows(i).Item("SecurityObject") + Dim SecurityObjectitem As String = Me.SecurityData.Tables(0).Rows(i).Item("SecurityObjectItem") + Dim read_only As Boolean = Me.SecurityData.Tables(0).Rows(i).Item("readonly") + Dim invisible As Boolean = Me.SecurityData.Tables(0).Rows(i).Item("invisible") + Dim ii As Integer + For ii = 1 To ctlcol.Count + Dim secobj As MyFormControls = ctlcol(ii) + If secobj.MySecurityObject = SecurityObject And secobj.MySecurityObjectItem = SecurityObjectitem Then + Set_Preferences(secobj.MyControl, read_only, invisible, SecurityObjectitem) + End If + Next + Next + End Sub + + ''' + ''' Security-Einstellungen setzen + ''' + ''' Betroffenes Objeckt (Menuitem, Conrol usw.) + ''' Readonly ja/nein + ''' Sichtbar ja/nein + ''' Name des Unterobjektes - wird für die Spalteneinstellungen von C1TruedbGrids verwendet + ''' + Private Sub Set_Preferences(ByRef obj As Object, ByVal read_only As Boolean, ByVal invisible As Boolean, ByVal SecurityObjectItem As String) + Dim objtype As System.Type = obj.GetType + Select Case LCase(objtype.Name) + Case "button" + Dim ctl As Button = obj + If read_only Then ctl.Enabled = False + If invisible Then + ctl.Visible = False + ctl.Enabled = False + End If + Case "toolstripmenuitem" + Dim ctl As ToolStripMenuItem = obj + If read_only Then ctl.Enabled = False + If invisible Then + ctl.Visible = False + ctl.Enabled = False + End If + Case "textbox", "label", "combobox", "checkbox", "toolstripbutton", "panel", "datetimepicker" + If read_only Then obj.Enabled = False + If invisible Then obj.Visible = False + Case "richtextbox" + If read_only Then obj.Enabled = False + Try + obj.readonly = True + obj.enabled = True + Catch ex As Exception + End Try + If invisible Then obj.Visible = False + Case "tabpage" + If invisible Then + Dim tbp As TabPage = obj + For Each x As MyFormControls In Me.ctlcol + If x.MySecurityObject = tbp.Parent.Name Then + Dim tb As TabControl = x.MyControl + tb.TabPages.Remove(tbp) + Exit Sub + End If + Next + End If + '20100406 - TabPageHandling + If read_only Then + 'obj.enabled = False + For Each CTLX As Control In obj.CONTROLS + Me.Objectanalysis_readonly(CTLX) + Next + End If + Case "c1truedbgrid" + Dim ctl As C1TrueDBGrid = obj + If SecurityObjectItem = "" Then + If read_only Then ctl.Enabled = False + If invisible Then obj.Visible = False + Else + If read_only Then ctl.Splits(0).DisplayColumns(SecurityObjectItem).Locked = True + If invisible Then ctl.Splits(0).DisplayColumns(SecurityObjectItem).Visible = False + End If + + End Select + End Sub + + +#Region "Read Objects from Form and save to Database" + Dim tmpmenuname As String + ''' + ''' Alle Controls des Formulars zusammensuchen und auf der DB speichern + ''' + ''' Betroffenes Formular + ''' + ''' + + Public Function List_Form_Controls(ByRef f As Object) + Me.ctlcol.Clear() + formname = f.Name + For Each ctl As Control In f.Controls + Objectanalysis(ctl) + Next + Dim i As Integer + For i = 1 To ctlcol.Count + Dim secobj As MyFormControls = ctlcol(i) + secobj.Write_Object_to_DB() + Next + End Function + + ''' + ''' Sämtliche Controls vom Formular auslesen + ''' + ''' + ''' + ''' + Private Function Objectanalysis(ByRef ctl As Object) As String + Dim typ As System.Type = ctl.GetType + Select Case LCase(typ.Name) + Case "menustrip" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + tmpmenuname = ctl.name + ReadMenu(ctl) + Case "contextmenustrip" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + tmpmenuname = ctl.name + ReadContextMenu(ctl) + Case "toolstrip" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptoolstrop As ToolStrip = ctl + Try + Dim ic As Integer + For ic = 0 To tmptoolstrop.Items.Count - 1 + Try + Dim subobj As ToolStripButton + subobj = tmptoolstrop.Items(ic) + ctlcol.Add(New MyFormControls(subobj, formname, typ.Name, ctl.Name, subobj.Name, 1)) + Catch ex As Exception + + End Try + + Next + 'For Each subobj As ToolStripButton In tmptoolstrop.Items + 'ctlcol.Add(New MyFormControls(subobj, formname, typ.Name, ctl.Name, subobj.Name, 1)) + 'Next + Catch + End Try + Case "splitcontainer" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmpsplit As SplitContainer = ctl + For Each ctrl As Object In tmpsplit.Panel1.Controls + Objectanalysis(ctrl) + Next + For Each ctrl As Object In tmpsplit.Panel2.Controls + Objectanalysis(ctrl) + Next + Case "tabcontrol", "clsmytabcontrol" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabcontrol As TabControl = ctl + For Each ctl In tmptabcontrol.TabPages + Objectanalysis(ctl) + Next + Case "tabpage" + Dim tmptabpage As TabPage = ctl + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, tmptabpage.Parent.Name, 1)) + + For Each ctl In tmptabpage.Controls + Objectanalysis(ctl) + Next + Case "groupbox" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmptabpage As GroupBox = ctl + For Each ctl In tmptabpage.Controls + Objectanalysis(ctl) + Next + Case "panel" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim tmppanel As Panel = ctl + For Each ctl In tmppanel.Controls + Objectanalysis(ctl) + Next + Case "c1truedbgrid" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim ctrl As C1TrueDBGrid = ctl + Dim i As Integer + For i = 0 To ctrl.Columns.Count - 1 + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, ctrl.Columns(i).Caption, 0, ctrl.Columns(i).Caption)) + Next + Try + If ctrl.ContextMenuStrip.Name <> "" Then + Dim x As ContextMenuStrip = ctrl.ContextMenuStrip + Objectanalysis(x) + End If + Catch ex As Exception + + End Try + For Each xctl As Object In ctrl.Controls + Objectanalysis(xctl) + Next + Case "treeview" + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + Dim ctrl As TreeView = ctl + Try + + If ctrl.ContextMenuStrip.Name <> "" Then + Dim x As ContextMenuStrip = ctrl.ContextMenuStrip + Objectanalysis(x) + End If + + Catch ex As Exception + + End Try + + Case Else + If ctl.name = "TreeStruktur" Then + End If + ctlcol.Add(New MyFormControls(ctl, formname, typ.Name, ctl.Name, "")) + End Select + End Function + + ''' + ''' Auslesen von MenuItems + ''' + ''' + ''' + ''' + ''' + Dim level As Integer = 0 + Private Function ReadMenu(ByRef x As Object) + Dim tmpmnu As MenuStrip = x + level = 0 + For Each xx As Object In tmpmnu.Items + Dim objtype As System.Type = xx.GetType + If LCase(objtype.Name) = "toolstripmenuitem" Then + ctlcol.Add(New MyFormControls(xx, formname, "menustrip", tmpmenuname, xx.Name, level)) + get_all_menus(xx) + End If + Next + End Function + ''' + ''' Auslesen von ContextMenuItems + ''' + ''' + ''' + ''' + ''' + + Private Function ReadContextMenu(ByRef x As Object) + Dim tmpmnu As ContextMenuStrip = x + level = 0 + Try + For Each xx As Object In tmpmnu.Items + Dim objtype As System.Type = xx.GetType + If LCase(objtype.Name) = "toolstripmenuitem" Then + ctlcol.Add(New MyFormControls(xx, formname, "menustrip", tmpmenuname, xx.Name, level)) + get_all_menus(xx) + End If + ' ctlcol.Add(New MyFormControls(xx, formname, "contextmenustrip", tmpmenuname, xx.Name, level)) + ' get_all_menus(xx) + Next + Catch ex As Exception + End Try + End Function + ''' + ''' Auslesen von Menu-Subitems + ''' + ''' + ''' + ''' + Private Function get_all_menus(ByRef xx As ToolStripMenuItem) + level = level + 1 + For Each subobj As Object In xx.DropDownItems + If LCase(subobj.GetType.Name) = "toolstripmenuitem" Then + ctlcol.Add(New MyFormControls(subobj, formname, "menustrip", tmpmenuname, subobj.Name, level)) + get_all_menus(subobj) + End If + Next + level = level - 1 + End Function + + + + ''' + ''' Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + ''' + ''' Formular + ''' Objekttyp + ''' Objektname + ''' Objektitem + ''' + ''' + Private Function Objexists(ByVal securityform As String, ByVal securityobjecttype As String, ByVal securityobject As String, ByVal securityobjectitem As String) As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[my_security_check_entry]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn.scoDBConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@form", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, securityform)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objecttype", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, securityobjecttype)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@object", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, securityobject)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objectitem", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, securityobjectitem)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objexists", SqlDbType.Int, 4, ParameterDirection.Output, True, 0, 0, "", DataRowVersion.Proposed, 0)) + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + If scmCmdToExecute.Parameters("@objexists").Value > 0 Then + Return True + Else + Return False + End If + Catch ex As Exception + Finally + scmCmdToExecute.Connection.Close() + End Try + End Function + +#End Region + +#Region "ScreenDoku" + + Public Function Print_Screen(ByRef ctl As Control) + saveasbitmap(ctl, ctl.Name) + End Function + Public Function Generate_HTML() + saveasbitmap(Me.IntForm, "testform") + 'Exit Function + 'Dim x As MyFormControls + 'For Each x In ctlcol + ' Try + ' saveasbitmap(x.MyControl, x.MyFormname & "_" & x.MySecurityObject & "_" & x.MySecurityObjectItem) + ' If x.MySecurityObjecttype = "ToolStrip" And x.MySecurityObjectItem = "" Then + ' Dim gaga As ToolStrip = x.MyControl + ' For Each c As ToolStripButton In gaga.Items + ' Dim xxx As Control = CType(c, Control) + + ' xxx = CType(c, Control) + ' saveasbitmap(xxx, "xxx") + ' Next + ' End If + ' Catch ex As Exception + ' MsgBox(ex.Message) + ' End Try + 'Next + End Function + + Public Function saveasbitmap(ByRef ctl As Control, ByVal filename As String) + Dim g As Graphics = ctl.CreateGraphics + Dim b As New Bitmap(ctl.Width, ctl.Height) + ctl.DrawToBitmap(b, New Rectangle(0, 0, ctl.Width, ctl.Height)) + 'b.Save("E:\Software-Projekte\Vertragsverwaltung\Screens\" & filename & ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg) + End Function + + +#End Region + + + End Class + ''' + ''' Klasse für ein Control-Objekt + ''' + ''' + Public Class MyFormControls + + Public MyControl As Object + Public MyFormname As String + Public MySecurityObjecttype As String + Public MySecurityObject As String + Public MySecurityObjectItem As String + Public MyDescription As String + Public MyLevel As Integer + + ''' + ''' Neue Instanz erstellen + ''' + ''' Control-Objekt + ''' Betroffenes Formular + ''' Objekttyp + ''' Objektname + ''' Unterobjekt (z.B. bei Menus, Spalten von C1TrueDBGrids) + ''' + Sub New(ByVal ctl As Object, ByVal Formname As String, ByVal securityobjecttype As String, ByVal Securityobject As String, ByVal SecurityObjectItem As String, Optional ByVal level As Integer = 0, Optional ByVal desc As String = "") + MyControl = ctl + MySecurityObjecttype = securityobjecttype + MyFormname = Formname + MySecurityObject = Securityobject + MySecurityObjectItem = SecurityObjectItem + If desc = "" Then + MyDescription = Get_Description(ctl) + Else + MyDescription = desc + End If + Try + MyDescription = MyDescription.Replace("&", "") + Catch ex As Exception + End Try + MyLevel = level + End Sub + + Private Function Get_Description(ByRef ctl As Object) As String + Dim typ As System.Type = ctl.GetType + Select Case LCase(typ.Name) + Case "menustrip", "toolstripmenuitem", "toolstrip", "toolstripbutton", "contextmenustrip", "tabpage", "c1truedbgrid", "label" + Return ctl.Text + Case Else + Return ctl.Name + End Select + + End Function + + ''' + ''' Schreibt einen Datnsatz in die Tabelle SecurityObjects + ''' + ''' + ''' + Public Function Write_Object_to_DB() + If Objexists() Then Exit Function + Dim sectbl As New DB.clsSecurityObject + Dim dbkey As New DB.clsMyKey_Tabelle + dbkey.cpMainConnectionProvider = Globals.conn + Dim newkey As Integer = dbkey.get_dbkey("SecurityObject") + + sectbl.cpMainConnectionProvider = Globals.conn + conn.OpenConnection() + sectbl.iSecurityObjectNr = New SqlInt32(CType(newkey, Int32)) + sectbl.sSecurityForm = New SqlString(CType(MyFormname, String)) + sectbl.sSecurityObjectType = New SqlString(CType(Me.MySecurityObjecttype, String)) + sectbl.sSecurityObject = New SqlString(CType(Me.MySecurityObject, String)) + sectbl.sSecurityObjectItem = New SqlString(CType(Me.MySecurityObjectItem, String)) + sectbl.bAktiv = New SqlBoolean(CType(True, Boolean)) + sectbl.daErstellt_am = New SqlDateTime(CType(Now, DateTime)) + sectbl.daMutiert_am = New SqlDateTime(CType(Now, DateTime)) + sectbl.sSecurityObjectDescriotion = New SqlString(CType(Me.MyDescription, String)) + sectbl.iLevel = New SqlInt32(CType(Me.MyLevel, Int32)) + sectbl.iMutierer = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) + sectbl.iMandantnr = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) + sectbl.Insert() + conn.CloseConnection(True) + sectbl.Dispose() + dbkey.Dispose() + End Function + + + ''' + '''Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + ''' + ''' + ''' + Private Function Objexists() As Boolean + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[my_security_check_entry]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn.scoDBConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@form", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Me.MyFormname)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objecttype", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Me.MySecurityObjecttype)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@object", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Me.MySecurityObject)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objectitem", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Me.MySecurityObjectItem)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@objexists", SqlDbType.Int, 4, ParameterDirection.Output, True, 0, 0, "", DataRowVersion.Proposed, 0)) + scmCmdToExecute.Connection.Open() + scmCmdToExecute.ExecuteNonQuery() + If scmCmdToExecute.Parameters("@objexists").Value > 0 Then + Return True + Else + Return False + End If + Catch ex As Exception + Finally + scmCmdToExecute.Connection.Close() + End Try + End Function + + + End Class + + Public Class ControlsCollection + Private Shared m_controls As Collection + Public Sub New(ByVal myForm As Form) + m_controls = New Collection + 'create a control walker to get + 'all controls on the form + Dim aControlWalker As New ControlWalker(myForm) + End Sub + 'This property returns the collection of all controls + 'on the form + ReadOnly Property Controls() As Collection + Get + Return m_controls + End Get + End Property + + Public Function FindControl(ByVal ctlname As String) As Boolean + Dim i As Integer + For i = 1 To Me.m_controls.Count + Dim ctl As Control = m_controls(i) + If UCase(ctl.Name) = UCase(ctlname) Then MsgBox("found") + Next + End Function + Private Class ControlWalker + ' This class recursively walks through all controls + ' in a container, and all containers contained in + ' this container, visiting all controls throughout + ' the hierarchy + Private mContainer As Object + Public Sub New(ByVal Container As Object) + Dim cControl As Control + If Container.haschildren Then + For Each cControl In Container.controls + 'add this control to the controls collection + m_controls.Add(cControl) + If cControl.HasChildren Then + 'This control has children, create another + 'ControlWalk go visit each of them + Dim cWalker As New ControlWalker(cControl) + End If + Next cControl + End If + End Sub + End Class + End Class +End Namespace diff --git a/_FRReporting/Klassen/clsAuswertung.vb b/_FRReporting/Klassen/clsAuswertung.vb new file mode 100644 index 0000000..88076b9 --- /dev/null +++ b/_FRReporting/Klassen/clsAuswertung.vb @@ -0,0 +1,343 @@ +Imports C1.Win.C1TrueDBGrid +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Imports System.Windows.Forms + +Namespace TKB.Auswertung + Public Class clsAuswertung + + Private Auswertungen As New DataSet + Private Mitarbeiter_Auswerungsparameter As New DB.clsMitarbeiter_Auswertungsparameter + Public AuswertungParameter As New DataTable + Public Auswertung As New DB.clsAuswertung + Public MitarbeiterAuswertungsparameter As New DataTable + Dim sheader1 As String + Property TitelZeile1() As String + Get + Return sheader1 + End Get + Set(ByVal value As String) + sheader1 = value + End Set + End Property + Dim sheader2 As String + Property TitelZeile2() As String + Get + Return sheader2 + End Get + Set(ByVal value As String) + sheader2 = value + End Set + End Property + Dim scparamcollection As New Collection + Property ParamCollection() As Collection + Get + Return scparamcollection + End Get + Set(ByVal value As Collection) + scparamcollection = value + End Set + End Property + Dim mFullparam As String + Property FullParam() As String + Get + Return mFullparam + End Get + Set(ByVal value As String) + mFullparam = value + End Set + End Property + + Public Sub Get_Auswertungen(ByRef tree As TreeView) + Read_Auswertungen() + Load_Treeview(Auswertungen, tree) + End Sub + + + + ''' + ''' Auswertungen, für welche der User berechtigt ist, auslesen + ''' + ''' + ''' + Private Function Read_Auswertungen() As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataTable = New DataTable() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = "dbo.sp_Auswertung_Get_Auswertungen" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = Globals.conn.scoDBConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 10, 0, "", DataRowVersion.Proposed, Globals.Mitarbeiternr)) + sdaAdapter.Fill(dtToReturn) + Auswertungen.Tables.Clear() + Auswertungen.Tables.Add(dtToReturn) + Catch ex As Exception + Throw New Exception("clsAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + ''' + ''' Interne Relation aufbauen und Tree aufbauen + ''' + ''' + ''' + ''' + Private Sub Load_Treeview(ByVal oSourceData As DataSet, ByRef tree As TreeView) + If Not (oSourceData Is Nothing) Then + Dim oView As DataView = oSourceData.Tables(0).DefaultView + Dim oTable As DataTable = oView.Table + Dim oDS As DataSet = New DataSet() + oDS.Tables.Add(oTable.Copy()) + + If oDS.Relations.Contains("SelfRefenceRelation") = False Then + oDS.Relations.Add("SelfRefenceRelation", _ + oDS.Tables(0).Columns("id"), _ + oDS.Tables(0).Columns("Parentid")) + End If + oTable.Dispose() + oTable = Nothing + LoadTreeView(oDS, tree) + oDS.Dispose() + oDS = Nothing + End If + End Sub + + ''' + ''' Tree aufbauen + ''' + ''' + ''' + ''' + Private Sub LoadTreeView(ByVal oDS As DataSet, ByRef oTreeview As TreeView) + 'Dim oTreeView As TreeView = New TreeView() + Dim oDataRow As DataRow + For Each oDataRow In oDS.Tables(0).Rows + If Not oDataRow.IsNull("Parentid") Then + If oDataRow.Item("Parentid") = 0 Then + Dim oNode As New TreeNode() + oNode.Text = oDataRow("Bezeichnung").ToString() + oNode.Tag = oDataRow("auswertungnr").ToString + oNode.ToolTipText = oDataRow("Beschreibung").ToString + oNode.ImageIndex = 0 + oNode.SelectedImageIndex = 0 + oNode.StateImageIndex = 0 + oTreeview.Nodes.Add(oNode) + RecursivelyLoadTree(oDataRow, oNode) + End If + End If + Next oDataRow + oDS.Dispose() + oDS = Nothing + End Sub + + ''' + ''' Child-Nodes hinzufügen + ''' + ''' + ''' + ''' + Private Sub RecursivelyLoadTree(ByVal oDataRow As DataRow, ByRef oNode As TreeNode) + Dim oChildRow As DataRow + For Each oChildRow In oDataRow.GetChildRows("SelfRefenceRelation") + Dim oChildNode As New TreeNode() + oChildNode.Text = oChildRow("Bezeichnung").ToString() + oChildNode.Tag = oChildRow("Auswertungnr").ToString() + If oChildRow("Auswertungnr") = 0 Then + oChildNode.ImageIndex = 0 + oChildNode.SelectedImageIndex = 0 + oChildNode.StateImageIndex = 0 + oChildNode.ToolTipText = oChildRow("Beschreibung").ToString + Else + oChildNode.ImageIndex = 1 + oChildNode.SelectedImageIndex = 1 + oChildNode.StateImageIndex = 1 + oChildNode.ToolTipText = oChildRow("Beschreibung").ToString + End If + oNode.Nodes.Add(oChildNode) + RecursivelyLoadTree(oChildRow, oChildNode) + Next oChildRow + End Sub + + Public Function Get_Auswertung(ByVal Auswertungnr As Integer) As Boolean + Try + Me.Auswertung.iAuswertungNr = New SqlInt32(CType(Auswertungnr, Int32)) + Me.Auswertung.cpMainConnectionProvider = Globals.conn + Me.Auswertung.SelectOne() + Me.AuswertungParameter = Get_Auswertungsparameter(Me.Auswertung.iAuswertungNr.Value) + Me.MitarbeiterAuswertungsparameter = Me.Get_MAParameter(Me.Auswertung.iAuswertungNr.Value) + Return True + Catch ex As Exception + Return False + End Try + End Function + + Public Function Get_Auswertungsparameter(ByVal Auswertungnr As Integer) As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataTable = New DataTable() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = "dbo.sp_rpt_get_auswertungparameter" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn.scoDBConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@Auswertungnr", SqlDbType.VarChar, 50, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Auswertungnr)) + sdaAdapter.Fill(dtToReturn) + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("frmAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + + End Function + + Public Function get_rptparam_values(ByVal sp As String) As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataTable = New DataTable() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = sp + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn.scoDBConnection + Try + sdaAdapter.Fill(dtToReturn) + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("frmAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + + End Function + + Public Function Get_Auswertungsdaten(ByVal sql As String, ByVal sqlwhere As String, ByVal sqltype As String) As DataSet + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataSet = New DataSet() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = sql + Select Case UCase(sqltype) + Case "SQL" + If sqlwhere <> "" Then sql = sql + " where " + sqlwhere + 'gaga + Case "VIEW" + If sqlwhere <> "" Then sql = sql + " where " + sqlwhere + Case "SP" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Parameters.Add(New SqlParameter("@sqlwhere", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, sqlwhere)) + End Select + scmCmdToExecute.Connection = conn.scoDBConnection + Try + 'scmCmdToExecute.Parameters.Add(New SqlParameter("@Rolle", SqlDbType.VarChar, 50, ParameterDirection.Output, True, 0, 0, "", DataRowVersion.Proposed, "")) + sdaAdapter.Fill(dtToReturn) + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("frmAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + + End Function + Public Function Get_Auswertungsdaten(ByVal sp As String, ByVal sqlwhere As String, ByVal txp As Boolean) As DataTable + + Dim con As New SqlConnection(Get_TXP_Connection) + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataTable = New DataTable() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = sp + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = con + scmCmdToExecute.CommandTimeout = 30000 + + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@sqlwhere", SqlDbType.VarChar, 1024, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, sqlwhere)) + sdaAdapter.Fill(dtToReturn) + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("frmAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + con.Close() + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + con.Dispose() + End Try + + End Function + + Private Function Get_TXP_Connection() As String + Dim sCstr As String = "" + Dim txpfile As System.IO.File + Dim txpread As System.IO.StreamReader + txpread = txpfile.OpenText(Application.StartupPath + "\TXPConn.cfg") + sCstr = txpread.ReadLine + sCstr = Crypto.DecryptText(sCstr, "HutterundMueller") + sCstr = Left(sCstr, Len(sCstr) - 1) + txpread.Close() + + Return sCstr + End Function + Public Function Save_MAParameter(ByVal auswertungnr As Integer, ByVal Bezeichnung As String, ByVal Parameter As String, ByVal Titel1 As String, ByVal Titel2 As String, ByVal PrintParam As Boolean, ByVal sqlwhere As String) + Me.Mitarbeiter_Auswerungsparameter.cpMainConnectionProvider = Globals.conn + Me.Mitarbeiter_Auswerungsparameter.iAuswertungnr = New SqlInt32(CType(auswertungnr, Int32)) + Me.Mitarbeiter_Auswerungsparameter.iMitarbeiternr = New SqlInt32(CType(Globals.Mitarbeiternr, Int32)) + Me.Mitarbeiter_Auswerungsparameter.sBeschreibung = New SqlString(CType(Bezeichnung, String)) + Me.Mitarbeiter_Auswerungsparameter.sParameterdaten = New SqlString(CType(Parameter, String)) + Me.Mitarbeiter_Auswerungsparameter.sTitelzeile1 = New SqlString(CType(Titel1, String)) + Me.Mitarbeiter_Auswerungsparameter.sTitelzeile2 = New SqlString(CType(Titel2, String)) + Me.Mitarbeiter_Auswerungsparameter.sSQLWhere = New SqlString(CType(sqlwhere, String)) + If PrintParam = True Then + Me.Mitarbeiter_Auswerungsparameter.bParamPrint = New SqlBoolean(CType(True, Boolean)) + Else + Me.Mitarbeiter_Auswerungsparameter.bParamPrint = New SqlBoolean(CType(False, Boolean)) + End If + Globals.conn.OpenConnection() + Me.Mitarbeiter_Auswerungsparameter.Insert() + Globals.conn.CloseConnection(True) + Me.MitarbeiterAuswertungsparameter = Me.Get_MAParameter(auswertungnr) + End Function + + + Public Function Get_MAParameter(ByVal Auswertungnr As Integer) As DataTable + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + Dim dtToReturn As DataTable = New DataTable() + Dim sdaAdapter As SqlDataAdapter = New SqlDataAdapter(scmCmdToExecute) + scmCmdToExecute.CommandText = "dbo.sp_mitarbeiter_auswertungparamter_selectall" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + scmCmdToExecute.Connection = conn.scoDBConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@mitarbeiternr", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Globals.Mitarbeiternr)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@Auswertungnr", SqlDbType.Int, 4, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Auswertungnr)) + sdaAdapter.Fill(dtToReturn) + Return dtToReturn + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("frmAuswertung::" & scmCmdToExecute.CommandText & "::Error occured." & ex.Message, ex) + Finally + scmCmdToExecute.Dispose() + sdaAdapter.Dispose() + End Try + End Function + + Public Function Delete_Parameter(ByVal AuswertungParameterNr As Integer) + Me.Mitarbeiter_Auswerungsparameter.iMitarbeiter_AuswertungsparameterNr = New SqlInt32(CType(AuswertungParameterNr, Int32)) + Me.Mitarbeiter_Auswerungsparameter.cpMainConnectionProvider = Globals.conn + Globals.conn.OpenConnection() + Me.Mitarbeiter_Auswerungsparameter.Delete() + Globals.conn.CloseConnection(True) + Me.MitarbeiterAuswertungsparameter = Me.Get_MAParameter(Me.Auswertung.iAuswertungNr.Value) + End Function + + + End Class + +End Namespace diff --git a/_FRReporting/Klassen/clsMyKey_Tabelle.vb b/_FRReporting/Klassen/clsMyKey_Tabelle.vb new file mode 100644 index 0000000..b6c51fb --- /dev/null +++ b/_FRReporting/Klassen/clsMyKey_Tabelle.vb @@ -0,0 +1,61 @@ +Imports System +Imports System.Data +Imports System.Data.SqlTypes +Imports System.Data.SqlClient +Namespace DB + Public Class clsMyKey_Tabelle + Inherits db.clsKey_tabelle + + Public Function get_dbkey(ByVal Tablename As String) As Long + Dim m_dbkey As Long + Dim scmCmdToExecute As SqlCommand = New SqlCommand() + scmCmdToExecute.CommandText = "dbo.[sp_get_dbkey]" + scmCmdToExecute.CommandType = CommandType.StoredProcedure + ' // Use base class' connection object + scmCmdToExecute.Connection = m_scoMainConnection + Try + scmCmdToExecute.Parameters.Add(New SqlParameter("@Tablename", SqlDbType.VarChar, 255, ParameterDirection.Input, True, 0, 0, "", DataRowVersion.Proposed, Tablename)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@dbkey", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_dbkey)) + scmCmdToExecute.Parameters.Add(New SqlParameter("@iErrorCode", SqlDbType.Int, 4, ParameterDirection.Output, True, 10, 0, "", DataRowVersion.Proposed, m_iErrorCode)) + + If m_bMainConnectionIsCreatedLocal Then + ' // Open connection. + m_scoMainConnection.Open() + Else + If m_cpMainConnectionProvider.bIsTransactionPending Then + scmCmdToExecute.Transaction = m_cpMainConnectionProvider.stCurrentTransaction + End If + End If + + ' // Execute query. + Try + scmCmdToExecute.Connection.Open() + Catch ex As Exception + Finally + End Try + + scmCmdToExecute.ExecuteNonQuery() + m_dbkey = scmCmdToExecute.Parameters.Item("@dbkey").Value + m_iErrorCode = New SqlInt32(CType(scmCmdToExecute.Parameters.Item("@iErrorCode").Value, SqlInt32)) + scmCmdToExecute.Connection.Close() + + If Not m_iErrorCode.Equals(New SqlInt32(LLBLError.AllOk)) Then + ' // Throw error. + Throw New Exception("Stored Procedure 'sp_get_dbkey' reported the ErrorCode: " & m_iErrorCode.ToString()) + End If + + Return m_dbkey + Catch ex As Exception + ' // some error occured. Bubble it to caller and encapsulate Exception object + Throw New Exception("clsKey_tabelle::get_dbkey::Error occured." + ex.Message, ex) + Finally + If m_bMainConnectionIsCreatedLocal Then + ' // Close connection. + m_scoMainConnection.Close() + End If + scmCmdToExecute.Dispose() + End Try + End Function + + End Class +End Namespace diff --git a/_FRReporting/My Project/Application.Designer.vb b/_FRReporting/My Project/Application.Designer.vb new file mode 100644 index 0000000..8ab460b --- /dev/null +++ b/_FRReporting/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/_FRReporting/My Project/Application.myapp b/_FRReporting/My Project/Application.myapp new file mode 100644 index 0000000..758895d --- /dev/null +++ b/_FRReporting/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 1 + true + diff --git a/_FRReporting/My Project/AssemblyInfo.vb b/_FRReporting/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..87aee83 --- /dev/null +++ b/_FRReporting/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' Allgemeine Informationen über eine Assembly werden über die folgenden +' Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +' die mit einer Assembly verknüpft sind. + +' Die Werte der Assemblyattribute überprüfen + + + + + + + + + + +'Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird + + +' Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +' +' Hauptversion +' Nebenversion +' Buildnummer +' Revision +' +' Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern +' übernehmen, indem Sie "*" eingeben: +' + + + diff --git a/_FRReporting/My Project/Resources.Designer.vb b/_FRReporting/My Project/Resources.Designer.vb new file mode 100644 index 0000000..9689ed2 --- /dev/null +++ b/_FRReporting/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + '-Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + 'Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + 'mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + ''' + ''' Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("_FRReporting.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + ''' Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/_FRReporting/My Project/Resources.resx b/_FRReporting/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/_FRReporting/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/_FRReporting/My Project/Settings.Designer.vb b/_FRReporting/My Project/Settings.Designer.vb new file mode 100644 index 0000000..23e6932 --- /dev/null +++ b/_FRReporting/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' 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. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "Funktion zum automatischen Speichern von My.Settings" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global._FRReporting.My.MySettings + Get + Return Global._FRReporting.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/_FRReporting/My Project/Settings.settings b/_FRReporting/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/_FRReporting/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/_FRReporting/My Project/licenses.licx b/_FRReporting/My Project/licenses.licx new file mode 100644 index 0000000..02a7aaa --- /dev/null +++ b/_FRReporting/My Project/licenses.licx @@ -0,0 +1 @@ +C1.Win.C1TrueDBGrid.C1TrueDBGrid, C1.Win.C1TrueDBGrid.2, Version=2.0.20153.110, Culture=neutral, PublicKeyToken=75ae3fb0e2b1e0da diff --git a/_FRReporting/My Project/licenses.licx.bak b/_FRReporting/My Project/licenses.licx.bak new file mode 100644 index 0000000..02a7aaa --- /dev/null +++ b/_FRReporting/My Project/licenses.licx.bak @@ -0,0 +1 @@ +C1.Win.C1TrueDBGrid.C1TrueDBGrid, C1.Win.C1TrueDBGrid.2, Version=2.0.20153.110, Culture=neutral, PublicKeyToken=75ae3fb0e2b1e0da diff --git a/_FRReporting/_FRReporting.vb b/_FRReporting/_FRReporting.vb new file mode 100644 index 0000000..c283b63 --- /dev/null +++ b/_FRReporting/_FRReporting.vb @@ -0,0 +1,90 @@ +Imports System.Windows.Forms + +Public Class _FRReporting + Dim m_connectionstring As String + +#Region "Properties" + Public Property ConnectionString() As String + Get + ConnectionString = m_connectionstring + End Get + Set(ByVal Value As String) + If m_connectionstring <> Value Then + m_connectionstring = Value + Globals.sConnectionString = m_connectionstring + Globals.conn.sConnectionString = m_connectionstring + End If + End Set + End Property + + + Dim m_Mitarbeiternr As Integer + Public Property Mitarbeiternr As Integer + Get + Mitarbeiternr = m_Mitarbeiternr + End Get + Set(value As Integer) + If m_Mitarbeiternr <> value Then + m_Mitarbeiternr = value + Globals.Mitarbeiternr = m_Mitarbeiternr + End If + End Set + End Property + + Dim m_TempFilePath As String + Public Property TempFilePath As String + Get + TempFilePath = m_TempFilePath + End Get + Set(value As String) + If m_TempFilePath <> value Then + m_TempFilePath = value + Globals.TmpFilepath = m_TempFilePath + End If + End Set + End Property + + Sub New() + + End Sub +#End Region + + + Public Function ReportSelect(ByVal Parentform As Form) + Dim f As New FrmReportSelect + f.MdiParent = Parentform + f.Show() + End Function + + Public Function DefaultReport(ByVal auswertungnr As Integer, param As String, ByVal ParamValue As String, Optional Parent As Object = Nothing) + Dim f As New FrmReportSelect + f.MdiParent = Parent + f.Show() + f.TreeAuswertungen.SelectedNode = FindNode(f.TreeAuswertungen.Nodes, auswertungnr, "") + f.cbparam1.Text = param + f.cbop1.Text = "=" + f.cbvalue1.Text = ParamValue + f.showreport() + f.Close() + End Function + + Public Function FindNode(ByVal _nodeCollection As TreeNodeCollection, ByVal SearchVal As Integer, ByVal SearchString As String) As TreeNode + Dim tmpNode As TreeNode + For Each _child As TreeNode In _nodeCollection + If _child.Tag = SearchVal Then + + Return _child + End If + ' If InStr(UCase(_child.Text), UCase(SearchString)) > 0 Then + ' Return _child + ' End If + tmpNode = FindNode(_child.Nodes, SearchVal, SearchString) + If Not tmpNode Is Nothing Then + Return tmpNode + End If + Next + Return Nothing + End Function + + +End Class diff --git a/_FRReporting/_FRReporting.vbproj b/_FRReporting/_FRReporting.vbproj new file mode 100644 index 0000000..4bf44d4 --- /dev/null +++ b/_FRReporting/_FRReporting.vbproj @@ -0,0 +1,215 @@ + + + + + Debug + AnyCPU + {C04C6268-6402-4DEB-8BFA-E6A233B55DBF} + Library + _FRReporting + _FRReporting + 512 + Windows + v4.0 + + + + true + full + true + true + bin\Debug\ + _FRReporting.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + pdbonly + false + true + true + bin\Release\ + _FRReporting.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + + + + + False + ..\..\_Klassen\XLSLib\XLSLib\bin\Debug\FlexCel.dll + + + + + + + + + + + + + ..\..\_Klassen\XLSLib\XLSLib\bin\Debug\XLSLib.dll + + + + + + + + + + + + + + + + + + + + + + + + + + frmAuswertung.vb + + + Form + + + frmCalendar.vb + + + Form + + + frmCRReporting.vb + + + Form + + + frmDataSelect.vb + + + Form + + + frmEditWhere.vb + + + Form + + + sample.vb + + + Form + + + + + + + + + + FrmReportSelect.vb + + + Form + + + frmViewer.vb + + + Form + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + frmAuswertung.vb + Designer + + + frmCalendar.vb + + + frmCRReporting.vb + + + frmDataSelect.vb + + + frmEditWhere.vb + + + FrmReportSelect.vb + + + frmViewer.vb + + + sample.vb + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + \ No newline at end of file diff --git a/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.dll b/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.dll new file mode 100644 index 0000000..bf25d2b Binary files /dev/null and b/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.dll differ diff --git a/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.xml b/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.xml new file mode 100644 index 0000000..433945e --- /dev/null +++ b/_FRReporting/bin/Debug/C1.Win.C1TrueDBGrid.2.xml @@ -0,0 +1,10613 @@ + + + + C1.Win.C1TrueDBGrid.2 + + + + + + + + + Gets the data source. + + + + + + + Gets the data view. + + + + + + + + + + + Sets the bound control. + + The bound control. + The name. + + + + Gets the size of the virtual segment. + + + + + + + Sets the visible row count. + + The value. + The name. + + + + Bounds the control scrolled. + + + + + + + + + Gets the first visible row. + + + + + + + Gets the visible row count. + + + + + + + Scrolls to row. + + The first visible row. + The row count. + + + + + + + + Requests the modification. + + + + + + + + + Sets the row filter. + + The value. + + + + Sets the sort. + + The value. + + + + Refreshes this instance. + + + + + Interfaces used by bound controls and other C1Data consumers: + Dynamic, late bound access to the interfaces, via reflection + + + + + Gets the data source. + + The obj. + + + + + + + + + + News the late binding I c1 complex bound control. + + The obj. + + + + + + + + + + Gets the data view. + + The obj. + + + + + + Holds a Graphics object together with (printer) device or bitmap that was used + to create it, if any. The point is to dispose the device or bitmap together + with the graphics when it is no longer needed (i.e. to avoid resource leaks). + + + + + An empty graphics holder instance. + + + + + Creates a graphics holder from a device context. + When the holder is disposed, both graphics and the device context are released (DeleteDC is called on the device context). + + The device context from which graphics is created. + The new instance of the graphics holder. + + + + Creates a graphics holder from a graphics instance. + When the holder is disposed, the graphics is left alone (i.e. NOT disposed). + + The graphics to store in the new holder. + The new instance of the graphics holder. + + + + Creates a graphics holder from screen. If that fails (e.g. on Azure), the graphics is created from a bitmap. + When the holder is disposed, both graphics and the bitmap are released. + + The new instance of the graphics holder. + + + + Creates a graphics holder from a bitmap. The graphics and the bitmap are released when the holder is disposed. + This should never fail. + + The new instance of the graphics holder. + + + + Disposes the current graphics holder. + + + + + Gets the graphics object held by the current instance. + + + + + Gets the horizontal resolution of graphics held by the current instance. + + + + + Gets the vertical resolution of graphics held by the current instance. + + + + + Represents an exception that occurred during C1DX or C1MDX serialization/deserialization + if the underlying zip stream has invalid format. + + + + + Abstract base class for and + classes. + + + + + Gets the list of strings describing the actions that lead to the exception that occurred + during serialization or deserialization. + + + + + Represents an exception that occurred during serialization. + + + + + Represents an exception that occurred during deserialization. + + + + + Gets the line number associated with the exception. + + + + + Gets the position in line associated with the exception. + + + + + Represents range of character codes. + + + + + Initialization of the range of character codes + + Adding character. + + + + Initialization of the range of character codes + + The first character code. + The last character code. + + + + + + + + + + + + + + + + + The begin code of character. + + + The end code of character. + + + + Represents collection of unique objects. + All CodeRange objects within collection not intersect and sorted + by First field. + + + + + Adds object to current without any check, typically used during deserialization. + + + to add. + + + + Gets the array of chars contained in this list of code ranges. + + Array of char + + + + Gets a value indicating whether the collection + contains all characters from 0x0000 to 0xFFFF. + + + + + + + Static class containing UI strings used by the designer. + + + + + Represents a handler for an item related event. + + + + + Provides data for an item related event. + + + + + Gets key of the item being added or changed. + + The key. + + + + Gets the string value. + + The value. + + + + Gets a value indicating whether this instance is default. + + + true if this instance is default; otherwise, false. + + + + + Gets the description. + + The description. + + + + Represents a collection of end user visible UI strings. + + + + + Adds a string to the collection, specifying the ordinal. + + The key of the string. + The ordinal of the string. + The string. + The description of the string. + + + + Adds a string to the collection in alphabetical order. + + The key of the string. + The string. + The description of the string. + + + + Adds a string to the collection, preserving the order. + + The key of the string. + The string. + The description of the string. + + + + Sets all strings in collection to their default values. + + + + + Indicates whether any of the strings in the current collection + have non-default values. + + + true if any of the strings have non-default values, false otherwise. + + + + Tests whether a string in the collection has default value. + + The key of the string to test. + + true if the string has default value, false otherwise. + + + + Returns the description of a string. + + The key of the string to get the description of. + The string's description + + + + Resets a string to its default value. + + The key of the string to reset. + + + + Returns the key of an item with the specified index. + + The item index. + The item's key. + + + + Gets the string by its index. + + The string index. + The string. + + + + Sets the value of a string with the specified index. + + The string index. + The new string value. + + + + Fires the event. + + The event data. + + + + Fires the event. + + The event data. + + + + Fires the event. + + The event data. + + + + Gets the number of elements contained in the collection. + + + + + Occurs when a new item is added to the collection. + + + + + Occurs when an item in the collection is changed. + + + + + Occurs when the collection has been changed. + + + + + Provides type conversion for the type. + + + + + For internal use. + + + + + + + + + + + + + + + For internal use. + + + + + + + + + + + + + For internal use. + + + + + + + + + C1TrueDBGrid control object. + + + + + Summary description for BaseGridFrame. + + + + + For internal use. + + + + + Ctor for the split container class. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Raised when the Binding Context changes. + + + + + + + ISupportInitialize interface. + + + + + ISupportInitialize interface. + + + + + Called after the control has been added to another container. + + + + + Inherited from Control. + + + + + + + Raises the VisibleChanged event when the Visible property value of the control's container changes. + + An that contains the event data. + + + + Initializes root and named styles. + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + + + Inherited from Control. + + + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Processes Windows messages. + + + + + + + Helper method for serializing images. + + + + + Recomputes the sizes of the splits based on the client size of the control. + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Inherited from Control. + + + + + + + Creates the view. + + + + + + + Creates the view. + + The other. + + + + + + Called when the datasource changes. + + The new datasource. + The new datamember. + True to force a new binding. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Resets to the default value. + + + + + Tests whether should be serialized. + + True if should be serialized, false otherwise. + + + + Raises the event. + + The instance containing the event data. + + + + Raised after the datasource has been updated for a column. + + + + + + + Raised after a row has been deleted. + + + + + + + Raised after a row has been inserted. + + + + + + + Raised after a row has been updated. + + + + + + + Raised before a column has been updated. + + + + + + + Raised before a row is deleted. + + + + + + + Raised before a row is inserted. + + + + + + + Raised before a row is updated. + + + + + + + Raised when a column has been resized. + + + + + + + Raised when a column header has been clicked. + + + + + + + Raised when a column footer has been clicked. + + + + + + + Raised when a cell has to be rendered. + + + + + + + Raised when a cell has to be printed. + + + + + + + Raised when Page header needs to be printed. + + + + + + + Raised when a Page footer needs to be printed. + + + + + + + Raised before a row or column currency is changed. + + + + + + + Raised after a row or column currency has been changed. + + + + + + + Raised before a row is resized. + + + + + + + Raised when the grid scrolls. + + + + + + + Raised when a selection has changed. + + + + + + + Raised when split currency has changed. + + + + + + + Raised when a split has been added. + + + + + + + Raised when a split has been removed. + + + + + + + Raised when the grids cell content has been modified. + + + + + + + Raised to fetch data for an unbound column. + + + + + + + Raised when an unbound column has been updated. + + + + + + + Raised after a column has been edited. + + + + + + + Raised before a column edit. + + + + + + + Raised when a column has been edited. + + + + + + + Raised when the top row has changed. + + + + + + + Raised when the left column has changed. + + + + + + + Raised when a cell value needs custom formatting. + + + + + + + Raised when a button in a cell has been clicked. + + + + + + + Raised when a value in the combobox has been selected. + + + + + + + Raised when a value item is selected that's not in the ValueItems collection. + + + + + + + Raised when a custom style is to be used for rendering a cell. + + + + + + + Raised when a custom style is to be used for renderind a grouped cell. + + + + + + + Raised when a custom style is to be used for a row. + + + + + + + Raised when a new row is added. + + + + + + + Raised when a column is dragged. + + + + + + + Raised when a cell tip is to be displayed. + + + + + + + Raised when the grid is initialized. + + + + + + + Raised when the datasource is changed. + + + + + + + Raised when a band is collasped in a hierarchical grid. + + + + + + + Raised when a band is expanded in a hierarchical grid. + + + + + + + Raised when a grouped column is moved. + + + + + + + Raised when a column header in the grouping area is clicked. + + + + + + + Raised when scroll tips are to be displayed. + + + + + + + Raised when a filter condition has changed. + + + + + + + Raised when a button in the filter bar is clicked. + + + + + + + Raised before a child grid is displayed. + + + + + + + Rasied before a child grid is closed. + + + + + + + Raised when the datasource is sorted by clicking the column header. + + + + + + + Raised when AllowFilter is false. + + + + + + + Raised after the datasource has been filtered. + + + + + + + Raised after the datasource has been sorted. + + + + + + + Raised when the grid encounters an error through the UI. + + + + + + + Raised when custom values are to be used for the group text. + + + + + + + Raised when custom aggregates are used for a grouped grid. + + + + + + + Raised when custom group intervals are used for a grouped grid. + + + + + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + True to preserve design time layout + /// True to keep previously expanded groups in GroupBy mode. + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + True to preserve design time layout + + + + Binds the grid at runtime + + Source of the data + The table to bind to within the object returned by the DataSource property + The call to SetDataBinding(object dataSource, string dataMember) assumes false for the holdFields arguments. + + + + Configures the grid for use without a datasource. + + + + + Adds a row to an unbound grid. + + The data used to populate the new row. Column data is delimited by ';' char. + The index of the row that was added. + + + + Adds a row to an unbound grid. + + The data used to populate the new row. + Character used to separate the data fields. + The index of the row that was added. + + + + Adds the number of given rows to an unbound grid. + + The number of rows to add. + The index of the first row that was added. + + + + Deletes the given row from an unbound grid. + + The index of the row to remove. + + + + Deletes a range of rows from an unbound grid. + + The starting index of the row to remove. + The number of rows to remove. + + + + Creates a new System.Data.DataRow with the same schema as the unbound grid. + + + + + + + Gets the default size of the control. + + + + + The default of the control. + + + + + Allows us to set the borderstyle. + + + + + Gets the current position from the currency manager. + + + + + Gets or sets the border for the control. + + + + + Gets or sets a value indicating whether the InactiveStyle is applied to the grid when it loses focus. + + + + + Gets or sets a value indicating the ability of the grid to automatically sort data when a column header is clicked. + + + If True, and if the property is set to GroupBy, the grid will automatically filter column data upon grouping action. + If False, the grid will fire the event. + If the property is set to Group By and the user attempts to drag a column header into the grouping area, the grid will automatically sort the column data. + If False, the event allows the application to sort the data. + + + + + Gets or sets a value indicating the ability of the grid to automatically filter data. + + + If True, and if the Filter Bar is active, the grid will automatically filter data. + If False, the grid will fire the event. + If the property is true and the user attempts to filter column data, the grid will automatically filter the column data according to the value in the Filter Bar. + If False, the event allows the application to filter the data. + + + + + Gets or sets the grid's caption. + + + For a control, this property determines the text displayed in the caption bar at the top of the grid. + Setting the Caption property to an empty string for a control hides its caption bar. + For a object, this property determines the text displayed in the object's heading area. + Setting the Caption property to an empty string for a object clears the text in the column's heading area but does not hide the heading. Column captions are only displayed if the grid's property is set to True. + Setting the Caption property to an empty string for a object hides the heading area, even if other splits have non-empty captions. + + + + + Gets or sets the height of the grid's caption. + + This property requires that the property of the grid has a value. + + + + Gets or sets the height of grid rows. + + + + + Gets or sets the specific data member in a multimember data source that the grid binds to. + + + This property returns or sets the name of the data member used to populate the grid. Typically, a data member represents a database table or query. + A bound can expose multiple sets of data that consumers can bind to. Each set of data is called a data member, and is identified by a unique string. + + + + + Gets or sets the source containing a list of values used to populate the items within the control. + + The DataSource property specifies the list of values used to bind a or control. + + + + Gets or sets a value indicating whether the control should use an off-screen buffer when painting to redue flicker. + + + Setting this value to False may cause the grid to flicker when the control is painting. + You may want to set DoubleBuffer to False to increase performance when deploying applications that run on terminal servers. + + + + + Gets or sets the general appearance of 3D elements for the entire grid. + + + + + Gets the DataRowCollection for an unbound grid. + + + + + Gets or sets a value that controls how the grid scrolls when the scroll thumb is moved. + + + + + + The size of the split divider. + + + + Gets the number of rows in an unbound grid. + + + + + Gets or sets a value indicating whether Style information is applied from the datasource. + + + + + Occurs when visual style property has been changed. + + + + + Gets or sets a value that determines the overall appearance of the control. + + + This property allows you to quickly customize the appearance of the grid so + it matches the appearance of your application. + The settings available include System, various Microsoft Office color + schemes, and Custom, which relies on the controls standard styles and appearance + properties. + + + + + Gets or sets the renderer used to render visual styles. + + The renderer. + + + + Specifies whether text rendering should be compatible with previous releases of WinForms. + + + This property determines whether the control should render text using the + class (compatible with previous versions), or the new class + (available in .NET 2.0 and later). + The class supports complex scripts and Uniscribe APIs, making + it better suited for some international applications. + However, the class seems to render about 25% slower than the + traditional method. + You may want to try both modes and select the one that matches the appearance of other + controls and forms in your application. + + + + + The C1TrueDBGrid control. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Creates a new accessibility object for the control. + + A new for the control. + + + + Creates the view. + + + + + + + Creates the view. + + The other view. + + + + + + + + + + End initialization. + + + + + + + + + + + + + + + + + + + + + + + Gets a top-level object bound to the specified view row. + + Returns null if the specified view row is not a data row. + + + + Shoulds the width of the record selector be serialized. + + + + + + + Should the row divider be serialized. + + + + + + + + + + + + + Adds a row to an unbound grid. + + The data used to populate the new row. Column data is delimited by ';' char. + The index of the row that was added. + + + + Adds a row to an unbound grid. + + The data used to populate the new row. + Character used to separate the data fields. + The index of the row that was added. + + + + Adds the number of given rows to an unbound grid. + + The number of rows to add. + The index of the first row that was added. + + + + Instructs the grid to temporarily ignore IBindingList.ListChange notifications from the data source. + + + + + Resumes IBindingList.ListChange notifications from the data source to the grid. + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Returns the row index of the DataSource for a display row index. + + + The row index of the grid. + + + The underlying row index of the DataSource. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Restores the default grid layout. + + + + + Returns the column index for the column containing the specified X coordinate. + + + The horizontal coordinate (X value) in pixels. + + + The index of the column in the collection beneath the specified X coordinate. + + + + + Returns the column index for the column containing the specified point. + + + The point. + + + The index of the column in the collection beneath the specified point. + + [C1Description("Identifies the index of the DisplayColumn under a point")] + + + + Returns the zero-based index of the display row containing the Y specified coordinate. + + + The vertical coordinate (Y value) in pixels. + + + The display row index beneath the specified Y coordinate. + + + + + Returns the Y coordinate of the top of a visible row. + + + The displayed row index. + + + The Y coordinate of the specified display row, based on the client coordinates of the grid. + + + + + Scrolls the grid data area by the specified number of rows and columns. + + + Number of columns to scroll. + + + Number of rows to scroll. + + + + + Returns one of the enumerations, which indicates the kind of grid element beneath the specified coordinate. + + + The Point in client coordinates. + + + The enumerations under the given coordinate. + + + + + Returns one of the constants, which indicates the kind of grid element beneath the specified coordinate. + + + The x-coordinate. + + + The y-coordinate. + + + The enumerations under the given coordinate. + + + + + Reinitializes grid with data from its data source. + + + True to preserves current column layout. False retrieves the schema from the datasource. + + + + + + + + + Returns the of the split containing the specified coordinate. + + + The x-coordinate. + + + The y-coordinate. + + + The beneath the specified coordinate pair. + + + + + Updates any changes on the current row to the data source. + + + + + Moves the current row positions of the grid by the given offset. + + + The number of records to move. A positive value indicates forward movement; a negative value indicates backward movement. + + + + + Moves the current row positions of the grid by the given offset from the given row. + + + The number of records to move. A positive value indicates forward movement; a negative value indicates backward movement. + + + The origin of the relative movement. + + + + + Positions to the last row of the datasource. + + + + + Positions to the first row of the datasource. + + + + + Positions to the next row of the datasource. + + + + + Positions to the previous row of the datasource. + + + + + Deletes the current row. + + + + + Loads a saved layout from the given file. + + + The file containing a saved layout. + + + + + Loads a saved layout from the given stream. + + + The Stream containing a saved layout. + + + + + Saves the grid's layout. + + + File to contain the grid layout. + + + + + Saves the grid's layout. + + + The Stream to contain the grid layout. + + + + + Saves the grid's layout. + + + File to contain the grid layout. + + + Specifies whether default values are serialized. + + + + + Saves the grid's layout. + + + The Stream to contain the grid layout. + + + Specifies whether default values are serialized. + + + + + Returns the cell position for a set of coordinates. + + + The x-coordinate. + + + The y-coordinate. + + + The row under the coordinate pair. + + + The column index under the coordinate pair. + + + A value indicating whether a data cell is beneath the specified coordinate pair. + + + The CellContaining method combines the and methods into one call. If the coordinate pair specified by x and y points to a data cell, this method returns True, and the rowindex and colindex arguments receive zero-based indexes that identify the cell. + This method is useful when working with mouse and drag events when trying to determine where the user clicked or dropped another control in terms of a grid cell. + If the specified coordinate is outside of the grid's data area, this method returns False. Use the method to determine what kind of grid element, if any, is beneath the specified coordinate. + + + + + Invalidates the current row. + + + The RefreshRow method causes a repaint of the entire row in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a row to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the current row. + + + The row to refresh. + + + The RefreshRow method causes a repaint of the entire row in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a row to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the current column. + + + The RefreshCol method causes a repaint of the entire column in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a column to be repainted and hence cause the appropriate events to fire. + + + + + Invalidates the specified column. + + + The split column index to repaint. + + + The RefreshCol method causes a repaint of the entire column in the grid. Normally, the grid repaints automatically as needed. However, if handlers have been written for the event, use this method to force a column to be repainted and hence cause the appropriate events to fire. + + + + + Retreives data from the datasource for the current row and refreshes the row. + + + The RefetchRow method repopulates the specified row from a data source. It also repaints the row, firing all events necessary for redisplay. + By default, the grid retrieves data automatically as needed. In some circumstances, the underlying datasource may change without the grid receiving notification that a change has occurred. The RefetchRow method is provided for this purpose. + + + + + Retreives data from the datasource for the specified row and refreshes the row. + + + The row to refetch. + + + The RefetchRow method repopulates the specified row from a data source. It also repaints the row, firing all events necessary for redisplay. + By default, the grid retrieves data automatically as needed. In some circumstances, the underlying datasource may change without the grid receiving notification that a change has occurred. The RefetchRow method is provided for this purpose. + + + + + Expands the given row in GroupBy DataView. + + + The row to expand. + + + Expanding/collapsing a row in a GroupBy grid also expands/collapses the row in a split that shares the same vertical scroll group. + + + + + + + Expands the given row in GroupBy DataView and optionally exapands the subrows. + + The row to expand. + True to expand subrows. + + + + Collapses a grouped row. + + + + + Obtains the band given a column index. + + + + + Obtains the underlying row object for the given band and row. + + + + + Obtains the expanded state of a band for a hierarchical grid. + + + + + Collapses a gvien band in a hierarchical grid. + + + + + Expand the given band in a hierarchical grid. + + + + + Closes the Child Grid. + + + + + Displays the Child grid. + + + + + Exports the grid to an HTML file. + + + + + Exports the grid to a PDF file. + + + + + Exports the grid to an RTF file. + + + + + Exports the grid to a XLS file. + + + + + Exports the grid to a XLS file. + + + + + Opens a dialog in which the user can select the export format. + + + + + Exports the grid based upon the file extension. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Exports the specified rows from the grid to the specified file as delimited text. + + + + + Inserts vertical splits at the given position. + + + + + Removes all vertical splits at the given index. + + + + + + + + + Inserts new horizontal splits at the given position. + + + + + Removes all the horizontal splits at the given index. + + + + + Clears any cached styles and forces the grid to repaint. + + + + + Sets the focus to the given cell. + + The zero based index of the row. + The zero based index of the column. + + + + Extends the last column in each subrow so that all rows have the same width. + + + + + Raises the AfterColUpdate event. + + + + + + + Raises the AfterDelete event. + + + + + + + Raises the AfterInsert event. + + + + + + + Raises the AfterUpdate event. + + + + + + + Raises the BeforeColUpdate event. + + + + + + + Raises the BeforeDelete event. + + + + + + + Raises the BeforeInsert event. + + + + + + + Raises the BeforeUpdate event. + + + + + + + Raises the ColResize event. + + + + + + + Raises the HeadClick event. + + + + + + + Raises the FootClick event. + + + + + + + Raises the OwnerDrawCell event. + + + + + + + Raises the OwnerDrawCellPrint event. + + + + + + + Raises the OwnerDrawPageHeader event. + + + + + + + Raises the OwnerDrawPageFooter event. + + + + + + + Raises the BeforeRowColChange event. + + + + + + + Raises the RowColChange event. + + + + + + + Raises the RowResize event. + + + + + + + Raises the Scroll event. + + + + + + + Raises the SelChange event. + + + + + + + Raises the SplitChange event. + + + + + + + Raises the SplitRemoved event. + + + + + + + Raises the SplitRemoved event. + + + + + + + Raises the Change event. + + + + + + + Raises the UnboundColumnFetch event. + + + + + + + Raises the UnboundColumnUpdated event. + + + + + + + Raises the AfterColEdit event. + + + + + + + Raises the BeforeColEdit event. + + + + + + + Raises the ColEdit event. + + + + + + + Raises the FirstRowChange event. + + + + + + + Raises the LeftColChange event. + + + + + + + Raises the FromatText event. + + + + + + + Raises the ButtonClick event. + + + + + + + Raises the ComboSelect event. + + + + + + + Raises the ValueItemError event. + + + + + + + Raises the FetchCellStyle event. + + + + + + + Raises the FetchGroupCellStyle event. + + + + + + + Raises the FetchRowStyle event. + + + + + + + Raises the OnAddNew event. + + + + + + + Raises the ColMove event. + + + + + + + Raises the FetchCellTips event. + + + + + + + Raises the OnInit event. + + + + + + + Raises the DataSourceChanged event. + + + + + + + Raises the Collapse event. + + + + + + + Raises the Expand event. + + + + + + + Raises the GroupColMove event. + + + + + + + Raises the GroupText event. + + + + + + + Raises the GroupAggregate event. + + + + + + + Raises the GroupHeadClick event. + + + + + + + Raises the GroupInterval event. + + + + + + + Raises the FetchScrollTips event. + + + + + + + Raises the FilterChange event. + + + + + + + Raises the FilterButtonClick event. + + + + + + + Raises the BeforeOpen event. + + + + + + + Raises the BeforeClose event. + + + + + + + Raises the Sort event. + + + + + + + Raises the Filter event. + + + + + + + Raises the AfterFilter event. + + + + + + + Raises the AfterSort event. + + + + + + + Raises the Error event + + + + + + + + + + + + + Gets a top-level object bound to a current data row. + + Returns null if no data row is selected. + + + + Gets or sets the language to use when localizing the column filters. + + + + + Gets the row object associated with the given row. + + + + + Gets or sets the cell value at the given row and column. + + + + + Gets or sets the cell value at the given row and column. + + + + + Gets a value that describes the current AddNew state. + + + + + Gets or sets a value indicating the ability to delete records from the grid. + + + + + Gets or sets a value indicating the ability to add new rows. + + + + + Gets or sets a value indicating whether arrow keys can be used to navigate around the grid. + + + + + Gets or sets a value indicating the ability to move columns in the grid. + + + + + Gets or sets a value indicating the ability to select columns in the grid. + + + + + Gets or sets a value indicating the ability to drag from the grid. + + + + + Gets or sets a value indicating the ability to select rows in the grid. + + + + + Gets or sets a value indicating the ability of a user to modify data. + + + + + Gets or sets a value indicating how the grid updates modifed data when the grid loses focus. + + + + + Gets the number of levels within a hierarchical grid. + + + + + Gets or sets the current row position of the underlying CurrencyManager. + + + + + Gets or sets whether the grid displays a pop-up text window when the cursor is idle. + + + + + Gets or sets the amount of time in milliseconds before the cell tip window is displayed. + + + + + Gets or sets the width of the cell tip window. + + + + The CellTipsWidth property returns or sets the width of the cell tip window in pixels. + + + By default, this property is set to zero, which causes the cell tip window to grow or shrink to accommodate the cell tip text. Override this behavior and give the cell tip window a fixed width by specifying a non-zero value for this property. + + + + + + Gets or sets the column position of the current cell in the current split. + + + + + Gets or sets the color of the collapse icon. + + + + + Gets a reference to the cell editor that is currently active. + + + + + Gets the Split that has focus. + + + + + Gets or sets the default width for all grid columns. + + + + + Gets or sets the color of the expand icon in hierarchical grids. + + + + + Gets or sets a value indicating the visibility of column headers. + + + + + Gets or sets a value indicating the visibility of column footers. + + + + + Gets the collection of C1DataColumn objects. + + + + + Gets or sets a value indicating the visibility of the current cell in a split. + + + + + Gets or sets a value indicating the modification status of the current row. + + + + + Gets the split index which will be current after cell movement. + + + + + Gets the row which will be current after cell movement. + + + + + Gets the column which will be current after cell movement. + + + + + Gets or sets a value indicating the editing status of the current cell. + + + + + Gets or sets a value indicating whether editing will take place in a popup window or within cell boundaries. + + + + + Gets or sets a value that determines how the grid displays rows below the last data row. + + + + + Gets or sets the image used for ErrorProvider. + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the grid. + + + + + Gets or sets how the rightmost column reacts when clicked by the user. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets a value indicating whether the filter bar has focus. + + + + + Gets or sets a value indicating the visibility of the FilterBar. + + + + + Gets or sets the row index for the first visible row in a grid or split. + + + + + Gets or sets the zero-based index of the leftmost column in a grid or split. + + + + + Gets or sets the MarqueeStyle for a grid. + + + + + Gets or sets the time (milliseconds) in which the incremental search string will reset for a dropdown when the property is True. + + + + + Gets or sets the selection state of the grid. + + + + + Gets or sets the Image used in the record selector to indicate the Current row. + + + + + Gets or sets the Image used in the record selector to indicate the Modified row. + + + + + Gets or sets the Image used in the record selector to indicate the AddNew row. + + + + + Gets or sets the Image used in the record selector to indicate the FilterBar row. + + + + + Gets or sets the Image used in the record selector to indicate the Standard row. + + + + + Gets or sets the Image used in the record selector to indicate the Header row. + + + + + Gets or sets the Image used in the record selector to indicate the Footer row. + + + + + Gets the object. + + + + + Gets the object. + + + + + Gets or sets a value indicating the visibility of row headers for a grid or split. + + + + + Gets or sets the width of the row headers. + + + + + Gets or sets the the current row. + + + + + Gets or sets a value that determines whether the grid displays a pop-up text window when the scrollbar thumb is dragged. + + + + + Gets the collection of rows that are currently selected. + + + + + Gets the collection of columns that are currently selected. + + + + + Gets or sets the number of characters selected within the grid's editing window. + + + + + Gets or sets the starting point of the text selection within the grid's editing window. + + + + + Gets or sets the string containing the currently selected text within the grid's editing window. + + + + + Gets a value indicating whether a range of cells has been selected. + + + + + Gets or sets the index of the current within the . + + + + + Gets or sets a value that determines how columns will resize when the grid is resized. + + + + + Gets or sets a value indicating the behavior of the tab and arrow keys at split borders. + + + + + Gets or sets the behavior of the tab key. + + + + + Gets the number of visible columns in the current Split. + + + + + Gets the number of visible rows in the current Split. + + + + + Gets or sets a value indicating the behavior of Tab and arrow keys at row boundaries. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets the layout by which the grid will display data. + + + + + Gets or sets a value that determines the relative position of the next cell when the user presses the Enter key. + + + + + Gets or sets the text displayed in the grouping area when no columns have been grouped. + + + + + Gets the collection of columns that are grouped. + + + + + Gets or sets a value indicating the visibility of the Grouping area of the grid when the property is set to GroupBy. + + + + + Gets the rectangle occupied by the grouping area. + + + + + Gets or sets the number of subrows of the grid when the property is set to MutlipleLinesFixed. + + + + + Gets or sets a value indicating the behavior of the grid and row currency when the grid's datasource is sorted. + + + + + Gets or sets the style of the border drawn between grid rows. + + + + + Gets or sets the color of the subrow divider in a multi-line grid. + + + + + Gets or sets the C1TrueDBGrid control used as a child grid in a hierarchical presentation. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Gets or sets the object that controls the appearance of the cell editor within a grid. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of grouping area. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the current row/cell when the is set to Highlight Row/Cell. + + + + + Gets or sets the object that controls the grids caption when it doesn't have focus. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of selected rows and columns. + + + + + Gets or sets the root object. + + + + + Gets the collection of named objects. + + + + + Gets or sets a value indicating whether the grid or split uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether a user is allowed to create horizontal splits. + + + + + Gets or sets a value indicating whether a user is allowed to create vertical splits. + + + + + Gets the collection of objects. + + + + + Gets or sets the width of a column when the is set to Inverted or Form. + + + + + Gets or sets the width of the column caption when the is set to Inverted or Form. + + + + + Occurs after a cell has been updated. + + + + + Occurs after a row has been deleted. + + + + + Occurs after a row has been added. + + + + + Occurs after a row has been updated. + + + + + Occurs before a cell is updated to the datasource. + + + + + Occurs before a row is deleted. + + + + + Occurs before a new row is added to the datasource. + + + + + Occurs before a row is updated to the datasource. + + + + + Occurs whenever a column is resized. + + + + + Occurs whenever a column header is clicked. + + + + + Occurs whenever a column footer is clicked. + + + + + Occurs before a cell is rendered and the is true. + + + + + Occurs before a cell is to be printed and the is true. + + + + + Occurs before the page header is to be printed. + + + + + Occurs before the page footer is to be printed. + + + + + Occurs prior to focus moving to another cell. + + + + + Occurs when the focus moves to a different cell. + + + + + Occurs whenever the user resizes a row. + + + + + Occurs whenever the user scrolls the grid. + + + + + Occurs whenever the user selected a different range of rows or columns. + + + + + Occurs whenever a Split changes focus. + + + + + Occurs when a split is removed. + + + + + Occurs when a split is added. + + + + + Occurs whenever the user changes the value of a cell. + + + + + Occurs when the grid needs to access the value of an unbound column. + + + + + Occurs when the value of an unbound column has been updated. + + + + + Occurs after editing is completed. + + + + + Occurs before a cell enters edit mode. + + + + + Occurs whenever a cell first enters edit mode. + + + + + Occurs whenever the first row changes. + + + + + Occurs whenever the left column changes. + + + + + Occurs whenever a cell is about to be rendered and whose property has been set to FormatTextEvent. + + + + + Occurs whenever a button is clicked in a cell. + + + + + Occurs whenever a selection has been made to the built-in combo or TrueDBDropdown. + + + + + Occurs whenever a user attempts to enter invalid data into a column that is using valueitems. + + + + + Occurs whenever a cell is to be rendered and the is true. + + + + + Occurs whenever a grouped cell that contains an aggregate is to be rendered and is true. + + + + + Occurs whenever the grid renders a row and the property has been set. + + + + + Occurs whenever an AddNew operation has been initiated. + + + + + Occurs whenever the user has finished moving a column. + + + + + Occurs when the grid needs to display CellTips. + + + + + Occurs after the grid has been initialized. + + + + + Occurs whenever the datasource changes. + + + + + Occurs whenever a hierarchical row is collapsed. + + + + + Occurs whenever a hierarchical row is expanded. + + + + + Occurs whenever a column is moved into or out of the grouping area. + + + + + Occurs when the property is set to custom. + + + + + Occurs when the is set to Custom for a grouped row. + + + + + Occurs whenever a column in the grouping area is clicked. + + + + + Occurs whenever a row is being grouped and a custom interval has been specified. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Occurs when the contents of a cell in the filterbar changes. + + + + + Occurs when a button is clicked in the filterbar. + + + + + Occurs when the user attempts to open a child grid. + + + + + Occurs when the user attempts to close a child grid. + + + + + Occurs when the user drags a column into the grouping area. + + + + + Occurs when the user types in the filterbar and the property is false. + + + + + Occurs after the datasource has been filtered. + + + + + Occurs after a column has been sorted. + + + + + Occurs whenever an exception is thrown during end user interaction. + + + + + C1TrueDBDropdown control. + + + + + Creates a new instance of the object. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + Creates the view. + + + + + + + Creates the view. + + The other. + + + + + + + + + + + + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Restores the default layout. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Restores the default layout. + + + + + Returns the column index for the column containing the specified X coordinate. + + + The horizontal coordinate (X value) in pixels. + + + The index of the column in the collection beneath the specified X coordinate. + + + + + Returns the zero-based index of the display row containing the Y specified coordinate. + + + The vertical coordinate (Y value) in pixels. + + + The display row index beneath the specified Y coordinate. + + + + + Reinitializes grid with data from its data source. + + + True to preserves current column layout. False retrieves the schema from the datasource. + + + + + + + + + Scrolls the data area by the specified number of rows and columns + + + + + + + + + Occurs when the user has moved a column. + + + + + Occurs when the user has resized a column. + + + + + Occurs when the grids DataSource has changed. + + + + + Occurs when the dropdown is opened. + + + + + Occurs when the dropdown closes. + + + + + Occurs whenever the grid is about to display a row of data and the FetchRowStyles property is True. + + + + + Occurs when the first displayed row of a control or split is changed. + + + + + Occurs when the user clicks on the column footer. + + + + + Occurs when the grid is about to display cell data in a column whose NumberFormat property is set to the string FormatText Event. + + + + + Occurs when the user clicks on the column header. + + + + + Occurs when the first visible column of a grid or split is changed. + + + + + Occurs when the focus moves to a different row. + + + + + Occurs when the user has finished resizing a grid row. + + + + + Occurs when the user scrolls the grid. + + + + + Occurs when the user selects a different range of rows or columns. + + + + + Occurs when the grid needs to display the value of a cell in an unbound column. + + + + + Occurs when the user attempts to enter invalid data into a column that is using value lists. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Gets the current selected index. + + + + + + + + + + + + + + + + + + + Raises the MouseUp event. + + A MouseEventArgs that contains the event data. + + + + Raises event. + + A that contains the event data. + + + + Inherited from control. + + A that contains the event data. + + + + + + + + + + Gets the default size of the control. + + + + + The default of the control. + + + + + Gets or sets a value indicating the ability to move columns. + + + + + Gets or sets a value indicating the ability to select columns. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether the dropdown uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets the current row position of the underlying CurrencyManager. + + + + + Gets or sets the column position. + + + + + Gets or sets a value indicating the visibility of column footers. + + + + + Gets or sets the height of column captions. + + + + + Gets or sets the height of column footers. + + + + + Gets or sets a value indicating the visibility of column headers. + + + + + Gets the collection of C1DataColumn objects. + + + + + Gets the collection of C1DisplayColumn objects. + + + + + Gets or sets a value indicating the visibility of the current cell. + + + + + Gets or sets the property used to update the associated grid column. + + + + + Gets or sets the default width for all grid columns. + + + + + Gets or sets the width of the dropdown. + + + + + Gets or sets a value that determines how the grid displays rows below the last data row. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the dropdown. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets the row index for the first visible row. + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the appearance of a highlighted row. + + + + + Gets or sets a value indicating whether the control should resize to avoid showing partial items. + + + + + Gets or sets the zero-based index of the leftmost column. + + + + + Gets or sets the property used for incremental search. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the the current row. + + + + + Gets or sets the style of the border drawn between rows. + + + + + Gets or sets the color of the subrow divider in a multi-line dropdown. + + + + + Gets or sets a value that determines if rows are highlighted under the mouse. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets a value that determines whether the grid displays a pop-up text window when the scrollbar thumb is dragged. + + + + + Gets or sets the root object. + + + + + Gets the collection of named objects. + + + + + Gets or sets a value that determines how the grid display values in a column. + + + + + Gets the number of visible columns in the dropdown. + + + + + Gets the number of visible rows in the dropdown. + + + + + Occurs when the user has moved a column. + + + + + Occurs when the user has resized a column. + + + + + Occurs when the grids DataSource has changed. + + + + + Occurs when the dropdown is opened. + + + + + Occurs when the dropdown closes. + + + + + Occurs whenever the grid is about to display a row of data and the FetchRowStyles property is True. + + + + + Occurs when the first displayed row of a control or split is changed. + + + + + Occurs when the user clicks on the column footer. + + + + + Occurs when the grid is about to display cell data in a column whose NumberFormat property is set to the string FormatText Event. + + + + + Occurs when the user clicks on the column header. + + + + + Occurs when the first visible column of a grid or split is changed. + + + + + Occurs when the focus moves to a different row. + + + + + Occurs when the user has finished resizing a grid row. + + + + + Occurs when the user scrolls the grid. + + + + + Occurs when the user selects a different range of rows or columns. + + + + + Occurs when the grid needs to display the value of a cell in an unbound column. + + + + + Occurs when the user attempts to enter invalid data into a column that is using value lists. + + + + + Occurs whenever the grid has focus and the scrollbar thumb is moved using the mouse. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Represents operators used in filter conditions. + + + + + Disables the operator. + + + + + Return true if the value equals the operator parameter. + + + + + Return true if the value does not equal the operator parameter. + + + + + Return true if the value is greater than the operator parameter. + + + + + Return true if the value is less than the operator parameter. + + + + + Return true if the value is greater than or equal to the operator parameter. + + + + + Return true if the value is less than or equal to the operator parameter. + + + + + Return true if the string representation of the value contains the operator parameter. + + + + + Return true if the string representation of the value does not contain the operator parameter. + + + + + Return true if the string representation of the value begins with the operator parameter. + + + + + Return true if the string representation of the value ends with the operator parameter. + + + + + Represents a condition within a . + + + Each contains up to two conditions that + can be combined with 'And' or 'Or' operators. + + + + + Clears this condition by setting the to 'None' + and the to null. + + + + + Applies the condition to a given value. + + Value to test. + True if the value satisfies the condition, false otherwise. + + + + Gets a value that indicates whether the condition is active. + + + + + Gets or sets the operator used by this condition. + + + + + Gets or sets the parameter used by this condition. + + + + + Gets or sets the parameter as a string used by this condition. + + + + + Specifies the type of filter to be used for a . + + + + + Filter column using a . + + + + + Filter column by values using a . + + + + + Filter column by conditions using a . + + + + + Filter column using a filter specified by the caller. + + + + + Do not provide a filter for this column. + + + + + + + + + + + + + + + + + + + + + Specifies the language to be used for localizing the control. + + + + + Localize the control to the language specified by the CurrentUICulture. + + + + + Localize the control to Arabic. + + + + + Localize the control to Czech. + + + + + Localize the control to Danish. + + + + + Localize the control to Dutch. + + + + + Localize the control to English. + + + + + Localize the control to Finnish. + + + + + Localize the control to French. + + + + + Localize the control to German. + + + + + Localize the control to Greek. + + + + + Localize the control to Hebrew. + + + + + Localize the control to Italian. + + + + + Localize the control to Japanese. + + + + + Localize the control to Norwegian. + + + + + Localize the control to Polish. + + + + + Localize the control to Portuguese. + + + + + Localize the control to Russian. + + + + + Localize the control to Slovak. + + + + + Localize the control to Spanish. + + + + + Localize the control to Swedish. + + + + + Localize the control to Chinese (simplified). + + + + + Localize the control to Turkish. + + + + + Base class for splits. + + + + + + + + + Releases the resources used by the view. + + + + + Releases the resources used by the view. + + + + + + + Returns the string that represents the current object. + + + + + + + Returns the style associated with a given cell. + + Row to fetch the style for. + Column to fetch the style for. + The text of the cell. + + + + + + Returns a value indicating whether a line should be rendered for a given row and column. + + The row index. + The column index. + + + + + + Raised when the scrollbar visibility changes. + + The scrollbar object. + The new visible state. + + + + + + + + + + + + + + + + + + + + Notifies what curent row or column is changed. + + + + + + + + + + + + + + + + + + + + + + + + + + + autosizes the height of the given row + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Performs internal reset. + + + + + + + + + + + + + + + + + checks to see if the mouse is over a 3d element + + + + + + + Called when C1DisplayColumn properties have been changed. + + + + + + + + + + + + + + + + + + + + + + + + + + + creates a datasource from the valueitems so for the internal combobox. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets an XML string containing the current filter state. + + + + + potential properties + + + + + + + + + Gets or sets the type of border rendered for a split. + + + + + Base class for typeconverter. + + + + + Returns an object from it's string representation. + + + + + + + + + Returns a string representation from a given object. + + + + + + + + + Returns true if the source type is string. + + + + + + + + + + + Returns true of the type of string. + + + + + + + + + + + Overloaded. Returns whether this converter can convert an object of one type to the type of this converter. + + + + + + + + + + + + + Overloaded. Converts the given value object to the specified type. + + + + + + + + + + + + + + + Typeconverter for bitmaps. Used for serialization. + + + + + Override. Returns the object given a string. + + + + + + + + + Override. Returns a string given an object. + + + + + + + + + Expandable object converter that doesn't handle strings. + + + + + Overloaded. Returns whether this converter can convert an object of one type to the type of this converter. + + + + + + + + + + + Overloaded. Returns whether this converter can convert the object to the specified type. + + + + + + + + + + + + + + + Initializes a new instance of the class. + + + + + Converts from. + + The CTX. + The ci. + The obj. + + + + + + Defined the relationship of a column. + + + + + Column is not related. + + + + + Column is the parent. + + + + + Column is the child. + + + + + Represents a column that defines binding information for the datasource. + + + + + Creates a new instance of this object. + + + + + Creates a new instance of this object. + + The column caption. + The data type. + + + + Creates a new instance of this object. + + The column caption. + The field from the data source. + The data type. + + + + + + + + + + Resets ButtonPicture to its default value. + + + + + Resets FilterButtonPicture to its default value. + + + + + Gets the display value for a cell in a given row. + + The row to fetch. + The display value. + + + + Gets the cell value for a given row. + + The row to fetch. + The underlying data from the data source. + + + + Invalidate the current column in all visible rows. + + + + + Invalidates the current cell. + + + + + Invalidates the cell at the given row. + + Row to invalidate. + + + + Repopulate the entire grid from the data source. + + + + + Repopulates the current cell from the data source. + + + + + Repopulates the specified data from the data source. + + The row to refetch. + + + + Gets or sets the level of this column in a hierarchical data source. + + + + + + + + + + + + + Gets or sets the type of aggregate computed for a grouped row. + + + + + Gets or sets the image shown in a drop-down button in a column. + + + + + Index of button picture. + + + + + Tag of button picture. + + + + + Gets or sets the text in the column header. + + + + + Gets or sets a value indicating whether data in this column has been modified. + + + + + Gets or sets the database field name for a column. + + + + + Gets or sets the type of object stored for a column. + + + + + + + + + Gets or sets the maximum number of characters which may be entered for cells in this column. + + + + + Gets or sets the default value for a column when a new row is added by the grid. + + + + + Gets or sets the edit mask for a column. + + + The property allows an input mask to be specified for automatic input formatting and validation. The mask syntax is similar to the one used by Microsoft Access. Setting the input mask for a column will prevent the user from entering any information in the cell that is not in the format of the string. + The must be a string composed of the following symbols: + + Wildcards + + + + 0 + Digit. + + + 9 + Digit or space. + + + # + Digit or sign. + + + L + Letter. + + + ? + Letter or space. + + + A + Letter or digit. + + + a + Letter, digit or space. + + + & + Any character. + + + + Localized characters + + + + . + Localized decimal separator. + + + , + Localized thousand separator. + + + : + Localized time separator. + + + / + Localized date separator. + + + + Command characters + + + + \ + Next character is taken as a literal. + + + > + Translate letters to uppercase. + + + < + Translate letters to lowercase. + + + + + + + Gets or sets a value indicating whether literal characters in the edit mask are stored to the underlying data source. + + + + + Gets or sets the editor that is used to edit cell data. + + + + + Gets or sets a value indicating whether a DateTime picker is used to edit this column. + + + + + Gets or sets the image shown as the column's filter button. + + + + + + + + + Gets or sets the key used to initiate the filtering operation as the user types in the filterbar. + + + + + Gets the number of values in the filter drop-down list. + + + + + Gets or sets the text displayed in the column footer. + + + + + Gets or sets the characters that should be ignored when applying the filter criteria to the datasource. + + + + + Gets or sets the operator that is used for a filter expression. + + + + + Gets or sets the data associated with the value of the filter for a column. + + + + + Specifies the text that is rendered in an empty cell in the Filterbar. + + + + + Gets or sets a value indicating whether a drop-down list is displayed in the filter cell that lists all the values of the field. + + + + + Gets or sets the value indicating All when the FilterDropdown property is True. + + The filter dropdown text. + + + + Gets or sets a value indicating whether multiple values can be selected in the filter drop-down list. + + If FilterMultiSelect is true then the user is able to enter several values using comma separator. + + + + Gets or sets a character used to separate values in the filter drop-down list when multiple values are selected. + + + + + Gets or sets the text of Apply button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Gets or sets the text of Cancel button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Gets or sets the text of Clear button in the filter drop-down list when the FilterMultiSelect property is True. + + + + + Specifies the ImeMode used to edit this column. + + + + + Gets or sets the formatting string for a column. + + + + + Gets the object for this column. + + + + + Gets or sets the display value for the current cell. + + + + + Gets or sets the value of the current cell. + + + + + Gets or sets a user defined objects associated with this column. + + + + + Gets or sets a user defined object associated with this column. + + + + + Gets or sets the state of the sorting glyph in the column caption bar. + + + + + Gets or sets the associated with this column. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an object used to render grid elements. + + + + + Creates a new instance of this object. + + + + + Called when the class is being disposed. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + Renders the given string using the style properties. + + Graphics object to render too. + Rectangle to render in. + String to render. + + + + Renders the given string using the style properties. + + Graphics object to render too. + Rectangle to render in. + String to render. + The draw flags. + + + + Reset BackColor to its default value. + + + + + Resets ForeColor to its default value. + + + + + Resets Font to its default value. + + + + + Resets HorizontalAlignment to its default value. + + + + + Resets VerticalAlignment to its default value. + + + + + Resets BackgroundPictureDrawMode to its default value. + + + + + Resets the BackgroundImage to its default value. + + + + + Resets ForGroundImagePosition to its default value. + + + + + Resets ForegroundImage to its default value. + + + + + Resets Locked to its default value. + + + + + Resets WrapText to its default value. + + + + + Resets Trimming to its default value. + + + + + Resets all specialized attributes. + + + + + Gets the associated with this Style. + + + + + Gets or sets the background color associated with a Style. + + + + + Gets or sets the background color associated with a Style. + + + + + Gets or sets a value indicating whether gamma correction is enabled when a linear gradient style is rendered. + + + true if gamma correction is enabled; otherwise, false. + + + + Gets or sets the direction of a linear gradient. + + The gradient mode. + + + + Gets or sets the alpha component when the style is rendered. + + + + + Gets or sets the foreground color associated with a Style. + + + + + Gets or sets the Font associated with a Style. + + + + + Gets or sets the horizontal text alignment. + + + + + Gets or sets the vertical text alignment. + + + + + Gets or sets the rendering method for a . + + + + + Gets or sets the background image associated with a Style. + + + + + Gets or sets the position that the ForGroupImage is rendered. + + + + + Gets or sets the foreground image associated with a style. + + + + + Gets or sets a value indicating whether data entry is permitted for the assocated object. + + + + + Gets or sets a value indicating whether text is word-wrapped when it does not fit into a layout shape. + + + + + Gets or sets the name of the Style. + + + + + Gets or sets the trim characters for a string that does not completely fit into a layout shape. + + + + + Gets or sets the spacing between cell content and its edges. + + + + + Represents the border in a + + + + Gets or sets the type of border. + + + + + Gets or sets the width of the left border. + + + + + Gets or sets the width of the right border. + + + + + Gets or sets the width of the top border. + + + + + Gets or sets the width of the bottom border. + + + + + Gets or sets the color of the border. + + + + + Represents an object that defines how cells are rendered. + + + + + Returns a that represents the current . + + + A that represents the current . + + + + + Gets or sets a value indicating whether both Value and Display Value are rendenered when Display value is an image. + + + + + Gets or sets a value indicating whether users can cycle through by clicking on a cell. + + + + + Gets or sets the index of the default or -1 for no default. + + + + + Gets or sets the maximum number of visible rows in the combobox. + + + + + Gets or sets the method in which cells are rendered. + + + + + Gets or sets a value indicating whether data values are translated using matching . + + + + + Gets or sets a value indicating whether values entered by the user must match on of the objects. + + + + + Gets the collection of Value/Display Value pairs. + + + + + + + + + Represents a collection of objects. + + + + + Initializes a new instance of the class. + + + + + Adds a to the end of the collection. + + The ValueItem to add. + The index at which the ValueItem has been added. + + + + + + + + + + + + Inserts a at the specified index. + + The zero-based index at which the ValueItem should be inserted. + The ValueItem to insert. + + + + Gets the index of the specified . + + The ValueItem to search. + The index of the ValueItem. + + + + Gets or sets the specified from the collection at the specified index. + + + + + Represents an object that defines a value/display value pair. + + + + + Initializes a new instance of the ValueItem class. + + + + + Initializes a new instance of the ValueItem class. + + Underlying data value. + Translated value. + + + + Returns a string that represents the current object. + + + + + + + Gets or sets the raw (untranslated) value of this item. + + + + + Gets or sets the display value of this item. + + + + + + + + + + + + + Represents the columns in a split. + + + + + Releases the resources used by the component. + + + + + Returns a that represents the current . + + + A that represents the current . + + + + + Releases the resources used by the component. + + + + + + + + + + + Gets the filter expression for the column. + + The filter expression for the column + Use this method in your implementations of custom filtering. + Example shows how to build a row filter using method. + "" Then + If sb.ToString() <> "" Then + sb.Append(" AND ") + End If + sb.Append(cond) + End If + + Next dc + ' filter the data + Me.DataSet11.Tables(0).DefaultView.RowFilter = sb.ToString() + End Sub]]> + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Adjusts the width of a column to accommodate the longest visible field within that column. + + + + + Gets or sets a value indicating whether the dropdown opens automatically when a key is typed. + + + + + Gets or sets a value indicating whether the dropdown auto fills the edit portion with the matched entry. + + + + + Gets the vertical offset of the top of the cell for the current row. + + + + + Gets or sets a value indicating whether the dropdown acts like a dropdown list (text portion is not editable). + + + + + Gets or sets the that controls the appearance of the column headers. + + + + + Gets or sets the root for this column. + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the used for the cell editor. + + + + + Gets or sets the used to render the cell in the grouped header row. + + + + + Gets or sets the used to render the cell in the grouped footer row. + + + + + Gets or sets a value indicating the visibility of a column. + + + + + Gets or sets the style of the border drawn between columns. + + + + + Gets or sets the width of a column. + + + + + Gets or sets the height of the column. + + + + + Gets or sets a value indicating the ability of a column to receive focus. + + + + + Gets or sets a value indicating whether editing is permitted in a column. + + + + + Gets or sets a value indicating whether contiguous like-value cells of this column are merged into one large cell. + + + + + Gets or sets a value indicating whether this is frozen. + + + true if frozen; otherwise, false. + + + + Gets or sets a value indicating whether column resizing is allowed. + + + + + Gets or sets a value indicating whether cells in this column look like buttons. + + + + + Gets or sets a value indicating whether buttons will be displayed when the cell does not contain focus. + + + + + Gets or sets a value indicating whether a dropdown button will be displayed in this column. + + + + + Gets or sets a value indicating whether a dropdown button will be displayed in this column. + + + + + Gets or sets the minimum width a column can be resized to when in . + + + + + Gets or sets a value indicating whether to display the column divider in the header area. + + + + + Gets or sets a value indicating whether to display the column divider in the footer area. + + + + + Gets or sets a value indicating whether the FetchCellStyle event will be raised for a column. + + + + + Gets or sets a value indicating whether a column header will act like a button. + + + + + Gets or sets a value indicating whether a column footer will act like a button. + + + + + Gets or sets a value indicating whether cells in this column are drawn by the user in the OwnerDrawCell event. + + + + + Gets the associted associated with this object. + + + + + + + + + Gets the caption of the associated objects. + + + + + Enumerates the type of changes made to a display column for event listeners + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + TypeConverter for the GridLines object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Froms the STR. + + The STR. + + + + + + + + + + + + + + + + Represents the line used for row and column dividers. + + + + + Creates a new instance of this object. + + + + + Gets or sets the color of lines used for row and column dividers. + + + + + Gets or sets the style of lines used for row and column dividers. + + + + + + + + + Initializes a new instance of the class. + + + + + Gets or sets the width. + + The width. + + + + Gets or sets the border3D style. + + The border3D style. + + + + Represents a collection of ViewRow objects. + + + + + Performs additional custom processes when clearing the contents of the instance. + + + + + Performs additional custom processes when removing an element from the instance. + + The zero-based index at which value can be found. + The value of the element to remove from index. + + + + Owner of the row list. + + + + + Gets or sets the at the specified index. + + + + + Represents a row in a split. + + + + + Adjust the size of the row to fully display cell data. + + + + + Gets or sets the visiblity of a row. + + + + + Gets the type of row. + + + + + Gets or sets the height of a row. + + + + + Gets or sets the width of a row. + + + + + Gets index of the row in data source. + + + + Returns -1 if there is not corresponding data row. + For example, for a group row. + + + Use DataRowIndex property to translate view row index to data row index. + + + + + private void c1TrueDBGrid1_FetchCellStyle(object sender, C1.Win.C1TrueDBGrid.FetchCellStyleEventArgs e) + { + ViewRow row = this.c1TrueDBGrid1.Splits[0].Rows[e.Row]; + if (row.RowType == RowTypeEnum.DataRow) + { + bool val = (bool)this.c1TrueDBGrid1[row.DataRowIndex, 3]; + if (val == true) + e.CellStyle.BackColor = Color.Red; + } + } + + + + + + Represents a horizontal or vertical pane to display and edit data. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The f. + + + + Initializes a new instance of the class. + + The other. + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + + + + + + + + + + + Draws the filter cell. + + The instance containing the event data. + The col. + + + + + + + + + + + + + + + + returns true if the data at the given row is the same as the passed in string + + + + absolute row number + + + + + + + + + + Called when C1DisplayColumn properties have been changed. + + + + + Returns the upper and lower bounds for a merged column. + + Starting row + Starting colum. + The CellRange object that defines the rows and columns for a merged cell. + + + + Exits editing mode. + + + + + + + short circuits exiting the editor on row change when actively filtering + + + + + + + + + + + + + + + + + + + + + + + + + + + Adds the row. + + The newrow. + + + + Deletes the rows. + + + + + Gets the drop down for the current column if one exists. + + + + + + + Determines whether we have an internal combo. + + + true if combo is not a valueitem otherwise, false. + + + + + Determines whether this instance has combo. + + + true if this instance has combo; otherwise, false. + + + + + Creates the internal dropdown for use in the filterbar. + + + + + + + Sets the flat mode. + + The mode. + + + + + + + + + + + + + + Controls the used to change the appearance for cells meeting the specified condition. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + + + Controls the used to change the appearance of cells according to their contents. + + + Combination of one or more enumerations. + + + object that specifies appearance attributes. + + + A regular expression string. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + + + Removes a cell condition established with a previous call to the method. + + + Combination of one or more enumerations. + + + A regular expression string. + + + + + Returns the Rectangle for the given Row and Column + + Visible row number + Visible column index + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets a value indicating whether the split can recive focus. + + + + + Gets or sets a value indicating the ability to move columns. + + + + + Gets or sets a value indicating the ability to select columns. + + + + + Gets or sets a value indicating the ability to select rows. + + + + + Gets or sets the name of a split. + + + + + Gets or sets how interactive row resizing is performed. + + + + + Gets or sets a value indicating whether a user is allowed to resize horizontal splits. + + + + + Gets or sets a value indicating whether a user is allowed to resize vertical splits. + + + + + Gets or sets a value indicating whether the split uses the for odd-numbered rows and for even-numbered rows. + + + + + Gets or sets the caption. + + + + + Gets or sets the height of the caption. + + + + + Gets or sets the height of the column captions. + + + + + Gets or sets the height of column footers. + + + + + Gets or sets a value indicating the visibility of the current cell in a split. + + + + + Gets or sets a value that determines how the last column will extend to fill the dead area of the split. + + + + + Gets or sets a value indicating whether the event will be raised. + + + + + Gets or sets a value indicating whether the filter bar has focus. + + + + + Gets or sets a value indicating the visibility of the FilterBar. + + + + + Gets or sets the filter border style. + + The filter border style. + + + + Gets or sets the row index for the first visible row in a split. + + + + + Gets or sets the left most visible column for a split. + + + + + Gets or sets the MarqueeStyle for a Split. + + + + + Gets or sets a value indicating if the cells of a split can be edited. + + + + + Gets or sets the width of the row headers. + + + + + + + + + Gets or sets a value indicating the visibility of row headers for Split. + + + + + Gets the collection of Rows displayed in the Split. + + + + + Gets or sets the group which synchronizes verticall scrolling between splits. + + + + + Gets or sets the minimum width that a split can be interactively resized. + + + + + Gets or sets the minimum height that a split can be interactively resized. + + + + + Gets or sets the group which synchronizes horizontal scrolling between splits. + + + + + Gets or sets the position of the Horizontal scrollbar. + + + + + Gets or sets the position of the Vertical scrollbar. + + + + + Gets or sets a value that determines how columns will resize when the grid is resized. + + + + + Gets the object that controls the appearance of the vertical scrollbar. + + + + + Gets the object that controls the appearance of the horizontal scrollbar. + + + + + Gets or sets the size of a split. + + + + + Gets or sets the height of a split. + + + + + Gets or sets a value indicating how the property is used to determine the actual size of a split. + + + + + Gets or sets the object that controls the appearance of the caption area. + + + + + Gets or sets the object that controls the appearance of the cell editor within a grid. + + + + + Gets or sets the object that controls the appearance of an even-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of column footers. + + + + + Gets or sets the object that controls the appearance of the grids column headers. + + + + + Gets or sets the object that controls the current row/cell when the is set to Highlight Row/Cell. + + + + + Gets or sets the object that controls the grids caption when it doesn't have focus. + + + + + Gets or sets the object that controls the appearance of an odd-numbered row when using . + + + + + Gets or sets the object that controls the appearance of the . + + + + + Gets or sets the object that controls the appearance of selected rows and columns. + + + + + Gets or sets the root object for the Split. + + + + + Gets a collection of objects. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Initializes a new instance of the struct. + + The row. + The col. + + + + Initializes a new instance of the struct. + + The row1. + The col1. + The row2. + The col2. + + + + Determines whether the range is a single cell. + + + true if [is single cell]; otherwise, false. + + + + + Represents a collection of named . + + + + + + + + + + + + + + + + + + + Adds a to the end of the collection. + + The Style to add. + The index at which the has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the Style should be inserted. + The Style to insert. + + + + Gets the index of the specified . + + + + The index of the Style. + + + + Removes the at the specified index. + + Teh zero-based index of the Style to remove. + + + + Gets the specified Style from the collection given its index. + + + + + Gets the specified Style from the collection given its name. + + + + + Represents a collection of in a . + + + + + Inserts a at the specified index. + + The zero-based index at which the C1DisplayColumn should be inserted. + The C1DataColumn to insert. + + + + Gets the index of the . + + + + The index of the C1DisplayColumn. + + + + Gets the index of the specified by the . + + + + The index of the C1DisplayColumn. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the specified from the collection at the specified index. + + + + + Gets the specified from the collection wich contains the specified . + + + + + Gets the specified from the collection with the specified name. + + + + + Contains a collection of objects. + + + + + + + + + + + + + Removes all elements from the collection. + + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Gets the index of the specified . + + + + The index of the the C1DataColumn. + + + + Gets the index of a with the specified DataField. + + + + The index of the the C1DataColumn. + + + + Gets the specified C1DataColumn from the collection at the specified index. + + + + + Gets the specified C1DataColumn from the collection with the specified name. + + + + + Contains a collection of objects that represent columns that are selected. + + + + + Removes all elements from the collection. + + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Contains a collection of objects that represent columns that are grouped. + + + + + Removes all elements from the collection. + + + + + Exchanges the C1DataColumn objects at the specified index. + + The zero-based index of the first C1DataColumn. + The zero-based index of the second C1DataColumn. + + + + Removes the C1DataColumn at the specified index. + + The zero-based index of the row to remove. + + + + Adds a C1DataColumn to the end of the collection. + + The C1DataColumn to add. + The index at which the C1DataColumn has been added. + + + + Inserts a at the specified index. + + The zero-based index at which the C1DataColumn should be inserted. + The C1DataColumn to insert. + + + + Represents a collection of Selected rows. + + + + + Removes all elements from the collection. + + + + + Removes the row at the specified index. + + The zero-based index of the row to remove. + + + + Adds a row to the end of the collection. + + Row number to add. + The index at which the row has been added. + + + + Inserts a row at the specified index. + + The zero-based index at which row should be inserted. + The row to insert. + + + + Gets the index of the specified row. + + + + The index of the row. + + + + Gets or sets the specified Row index from the collection. + + + + + Represents a collection of Split objects. + + + + + This interface is used to allow objects and collection to serialize + types of their members in a custom way. + If a collection implements this interface, TypeToString is invoked during + serialization of collection items, and for all items for which it returns a + non-null string, that string is used as the element name of the item. + If a class implements this interface, AND a member of that class has + attribute TypeNameSerialization.Custom, AND does not have attribute + XmlAttribute (i.e. is serialized as an element), TypeToString is invoked + on the owner when that member is serialized, and if that returns a non-null + string, that string is used as the value of TypeName attribute. + When deserializing a collection which implements this interface, + StringToType is invoked for each new item in the collection, and if that + returns a non-null type, that type is used to create the item. Otherwise, + TypeNameSerialization attribute is used. + When deserializing a class which implements this interface, StringToType + is invoked on that class for members with TypeNameSerialization.Custom + attribute set. + + + + + Returns a string representing the type of the object + + + + + Returns the type restored from the serialized string + + + + + + + + + + + + + Gets the index if the specified Split. + + + + + + + + + Gets the specified Split object from the collection. + + + + + Gets the specified Split object from the collection. + + + + + Gets the specified Split object from the collection. + + + + + Gets the number of vertical splits in the collection. + + + + + Gets the number of horizontal splits in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the glyph used to denote a sort direction in the column header. + + + + + Column is not sorted. + + + + + Column is sorted in ascending order. + + + + + Column is sorted in descending order. + + + + + Specifies the UI behavior for selecting rows and columns. + + + + + Multiple selection is disabled but single selection is permitted. When the user clicks a record selector, the current selection is cleared, and the clicked row is then selected and added to either the SelectedRows or SelectedCols collections. The Ctrl and Shift keys are ignored, and the user can only select one row at a time. + + + + + Multiple selection is enabled using the mouse. When the user clicks a record selector, the selection is cleared and the clicked row is selected and added to either the SelectedRows or Selected Cols collections. However, if the user holds down the Ctrl key while clicking, the clicked row is added to the current selection. The user can also select a range of rows by selecting the first row in the range, then selecting the last row in the range while holding down the Shift key. + + + + + Multiple selection is enabled using the mouse. The user can also select records with the following key combinations: Shift + Up Arrow, Shift + Down Arrow, Shift + PgUp, and Shift + PgDn. NOTE: The user will not be able to select a single cell, instead the entire corresponding row will be selected. + + + + + Specifies how 3D elements are rendered. + + + + + The grid’s column headers and recordselectors are rendered with an inset three-dimensional look + + + + + Three-dimensional elements appear flat + + + + + Three-dimensional elements are flat, but when the user drags the cursor over a column heading or recordselector, they become three-dimensional and appear to pop up. + + + + + Three-dimensional elements uses XP Themes if available. + + + + + Specifies the sizing mode for splits. + + + + + The indicates the relative size of the split with respect to other scalable splits. + + + + + The indicates the size of the split in pixels. + + + + + The indicates the number of columns displayed in the split. + + + + + Specifies the vertical alignment of text or images in a cell. + + + + + Text is rendered at the top of the cell. + + + + + Text is rendered at the center of the cell. + + + + + Text is rendered at the bottom of the cell. + + + + + Specifies the horizontal alignment of text or images in a cell. + + + + + Text is aligned Near and numeric values Far + + + + + Text is aligned to the left. + + + + + Text is aligned centered. + + + + + Text is aligned to the right. + + + + + Text is aligned with respect to the cells boundries. + + + + + Specifies the visibility of ScrollBars. + + + + + ScrollBars are never displayed. + + + + + ScrollBars are always displayed. + + + + + ScrollBars are displayed only if the object's contents extend beyond its borders. + + + + + Specifies the line style for row and column dividers. + + + + + No line. + + + + + Single line. + + + + + Double line. + + + + + Line with 3D raised appearance. + + + + + Line with 3D inset appearance. + + + + + Specifies how the grid displays its data. + + + + + The grid will only display flat files and will not support a hierarchical view. If the data source is a hierarchical dataset, the grid will only display data from the master table. + + + + + Rows will be represented horizontally and columns vertically. + + + + + The data will be displayed in a convenient data entry form. + + + + + A grouping area is created at the top of the grid; any columns that are placed into this area become part of the GroupedColumn collection. When in group mode, grid columns can be moved into or out of the grouping area with the Add and RemoveAt methods, respectively. Users can also perform this action by selecting and dragging a column into or out of the grouping. Users can customize the display of the grouped row with styles and automatically compute aggregates for columns that are grouped. The expanded/collapsed state of the grouping can also be specified. + + + + + The grid will display all the fields in the current grid area with multiple lines. + + + + + The grid will display DataSets in a hierarchical format. At run time, users can expand and collapse hierarchical recordset Bands using a treeview-like interface. + + + + + The grid will display all the fields in the current grid area with multiple lines. The number of subrows does not change once set. The number of subrows can be set using the LinesPerRow property. + + + + + Provides a description of the current addnew state with respect to the current cell. + + + + + The current cell is not on the addnew row. + + + + + The current cell is on the addnew row. + + + + + There is an Add New operation pending. + + + + + Specifies the behavior of the pop-up window when the cursor is idle over the grid. + + + + + No cell tips will be displayed. + + + + + Cell tips will be displayed in the bounding rectable of the cell. + + + + + Cell tips will be displayed under the mouse cursor. + + + + + Specifies how the grid exposes the rightmost column when it gets focus. + + + + + The grid will scroll to the left to display the rightmost column in its entirety. + + + + + The grid will not move when the rightmost column is clicked initially. However, if the user attempts to edit the cell, then the grid will scroll to the left to display the rightmost column in its entirety. + + + + + The grid will always leave the rightmost column clipped. + + + + + Specifies the location of the foreground image in a cell. + + + + + Image is rendered in the near side of the cell. + + + + + Image is rendered in the far side of the cell. + + + + + Image is rendered to the left of any text in the cell. + + + + + Image is rendered to the right of any text in the cell. + + + + + Image is rendered on top of any text in the cell. + + + + + Image is rendered below any text in the cell. + + + + + Text is not displayed. + + + + + Image is not displayed. + + + + + Specifies how the background image is rendered. + + + + + The image is rendered in the center of the cell. + + + + + The image is tiled in the cell. + + + + + The image is stretched to fit within the cell. + + + + + Specifies how rows can be resized. + + + + + Row can not be resized. + + + + + All rows will be sized to the same height or width. + + + + + Rows can be sized indepentently. + + + + + Specifies which rows are to be previewed/printed. + + + + + All rows are to be previewed/printed. + + + + + Only selected rows will be previewed/printed. + + + + + Only the current row will be previewed/printed. + + + + + Specifies the type of ui-element for a coordinate. + + + + + Coordinates are not in the grid. + + + + + Coordinates are in the caption area + + + + + Coordinates are in the split's header + + + + + Coordinates are in the split's resizing box + + + + + Coordinates are in the row selector. + + + + + Coordinates are in the row resizing box. + + + + + Coordinates are in the column headers. + + + + + Coordinates are in the column footers. + + + + + Coordinates are in the column resizing box. + + + + + Coordinates are in the data area. + + + + + Coordinates are in the grouping area. + + + + + Coordinates are in the group header. + + + + + Coordinates are in the empty row area. + + + + + Coordinates are in the addnew row. + + + + + Coordinates are in the empty column area. + + + + + Coordinates are in the filter bar. + + + + + Specifies how ValueItems are rendered. + + + + + Values are displayed as text or graphics. + + + + + Values are displayed as a group of Radio Buttons. + + + + + Values are displayed as a dropdown combobox. + + + + + Values are displayed as a dropdown combobox in sorted order. + + + + + Values are displayed as a checkbox. + + + + + Specifies how focus is handled when the Tab key is entered. + + + + + The tab key moves to the next or previous control on the form. + + + + + The tab key moves the current cell to the next or previous column. However, if this action would cause the current row to change, then the next or previous control on the form receives focus. + + + + + The tab key moves the current cell to the next or previous column. The behavior of the tab key at row boundaries is determined by the property. When this setting is used, the tab key never results in movement to another control. + + + + + Specifies the borders for a . + + + + + No borders. + + + + + Borders have a Flat appearance. + + + + + Borders have a 3D raised appearance. + + + + + Borders have a 3D inset appearance. + + + + + A line around the inside of the border. + + + + + A fillet type border. + + + + + Borders have a 3D raised with a bevel. + + + + + Borders have a 3D inset with a bevel. + + + + + Specifies which cell gets focus when the enter key is pressed. + + + + + Cell currency doesn't change. + + + + + The next cell will be the cell to the right of the current cell. + + + + + The next cell will be the cell below the current cell. + + + + + The next cell will be the cell to the left of the current cell. + + + + + The next cell will be the cell above the current cell. + + + + + Describes the disposition of a cell. + This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values. + + + + The cell satisfies none of the conditions. For grouped rows, this is the only applicable cell style. + + + + + The cell is the that currently has focus. At any given time, only one cell can have this status. When the MarqueeStyle property is set to Floating Editor, this condition is ignored. + + + + + The cell is part of a highlighted row marquee. When the MarqueeStyle property indicates that the entire current row is to be highlighted, all visible cells in the current row have this additional condition set. + + + + + The cell contents have been modified by the user but not yet written to the datasource. This condition is also set when cell contents have been modified in code with the Text or Value properties. + + + + + The cell is part of a row selected by the user or in code. The SelectedRowCollection contains the index for each selected row. + + + + + All cells. + + + + + Specifies how the current cell is highlighted. + + + + + The current cell within the current row will be highlighted by drawing a dotted border around the cell. In Microsoft Windows terminology, this is usually called a focus rectangle. + + + + + The current cell within the current row will be highlighted by drawing a solid box around the current cell. This is more visible than the dotted cell border, especially when 3D divider properties are used for the grid. + + + + + The entire current cell will be drawn using the attributes of the HighlightRowStyle property. This provides a very distinctive block-style highlight for the current cell. + + + + + The entire row containing the current cell will be drawn using the attributes of the HighlightRowStyle property. In this mode, it is not possible to visually determine which cell is the current cell, only the current row. When the grid or split is not editable, this setting is often preferred, since cell position is then irrelevant. + + + + + The entire row will be highlighted as in setting 3, but the current cell within the row will be "raised" so that it appears distinctive. This setting does not appear clearly with all background color and divider settings. The best effect is achieved by using 3D dividers and a light gray background. + + + + + The marquee will not be shown. This setting is useful for cases where the current row is irrelevant, or when not wanting to draw the user's attention to the grid until necessary. + + + + + The current cell will be highlighted by a floating text editor window with a blinking caret (as in Microsoft Access). + + + + + The entire current row will be highlighted by drawing a dotted border around it. This effect is similar to setting 0. + + + + + Identifies the type of scrollbar. + + + + + The Horizontal scrollbar. + + + + + The Vertical scrollbar. + + + + + Identifies the type of row. + + + + + Row is a datarow. + + + + + Row is a collapsed group row. + + + + + Row is an expanded group row. + + + + + Row is a footerrow. + + + + + Row is a childrow. + + + + + Specifies the initial expanded or collapsed state of a grouped row. + + + + + Grouped rows initial display is collapsed (default). + + + + + Grouped rows initial display is expanded. + + + + + Specifies how the grouped column should be displayed. + + + + + Grouped columns contain just a header row (default). + + + + + Grouped columns contain a header and footer row. + + + + + Grouped columns contain a header and footer row, but aggregates are shown only in the footer row. + + + + + Specifies the type of aggregate that is computed for a grouped row. + + + + + No aggregate is calculated or displayed. + + + + + Count of non-empty values. + + + + + Sum of numerical values. + + + + + Average of the numerical values. + + + + + Minimum value (numerical, string, or date). + + + + + Maximum value (numerical, string, or date). + + + + + Standard deviation (using formula for Sample, n-1). + + + + + Standard deviation (using formula for Population, n). + + + + + Variance (using formula for Sample, n-1). + + + + + Variance (using formula for Population, n). + + + + + Causes the GroupAggregate event to be raised. + + + + + Specifies the width of a C1TrueDBDropdown for a cell. + + + + + The width of the dropdown is the control width. + + + + + The width of the dropdown is the column width. + + + + + Specifies how columns are merged. + + + + + + + + + + + + + + + + + Specifies the type of gradient. + + + + + + + + + + + + + + + + + + + + + + + + + Specifies how rows are grouped. + + + + + Rows are grouped by their values. + + + + + Rows are grouped by the date portion of their values. + + + + + Rows are grouped by the month portion of their values. + + + + + Rows are grouped by the year portion of their values. + + + + + Rows are grouped by the first character of their values. + + + + + Rows are grouped according to their date values. + + + + + Rows are grouped by raising the event. + + + + + Raised before an action is performed on the grid and the action can be canceled. + + + + + Provides data for the , , , , , , , , and events. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Provides data for the event. + + + + + Gets the current scroll position. + + + + + Gets the new scroll position. + + + + + Raised before a column enters edit mode. + + + + + Provides data for the BeforeColEdit event. + + + + + Gets or sets a value indicating that editing should be disallowed. + + If event procedure sets the Cancel argument to True, the cell will not enter edit mode. Otherwise, the ColEdit event is raised immediately, followed by the Change event for the KeyChar property, if non-zero. + + + + Indicates the character that initiated the editing operation. + + The BeforeColEdit event occurs just before the user enters edit mode by typing a character. If a floating editor marquee is not in use, this event also occurs when the user clicks the current cell or double clicks another cell. + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn for the column being edited. + + + + + Raised after editing is completed in a cell. + + The BeforeColUpdate event occurs after editing is completed in a cell, but before data is moved from the cell to the grid's internal copy buffer. + The data specified by the OldValue argument moves from the cell to the grid's copy buffer when the user completes editing within a cell, as when tabbing to another column in the same row, pressing the Enter key, or clicking on another cell. Before the data has been moved from the cell into the grid's copy buffer, the BeforeColUpdate event is triggered. This event gives the application an opportunity to check the individual grid cells before they are committed to the grid's copy buffer. + If your event procedure sets the Cancel argument to True, the previous value is restored in the cell, the grid retains focus, and the AfterColUpdate event is not triggered. Change the current cell text by setting OldValue to the value wanted to display (other than the previous value). + To restore OldValue in the cell and permit the user to move focus off of the cell, set Cancel to False and set the cell to OldValue as follows: + + + + Provides data for the BeforeColUpdate event. + + + + + Gets or sets a value that prevents the user from moving focus to another cell. + + + + + Gets or sets the value of the original cell data. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn for the column being edited. + + + + + Raised after a column has been resized. + + + + + Provides data for the ColReisize event. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets or sets a value indicating that sizing should be ignored. + + + + + Gets the C1DisplayColumn for the column being sized. + + + + + Raised when an action is perfored on a column. + + + + + Provides data for the , , , , , , , , and events. + + + + + Indicates the position in the DisplayColumns collection. + + + + + Gets the C1DisplayColumn. + + + + + Raised when grouping columns. + + + + + Provides data for the event. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The C1DataColumn that was clicked. + + + + + Raised when a cell is to rendered by the event code. + + + + + Provides data for the and events. + + + + + The bounding rectangle for the cell that needs to be rendered. + + + + + The index of the row for the cell being rendered. + + + + + The index of the split for the cell being rendered. + + + + + The index of the column in the DisplayColumns collection. + + + + + The GDI+ graphics object to render on. + + + + + The text of the cell. + + + + + The Style used to render the cell. + + + + + Indicates whether the event code rendered the cell. + + + + + The C1DisplayColumn being rendered. + + + + + Indicates whether the custom renderer handles the background, border or content. + + + + + Raised when custom page headers and footers need to be rendered. + + + + + Provides data for the and events. + + + + + The object used to render the custom header or footer + + + + + Raised after the current Row or Column changes. + + + + + Provides data for the event. + + + + + The previous row index. + + + + + The previous column index of the DisplayColumns collection. + + + + + Raised when an unbound column needs to be rendered. + + + + + Provides data for the event. + + + + + The index of the row. + + + + + Indicates the position in the Columns collection. + + + + + The object. + + + + + Gets or sets the value of the Column. + + + + + Raised when Split specific actions are performed. + + + + + Provides data for the and events. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Raised when a cell needs custom formatting. + + + + + Provides data for the FromatText event. + + + + + Indicates the position in the Columns collection. + + + + + The row index for the cell to be formatted. + + + + + The value to format. + + + + + The object. + + + + + Raised when the used to render a cell needs customization. + + + + + Provides data for the event. + + + + + The sum of one or more constants describing the disposition of the cell being rendered. + + + + + Indicates the position in the Splits collection. + + + + + The index of the row for the cell being rendered. + + + + + The index of the column in the DisplayColumns collection. + + + + + The Style used to render the cell. + + + + + The C1DisplayColumn being rendered. + + + + + Provides data for the event. + + + + + Value that the data is being grouped on. + + + + + First row index that is being grouped. + + + + + Last row index that is being grouped. + + + + + Raised when the used to render a row needs customization. + + + + + Provides data for the event. + + + + + Indicates the position in the Splits collection. + + + + + The index of the row for the cell being rendered. + + + + + The Style used to render the row. + + + + + Raised when a column is being repositioned. + + + + + Provides data for the event. + + + + + Indicates the target index of the column being moved. + + + + + Indicates the starting position in the DisplayColumns collection. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Gets the C1DisplayColumn that is being moved. + + + + + Raised when a column is moved into or out of the grouping area. + + + + + Provides data for the event. + + + + + The C1DataColumn for the column being moved. + + + + + Raised when cell tips are to be displayed. + + + + + Provides data for the event. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The index of the row for the cell tip. + + + + + The text to be displayed in the cell tip. + + + + + Indicates if the contents of the cell is fully displayed. + + + + + The Style used to render the cell tip. + + + + + The C1DisplayColumn that this tip is associated with. + + + + + Raised when a hierarchical node is expanded or collapsed. + + + + + Provides data for the and events. + + + + + Indicates the recordset level that holds the current row within a master-detail hierarchy. + + + + + Gets or sets a value indicating that the action should not be performed. + + + + + Raised when scroll tips are to be displayed. + + + + + Provides data for the event. + + + + + Indicates the position of the Split in the Splits collection. + + + + + Indicates the position in the DisplayColumns collection. + + + + + The index of the topmost row for the scroll tip. + + + + + Indicates the scrollbar that was moved. + + + + + The text to be displayed in the scroll tip. + + + + + The Style used to render the scroll tip. + + + + + The current C1DisplayColumn. + + + + + Raised when the grid is sorted or filtered. + + + + + Provides data for the , , , and + + + + The filter or sort condition. + + + + + Raised when an excpetion is thrown via the UI. + + + + + Provides data for the event. + + + + + The exception which caused the Event to be raised. + + + + + True if the exception has been handled. + + + + + True to continue as if no exception was raised. + + + + + Raised when text is grouped. + + + + + Provides data for the event. + + + + + Custom text for the grouped row. + + + + + Value that the data is being grouped on. + + + + + Column that is being grouped. + + + + + Type of row being grouped. + + + + + First row index that is being grouped. + + + + + Last row index that is being grouped. + + + + + Raised when text is grouped. + + + + + Provides data for the event. + + + + + Underlying value of the row being grouped. + + + + + Column that is being grouped. + + + + + Row index that is being grouped. + + + + + Object that represents a groupby split. + + + + + Gets the type of row. + + + + + Gets the text that is being grouped. + + + + + Gets the level of the grouping. + + + + + Gets the starting row index of the datasource that belong to this group. + + + + + Gets the ending row index of the datasource that belong to this group. + + + + + Gets the number of rows that belong to this group. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Interface used to provide feedback and the ability to cancel potentially long operations + + + + + + + + + + + + + + + + + + + + + + + + + + + Simple stack with indexed access, based on System.Collections.ArrayList + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + General purpose pair class. (Should be moved to gp utils.) + + + + + + + + + + + + + + + + + + + + + + + + + Attribute used to specify which properties get serialized when saving layouts. + + + + + Attribute used to specify which properties get serialized when saving layouts. + + + + + Determines how item types are serialized + + + + + Item type is not serialized (this is the default) + + + + + Item type is serialized as a fully qualified name + + + + + Item type is serialized as a fully qualified name and assembly name + + + + + Use owner's IMemberTypeEncoder for members + (for collection items, this is done automatically). + + + + + Helper class for implementors of IMemberTypeEncoder + + + + + + + + + + + + + + + + + + + + + Forces the serializer to serialize the type name of a property or field + + + + + + + + + + + + + + + + + + + + + This attribute allows to specify collection's element type name + (in that case there is no need to store it). + + + + + + + + + + + + + + + Serializes and deserializes objects into and from XML. + + + All the methods in this class are static (Shared in Visual Basic). + You cannot create an instance of this class. + + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + DOES NOT close the underlying stream. Useful for copying objects. + Caller is responsible to call out writer.Close() to close writer and underlying stream. + + The Stream used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + The XmlWriter object reference. Call writer.Close after working with stream/writer. + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + + The Stream used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified XmlWriter + + The XmlWriter used to write the XML-document instance + The Object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + DOES NOT close the underlying stream. Useful for copying objects. + Caller is responsible to call out writer.Close() to close writer and underlying stream. + + The Stream used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + The XmlWriter object reference. Call writer.Close after working with stream/writer. + + + + + + + + + + + + + + + + + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified Stream. + + The Stream used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + + + + Serializes the specified Object and writes the XML-document instance to a file using the specified XmlWriter + + The XmlWriter used to write the XML-document instance + The Object to serialize + The FieldInfo or MemberInfo object context for the object to serialize + The XmlSerializerNamespaces referenced by the object + Array of attributes that specify what to serialize + + + + Serializes the specified object to an XML formatted string. + + + + + + + + + + + + + Deserializes an XML-document instance + + The Stream containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Deserializes an XML-document instance + + The XmlReader containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Deserializes object + + The XmlReader containing the XML-document instance to deserialize + The Object being deserialized + The type of object being deserialized + The type of array elements (in case the object is an array) + The Object being deserialized + + + + Deserializes an XML document string + + + + + + + + + + + Deserializes text of element or attribute into object of appropriate type + + The XmlReader containing the XML-document instance to deserialize + The type of object being deserialized + The Object being deserialized + + + + Sets or returns the object implementing IOnLongOpInProgressProvider interface + (can be used to provide visual feedback to the user during serialization). + + + + + Gets or sets a value indicating whether all the values are to be persistent. + + + + + Sets or returns formatting used by the XML writer. + + + + + Sets or returns indentation used by the XML writer. + + + + + Sets or returns serialization of non-public properties. If true non-public properties + are included, but are hidden by default. Public properties are always visible by default. + + + + + + + + + Initializes a new instance of the class. + + + + + Raises the event. + + + + + Raises the event. + + + true if this object can be changed; otherwise, false. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + + A service object of type . + -or- + null if there is no service object of type . + + + + + Gets the container representing this request. + + + + + Gets the object that is connected with this type descriptor request. + + + + + Gets the that is associated with the given context item. + + + + + The that describes the given context item; otherwise, null if there is no responsible for the call. + + + + + GroupInfo + Property of the C1DataColumn object, used to control grouping and + rendering of group headers and footers + + + + + Creates a new instance of the object. + + The column this object is associated with. + + + + Override. The string representation of the object. + + + + + + + Gets or sets the position of the grouped row. + + + + + Gets or sets the initial expanded/collapsed state of the grouped row. + + + + + Gets or sets the text that is displayed in the group header row. + + + + + Gets or sets the text that is displayed in the group footer row. + + + + + Gets or sets the text that is displayed with the Aggregates value + + + + + Gets or sets the way rows are grouped. + + + + + Gets or set a value indicating the visibility of a column when it's grouped. + + + + + Represents print/export options form. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of the PrintOptionsFrom class. + + + + + Called when the class is being disposed. + + + True to cleanup. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets or sets the output file name. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of the ActionItem class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Object to manage custom page headers and footers when printing and previewing. + + + + + Renders text for the document. + + X-coordinate to start the rendering. + Y-coordinate to start the rendering. + The text to render. + The width for the rendered text. + The font to use. + The color of the text. + The alignment to render the text. + + + + Renders an image for the document. + + X-coordinate. + Y-coordinate. + Image to render. + Width to render. + Height to render. + Alignment options. + + + + Renders a line for the document. + + Start x-coordinate. + Start y-coordinate. + End x-coordinate. + End y-coordinate. + Color of the line. + Width of the line. + + + + The height of drawing area in inches + + + + + Specifies how a should be printed + or exported when using such methods as + , + etc. + + + + + + + + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Resets the property to its default value. + + + + + Indicates whether the property should be serialized. + + + true if should be serialized, false otherwise. + + + + Resets the property to its default value. + + + + + Opens a separate modal window in which end users can preview the output + that would be generated by the print operation. + + + allows to specify a custom form for + the preview dialog. + + + + + Prints the grid. + + + + + Prints the grid. + + Specifies the printer settings (including the printer) to use. + + + + Saves the current grid to a stream in C1D + (native C1PrintDocument) format. + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The output stream. + + + The stream's Position is set to 0 when the method returns. + + This method does not show progress dialog + (ignoring property). + + + + + + Saves the current grid to a memory stream in C1D + (native C1PrintDocument) format. + + The stream's Position is set to 0 when the method returns. + + The stream containing the saved grid. + + + + Saves the current grid as a C1D file, which can later be loaded + into a C1PrintDocument (provided by C1Report product). + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The name of the output file. + + true if the file was successfully saved, + false otherwise. + + + + Saves the current grid to a stream in C1D + (native C1PrintDocument) format. + + Note that unlike most other print/export methods, this method + does not require C1Report assemblies. + + The output stream. + + true if the stream was successfully written, + false otherwise. + + Unlike the method, + this method does not reset the stream's position after saving. + + + + + Gets or sets a value indicating whether the grid rows can split between pages. + + + This new property helps to print very long text in columns on multiple pages. + + + + + Gets or sets a value indicating whether the grid's color scheme is translated to the print page. + + + + + Gets or sets a value indicating whether the page header is owner-drawn. + + + + + Gets or sets a value indicating whether the page footer is owner-drawn. + + + + + Gets or sets the style used to render the page header. + + + + + Gets or sets the string to be printed at the top of each page. + + + + + Gets or sets the height of the Page header. + + + + + Gets or sets the style used to render the page footer. + + + + + Gets or sets the page footer height in hundredths of an inch. + + + + + Gets or sets a string to be printed at the bottom of each page. + + + + + Gets or sets a value indicating whether column footers should appear on each page. + + + + + Gets or sets a value indicating whether the grid caption should appear on each page. + + + + + Gets or sets a value inidcating whether split captions should appear on each page. + + + + + Gets or sets a value indicating whether horizontal splits are previewed and printed. + + + + + Gets or sets a value indicating whether column headers should appear on each page. + + + + + Gets or sets a value indicating how empty space left on a printed page is handled. + + + + + Gets or sets the horizontal page break mode. + + + + + Gets or sets a value that controls how text is wrapped in a cell. + + + + + Gets or sets a value whether to print a grid if it has no data rows. + + + + + Gets or sets the maximum row height in hundredths of an inch + (used if is ). + + + + + Gets or sets a value indicating how row height of the printed grid is determined. + + + + + Gets or sets a value indicating how grid lines are rendered. + + + + + Gets or sets a value indicating whether the options dialog is displayed + when the grid is printed or exported. + + + + + Gets or sets a value indicating whether the progress dialog is displayed when the grid is printed or exported. + + + + + Gets or sets a value indicating whether the grid in Form view style is printed each record per page. + + + + + Gets or sets a value indicating whether selected cells will be highlighted when previewing or printing. + + + + + Gets or sets the PageSettings for printing. + + + + + Gets or sets the caption of the print progress dialog. + + + + + Gets or sets the class name of the form used as the print options dialog. + + + + + Gets or sets the class name of the form used as the preview form. + + + + + Specifies how empty space left on a printed page is handled (filled or otherwise). + + + + + All columns are extended proportionally to fill the page. + + + + + Empty space on the right of the page is left as is. + + + + + Rightmost column on the page is extended to fill the empty space. + + + + + Specifies how grid is broken into extension (horizontal) pages + when it is too wide to fit into one page. + + + + + All columns are made narrow enough to fit into one page. + + + + + Columns that do not fit into one page are clipped. + + + + + Horizontal page breaks can be inserted on grid splits as necessary. + + + + + Horizontal page breaks can be inserted on any column as necessary. + + + + + Specifies how cell text is wrapped. + + + + + Text can wrap in any cell as needed. + + + + + Text in cells never wraps. + + + + + Use column's property. + + + + + Specifies how grid lines are rendered. + + + + + Grid lines are rendered. + + + + + Grid lines are not rendered. + + + + + Specifies how rows' heights are determined. + + + + + Stretch rows vertically to fit all data. + + + + + Use the grid's row height. + + + + + Stretch rows vertically but not greater than . + + + + + Specify allowed print options. + + + + + No print/export operations are allowed. + + + + + Printing is allowed. + + + + + Preview is allowed. + + + + + Export is allowed. + + + + + All print/export operations are allowed. + + + + + The print preview form. + + + + + Creates a new instance of the PrintFrom class. + + + + + Additional initialization of the form. + + + To override properties like FormBorderStyle, MaximizeBox, MinimizeBox, ControlBox etc. of a Form, + inherited from "C1.Win.C1TrueDBGrid.PrintForm", override the Init method of the PrintForm. + First call the base.Init(), then set the properties you want. + + + The example is a custom PrintForm which has sizable border, control box is on, and minimize and maximize boxes are off. + + public class CustPrintForm : C1.Win.C1TrueDBGrid.PrintForm + { + public CustPrintForm(): base() + { + } + + protected override void Init() + { + base.Init(); + FormBorderStyle = FormBorderStyle.Sizable; + this.ControlBox = true; + this.MinimizeBox = false; + this.MaximizeBox = false; + } + } + + + + + Overloaded. Overridden. Releases all resources used by the Control. + + + + + + + + + + + + + + + Represents exception that is thrown if printing or exporting + a is cancelled by the user. + + + + + Initializes a new instance of the class. + + + + + Specifies the characteristics of the print preview window + shown by the method. + + + + + + + + + + + + + + + + + Resets the array of UIStrings back to the default locale. + + + + + Gets or sets the caption of the preview window. + + + + + Gets or sets the position and manner in which the control is docked in the navigation page. + + + + + Gets or sets the location of the preview window. + + + + + Gets or sets a value indicating whether the end user has the ability to size the preview window. + + + + + Gets or sets the zoom factor for print preview. + + + + + Gets or sets the size of the form. + + + + + Gets or sets a value indicating the visibiity of toolbars. + + + + + Gets the array of user interface strings. + + + + + Print progress window. + + + + + Initializes a new instance of the C1PrintProgress class. + + + + + Initializes a new instance of the C1PrintProgress class with a language. + + UI Language + + + + Overloaded. Releases the resources used by the component. + + + + + Gets or sets the text used to display the current progress when the grid is printed/previewed. + + + + + Gets or sets the text for the Cancel button. + + + + + Gets or sets the text for the Windows caption. + + + + + Gets a value indicating if the print/preview was cancelled. + + + + + Base class for the grid's scrollbars + + + + + Initializes a new instance of the SBar class + + + + + + + + + Overloaded. Releases the resources used by the class. + + + + + + + Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Gets or sets the visibility of the scrollbars. + + + + + Gets or sets a value indicating whether the scrollbar is displayed. + + + + + Gets or sets a numeric value that represents the current position of the scroll box on the scroll bar control. + + + + + Represents a vertical scrollbar. + + + + + Initializes a new instance of the VBar class. + + + + + + + Overloaded. Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Returns a string the represents the current object. + + + + + + + Gets or sets a numeric value that represents the current position of the scroll box on the scroll bar control. + + + + + Gets or sets the width of the vertical scrollbar. + + + + + Represents a horizontal scrollbar. + + + + + Initializes a new instance of the VBar class. + + + + + + + Overloaded. Occurs when the scroll box has been moved by either a mouse or keyboard action. + + + + + + + + + Returns a string the represents the current object. + + + + + + + Gets or sets the height of the horizontal scrollbar. + + + + + Specifies which elements of the cell should be drawn by the grid. + + + This enumeration is used when rendering owner-drawn cells. + + + + + Draw nothing. + + + + + Draw the cell background. + + + + + Draw the cell border. + + + + + Draw the cell content (text, images, checkboxes, etc). + + + + + Draw all cell elements (background, border, and contents). + + + + + Specifies a visual style to use when rendering the control. + + + + + Do not use any visual styles. Render the control using the styles and properties only. + + + + + Render the control with an appearance based on the current system settings. + + + + + Render the control with an appearance based on the Office 2007 Blue color scheme. + + + + + Render the control with an appearance based on the Office 2007 Silver color scheme. + + + + + Render the control with an appearance based on the Office 2007 Black color scheme. + + + + + Render the control with an appearance based on the Office 2010 Blue color scheme. + + + + + Render the control with an appearance based on the Office 2010 Silver color scheme. + + + + + Render the control with an appearance based on the Office 2010 Black color scheme. + + + + + Base class for the grid renderers. + + + + + Initializes a new instance of the class. + + + + + + + + + Gets the background brush. + + The grid. + Type of the cell. + The r. + + + + + + Gets the border pen. + + Type of the cell. + + + + + + Styles the has custom background. + + The style. + + + + + + Styles the has custom border. + + The style. + + + + + + Styles the has right border. + + the style + + + True is has right border + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/_FRReporting/bin/Debug/FlexCel.dll b/_FRReporting/bin/Debug/FlexCel.dll new file mode 100644 index 0000000..235a65c Binary files /dev/null and b/_FRReporting/bin/Debug/FlexCel.dll differ diff --git a/_FRReporting/bin/Debug/XLSLib.dll b/_FRReporting/bin/Debug/XLSLib.dll new file mode 100644 index 0000000..d0324ca Binary files /dev/null and b/_FRReporting/bin/Debug/XLSLib.dll differ diff --git a/_FRReporting/bin/Debug/_FRReporting.dll b/_FRReporting/bin/Debug/_FRReporting.dll new file mode 100644 index 0000000..69b10ab Binary files /dev/null and b/_FRReporting/bin/Debug/_FRReporting.dll differ diff --git a/_FRReporting/bin/Debug/_FRReporting.pdb b/_FRReporting/bin/Debug/_FRReporting.pdb new file mode 100644 index 0000000..9072919 Binary files /dev/null and b/_FRReporting/bin/Debug/_FRReporting.pdb differ diff --git a/_FRReporting/bin/Debug/_FRReporting.xml b/_FRReporting/bin/Debug/_FRReporting.xml new file mode 100644 index 0000000..44c3ea8 --- /dev/null +++ b/_FRReporting/bin/Debug/_FRReporting.xml @@ -0,0 +1,1327 @@ + + + + +_FRReporting + + + + + + Purpose: Data Access class for the table 'Auswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • bReport
  • +
  • sFilename
  • +
  • bExcel_Report
  • +
  • sSQL
  • +
  • sSQLType
  • +
  • sBeschreibung
  • +
  • sConnectionstring_Subreport
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungAuswertungParameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr
  • +
  • iAuswertungparameternr
  • +
  • sDBfeldname
  • +
  • iReihenfolge
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppe'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iParentid
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppeAuswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr
  • +
  • iAuswertungNr
  • +
  • bAktiv
  • +
  • daErstllt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungRptDatei'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungDateiNr
  • +
  • sFilename
  • +
  • sReportname
  • +
  • blobReportfile
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungparameternr
  • +
  • sBezeichnung
  • +
  • sOperator
  • +
  • sFeldbezug
  • +
  • sWert
  • +
  • sParamName
  • +
  • sParamType
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'key_tabelle'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iKeynr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Mitarbeiter_Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr
  • +
  • iAuswertungnr
  • +
  • sBeschreibung
  • +
  • sParameterdaten
  • +
  • sTitelzeile1
  • +
  • sTitelzeile2
  • +
  • bParamPrint
  • +
  • sSQLWhere
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'SecurityObject'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iSecurityObjectNr
  • +
  • sSecurityForm
  • +
  • sSecurityObjectType
  • +
  • sSecurityObject
  • +
  • sSecurityObjectItem
  • +
  • sSecurityObjectDescriotion
  • +
  • iLevel
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iMandantnr
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Initialisierung des Formulars + + + + + + + Auswertungen, für welche der User berechtigt ist, auslesen + + + + + + + Interne Relation aufbauen und Tree aufbauen + + + + + + + + Tree aufbauen + + + + + + + + Child-Nodes hinzufügen + + + + + + + + Klasse für das Speichern bzw. Auslesen von Image-Dateien in der Datenbank + + + Es werden folgende Datebanktabellen berücksichtigt: + + + Dokument Attribut DocImage + + Profile Attribut V_Uebersicht (Profillayout des C1TrueDBGrids der + Vertragsübersicht|Vertragselemente + + yes + + + + Grid-Layoutfile speichern + + C1Truedbgrind, von welchem das Layout gespeichert werden soll + Nummer des Grids: 1=Vertragsübersicht... + + + + + + Dokument in der Tabelle Dokument speichern + + Nummer des Dokument-Datensatzes + Zu speichender Dateiname + + + + + + Liest das Dokument aus der DB und speichert dieses unter einem temporären Filenamen ab + + + + + + + + Formular-Security-Objekte auslesen und auf DB schreiben bzw. Formular-Security zur Laufzeit setzen + + + + + + Formularsecurity setzen + + Aktuelles Formular + + + + + + Daten ab Datenbank laden + + + + + + Prüft die DB-Einträge mit den Formcontrols und bei Übereinstimmung werden die Security-Einstellungen gesetzt + + + + + + Security-Einstellungen setzen + + Betroffenes Objeckt (Menuitem, Conrol usw.) + Readonly ja/nein + Sichtbar ja/nein + Name des Unterobjektes - wird für die Spalteneinstellungen von C1TruedbGrids verwendet + + + + + Alle Controls des Formulars zusammensuchen und auf der DB speichern + + Betroffenes Formular + + + + + + Sämtliche Controls vom Formular auslesen + + + + + + + + Auslesen von MenuItems + + + + + + + + + Auslesen von ContextMenuItems + + + + + + + + + Auslesen von Menu-Subitems + + + + + + + + Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + Formular + Objekttyp + Objektname + Objektitem + + + + + + Klasse für ein Control-Objekt + + + + + + Neue Instanz erstellen + + Control-Objekt + Betroffenes Formular + Objekttyp + Objektname + Unterobjekt (z.B. bei Menus, Spalten von C1TrueDBGrids) + + + + + Schreibt einen Datnsatz in die Tabelle SecurityObjects + + + + + + +Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + + + + + + Formular schliessen + + + + + + + + Formualr schliessen + + + + + + + + Formular schliessen + + + + + + + + Mousedown-Ereignis auf dem Tree + + + + + + + + Nach Selektion eines Nodes Parameter neu aufbereiten und Auswerungsmöglichkeit (CR/CSV) anzeigen + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Parameter initialisieren + + + + + + Selektion Parameter + + + + + + + + Datenrow in den zur Auswertung gehörenden Parameterliste suchen + + + + + + + + Where Bedingung für die Abfrage zusammenstellen + + + + + + Where zusammenstellen + + + + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + +
+
diff --git a/_FRReporting/obj/Debug/BEA.vbproj.FileListAbsolute.txt b/_FRReporting/obj/Debug/BEA.vbproj.FileListAbsolute.txt new file mode 100644 index 0000000..c264a1b --- /dev/null +++ b/_FRReporting/obj/Debug/BEA.vbproj.FileListAbsolute.txt @@ -0,0 +1,67 @@ +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\BEA.exe +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_AllgMainObjekte.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FRReporting.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_Generic_Event_Handler.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_MyBeziehungen.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\FastReport.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\FastReport.Bars.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FRReporting.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_DataClass.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\csvadapter.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\FlexCel.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\MWTreeView.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\XLSLib.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FunktionDetail.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_AllgMainObjekte.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_AllgMainObjekte.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FunktionDetail.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FunktionDetail.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\FlexCel.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\MWTreeView.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_DataClass.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_DataClass.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_FRReporting.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_Generic_Event_Handler.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_Generic_Event_Handler.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_MyBeziehungen.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\_MyBeziehungen.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\es\FlexCel.resources.dll +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.vbprojResolveAssemblyReference.cache +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.vbproj.ResolveComReference.cache +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmDatenbankauswahl.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmAbout.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmExportContainer.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmFortschritt.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmLogin.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmMsgBox.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmSplash.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmTempBerechtigung.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmDatenverarbeitung.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmExcelSheets.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmUpdate.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmMain.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.Resources.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmDomainEditor.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmDomainEditorExtTables.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmFormSelector.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmSysadminMenu.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmSysadminTableSelector.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.FrmToolTipEditor.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmVerbindungEditor.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmSuche.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.frmUebersicht.resources +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.vbproj.GenerateResource.Cache +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.exe.licenses +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.exe +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\obj\Debug\BEA.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\BEA.exe.config +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\BEA.pdb +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\BEA.xml +E:\Software-Projekte\TKBDiverse\BEA\BEA\bin\Debug\System.Windows.Forms.DataVisualization.dll +E:\Software-Projekte\TKBDiverse\BEA\_FunktionDetail\obj\Debug\BEA.vbproj.ResolveComReference.cache +E:\Software-Projekte\TKBDiverse\BEA\_FunktionDetail\obj\Debug\BEA.exe +E:\Software-Projekte\TKBDiverse\BEA\_FunktionDetail\obj\Debug\BEA.xml +E:\Software-Projekte\TKBDiverse\BEA\_FunktionDetail\obj\Debug\BEA.pdb +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\BEA.exe.config +E:\Software-Projekte\TKBDiverse\BEA\_AllgMainObjekte\bin\Debug\BEA.exe.config diff --git a/_FRReporting/obj/Debug/CoreCompileInputs.cache b/_FRReporting/obj/Debug/CoreCompileInputs.cache new file mode 100644 index 0000000..3628cfb --- /dev/null +++ b/_FRReporting/obj/Debug/CoreCompileInputs.cache @@ -0,0 +1 @@ +c8d5817ed5154cef347ad9c584c7bef5e03cc590 diff --git a/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..cbd16aa Binary files /dev/null and b/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..fd6e09b Binary files /dev/null and b/_FRReporting/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/_FRReporting/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll b/_FRReporting/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll new file mode 100644 index 0000000..6f5aceb Binary files /dev/null and b/_FRReporting/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll differ diff --git a/_FRReporting/obj/Debug/_FRReporting.FrmReportSelect.resources b/_FRReporting/obj/Debug/_FRReporting.FrmReportSelect.resources new file mode 100644 index 0000000..7beae8b Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.FrmReportSelect.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.Resources.resources b/_FRReporting/obj/Debug/_FRReporting.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.Resources.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.dll b/_FRReporting/obj/Debug/_FRReporting.dll new file mode 100644 index 0000000..69b10ab Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.dll differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmAuswertung.resources b/_FRReporting/obj/Debug/_FRReporting.frmAuswertung.resources new file mode 100644 index 0000000..a952a83 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmAuswertung.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmCalendar.resources b/_FRReporting/obj/Debug/_FRReporting.frmCalendar.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmCalendar.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmDataSelect.resources b/_FRReporting/obj/Debug/_FRReporting.frmDataSelect.resources new file mode 100644 index 0000000..ab87685 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmDataSelect.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmEditWhere.resources b/_FRReporting/obj/Debug/_FRReporting.frmEditWhere.resources new file mode 100644 index 0000000..3b2904d Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmEditWhere.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmViewer.resources b/_FRReporting/obj/Debug/_FRReporting.frmViewer.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmViewer.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.frmcrreporting.resources b/_FRReporting/obj/Debug/_FRReporting.frmcrreporting.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.frmcrreporting.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.pdb b/_FRReporting/obj/Debug/_FRReporting.pdb new file mode 100644 index 0000000..9072919 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.pdb differ diff --git a/_FRReporting/obj/Debug/_FRReporting.sample.resources b/_FRReporting/obj/Debug/_FRReporting.sample.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.sample.resources differ diff --git a/_FRReporting/obj/Debug/_FRReporting.vbproj.FileListAbsolute.txt b/_FRReporting/obj/Debug/_FRReporting.vbproj.FileListAbsolute.txt new file mode 100644 index 0000000..970b1f4 --- /dev/null +++ b/_FRReporting/obj/Debug/_FRReporting.vbproj.FileListAbsolute.txt @@ -0,0 +1,45 @@ +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\FlexCel.xml +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\_FRReporting.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\_FRReporting.pdb +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\_FRReporting.xml +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\C1.Win.C1TrueDBGrid.2.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\FlexCel.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\XLSLib.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\C1.Win.C1TrueDBGrid.2.xml +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\XLSLib.pdb +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\XLSLib.xml +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\bin\Debug\es\FlexCel.resources.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmAuswertung.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmCalendar.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmcrreporting.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmDataSelect.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmEditWhere.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.FrmReportSelect.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.frmViewer.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.sample.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.Resources.resources +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.vbproj.GenerateResource.Cache +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.dll.licenses +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.dll +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.xml +E:\Software-Projekte\TKBDiverse\BEA\_FRReporting\obj\Debug\_FRReporting.pdb +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmAuswertung.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmCalendar.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmcrreporting.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmDataSelect.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmEditWhere.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.FrmReportSelect.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.frmViewer.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.sample.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.Resources.resources +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.vbproj.GenerateResource.Cache +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.dll.licenses +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.vbprojResolveAssemblyReference.cache +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.xml +E:\Software-Projekte\DPM\DPM2016\_FRReporting\bin\Debug\_FRReporting.dll +E:\Software-Projekte\DPM\DPM2016\_FRReporting\bin\Debug\_FRReporting.pdb +E:\Software-Projekte\DPM\DPM2016\_FRReporting\bin\Debug\_FRReporting.xml +E:\Software-Projekte\DPM\DPM2016\_FRReporting\bin\Debug\C1.Win.C1TrueDBGrid.2.dll +E:\Software-Projekte\DPM\DPM2016\_FRReporting\bin\Debug\C1.Win.C1TrueDBGrid.2.xml +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.dll +E:\Software-Projekte\DPM\DPM2016\_FRReporting\obj\Debug\_FRReporting.pdb diff --git a/_FRReporting/obj/Debug/_FRReporting.vbproj.GenerateResource.Cache b/_FRReporting/obj/Debug/_FRReporting.vbproj.GenerateResource.Cache new file mode 100644 index 0000000..602b2b7 Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.vbproj.GenerateResource.Cache differ diff --git a/_FRReporting/obj/Debug/_FRReporting.vbprojResolveAssemblyReference.cache b/_FRReporting/obj/Debug/_FRReporting.vbprojResolveAssemblyReference.cache new file mode 100644 index 0000000..15a47dc Binary files /dev/null and b/_FRReporting/obj/Debug/_FRReporting.vbprojResolveAssemblyReference.cache differ diff --git a/_FRReporting/obj/Debug/_FRReporting.xml b/_FRReporting/obj/Debug/_FRReporting.xml new file mode 100644 index 0000000..44c3ea8 --- /dev/null +++ b/_FRReporting/obj/Debug/_FRReporting.xml @@ -0,0 +1,1327 @@ + + + + +_FRReporting + + + + + + Purpose: Data Access class for the table 'Auswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • bReport. May be SqlBoolean.Null
  • +
  • sFilename. May be SqlString.Null
  • +
  • bExcel_Report. May be SqlBoolean.Null
  • +
  • sSQL. May be SqlString.Null
  • +
  • sSQLType. May be SqlString.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sConnectionstring_Subreport. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • bReport
  • +
  • sFilename
  • +
  • bExcel_Report
  • +
  • sSQL
  • +
  • sSQLType
  • +
  • sBeschreibung
  • +
  • sConnectionstring_Subreport
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungAuswertungParameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • iAuswertungparameternr. May be SqlInt32.Null
  • +
  • sDBfeldname. May be SqlString.Null
  • +
  • iReihenfolge. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungAuswertungparameternr
  • +
  • iAuswertungnr
  • +
  • iAuswertungparameternr
  • +
  • sDBfeldname
  • +
  • iReihenfolge
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppe'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iParentid. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeNr
  • +
  • sBezeichnung
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iParentid
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungGruppeAuswertung'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr. May be SqlInt32.Null
  • +
  • iAuswertungNr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstllt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungGruppeAuswertungNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungGruppeAuswertungNr
  • +
  • iAuswertungGruppeNr
  • +
  • iAuswertungNr
  • +
  • bAktiv
  • +
  • daErstllt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'AuswertungRptDatei'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
  • sFilename. May be SqlString.Null
  • +
  • sReportname. May be SqlString.Null
  • +
  • blobReportfile. May be SqlBinary.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungDateiNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungDateiNr
  • +
  • sFilename
  • +
  • sReportname
  • +
  • blobReportfile
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
  • sBezeichnung. May be SqlString.Null
  • +
  • sOperator. May be SqlString.Null
  • +
  • sFeldbezug. May be SqlString.Null
  • +
  • sWert. May be SqlString.Null
  • +
  • sParamName. May be SqlString.Null
  • +
  • sParamType. May be SqlString.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iAuswertungparameternr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iAuswertungparameternr
  • +
  • sBezeichnung
  • +
  • sOperator
  • +
  • sFeldbezug
  • +
  • sWert
  • +
  • sParamName
  • +
  • sParamType
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'key_tabelle'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iKeynr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iKeynr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iKeynr
  • +
  • sBeschreibung
  • +
  • iKey_wert
  • +
  • iMandantnr
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'Mitarbeiter_Auswertungsparameter'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr. May be SqlInt32.Null
  • +
  • iAuswertungnr. May be SqlInt32.Null
  • +
  • sBeschreibung. May be SqlString.Null
  • +
  • sParameterdaten. May be SqlString.Null
  • +
  • sTitelzeile1. May be SqlString.Null
  • +
  • sTitelzeile2. May be SqlString.Null
  • +
  • bParamPrint. May be SqlBoolean.Null
  • +
  • sSQLWhere. May be SqlString.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iMitarbeiter_AuswertungsparameterNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iMitarbeiter_AuswertungsparameterNr
  • +
  • iMitarbeiternr
  • +
  • iAuswertungnr
  • +
  • sBeschreibung
  • +
  • sParameterdaten
  • +
  • sTitelzeile1
  • +
  • sTitelzeile2
  • +
  • bParamPrint
  • +
  • sSQLWhere
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Data Access class for the table 'SecurityObject'. + + + + + Purpose: Class constructor. + + + + + Purpose: Insert method. This method will insert one new row into the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Update method. This method will Update one existing row in the database. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
  • sSecurityForm. May be SqlString.Null
  • +
  • sSecurityObjectType. May be SqlString.Null
  • +
  • sSecurityObject. May be SqlString.Null
  • +
  • sSecurityObjectItem. May be SqlString.Null
  • +
  • sSecurityObjectDescriotion. May be SqlString.Null
  • +
  • iLevel. May be SqlInt32.Null
  • +
  • bAktiv. May be SqlBoolean.Null
  • +
  • daErstellt_am. May be SqlDateTime.Null
  • +
  • daMutiert_am. May be SqlDateTime.Null
  • +
  • iMutierer. May be SqlInt32.Null
  • +
  • iMandantnr. May be SqlInt32.Null
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Delete method. This method will Delete one existing row in the database, based on the Primary Key. + + True if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Purpose: Select method. This method will Select one existing row from the database, based on the Primary Key. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties needed for this method: +
    +
  • iSecurityObjectNr
  • +
+ Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
  • iSecurityObjectNr
  • +
  • sSecurityForm
  • +
  • sSecurityObjectType
  • +
  • sSecurityObject
  • +
  • sSecurityObjectItem
  • +
  • sSecurityObjectDescriotion
  • +
  • iLevel
  • +
  • bAktiv
  • +
  • daErstellt_am
  • +
  • daMutiert_am
  • +
  • iMutierer
  • +
  • iMandantnr
  • +
+ Will fill all properties corresponding with a field in the table with the value of the row selected. +
+
+ + + Purpose: SelectAll method. This method will Select all rows from the table. + + DataTable object if succeeded, otherwise an Exception is thrown. + + Properties set after a succesful call of this method: +
    +
  • iErrorCode
  • +
+
+
+ + + Initialisierung des Formulars + + + + + + + Auswertungen, für welche der User berechtigt ist, auslesen + + + + + + + Interne Relation aufbauen und Tree aufbauen + + + + + + + + Tree aufbauen + + + + + + + + Child-Nodes hinzufügen + + + + + + + + Klasse für das Speichern bzw. Auslesen von Image-Dateien in der Datenbank + + + Es werden folgende Datebanktabellen berücksichtigt: + + + Dokument Attribut DocImage + + Profile Attribut V_Uebersicht (Profillayout des C1TrueDBGrids der + Vertragsübersicht|Vertragselemente + + yes + + + + Grid-Layoutfile speichern + + C1Truedbgrind, von welchem das Layout gespeichert werden soll + Nummer des Grids: 1=Vertragsübersicht... + + + + + + Dokument in der Tabelle Dokument speichern + + Nummer des Dokument-Datensatzes + Zu speichender Dateiname + + + + + + Liest das Dokument aus der DB und speichert dieses unter einem temporären Filenamen ab + + + + + + + + Formular-Security-Objekte auslesen und auf DB schreiben bzw. Formular-Security zur Laufzeit setzen + + + + + + Formularsecurity setzen + + Aktuelles Formular + + + + + + Daten ab Datenbank laden + + + + + + Prüft die DB-Einträge mit den Formcontrols und bei Übereinstimmung werden die Security-Einstellungen gesetzt + + + + + + Security-Einstellungen setzen + + Betroffenes Objeckt (Menuitem, Conrol usw.) + Readonly ja/nein + Sichtbar ja/nein + Name des Unterobjektes - wird für die Spalteneinstellungen von C1TruedbGrids verwendet + + + + + Alle Controls des Formulars zusammensuchen und auf der DB speichern + + Betroffenes Formular + + + + + + Sämtliche Controls vom Formular auslesen + + + + + + + + Auslesen von MenuItems + + + + + + + + + Auslesen von ContextMenuItems + + + + + + + + + Auslesen von Menu-Subitems + + + + + + + + Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + Formular + Objekttyp + Objektname + Objektitem + + + + + + Klasse für ein Control-Objekt + + + + + + Neue Instanz erstellen + + Control-Objekt + Betroffenes Formular + Objekttyp + Objektname + Unterobjekt (z.B. bei Menus, Spalten von C1TrueDBGrids) + + + + + Schreibt einen Datnsatz in die Tabelle SecurityObjects + + + + + + +Prüft, ob das Security-Objekt bereits auf der DB vorhanden ist + + + + + + + Formular schliessen + + + + + + + + Formualr schliessen + + + + + + + + Formular schliessen + + + + + + + + Mousedown-Ereignis auf dem Tree + + + + + + + + Nach Selektion eines Nodes Parameter neu aufbereiten und Auswerungsmöglichkeit (CR/CSV) anzeigen + + + + + + + + Sucht in den Base-Controls sämtliche Controls mit dem Namen in "Key" (Wildcards * möglich) und listet + die gefundnen Controls in der Liste L zur weiteren Bearbeitung + + Base-Contrlo (z.B. aktuelles Formular + Schlüssel welcher gesucht werden soll + Liste der gefundenen Objekte + True wenn eines oder mehr Controls gefunden wurden, false wenn kein Control gefunden wurde. + + + + + + Parameter initialisieren + + + + + + Selektion Parameter + + + + + + + + Datenrow in den zur Auswertung gehörenden Parameterliste suchen + + + + + + + + Where Bedingung für die Abfrage zusammenstellen + + + + + + Where zusammenstellen + + + + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + +
+
diff --git a/_FRReporting/obj/Debug/_frreporting.dll.licenses b/_FRReporting/obj/Debug/_frreporting.dll.licenses new file mode 100644 index 0000000..71bdf9d Binary files /dev/null and b/_FRReporting/obj/Debug/_frreporting.dll.licenses differ diff --git a/_FRReporting/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/_FRReporting/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..57c335f Binary files /dev/null and b/_FRReporting/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/_FRReporting/obj/Release/TempPE/My Project.Resources.Designer.vb.dll b/_FRReporting/obj/Release/TempPE/My Project.Resources.Designer.vb.dll new file mode 100644 index 0000000..1667183 Binary files /dev/null and b/_FRReporting/obj/Release/TempPE/My Project.Resources.Designer.vb.dll differ