git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 16 Dec 2019 12:34:13 +0000 (12:34 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 16 Dec 2019 12:34:13 +0000 (12:34 +0000)
client/DxPlay/Model/DxPlayModel.cs
client/DxPlay/PlayerForm.Designer.cs
client/DxPlay/PlayerForm.cs
client/DxPlay/PlayerForm.resx
client/Maestro/MaestroForm.Metadata.cs
server/hu.user.mediacube.executors.tests/src/hu/user/mediacube/executors/tests/SupportCheckItem.java
server/user.jobengine.executors/src/user/jobengine/server/steps/MetadataTransformStep.java
server/user.jobengine.osgi.db/src/user/jobengine/db/IItemManager.java
server/user.jobengine.osgi.db/src/user/jobengine/db/ItemManager.java

index e976b95de362bcdb0d4fd11ddc400d17deb99e56..42c70f0d1736ea7da33ca4cf565bd3d1ca0bfeea 100644 (file)
@@ -36,7 +36,7 @@ namespace DxPlay.Model {
             this.settings = settings;\r
             IsSegmentEditorVisible = true.Equals(settings?.Player?.SegmentEditor);\r
             IsMenuVisible = true.Equals(settings?.IsStandalone);\r
-            Segments = settings.Segments ?? new BindingList<MovieSegment>();\r
+            Segments = new BindingList<MovieSegment>(settings.Segments) ?? new BindingList<MovieSegment>();\r
             multiSegment = true.Equals(settings?.Metadata?.MultiSegmentEnabled);\r
             MessageBus.Subscribe<TrafficAPIMessage>(OnMessage);\r
 \r
index 6902b5da703c6b2bb69dc2d5867f9007e843de09..181d0b384bab849b7aeab716373a4ad695f69d55 100644 (file)
@@ -28,14 +28,10 @@ namespace DxPlay {
         /// </summary>\r
         private void InitializeComponent() {\r
             this.components = new System.ComponentModel.Container();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 =\r
-                new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 =\r
-                new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 =\r
-                new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.ComponentModel.ComponentResourceManager resources =\r
-                new System.ComponentModel.ComponentResourceManager(typeof(PlayerForm));\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PlayerForm));\r
             this.pVideo = new System.Windows.Forms.Panel();\r
             this.mainSplit = new System.Windows.Forms.SplitContainer();\r
             this.panelPlayer = new System.Windows.Forms.Panel();\r
@@ -66,11 +62,11 @@ namespace DxPlay {
             this.menuApprove = new DxPlay.Controls.BindableToolStripMenuItem();\r
             this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();\r
             this.menuRedefineSegments = new DxPlay.Controls.BindableToolStripMenuItem();\r
-            this.playerControls = new DxPlay.Controls.PlayerControls();\r
             this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();\r
             this.btnSave = new System.Windows.Forms.Button();\r
             this.btnCancel = new System.Windows.Forms.Button();\r
-            ((System.ComponentModel.ISupportInitialize) (this.mainSplit)).BeginInit();\r
+            this.playerControls = new DxPlay.Controls.PlayerControls();\r
+            ((System.ComponentModel.ISupportInitialize)(this.mainSplit)).BeginInit();\r
             this.mainSplit.Panel1.SuspendLayout();\r
             this.mainSplit.Panel2.SuspendLayout();\r
             this.mainSplit.SuspendLayout();\r
@@ -79,8 +75,8 @@ namespace DxPlay {
             this.tabEditor.SuspendLayout();\r
             this.tpMetadata.SuspendLayout();\r
             this.tpSegments.SuspendLayout();\r
-            ((System.ComponentModel.ISupportInitialize) (this.dgSegments)).BeginInit();\r
-            ((System.ComponentModel.ISupportInitialize) (this.bsSegments)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.dgSegments)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.bsSegments)).BeginInit();\r
             this.segmentActions.SuspendLayout();\r
             this.pMetadataDisplay.SuspendLayout();\r
             this.mainMenu.SuspendLayout();\r
@@ -94,7 +90,7 @@ namespace DxPlay {
             this.pVideo.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.pVideo.Location = new System.Drawing.Point(0, 0);\r
             this.pVideo.Name = "pVideo";\r
-            this.pVideo.Size = new System.Drawing.Size(478, 331);\r
+            this.pVideo.Size = new System.Drawing.Size(478, 385);\r
             this.pVideo.TabIndex = 0;\r
             this.pVideo.TabStop = true;\r
             this.pVideo.SizeChanged += new System.EventHandler(this.panel1_SizeChanged);\r
@@ -117,7 +113,7 @@ namespace DxPlay {
             this.mainSplit.Panel2.Controls.Add(this.tableLayoutPanel1);\r
             this.mainSplit.Panel2.Controls.Add(this.pMetadataDisplay);\r
             this.mainSplit.Panel2MinSize = 300;\r
-            this.mainSplit.Size = new System.Drawing.Size(784, 333);\r
+            this.mainSplit.Size = new System.Drawing.Size(784, 387);\r
             this.mainSplit.SplitterDistance = 480;\r
             this.mainSplit.TabIndex = 20;\r
             // \r
@@ -127,15 +123,14 @@ namespace DxPlay {
             this.panelPlayer.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.panelPlayer.Location = new System.Drawing.Point(0, 0);\r
             this.panelPlayer.Name = "panelPlayer";\r
-            this.panelPlayer.Size = new System.Drawing.Size(478, 331);\r
+            this.panelPlayer.Size = new System.Drawing.Size(478, 385);\r
             this.panelPlayer.TabIndex = 0;\r
             // \r
             // tableLayoutPanel1\r
             // \r
             this.tableLayoutPanel1.ColumnCount = 2;\r
             this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
-            this.tableLayoutPanel1.ColumnStyles.Add(\r
-                new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
+            this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
             this.tableLayoutPanel1.Controls.Add(this.tabEditor, 1, 0);\r
             this.tableLayoutPanel1.Controls.Add(this.btnToggleSegmentEditor, 0, 0);\r
             this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;\r
@@ -143,9 +138,8 @@ namespace DxPlay {
             this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(0);\r
             this.tableLayoutPanel1.Name = "tableLayoutPanel1";\r
             this.tableLayoutPanel1.RowCount = 1;\r
-            this.tableLayoutPanel1.RowStyles.Add(\r
-                new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
-            this.tableLayoutPanel1.Size = new System.Drawing.Size(298, 268);\r
+            this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
+            this.tableLayoutPanel1.Size = new System.Drawing.Size(298, 322);\r
             this.tableLayoutPanel1.TabIndex = 4;\r
             // \r
             // tabEditor\r
@@ -154,29 +148,27 @@ namespace DxPlay {
             this.tabEditor.Controls.Add(this.tpMetadata);\r
             this.tabEditor.Controls.Add(this.tpSegments);\r
             this.tabEditor.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.tabEditor.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold,\r
-                System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            this.tabEditor.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.tabEditor.ImageList = this.imagesTabEdit;\r
-            this.tabEditor.Location = new System.Drawing.Point(28, 4);\r
+            this.tabEditor.Location = new System.Drawing.Point(23, 4);\r
             this.tabEditor.Margin = new System.Windows.Forms.Padding(0, 4, 4, 4);\r
             this.tabEditor.Multiline = true;\r
             this.tabEditor.Name = "tabEditor";\r
             this.tabEditor.Padding = new System.Drawing.Point(10, 5);\r
             this.tabEditor.SelectedIndex = 0;\r
-            this.tabEditor.Size = new System.Drawing.Size(266, 260);\r
+            this.tabEditor.Size = new System.Drawing.Size(271, 314);\r
             this.tabEditor.TabIndex = 2;\r
             // \r
             // tpMetadata\r
             // \r
             this.tpMetadata.BackColor = System.Drawing.Color.Transparent;\r
             this.tpMetadata.Controls.Add(this.trafficBrowser);\r
-            this.tpMetadata.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            this.tpMetadata.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.tpMetadata.ImageIndex = 0;\r
             this.tpMetadata.Location = new System.Drawing.Point(4, 4);\r
             this.tpMetadata.Name = "tpMetadata";\r
             this.tpMetadata.Padding = new System.Windows.Forms.Padding(3);\r
-            this.tpMetadata.Size = new System.Drawing.Size(258, 221);\r
+            this.tpMetadata.Size = new System.Drawing.Size(263, 275);\r
             this.tpMetadata.TabIndex = 0;\r
             this.tpMetadata.Text = "Metadata";\r
             // \r
@@ -189,20 +181,19 @@ namespace DxPlay {
             this.trafficBrowser.Margin = new System.Windows.Forms.Padding(0);\r
             this.trafficBrowser.Name = "trafficBrowser";\r
             this.trafficBrowser.Parameters = null;\r
-            this.trafficBrowser.Size = new System.Drawing.Size(252, 215);\r
+            this.trafficBrowser.Size = new System.Drawing.Size(257, 269);\r
             this.trafficBrowser.TabIndex = 0;\r
             // \r
             // tpSegments\r
             // \r
             this.tpSegments.Controls.Add(this.dgSegments);\r
             this.tpSegments.Controls.Add(this.segmentActions);\r
-            this.tpSegments.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            this.tpSegments.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.tpSegments.ImageIndex = 1;\r
             this.tpSegments.Location = new System.Drawing.Point(4, 4);\r
             this.tpSegments.Name = "tpSegments";\r
             this.tpSegments.Padding = new System.Windows.Forms.Padding(3);\r
-            this.tpSegments.Size = new System.Drawing.Size(317, 325);\r
+            this.tpSegments.Size = new System.Drawing.Size(192, 30);\r
             this.tpSegments.TabIndex = 1;\r
             this.tpSegments.Text = "Segments";\r
             this.tpSegments.UseVisualStyleBackColor = true;\r
@@ -217,36 +208,30 @@ namespace DxPlay {
             this.dgSegments.BorderStyle = System.Windows.Forms.BorderStyle.None;\r
             dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
             dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;\r
-            dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;\r
             dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;\r
             dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;\r
             dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;\r
             this.dgSegments.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;\r
-            this.dgSegments.ColumnHeadersHeightSizeMode =\r
-                System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;\r
+            this.dgSegments.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;\r
             this.dgSegments.DataSource = this.bsSegments;\r
             dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
             dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window;\r
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
-            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.FromArgb(((int) (((byte) (0)))),\r
-                ((int) (((byte) (0)))), ((int) (((byte) (0)))));\r
-            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int) (((byte) (224)))),\r
-                ((int) (((byte) (224)))), ((int) (((byte) (224)))));\r
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));\r
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));\r
             dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.Black;\r
             dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
             this.dgSegments.DefaultCellStyle = dataGridViewCellStyle2;\r
             this.dgSegments.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.dgSegments.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnF2;\r
-            this.dgSegments.Location = new System.Drawing.Point(3, 33);\r
+            this.dgSegments.Location = new System.Drawing.Point(3, 28);\r
             this.dgSegments.MultiSelect = false;\r
             this.dgSegments.Name = "dgSegments";\r
             dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
             dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control;\r
-            dataGridViewCellStyle3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;\r
             dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;\r
             dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;\r
@@ -254,22 +239,15 @@ namespace DxPlay {
             this.dgSegments.RowHeadersDefaultCellStyle = dataGridViewCellStyle3;\r
             this.dgSegments.RowHeadersVisible = false;\r
             this.dgSegments.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
-            this.dgSegments.Size = new System.Drawing.Size(311, 289);\r
+            this.dgSegments.Size = new System.Drawing.Size(186, 0);\r
             this.dgSegments.TabIndex = 1;\r
-            this.dgSegments.CellBeginEdit +=\r
-                new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.OnSegmentsCellBeginEdit);\r
-            this.dgSegments.CellContentClick +=\r
-                new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellContentClick);\r
-            this.dgSegments.CellMouseDoubleClick +=\r
-                new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.OnSegmentsCellMouseDoubleClick);\r
-            this.dgSegments.CellMouseEnter +=\r
-                new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellMouseEnter);\r
-            this.dgSegments.CellMouseLeave +=\r
-                new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellMouseLeave);\r
-            this.dgSegments.CellPainting +=\r
-                new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.OnSegmentsCellPainting);\r
-            this.dgSegments.ColumnAdded +=\r
-                new System.Windows.Forms.DataGridViewColumnEventHandler(this.OnSegmentsColumnAdded);\r
+            this.dgSegments.CellBeginEdit += new System.Windows.Forms.DataGridViewCellCancelEventHandler(this.OnSegmentsCellBeginEdit);\r
+            this.dgSegments.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellContentClick);\r
+            this.dgSegments.CellMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.OnSegmentsCellMouseDoubleClick);\r
+            this.dgSegments.CellMouseEnter += new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellMouseEnter);\r
+            this.dgSegments.CellMouseLeave += new System.Windows.Forms.DataGridViewCellEventHandler(this.OnSegmentsCellMouseLeave);\r
+            this.dgSegments.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.OnSegmentsCellPainting);\r
+            this.dgSegments.ColumnAdded += new System.Windows.Forms.DataGridViewColumnEventHandler(this.OnSegmentsColumnAdded);\r
             this.dgSegments.MouseClick += new System.Windows.Forms.MouseEventHandler(this.OnSegmentsMouseClick);\r
             // \r
             // segmentActions\r
@@ -277,86 +255,88 @@ namespace DxPlay {
             this.segmentActions.AutoSize = false;\r
             this.segmentActions.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;\r
             this.segmentActions.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
-                this.tbDefineSegment, this.toolStripSeparator2, this.tbPositionAsTCIn, this.tbSplitSegment,\r
-                this.tbPositionAsTCOut, this.toolStripSeparator1, this.tbDeleteSegment\r
-            });\r
+            this.tbDefineSegment,\r
+            this.toolStripSeparator2,\r
+            this.tbPositionAsTCIn,\r
+            this.tbSplitSegment,\r
+            this.tbPositionAsTCOut,\r
+            this.toolStripSeparator1,\r
+            this.tbDeleteSegment});\r
             this.segmentActions.Location = new System.Drawing.Point(3, 3);\r
             this.segmentActions.Name = "segmentActions";\r
             this.segmentActions.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;\r
-            this.segmentActions.Size = new System.Drawing.Size(311, 30);\r
+            this.segmentActions.Size = new System.Drawing.Size(186, 25);\r
             this.segmentActions.TabIndex = 0;\r
             this.segmentActions.Text = "toolStrip1";\r
             // \r
             // tbDefineSegment\r
             // \r
             this.tbDefineSegment.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;\r
-            this.tbDefineSegment.Image = ((System.Drawing.Image) (resources.GetObject("tbDefineSegment.Image")));\r
+            this.tbDefineSegment.Image = ((System.Drawing.Image)(resources.GetObject("tbDefineSegment.Image")));\r
             this.tbDefineSegment.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.tbDefineSegment.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.tbDefineSegment.Name = "tbDefineSegment";\r
-            this.tbDefineSegment.Size = new System.Drawing.Size(23, 27);\r
+            this.tbDefineSegment.Size = new System.Drawing.Size(23, 22);\r
             this.tbDefineSegment.Text = "toolStripButton5";\r
             this.tbDefineSegment.Click += new System.EventHandler(this.OnDefineOneSegmentClick);\r
             // \r
             // toolStripSeparator2\r
             // \r
             this.toolStripSeparator2.Name = "toolStripSeparator2";\r
-            this.toolStripSeparator2.Size = new System.Drawing.Size(6, 30);\r
+            this.toolStripSeparator2.Size = new System.Drawing.Size(6, 25);\r
             // \r
             // tbPositionAsTCIn\r
             // \r
             this.tbPositionAsTCIn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;\r
-            this.tbPositionAsTCIn.Image = ((System.Drawing.Image) (resources.GetObject("tbPositionAsTCIn.Image")));\r
+            this.tbPositionAsTCIn.Image = ((System.Drawing.Image)(resources.GetObject("tbPositionAsTCIn.Image")));\r
             this.tbPositionAsTCIn.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.tbPositionAsTCIn.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.tbPositionAsTCIn.Name = "tbPositionAsTCIn";\r
-            this.tbPositionAsTCIn.Size = new System.Drawing.Size(23, 27);\r
+            this.tbPositionAsTCIn.Size = new System.Drawing.Size(23, 22);\r
             this.tbPositionAsTCIn.Text = "toolStripButton1";\r
             this.tbPositionAsTCIn.Click += new System.EventHandler(this.OnActualPositionToTCInToolStripMenuItem1Click);\r
             // \r
             // tbSplitSegment\r
             // \r
             this.tbSplitSegment.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;\r
-            this.tbSplitSegment.Image = ((System.Drawing.Image) (resources.GetObject("tbSplitSegment.Image")));\r
+            this.tbSplitSegment.Image = ((System.Drawing.Image)(resources.GetObject("tbSplitSegment.Image")));\r
             this.tbSplitSegment.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.tbSplitSegment.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.tbSplitSegment.Name = "tbSplitSegment";\r
-            this.tbSplitSegment.Size = new System.Drawing.Size(23, 27);\r
+            this.tbSplitSegment.Size = new System.Drawing.Size(23, 22);\r
             this.tbSplitSegment.Text = "toolStripButton4";\r
             this.tbSplitSegment.Click += new System.EventHandler(this.OnSplitSegmentAtCurrentPositionClick);\r
             // \r
             // tbPositionAsTCOut\r
             // \r
             this.tbPositionAsTCOut.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;\r
-            this.tbPositionAsTCOut.Image = ((System.Drawing.Image) (resources.GetObject("tbPositionAsTCOut.Image")));\r
+            this.tbPositionAsTCOut.Image = ((System.Drawing.Image)(resources.GetObject("tbPositionAsTCOut.Image")));\r
             this.tbPositionAsTCOut.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.tbPositionAsTCOut.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.tbPositionAsTCOut.Name = "tbPositionAsTCOut";\r
-            this.tbPositionAsTCOut.Size = new System.Drawing.Size(23, 27);\r
+            this.tbPositionAsTCOut.Size = new System.Drawing.Size(23, 22);\r
             this.tbPositionAsTCOut.Text = "toolStripButton2";\r
-            this.tbPositionAsTCOut.Click +=\r
-                new System.EventHandler(this.OnActualPositionToTCOutToolStripMenuItem1Click);\r
+            this.tbPositionAsTCOut.Click += new System.EventHandler(this.OnActualPositionToTCOutToolStripMenuItem1Click);\r
             // \r
             // toolStripSeparator1\r
             // \r
             this.toolStripSeparator1.Name = "toolStripSeparator1";\r
-            this.toolStripSeparator1.Size = new System.Drawing.Size(6, 30);\r
+            this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);\r
             // \r
             // tbDeleteSegment\r
             // \r
             this.tbDeleteSegment.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;\r
-            this.tbDeleteSegment.Image = ((System.Drawing.Image) (resources.GetObject("tbDeleteSegment.Image")));\r
+            this.tbDeleteSegment.Image = ((System.Drawing.Image)(resources.GetObject("tbDeleteSegment.Image")));\r
             this.tbDeleteSegment.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.tbDeleteSegment.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.tbDeleteSegment.Name = "tbDeleteSegment";\r
-            this.tbDeleteSegment.Size = new System.Drawing.Size(23, 27);\r
+            this.tbDeleteSegment.Size = new System.Drawing.Size(23, 22);\r
             this.tbDeleteSegment.Text = "toolStripButton3";\r
             this.tbDeleteSegment.Click += new System.EventHandler(this.OnDeleteSegmentClick);\r
             // \r
             // imagesTabEdit\r
             // \r
-            this.imagesTabEdit.ImageStream =\r
-                ((System.Windows.Forms.ImageListStreamer) (resources.GetObject("imagesTabEdit.ImageStream")));\r
+            this.imagesTabEdit.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imagesTabEdit.ImageStream")));\r
             this.imagesTabEdit.TransparentColor = System.Drawing.Color.Transparent;\r
             this.imagesTabEdit.Images.SetKeyName(0, "round_publish_black_24dp.png");\r
             this.imagesTabEdit.Images.SetKeyName(1, "ic_playlist_add_check_black_24dp_1x.png");\r
@@ -366,12 +346,11 @@ namespace DxPlay {
             this.btnToggleSegmentEditor.BackColor = System.Drawing.Color.White;\r
             this.btnToggleSegmentEditor.FlatAppearance.BorderSize = 0;\r
             this.btnToggleSegmentEditor.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
-            this.btnToggleSegmentEditor.Image =\r
-                ((System.Drawing.Image) (resources.GetObject("btnToggleSegmentEditor.Image")));\r
+            this.btnToggleSegmentEditor.Image = ((System.Drawing.Image)(resources.GetObject("btnToggleSegmentEditor.Image")));\r
             this.btnToggleSegmentEditor.Location = new System.Drawing.Point(0, 4);\r
             this.btnToggleSegmentEditor.Margin = new System.Windows.Forms.Padding(0, 4, 0, 0);\r
             this.btnToggleSegmentEditor.Name = "btnToggleSegmentEditor";\r
-            this.btnToggleSegmentEditor.Size = new System.Drawing.Size(28, 77);\r
+            this.btnToggleSegmentEditor.Size = new System.Drawing.Size(23, 63);\r
             this.btnToggleSegmentEditor.TabIndex = 0;\r
             this.btnToggleSegmentEditor.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageBeforeText;\r
             this.btnToggleSegmentEditor.UseVisualStyleBackColor = false;\r
@@ -381,14 +360,13 @@ namespace DxPlay {
             // \r
             this.pMetadataDisplay.AutoSize = true;\r
             this.pMetadataDisplay.ColumnCount = 2;\r
-            this.pMetadataDisplay.ColumnStyles.Add(\r
-                new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
+            this.pMetadataDisplay.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F));\r
             this.pMetadataDisplay.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
             this.pMetadataDisplay.Controls.Add(this.btnApprove, 1, 1);\r
             this.pMetadataDisplay.Controls.Add(this.labelSelectedMetadata, 0, 0);\r
             this.pMetadataDisplay.Controls.Add(this.txtSelectedID, 0, 1);\r
             this.pMetadataDisplay.Dock = System.Windows.Forms.DockStyle.Bottom;\r
-            this.pMetadataDisplay.Location = new System.Drawing.Point(0, 268);\r
+            this.pMetadataDisplay.Location = new System.Drawing.Point(0, 322);\r
             this.pMetadataDisplay.Margin = new System.Windows.Forms.Padding(0);\r
             this.pMetadataDisplay.Name = "pMetadataDisplay";\r
             this.pMetadataDisplay.RowCount = 2;\r
@@ -404,9 +382,8 @@ namespace DxPlay {
             this.btnApprove.BackColor = System.Drawing.Color.White;\r
             this.btnApprove.FlatAppearance.BorderSize = 0;\r
             this.btnApprove.FlatStyle = System.Windows.Forms.FlatStyle.Flat;\r
-            this.btnApprove.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold,\r
-                System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
-            this.btnApprove.Image = ((System.Drawing.Image) (resources.GetObject("btnApprove.Image")));\r
+            this.btnApprove.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.btnApprove.Image = ((System.Drawing.Image)(resources.GetObject("btnApprove.Image")));\r
             this.btnApprove.Location = new System.Drawing.Point(196, 29);\r
             this.btnApprove.Margin = new System.Windows.Forms.Padding(0, 4, 0, 0);\r
             this.btnApprove.Name = "btnApprove";\r
@@ -422,8 +399,7 @@ namespace DxPlay {
             this.labelSelectedMetadata.AutoSize = true;\r
             this.labelSelectedMetadata.BackColor = System.Drawing.Color.Transparent;\r
             this.labelSelectedMetadata.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.labelSelectedMetadata.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F,\r
-                System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            this.labelSelectedMetadata.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.labelSelectedMetadata.ForeColor = System.Drawing.SystemColors.ActiveCaption;\r
             this.labelSelectedMetadata.Location = new System.Drawing.Point(3, 0);\r
             this.labelSelectedMetadata.Name = "labelSelectedMetadata";\r
@@ -437,8 +413,7 @@ namespace DxPlay {
             this.txtSelectedID.BackColor = System.Drawing.SystemColors.ActiveCaption;\r
             this.txtSelectedID.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;\r
             this.txtSelectedID.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.txtSelectedID.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F,\r
-                System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte) (238)));\r
+            this.txtSelectedID.Font = new System.Drawing.Font("Microsoft Sans Serif", 16F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.txtSelectedID.Location = new System.Drawing.Point(3, 28);\r
             this.txtSelectedID.Name = "txtSelectedID";\r
             this.txtSelectedID.Size = new System.Drawing.Size(190, 32);\r
@@ -446,7 +421,8 @@ namespace DxPlay {
             // \r
             // mainMenu\r
             // \r
-            this.mainMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {this.fileToolStripMenuItem});\r
+            this.mainMenu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
+            this.fileToolStripMenuItem});\r
             this.mainMenu.Location = new System.Drawing.Point(0, 0);\r
             this.mainMenu.Name = "mainMenu";\r
             this.mainMenu.Size = new System.Drawing.Size(784, 24);\r
@@ -455,8 +431,11 @@ namespace DxPlay {
             // \r
             // fileToolStripMenuItem\r
             // \r
-            this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[]\r
-                {this.menuOpenFile, this.menuApprove, this.toolStripSeparator3, this.menuRedefineSegments});\r
+            this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
+            this.menuOpenFile,\r
+            this.menuApprove,\r
+            this.toolStripSeparator3,\r
+            this.menuRedefineSegments});\r
             this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";\r
             this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20);\r
             this.fileToolStripMenuItem.Text = "File";\r
@@ -464,8 +443,7 @@ namespace DxPlay {
             // menuOpenFile\r
             // \r
             this.menuOpenFile.Name = "menuOpenFile";\r
-            this.menuOpenFile.ShortcutKeys =\r
-                ((System.Windows.Forms.Keys) ((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));\r
+            this.menuOpenFile.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));\r
             this.menuOpenFile.Size = new System.Drawing.Size(215, 22);\r
             this.menuOpenFile.Text = "Open file";\r
             this.menuOpenFile.Click += new System.EventHandler(this.menuOpenFile_Click);\r
@@ -473,8 +451,7 @@ namespace DxPlay {
             // menuApprove\r
             // \r
             this.menuApprove.Name = "menuApprove";\r
-            this.menuApprove.ShortcutKeys =\r
-                ((System.Windows.Forms.Keys) ((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));\r
+            this.menuApprove.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));\r
             this.menuApprove.Size = new System.Drawing.Size(215, 22);\r
             this.menuApprove.Text = "Approve";\r
             this.menuApprove.Click += new System.EventHandler(this.OnApprove);\r
@@ -487,67 +464,68 @@ namespace DxPlay {
             // menuRedefineSegments\r
             // \r
             this.menuRedefineSegments.Name = "menuRedefineSegments";\r
-            this.menuRedefineSegments.ShortcutKeys =\r
-                ((System.Windows.Forms.Keys) ((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.R)));\r
+            this.menuRedefineSegments.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.R)));\r
             this.menuRedefineSegments.Size = new System.Drawing.Size(215, 22);\r
             this.menuRedefineSegments.Text = "Redefine segments";\r
             this.menuRedefineSegments.Click += new System.EventHandler(this.OnRedefineSegments);\r
             // \r
-            // playerControls\r
-            // \r
-            this.playerControls.AutoSize = true;\r
-            this.playerControls.BackColor = System.Drawing.Color.Transparent;\r
-            this.playerControls.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;\r
-            this.playerControls.Dock = System.Windows.Forms.DockStyle.Bottom;\r
-            this.playerControls.Location = new System.Drawing.Point(0, 357);\r
-            this.playerControls.Margin = new System.Windows.Forms.Padding(0);\r
-            this.playerControls.Name = "playerControls";\r
-            this.playerControls.Size = new System.Drawing.Size(784, 170);\r
-            this.playerControls.TabIndex = 22;\r
-            // \r
             // flowLayoutPanel1\r
             // \r
             this.flowLayoutPanel1.AutoSize = true;\r
             this.flowLayoutPanel1.Controls.Add(this.btnSave);\r
             this.flowLayoutPanel1.Controls.Add(this.btnCancel);\r
             this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;\r
-            this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 527);\r
+            this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 532);\r
             this.flowLayoutPanel1.Name = "flowLayoutPanel1";\r
             this.flowLayoutPanel1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;\r
-            this.flowLayoutPanel1.Size = new System.Drawing.Size(784, 34);\r
+            this.flowLayoutPanel1.Size = new System.Drawing.Size(784, 29);\r
             this.flowLayoutPanel1.TabIndex = 23;\r
             // \r
             // btnSave\r
             // \r
-            this.btnSave.Location = new System.Drawing.Point(691, 3);\r
+            this.btnSave.Location = new System.Drawing.Point(706, 3);\r
             this.btnSave.Name = "btnSave";\r
-            this.btnSave.Size = new System.Drawing.Size(90, 28);\r
+            this.btnSave.Size = new System.Drawing.Size(75, 23);\r
             this.btnSave.TabIndex = 0;\r
             this.btnSave.Text = "Save";\r
             this.btnSave.UseVisualStyleBackColor = true;\r
+            this.btnSave.Click += new System.EventHandler(this.btnSave_Click);\r
             // \r
             // btnCancel\r
             // \r
-            this.btnCancel.Location = new System.Drawing.Point(595, 3);\r
+            this.btnCancel.Location = new System.Drawing.Point(625, 3);\r
             this.btnCancel.Name = "btnCancel";\r
-            this.btnCancel.Size = new System.Drawing.Size(90, 28);\r
+            this.btnCancel.Size = new System.Drawing.Size(75, 23);\r
             this.btnCancel.TabIndex = 1;\r
             this.btnCancel.Text = "Cancel";\r
             this.btnCancel.UseVisualStyleBackColor = true;\r
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);\r
+            // \r
+            // playerControls\r
+            // \r
+            this.playerControls.AutoSize = true;\r
+            this.playerControls.BackColor = System.Drawing.Color.Transparent;\r
+            this.playerControls.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom;\r
+            this.playerControls.Dock = System.Windows.Forms.DockStyle.Bottom;\r
+            this.playerControls.Location = new System.Drawing.Point(0, 411);\r
+            this.playerControls.Margin = new System.Windows.Forms.Padding(0);\r
+            this.playerControls.Name = "playerControls";\r
+            this.playerControls.Size = new System.Drawing.Size(784, 121);\r
+            this.playerControls.TabIndex = 22;\r
             // \r
             // PlayerForm\r
             // \r
             this.AllowDrop = true;\r
-            this.AutoScaleBaseSize = new System.Drawing.Size(6, 16);\r
+            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);\r
             this.BackColor = System.Drawing.Color.White;\r
             this.ClientSize = new System.Drawing.Size(784, 561);\r
             this.Controls.Add(this.mainSplit);\r
             this.Controls.Add(this.mainMenu);\r
             this.Controls.Add(this.playerControls);\r
             this.Controls.Add(this.flowLayoutPanel1);\r
-            this.Icon = ((System.Drawing.Icon) (resources.GetObject("$this.Icon")));\r
+            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));\r
             this.KeyPreview = true;\r
-            this.MinimumSize = new System.Drawing.Size(768, 591);\r
+            this.MinimumSize = new System.Drawing.Size(640, 480);\r
             this.Name = "PlayerForm";\r
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;\r
             this.Text = "MediaCube Player";\r
@@ -562,15 +540,15 @@ namespace DxPlay {
             this.mainSplit.Panel1.ResumeLayout(false);\r
             this.mainSplit.Panel2.ResumeLayout(false);\r
             this.mainSplit.Panel2.PerformLayout();\r
-            ((System.ComponentModel.ISupportInitialize) (this.mainSplit)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.mainSplit)).EndInit();\r
             this.mainSplit.ResumeLayout(false);\r
             this.panelPlayer.ResumeLayout(false);\r
             this.tableLayoutPanel1.ResumeLayout(false);\r
             this.tabEditor.ResumeLayout(false);\r
             this.tpMetadata.ResumeLayout(false);\r
             this.tpSegments.ResumeLayout(false);\r
-            ((System.ComponentModel.ISupportInitialize) (this.dgSegments)).EndInit();\r
-            ((System.ComponentModel.ISupportInitialize) (this.bsSegments)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.dgSegments)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.bsSegments)).EndInit();\r
             this.segmentActions.ResumeLayout(false);\r
             this.segmentActions.PerformLayout();\r
             this.pMetadataDisplay.ResumeLayout(false);\r
@@ -580,6 +558,7 @@ namespace DxPlay {
             this.flowLayoutPanel1.ResumeLayout(false);\r
             this.ResumeLayout(false);\r
             this.PerformLayout();\r
+\r
         }\r
 \r
         #endregion\r
index b3278a6d2c0b432436ce4b6e44b543c5e37d34d7..90b6e09ea6a0bd12a83c542f79c62461f5d1a02a 100644 (file)
@@ -566,5 +566,13 @@ namespace DxPlay {
             btnApprove.Text = Settings.Resource("REDEFINE", Resources.REDEFINE);\r
         }\r
 \r
+        private void btnSave_Click(object sender, EventArgs e) {\r
+            settings.Segments = model.Segments;\r
+            Close();\r
+        }\r
+\r
+        private void btnCancel_Click(object sender, EventArgs e) {\r
+            Close();\r
+        }\r
     }\r
 }\r
index 91538d6497c3c53dc171dfe33e518caf78b3272b..acfc813cbd55c232f4a0ae93a65cfa58be70369b 100644 (file)
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w\r
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0\r
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABo\r
-        CAAAAk1TRnQBSQFMAgEBAgEAATgBAgE4AQIBGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo\r
+        CAAAAk1TRnQBSQFMAgEBAgEAAVgBAgFYAQIBGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo\r
         AwABYAMAARgDAAEBAQABCAYAAQkYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA\r
         AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5\r
         AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA\r
index 6d9a7c506c1d19548410a370b0707084d69c026d..e290c152170410b2177bf0c8032780b6e24de382 100644 (file)
@@ -171,8 +171,10 @@ namespace Maestro {
                     readOnly = ArchiveMetadata.ok;\r
             } else\r
                 readOnly = ArchiveMetadata.ok;\r
-            if (readOnly && ArchiveMetadata != null && !SelectedMetadata.IsRedefine)\r
-                MsgBox.Warning("Az anyag már el van fogadva, a szegmens módosítás nem kerül mentésre. A szegmensek módosításához vissza kell vonni az anyag elfogadását az adástervező rendszerben.");\r
+            if (readOnly && !SelectedMetadata.IsRedefine) {\r
+                MsgBox.Warning("Az anyag már el van fogadva, a szegmens módosítás nem lehetséges.");\r
+                return;\r
+            }\r
             OpenFile(fileInfo, true, readOnly, !readOnly);\r
             UpdateDefineSegmentsStatus();\r
             Cursor.Current = Cursors.Default;\r
index 53a900d56d75d8ef41113694e611e1043f5c11da..08492587c046a86bf5a4d58b9e2e11e3b6343919 100644 (file)
@@ -4,7 +4,6 @@ import java.sql.Connection;
 import java.sql.PreparedStatement;\r
 import java.sql.ResultSet;\r
 import java.sql.SQLException;\r
-import java.sql.Timestamp;\r
 \r
 import org.junit.AfterClass;\r
 import org.junit.BeforeClass;\r
@@ -14,7 +13,9 @@ import user.commons.logging.LogUtils;
 import user.jobengine.db.IItemManager;\r
 import user.jobengine.db.IResultSetConsumer;\r
 import user.jobengine.db.IStatementDecorator;\r
+import user.jobengine.db.Item;\r
 import user.jobengine.db.ItemManager;\r
+import user.jobengine.db.Media;\r
 import user.jobengine.server.steps.MetadataTypeDetector;\r
 import user.jobengine.server.steps.MetadataTypeDetector.MetadataType;\r
 import user.jobengine.server.steps.PlanAirExtensions;\r
@@ -101,6 +102,51 @@ public class SupportCheckItem {
                manager.disconnect();\r
        }\r
 \r
+       private void createItem(final Connection[] con, ResultSet rs, int progress) throws Exception {\r
+               long itemId = rs.getLong("itemId");\r
+               String itemHouseId = rs.getString("itemHouseId");\r
+               itemHouseId = itemHouseId == null ? "" : itemHouseId;\r
+               String itemTitle = rs.getString("itemTitle");\r
+               itemTitle = itemTitle == null ? "" : itemTitle;\r
+               String mediaFileHouseId = rs.getString("mediaFileHouseId");\r
+               String mediaType = rs.getString("mediaType");\r
+               long mediaId = rs.getLong("mediaId");\r
+               long mediaFileId = rs.getLong("mediaFileId");\r
+               try {\r
+                       if (mediaFileHouseId.length() > 7)\r
+                               mediaFileHouseId = mediaFileHouseId.substring(0, 8);\r
+\r
+                       PlanAirProcessor p = new PlanAirProcessor(mediaFileHouseId);\r
+                       if (p.getType() == MetadataType.TrafficMaterial) {\r
+                               con[0] = p.process(con[0]);\r
+                               String itemHouseId2 = p.getItemHouseId() == null ? "" : p.getItemHouseId();\r
+                               String itemTitle2 = p.getItemTitle() == null ? "" : p.getItemTitle();\r
+                               if (!itemHouseId2.equals(itemHouseId) || !itemTitle2.equals(itemTitle)) {\r
+                                       Item item = manager.getItem(itemId);\r
+                                       System.out.println(itemId + " : wrong | " + rs.getString("mediaFileHouseId") + ", " + itemHouseId + ", " + itemTitle + ", " + mediaType);\r
+                                       System.out.println("\t good | " + itemHouseId2 + ", " + itemTitle2 + ", " + progress + "%");\r
+                                       item.setId(0);\r
+                                       item.setTitle(itemTitle2);\r
+                                       item.setHouseId(itemHouseId2);\r
+                                       manager.add(item);\r
+\r
+                                       Media media = manager.getMedia(mediaId);\r
+                                       media.setItemId(item.getId());\r
+                                       manager.modify(media);\r
+                                       //item.setMedias(null);\r
+\r
+                                       updateMediaDescription(itemId, mediaId, mediaFileId);\r
+\r
+                                       //delete from MEDIADESCRIPTION where MEDIAID=364228;\r
+\r
+                               }\r
+\r
+                       }\r
+               } catch (Exception e) {\r
+                       e.printStackTrace();\r
+               }\r
+       }\r
+\r
        @Test\r
        public void process() throws SQLException {\r
                final Connection[] con = { null };\r
@@ -108,7 +154,7 @@ public class SupportCheckItem {
                final int[] processed = { 0 };\r
                String sqlb = "select %s from vw_items where (mediatype = 'ECHO műsor' or mediatype = 'Műsor')"; // and mediaFileHouseId like '%%M109138A%%'\r
                String sqlc = String.format(sqlb, "count(*)");\r
-               String sql = String.format(sqlb + "  order by mediacreated desc", "itemid, itemhouseid, itemtitle, mediaid, mediafilehouseid, mediacreated");\r
+               String sql = String.format(sqlb + "  order by mediacreated desc", "itemid, itemhouseid, itemtitle, mediaid, mediafilehouseid, mediafileid, mediatype");\r
 \r
                manager.executeQuery(sqlc, rs -> {\r
                        count[0] = rs.getInt(1);\r
@@ -116,33 +162,14 @@ public class SupportCheckItem {
                }, null);\r
                manager.executeQuery(sql, rs -> {\r
                        processed[0]++;\r
-                       long itemId = rs.getLong("itemId");\r
-                       String itemHouseId = rs.getString("itemHouseId");\r
-                       itemHouseId = itemHouseId == null ? "" : itemHouseId;\r
-                       String itemTitle = rs.getString("itemTitle");\r
-                       itemTitle = itemTitle == null ? "" : itemTitle;\r
-                       String mediaFileHouseId = rs.getString("mediaFileHouseId");\r
-                       Timestamp mediaCreated = rs.getTimestamp("mediaCreated");\r
-                       try {\r
-                               if (mediaFileHouseId.length() > 7)\r
-                                       mediaFileHouseId = mediaFileHouseId.substring(0, 8);\r
-\r
-                               PlanAirProcessor p = new PlanAirProcessor(mediaFileHouseId);\r
-                               if (p.getType() == MetadataType.TrafficMaterial) {\r
-                                       con[0] = p.process(con[0]);\r
-                                       String itemHouseId2 = p.getItemHouseId() == null ? "" : p.getItemHouseId();\r
-                                       String itemTitle2 = p.getItemTitle() == null ? "" : p.getItemTitle();\r
-                                       if (!itemHouseId2.equals(itemHouseId) || !itemTitle2.equals(itemTitle)) {\r
+                       int progress = (processed[0] * 100) / count[0];\r
 \r
-                                               System.out.println("Item " + itemId + " : wrong | " + mediaCreated + ", " + mediaFileHouseId + ", " + itemHouseId + ", " + itemTitle);\r
-                                               System.out.println("\t good | " + itemHouseId2 + ", " + itemTitle2 + ", " + (processed[0] * 100) / count[0] + "%");\r
-\r
-                                       }\r
-\r
-                               }\r
+                       try {\r
+                               createItem(con, rs, progress);\r
                        } catch (Exception e) {\r
-                               e.printStackTrace();\r
+                               return false;\r
                        }\r
+\r
                        processed[0]++;\r
                        return true;\r
                }, null);\r
@@ -151,4 +178,13 @@ public class SupportCheckItem {
                        con[0].close();\r
        }\r
 \r
+       private void updateMediaDescription(long itemId, long mediaId, long mediaFileId) {\r
+               // TODO Auto-generated method stub\r
+               manager.executeUpdate(String.format("delete from MEDIADESCRIPTION where ITEMID=%d and MEDIAID=%d", itemId, mediaId), null);\r
+               String sql = String.format("insert into mediadescription (itemid, mediaid, mediafileid, description) "\r
+                               + "select itemid, mediaid, mediafileid, fulldesc(itemid, mediaid, mediafileid) from vw_items " + "where mediafileid=%d", mediaFileId);\r
+               manager.executeUpdate(sql, null);\r
+\r
+       }\r
+\r
 }\r
index 9d33d6220d0efb917b0d7c14ffffb9b745b39fa5..164928560c0dacff7d3f89a6ecc057ff5058c3cf 100644 (file)
@@ -66,7 +66,7 @@ public class MetadataTransformStep extends JobStep {
        }\r
 \r
        private Item createItem(ArchiveItem archiveItem) {\r
-               Item mediaCubeItem = itemManager.getItemByHouseID(archiveItem.getItemHouseId(), archiveItem.getItemTitle());\r
+               Item mediaCubeItem = getExistingItem(archiveItem.getItemHouseId(), archiveItem.getItemTitle());\r
                if (mediaCubeItem == null)\r
                        mediaCubeItem = itemManager.createItem(DEFAULT_MEDIATYPE, archiveItem.getItemTitle(), archiveItem.getItemDescription(),\r
                                        archiveItem.getItemHouseId());\r
@@ -123,4 +123,15 @@ public class MetadataTransformStep extends JobStep {
                return mediaType;\r
        }\r
 \r
+       private Item getExistingItem(String itemHouseId, String itemTitle) {\r
+               Item[] result = { null };\r
+               String sql = String.format("select id from item where houseid='%s' and title='%s'", itemHouseId, itemTitle);\r
+               itemManager.executeQuery(sql, rs -> {\r
+                       long id = rs.getLong("id");\r
+                       result[0] = itemManager.getItem(id);\r
+                       return true;\r
+               }, null);\r
+               return result[0];\r
+       }\r
+\r
 }\r
index fd61c327dbe1e52bbdeff621eff8ee3637c4aaa9..c012a7bc1e63c5bb551e9825492824450e631bf6 100644 (file)
@@ -25,9 +25,8 @@ import user.jobengine.db.ItemManagerData.UserRight;
 import user.jobengine.search.SearchResult;\r
 \r
 /***\r
- * Adatbázis kezelő API. Az implementáció OSGI szolgáltatásként érhető el ezen\r
- * az interfészen keresztül. Az API főbb szolgáltatásai: az adatmodell\r
- * objektumainak létrehozása, módosítása, törlése az adatbázisban.\r
+ * Adatbázis kezelő API. Az implementáció OSGI szolgáltatásként érhető el ezen az interfészen keresztül. Az API főbb szolgáltatásai: az adatmodell objektumainak\r
+ * létrehozása, módosítása, törlése az adatbázisban.\r
  *\r
  * @author comtrans\r
  *\r
@@ -105,9 +104,12 @@ public interface IItemManager extends IEntityPersister {
 \r
        void executeQuery(String query, IResultSetConsumer consumer, IStatementDecorator decorator);\r
 \r
+       int executeUpdate(Connection connection, String query, IStatementDecorator decorator);\r
+\r
+       void executeUpdate(String query, IStatementDecorator decorator);\r
+\r
        /**\r
-        * A type paraméterből lekéri az entitás DAO objektumát, amin keresztül\r
-        * visszakapjuk az összes entitást.\r
+        * A type paraméterből lekéri az entitás DAO objektumát, amin keresztül visszakapjuk az összes entitást.\r
         *\r
         * @param type\r
         * @return\r
@@ -131,6 +133,8 @@ public interface IItemManager extends IEntityPersister {
         */\r
        List<IEntityBase> getAllCached(Class<? extends IEntityBase> baseClass);\r
 \r
+       // long getExistingRundownMedia(String houseid);\r
+\r
        /**\r
         * Visszaadja az entitásnak megfelelő DAO objektumot.\r
         *\r
@@ -143,8 +147,6 @@ public interface IItemManager extends IEntityPersister {
 \r
        DefaultContext getDbContext();\r
 \r
-       // long getExistingRundownMedia(String houseid);\r
-\r
        /**\r
         * Elkéri az összes dinamikus anyag típust.\r
         *\r
@@ -153,8 +155,7 @@ public interface IItemManager extends IEntityPersister {
        List<ItemType> getDynamicItemTypes();\r
 \r
        /**\r
-        * Elkéri a FileTypeDAO-tól a bemeneti paraméterként kapott névvel\r
-        * rendelekző FileType-ot.\r
+        * Elkéri a FileTypeDAO-tól a bemeneti paraméterként kapott névvel rendelekző FileType-ot.\r
         *\r
         * @param name\r
         * @return\r
@@ -189,8 +190,7 @@ public interface IItemManager extends IEntityPersister {
        List<IEntityBase> getFilteredScene(String name, boolean isChunked);\r
 \r
        /**\r
-        * A bemenő paraméterként kapott azonosító alaján lekéri a megfelelő Mappa\r
-        * objektumokat.\r
+        * A bemenő paraméterként kapott azonosító alaján lekéri a megfelelő Mappa objektumokat.\r
         *\r
         * @param id\r
         * @return\r
@@ -271,8 +271,7 @@ public interface IItemManager extends IEntityPersister {
        Shot getShot(long id);\r
 \r
        /**\r
-        * A bemenő paraméterként kapott azonosító alaján lekéri a megfelelő Szkript\r
-        * objektumokat.\r
+        * A bemenő paraméterként kapott azonosító alaján lekéri a megfelelő Szkript objektumokat.\r
         *\r
         * @param id\r
         * @return\r
@@ -303,9 +302,7 @@ public interface IItemManager extends IEntityPersister {
        Store getStore(String name);\r
 \r
        /**\r
-        * Elkér a StoreDAO-tól, egy olyan Rendszer tárolót, amely a lowres\r
-        * paraméterben kapott érték alapján vagy kisfelbontású videók tárolója,\r
-        * vagy nem.\r
+        * Elkér a StoreDAO-tól, egy olyan Rendszer tárolót, amely a lowres paraméterben kapott érték alapján vagy kisfelbontású videók tárolója, vagy nem.\r
         *\r
         * @param lowres\r
         * @return\r
@@ -313,8 +310,7 @@ public interface IItemManager extends IEntityPersister {
        Store getSystemStore(boolean lowres);\r
 \r
        /**\r
-        * Ha a bemeneti paraméter alapján létezik ilyen felhasználó, akkor true-val\r
-        * tér vissza.\r
+        * Ha a bemeneti paraméter alapján létezik ilyen felhasználó, akkor true-val tér vissza.\r
         *\r
         * @param userName\r
         * @param password\r
@@ -323,8 +319,7 @@ public interface IItemManager extends IEntityPersister {
        boolean getUser(String userName, String password);\r
 \r
        /**\r
-        * A bemeneti paraméterként megadott felhasználónév/jelszó páros alapján\r
-        * visszaad egy UserInfo objektumot.\r
+        * A bemeneti paraméterként megadott felhasználónév/jelszó páros alapján visszaad egy UserInfo objektumot.\r
         *\r
         * @param userName\r
         * @param password\r
@@ -343,8 +338,7 @@ public interface IItemManager extends IEntityPersister {
        void putDbContext(DefaultContext context);\r
 \r
        /**\r
-        * A bemeneti paraméterként kapott típus és azonosító lista alapján\r
-        * eltávolítja a megfelelő adatbázis bejegyzéseket.\r
+        * A bemeneti paraméterként kapott típus és azonosító lista alapján eltávolítja a megfelelő adatbázis bejegyzéseket.\r
         *\r
         * @param type\r
         * @param ids\r
@@ -352,8 +346,7 @@ public interface IItemManager extends IEntityPersister {
        void remove(Class<? extends IEntityBase> type, List<Long> ids);\r
 \r
        /**\r
-        * A bemeneti paraméterként kapott típus és azonosító alapján az objektumot\r
-        * eltávolítja az átmeneti tárolóból.\r
+        * A bemeneti paraméterként kapott típus és azonosító alapján az objektumot eltávolítja az átmeneti tárolóból.\r
         *\r
         * @param baseClass\r
         * @param key\r
@@ -361,8 +354,7 @@ public interface IItemManager extends IEntityPersister {
        void removeCached(Class<? extends IEntityBase> baseClass, Object key);\r
 \r
        /**\r
-        * A bemeneti paraméterként kapott típus és kulcs alapján elkéri a megfelelő\r
-        * objektumot az átmeneti tárolóból.\r
+        * A bemeneti paraméterként kapott típus és kulcs alapján elkéri a megfelelő objektumot az átmeneti tárolóból.\r
         *\r
         * @param baseClass\r
         * @param key\r
@@ -373,9 +365,7 @@ public interface IItemManager extends IEntityPersister {
        SearchResult<ArchivedMedia> search(String criteria, List<String> searchFilters, String orderBy, boolean orderAscending, int fromResult, int toResult);\r
 \r
        /**\r
-        * A bemeneti paraméterként kapott keresési feltételeknek megfelelő\r
-        * Anyagokat lekéri az adatbázisból és SearchResult objektumba csomagolva\r
-        * visszatér.\r
+        * A bemeneti paraméterként kapott keresési feltételeknek megfelelő Anyagokat lekéri az adatbázisból és SearchResult objektumba csomagolva visszatér.\r
         *\r
         * @param parameter\r
         * @return\r
@@ -385,8 +375,7 @@ public interface IItemManager extends IEntityPersister {
        SearchResult<Item> searchItem(String criteria, int fromResult, int toResult);\r
 \r
        /**\r
-        * A bemeneti paraméterként kapott keresési feltételeknek megfelelő\r
-        * Munkafolyamatokat lekéri az adaatbázisból.\r
+        * A bemeneti paraméterként kapott keresési feltételeknek megfelelő Munkafolyamatokat lekéri az adaatbázisból.\r
         *\r
         * @param parameter\r
         * @return\r
@@ -394,8 +383,7 @@ public interface IItemManager extends IEntityPersister {
        List<Job> searchJob(QueryObject parameter);\r
 \r
        /**\r
-        * A kapott három paraméter alapján létrehoz egy Signal objektumot,\r
-        * átkonvertálja bájt tömbbé és beteszi a Signalserver üzenetküldő sorába.\r
+        * A kapott három paraméter alapján létrehoz egy Signal objektumot, átkonvertálja bájt tömbbé és beteszi a Signalserver üzenetküldő sorába.\r
         *\r
         * @param id\r
         * @param signalType\r
@@ -413,22 +401,19 @@ public interface IItemManager extends IEntityPersister {
        boolean storeCached(Object key, IEntityBase entity);\r
 \r
        /**\r
-        * Kivétel dobása esetén a kivétel üzenetét és a keletkezés helyét\r
-        * becsomagolja egy string-be, majd átadja a logger-nek.\r
+        * Kivétel dobása esetén a kivétel üzenetét és a keletkezés helyét becsomagolja egy string-be, majd átadja a logger-nek.\r
         *\r
         * @param e\r
         */\r
        void throwError(Exception e);\r
 \r
        /**\r
-        * Kiloggolja az kapott művelethez tartozó objektum típusát és a metódus\r
-        * nevét.\r
+        * Kiloggolja az kapott művelethez tartozó objektum típusát és a metódus nevét.\r
         */\r
        void traceIn();\r
 \r
        /**\r
-        * Kiloggolja az kapott művelet végén az objektum típusát és a metódus\r
-        * nevét.\r
+        * Kiloggolja az kapott művelet végén az objektum típusát és a metódus nevét.\r
         */\r
        void traceOut();\r
 \r
index 1f80e07d2a1673a810eeee785f950ee48cb2943c..425f32d45604471788130ba016a74520ad48d438 100644 (file)
@@ -495,6 +495,44 @@ public class ItemManager extends MemoryCache implements IItemManager {
                }\r
        }\r
 \r
+       @Override\r
+       public int executeUpdate(Connection connection, String query, IStatementDecorator decorator) {\r
+               int result = -1;\r
+               PreparedStatement st = null;\r
+               try {\r
+                       st = connection.prepareStatement(query);\r
+                       if (decorator != null)\r
+                               decorator.decorate(st);\r
+                       result = st.executeUpdate();\r
+                       connection.commit();\r
+               } catch (Exception e) {\r
+                       logger.catching(e);\r
+                       try {\r
+                               connection.rollback();\r
+                       } catch (Exception e1) {\r
+                       }\r
+               } finally {\r
+                       try {\r
+                               if (st != null)\r
+                                       st.close();\r
+                       } catch (Exception e1) {\r
+                       }\r
+               }\r
+               return result;\r
+       }\r
+\r
+       @Override\r
+       public void executeUpdate(String query, IStatementDecorator decorator) {\r
+               DefaultContext context = getDbContext();\r
+               Connection connection = context.getConnection();\r
+               try {\r
+                       executeUpdate(connection, query, decorator);\r
+               } catch (Exception e) {\r
+               } finally {\r
+                       putDbContext(context);\r
+               }\r
+       }\r
+\r
        @Override\r
        public IEntityBase get(Class<? extends IEntityBase> classInfo, long id) {\r
                traceIn();\r