git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 27 Nov 2017 16:10:21 +0000 (16:10 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 27 Nov 2017 16:10:21 +0000 (16:10 +0000)
31 files changed:
client/AudioRecorder/AudioDevicesDetector.cs
client/AudioRecorder/AudioRecorder.csproj
client/AudioRecorder/AudioRecorderSettings.cs
client/AudioRecorder/IAudioDevicesDetector.cs [deleted file]
client/AudioRecorder/MainForm.Designer.cs
client/AudioRecorder/MainForm.cs
client/AudioRecorder/WavRecorder.cs
client/DxPlay/DxPlayer.cs
client/DxPlay/PlayerForm.Designer.cs
client/DxPlay/PlayerForm.cs
client/Maestro/Configuration/configuration-nle.json
client/Maestro/Configuration/configuration-playout-ingest.json
client/Maestro/Configuration/configuration-sxs.json
client/Maestro/Installer/installforge-installer-project.ifp
client/Maestro/MaestroForm.Designer.cs
client/Maestro/MaestroForm.Source.cs
client/Maestro/MaestroForm.Target.cs
client/Maestro/MaestroForm.cs
client/Maestro/MaestroForm.resx
client/Maestro/Properties/AssemblyInfo.cs
client/Maestro/Sources/FileSystemSource.cs
client/Maestro/Sources/NexioRESTSource.cs
client/MaestroShared/Commons/MsgBox.cs
client/MaestroShared/Configuration/ConfigurationInfo.cs
client/MaestroShared/Configuration/KeysPasswordConverter.cs [moved from client/MaestroShared/Configuration/KeysJsonConverter.cs with 81% similarity]
client/MaestroShared/MaestroShared.csproj
client/MaestroShared/Targets/FTPTargetProcessor.cs
client/MaestroShared/Targets/FXPTargetProcessor.cs
client/MaestroShared/Targets/TargetProcessorParameter.cs
client/MaestroShared/Targets/UNCTargetProcessor.cs
server/-modules/pom.xml

index a2e69b02d329516b5012f9f63420587161d1705f..5cda1c396b367250a597cde0acacf71d970cd7b3 100644 (file)
@@ -2,10 +2,9 @@
 using System.Collections.Generic;\r
 using System.Management;\r
 using NAudio.CoreAudioApi;\r
-using System.Diagnostics;\r
 \r
 namespace AudioRecorder {\r
-    public class AudioDevicesDetector : IAudioDevicesDetector {\r
+    public class AudioDevicesDetector {\r
 \r
         private List<String> deviceNames;\r
         private List<MMDevice> devices;\r
@@ -13,13 +12,13 @@ namespace AudioRecorder {
         public AudioDevicesDetector() {\r
             deviceNames = new List<String>();\r
             devices = new List<MMDevice>();\r
+            findDevices();\r
         }\r
 \r
-        public void findDevices() {\r
+        private void findDevices() {\r
             var deviceEnum = new MMDeviceEnumerator();\r
             MMDeviceCollection d = deviceEnum.EnumerateAudioEndPoints(DataFlow.Capture, DeviceState.Active);\r
-            foreach (MMDevice actualDevice in d)\r
-            {\r
+            foreach (MMDevice actualDevice in d) {\r
                 deviceNames.Add(actualDevice.FriendlyName);\r
                 devices.Add(actualDevice);\r
             }\r
index 737fd17c4c66c73c6d943b02e4c4226c9482205d..13438689cafe99134821cf44744456bf1b405e51 100644 (file)
     <Compile Include="MainForm.Designer.cs">\r
       <DependentUpon>MainForm.cs</DependentUpon>\r
     </Compile>\r
-    <Compile Include="IAudioDevicesDetector.cs" />\r
     <Compile Include="IRecorder.cs" />\r
     <Compile Include="ITimeCodeWorker.cs" />\r
     <Compile Include="Pause.cs" />\r
       <DesignTimeSharedInput>True</DesignTimeSharedInput>\r
     </Compile>\r
     <None Include="Configuration\audiorecorder.json">\r
-      <CopyToOutputDirectory>Always</CopyToOutputDirectory>\r
+      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
     </None>\r
   </ItemGroup>\r
   <ItemGroup>\r
index 70fb8924f97c22829844b2fcd5f7b9a32735f17a..de6c3b85bf7da885c4cbbe36f4375176b154bc75 100644 (file)
@@ -3,6 +3,7 @@ using Newtonsoft.Json;
 using System.IO;\r
 using MaestroShared.Configuration;\r
 using MaestroShared.Commons;\r
+using Newtonsoft.Json.Serialization;\r
 \r
 namespace AudioRecorder {\r
     public class AudioRecorderSettings {\r
@@ -14,7 +15,14 @@ namespace AudioRecorder {
 \r
         public void Save(string fileName) {\r
             try {\r
-                File.WriteAllText(fileName, JsonConvert.SerializeObject(this, Formatting.Indented));\r
+                JsonSerializerSettings settings = new JsonSerializerSettings {\r
+                    Formatting = Formatting.Indented,\r
+                    ContractResolver = new CamelCasePropertyNamesContractResolver(),\r
+                    NullValueHandling = NullValueHandling.Ignore,\r
+                    DefaultValueHandling = DefaultValueHandling.Ignore\r
+                };\r
+\r
+                File.WriteAllText(fileName, JsonConvert.SerializeObject(this, settings));\r
             }\r
             catch (Exception e) {\r
                 MsgBox.Error(e.Message);\r
diff --git a/client/AudioRecorder/IAudioDevicesDetector.cs b/client/AudioRecorder/IAudioDevicesDetector.cs
deleted file mode 100644 (file)
index caf83c2..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-using System;\r
-using System.Collections.Generic;\r
-using NAudio.CoreAudioApi;\r
-\r
-namespace AudioRecorder\r
-{\r
-    public interface IAudioDevicesDetector\r
-    {\r
-        void findDevices();\r
-        List<String> getDeviceNames();\r
-        List<MMDevice> getDevices();\r
-    }\r
-}\r
index 06a2b73b26eb4779fa15fe29e114a7a657f81e9e..74292bb1a4d0bcc8726c35baec1093924bcd0dab 100644 (file)
@@ -38,7 +38,6 @@ namespace AudioRecorder {
             this.playButton = new System.Windows.Forms.Button();\r
             this.groupBox3 = new System.Windows.Forms.GroupBox();\r
             this.txtRecordFilePath = new System.Windows.Forms.TextBox();\r
-            this.pbUpload = new System.Windows.Forms.ProgressBar();\r
             this.groupBox1.SuspendLayout();\r
             this.groupBox2.SuspendLayout();\r
             ((System.ComponentModel.ISupportInitialize)(this.tbVolume)).BeginInit();\r
@@ -190,13 +189,12 @@ namespace AudioRecorder {
             // \r
             // groupBox3\r
             // \r
-            this.groupBox3.Controls.Add(this.pbUpload);\r
             this.groupBox3.Controls.Add(this.txtRecordFilePath);\r
             this.groupBox3.Controls.Add(this.btnSelectAudio);\r
             this.groupBox3.Controls.Add(this.playButton);\r
             this.groupBox3.Location = new System.Drawing.Point(15, 258);\r
             this.groupBox3.Name = "groupBox3";\r
-            this.groupBox3.Size = new System.Drawing.Size(332, 97);\r
+            this.groupBox3.Size = new System.Drawing.Size(332, 80);\r
             this.groupBox3.TabIndex = 10;\r
             this.groupBox3.TabStop = false;\r
             // \r
@@ -208,19 +206,12 @@ namespace AudioRecorder {
             this.txtRecordFilePath.Size = new System.Drawing.Size(233, 23);\r
             this.txtRecordFilePath.TabIndex = 10;\r
             // \r
-            // pbUpload\r
-            // \r
-            this.pbUpload.Location = new System.Drawing.Point(9, 75);\r
-            this.pbUpload.Name = "pbUpload";\r
-            this.pbUpload.Size = new System.Drawing.Size(312, 9);\r
-            this.pbUpload.TabIndex = 11;\r
-            // \r
             // MainForm\r
             // \r
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;\r
             this.BackColor = System.Drawing.Color.White;\r
-            this.ClientSize = new System.Drawing.Size(363, 370);\r
+            this.ClientSize = new System.Drawing.Size(363, 352);\r
             this.Controls.Add(this.groupBox3);\r
             this.Controls.Add(this.groupBox2);\r
             this.Controls.Add(this.groupBox1);\r
@@ -230,7 +221,7 @@ namespace AudioRecorder {
             this.MinimizeBox = false;\r
             this.Name = "MainForm";\r
             this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;\r
-            this.Text = "AudioRecorder";\r
+            this.Text = "Audio Recorder";\r
             this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);\r
             this.Shown += new System.EventHandler(this.OnMainShown);\r
             this.groupBox1.ResumeLayout(false);\r
@@ -257,7 +248,6 @@ namespace AudioRecorder {
         private Ernzo.WinForms.Controls.PeakMeterCtrl pmVolume;\r
         private System.Windows.Forms.TrackBar tbVolume;\r
         private System.Windows.Forms.TextBox txtRecordFilePath;\r
-        private System.Windows.Forms.ProgressBar pbUpload;\r
     }\r
 }\r
 \r
index 8b013eaf821bde11904fbfb09b8f99486f72a9d9..447dd96e600395d799c343c6c5640a6e16d95179 100644 (file)
@@ -20,7 +20,7 @@ namespace AudioRecorder {
 \r
         private const String CONFIG_FILE = "Configuration/audiorecorder.json";\r
         private const string WAV_EXT = ".WAV";\r
-        private IAudioDevicesDetector devicesDetector;\r
+        private AudioDevicesDetector devicesDetector;\r
         private List<string> audioDevicesNames;\r
         private int selectedDeviceIndex = -1;\r
         private WavRecorder recorder;\r
@@ -77,7 +77,6 @@ namespace AudioRecorder {
             try {\r
                 parameters = Loader.Get<AudioRecorderSettings>(CONFIG_FILE);\r
                 processor = TargetProcessor.Create(parameters.Target.Processor);\r
-                pbUpload.DataBindings.Add(new Binding("Value", processor, "Progress"));\r
 \r
                 UpdateGUI();\r
                 timeCodeWorker = new TimeCodeWorker(timecodeLabel);\r
@@ -85,7 +84,6 @@ namespace AudioRecorder {
                 countDownTimer.Interval = 1000;\r
                 countDownTimer.Tick += new EventHandler(OnCountDownTick);\r
                 devicesDetector = new AudioDevicesDetector();\r
-                devicesDetector.findDevices();\r
                 audioDevicesNames = devicesDetector.getDeviceNames();\r
                 if (!String.IsNullOrEmpty(parameters.DeviceName) && audioDevicesNames != null)\r
                     SelectedDeviceIndex = audioDevicesNames.IndexOf(parameters.DeviceName);\r
@@ -145,11 +143,11 @@ namespace AudioRecorder {
         }\r
 \r
         public void Initialize() {\r
-            currentDevice.AudioEndpointVolume.OnVolumeNotification += OnAudioEndpointVolumeChanged;\r
             try {\r
                 //if (!Directory.Exists(parameters.WorkingDirectory.LocalPath))\r
                 Directory.CreateDirectory(parameters.WorkingDirectory.LocalPath);\r
                 recorder = new WavRecorder(SelectedDeviceIndex, CurrentDevice);\r
+                currentDevice.AudioEndpointVolume.OnVolumeNotification += OnAudioEndpointVolumeChanged;\r
             }\r
             catch (Exception ex) {\r
                 MsgBox.Error(ex.Message);\r
@@ -176,7 +174,7 @@ namespace AudioRecorder {
 \r
         private void OnCountDownTick(object sender, EventArgs e) {\r
             recordButton.Text = countDown.ToString();\r
-            if (countDown-- < 0) {\r
+            if (countDown-- == 0) {\r
                 countDownTimer.Stop();\r
                 recordButton.Text = StringResources.RECORD;\r
                 StartRecord();\r
@@ -259,7 +257,6 @@ namespace AudioRecorder {
         private void ShowAudioDeviceSelectorForm(bool refreshDevices = false) {\r
             if (refreshDevices) {\r
                 devicesDetector = new AudioDevicesDetector();\r
-                devicesDetector.findDevices();\r
                 audioDevicesNames = devicesDetector.getDeviceNames();\r
             }\r
             AudioDeviceSelectorForm deviceSelectorForm = new AudioDeviceSelectorForm();\r
@@ -297,8 +294,11 @@ namespace AudioRecorder {
             processor.Initialize(null, processorParameter);\r
             processor.Execute();\r
 \r
-            if (TargetProcessor.READY.Equals(processor.Status))\r
-                MsgBox.Info(String.Format($"Sikeres betöltés: {processor.Output}"));\r
+            if (TargetProcessor.READY.Equals(processor.Status)) {\r
+                string path = Path.GetDirectoryName(processor.Output);\r
+                string name = Path.GetFileName(processor.Output);\r
+                MsgBox.Info(String.Format($"Sikeres betöltés a '{path}' mappába, '{name}' néven."));\r
+            }\r
             else\r
                 MsgBox.Error(processor.Message);\r
         }\r
index f5b215ba16ea9e21c65f35ae16729e371f58d984..806c9825ef7e93dba2ab3c9e835614b65dc95e9a 100644 (file)
@@ -21,35 +21,45 @@ namespace AudioRecorder {
             this.inputDeviceIndex = inputDeviceIndex;\r
             recordedFiles = new List<String>();\r
             this.device = device;\r
+            Start(true);\r
         }\r
 \r
-        public void StartRecording(String filePath) {\r
-            this.filePath = filePath;\r
+        private void Start(bool preview) {\r
             sourceStream = new WasapiCapture(device);\r
-            //sourceStream = newWaveIn();\r
-\r
-            sourceStream.DataAvailable += newEventHandler();\r
-            waveWriter = newWavFileWriter();\r
+            if (!preview && !String.IsNullOrEmpty(filePath)) {\r
+                waveWriter = new WaveFileWriter(filePath, sourceStream.WaveFormat);\r
+                sourceStream.DataAvailable += SourceStreamDataAvailable;\r
+            }\r
             sourceStream.StartRecording();\r
-            recordedFiles.Add(filePath);\r
         }\r
 \r
-        protected virtual EventHandler<WaveInEventArgs> newEventHandler() {\r
-            return new EventHandler<WaveInEventArgs>(SourceStreamDataAvailable);\r
+        private void Stop() {\r
+            if (sourceStream != null) {\r
+                sourceStream.StopRecording();\r
+                sourceStream.Dispose();\r
+                sourceStream = null;\r
+            }\r
+            if (waveWriter != null) {\r
+                waveWriter.Close();\r
+                waveWriter.Dispose();\r
+                waveWriter = null;\r
+            }\r
         }\r
 \r
-        protected virtual WaveFileWriter newWavFileWriter() {\r
-            return new WaveFileWriter(filePath, sourceStream.WaveFormat);\r
+        public void StartRecording(String filePath) {\r
+            this.filePath = filePath;\r
+            Stop();\r
+            Start(false);\r
         }\r
 \r
-        protected virtual WaveIn newWaveIn() {\r
-            return new WaveIn {\r
-                DeviceNumber = inputDeviceIndex,\r
-                WaveFormat =\r
-                WaveFormat.CreateIeeeFloatWaveFormat(device.AudioClient.MixFormat.SampleRate, MONO_CHANEL)\r
-                //new WaveFormat(device.AudioClient.MixFormat.SampleRate, device.AudioClient.MixFormat.BitsPerSample, MONO_CHANEL)\r
-            };\r
-        }\r
+        //protected virtual WaveIn newWaveIn() {\r
+        //    return new WaveIn {\r
+        //        DeviceNumber = inputDeviceIndex,\r
+        //        WaveFormat =\r
+        //        WaveFormat.CreateIeeeFloatWaveFormat(device.AudioClient.MixFormat.SampleRate, MONO_CHANEL)\r
+        //        //new WaveFormat(device.AudioClient.MixFormat.SampleRate, device.AudioClient.MixFormat.BitsPerSample, MONO_CHANEL)\r
+        //    };\r
+        //}\r
 \r
         public void SourceStreamDataAvailable(object sender, WaveInEventArgs e) {\r
             if (waveWriter == null) return;\r
@@ -60,6 +70,7 @@ namespace AudioRecorder {
         }\r
 \r
         public void Dispose() {\r
+            Stop();\r
             foreach (String file in recordedFiles) {\r
                 if (File.Exists(file)) {\r
                     try {\r
@@ -73,16 +84,8 @@ namespace AudioRecorder {
         }\r
 \r
         public void StopRecord() {\r
-            if (sourceStream != null) {\r
-                sourceStream.StopRecording();\r
-                sourceStream.Dispose();\r
-                sourceStream = null;\r
-            }\r
-            if (waveWriter == null) {\r
-                return;\r
-            }\r
-            waveWriter.Dispose();\r
-            waveWriter = null;\r
+            Stop();\r
+            Start(true);\r
         }\r
 \r
         public void pauseRecording(bool pausing) {\r
index 4f9b80dd5b47a051413f5dbeb87901a4f8bd8b8c..200bb5e99f254947893c8b4cd279bca03c7a8d81 100644 (file)
@@ -75,6 +75,7 @@ namespace DxPlay {
         }\r
 \r
         Control playerWindow;\r
+        private object ppUnk;\r
 \r
         // Play an avi file into a window.  Allow for snapshots.\r
         // (Control to show video in, Avi file to play\r
@@ -143,8 +144,8 @@ namespace DxPlay {
         // start playing\r
         public void Play() {\r
             // If we aren't already playing (or shutting down)\r
-            //if (State == GraphState.Completed)\r
-            //     Stop();\r
+            if (State == GraphState.Completed)\r
+                 Stop();\r
             if (State == GraphState.Stopped || State == GraphState.Paused) {\r
                 int hr = m_mediaCtrl.Run();\r
                 DsError.ThrowExceptionForHR(hr);\r
@@ -168,7 +169,7 @@ namespace DxPlay {
         // Pause the capture graph.\r
         public void Stop() {\r
             // Can only Stop when playing or paused\r
-            if (State == GraphState.Playing || State == GraphState.Paused) {\r
+            if (State == GraphState.Playing || State == GraphState.Paused || State == GraphState.Completed) {\r
                 int hr = m_mediaCtrl.Stop();\r
                 DsError.ThrowExceptionForHR(hr);\r
                 State = GraphState.Stopped;\r
@@ -257,6 +258,34 @@ namespace DxPlay {
 \r
                 FilterGraphTools.ConnectFilters(graphBuilder, sourceFilter, "Output", splitter, "Input", true);\r
 \r
+                //IAMStreamSelect amStreamSelect = (IAMStreamSelect)splitter;\r
+                //if (amStreamSelect != null) {\r
+                //    int count = 0;\r
+                //    amStreamSelect.Count(out count);\r
+                //    int audioCount = 0;\r
+                //    for (int i = 0; i < count; i++) {\r
+                //        AMMediaType ppmt;\r
+                //        AMStreamSelectInfoFlags pdwFlags;\r
+                //        int plcid;\r
+                //        int pdwGroup;\r
+                //        string ppszName;\r
+                //        object ppObject;\r
+                //        amStreamSelect.Info(i, out ppmt, out pdwFlags, out plcid, out pdwGroup, out ppszName, out ppObject, out ppUnk);\r
+\r
+                //        if (ppmt.majorType == MediaType.Audio) {\r
+                //            Debug.WriteLine("Found audio channel");\r
+                //            audioCount++;\r
+                //        }\r
+\r
+                //        DsUtils.FreeAMMediaType(ppmt);\r
+                //        //Marshal.FreeCoTaskMem(ppszName);\r
+                //        if (ppObject != null)\r
+                //            DsUtils.ReleaseComObject(ppUnk);\r
+\r
+                //    }\r
+                //    Debug.WriteLine("Audio count: " + audioCount);\r
+                //}\r
+\r
                 IBaseFilter videoDecoder = LoadVideoDecoder(graphBuilder);\r
 \r
                 if (videoDecoder == null)\r
@@ -604,7 +633,7 @@ namespace DxPlay {
 \r
                             // If the clip is finished playing\r
                             if (ec == EventCode.Complete) {\r
-                                //State = GraphState.Completed;\r
+                                State = GraphState.Completed;\r
                             }\r
 \r
                             // Release any resources the message allocated\r
index 92fe9631e790cf6750a08daa3ac23e4270389cac..355089a5274e02d79748e4524ad0e3849410c128 100644 (file)
@@ -46,7 +46,7 @@ namespace DxPlay {
             this.lbEndTC = new System.Windows.Forms.TextBox();\r
             this.panel3 = new System.Windows.Forms.Panel();\r
             this.lbStatus = new System.Windows.Forms.Label();\r
-            this.trackBar1 = new ColorSlider();\r
+            this.trackBar1 = new MaestroShared.Controls.ColorSlider();\r
             this.lbDuration = new System.Windows.Forms.Label();\r
             this.lbStart = new System.Windows.Forms.Label();\r
             this.splitContainer1 = new System.Windows.Forms.SplitContainer();\r
@@ -166,6 +166,7 @@ namespace DxPlay {
             this.trackBar1.BarOuterColor = System.Drawing.Color.Black;\r
             this.trackBar1.BarPenColor = System.Drawing.Color.Black;\r
             this.trackBar1.BorderRoundRectSize = new System.Drawing.Size(8, 8);\r
+            this.trackBar1.Cursor = System.Windows.Forms.Cursors.Hand;\r
             this.trackBar1.Dock = System.Windows.Forms.DockStyle.Bottom;\r
             this.trackBar1.ElapsedInnerColor = System.Drawing.Color.Black;\r
             this.trackBar1.ElapsedOuterColor = System.Drawing.Color.DarkGray;\r
@@ -324,6 +325,7 @@ namespace DxPlay {
             this.dgSegments.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
             this.dgSegments.Size = new System.Drawing.Size(257, 521);\r
             this.dgSegments.TabIndex = 1;\r
+            this.dgSegments.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgSegments_CellContentClick);\r
             this.dgSegments.CellMouseDoubleClick += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.dgSegments_CellMouseDoubleClick);\r
             this.dgSegments.ColumnAdded += new System.Windows.Forms.DataGridViewColumnEventHandler(this.dgSegments_ColumnAdded);\r
             // \r
index 89ea8de4050075b003c374e26e2e69a26275c17f..9bcc9c793ecb04d4804d7e66709944d944d5a31e 100644 (file)
@@ -141,9 +141,9 @@ namespace DxPlay {
                     lastClick = currentClick;\r
             }\r
 \r
-            if (e.Button == MouseButtons.Right) {\r
-                FlexibleMessageBox.Show(m_play.MediaDescription.Description);\r
-            }\r
+            //if (e.Button == MouseButtons.Right) {\r
+            //    FlexibleMessageBox.Show(m_play.MediaDescription.Description);\r
+            //}\r
         }\r
 \r
         private void panel1_SizeChanged(object sender, EventArgs e) {\r
@@ -255,6 +255,12 @@ namespace DxPlay {
             Debug.WriteLine("Handling " + keyCode);\r
             bool result = false;\r
             switch (keyCode) {\r
+                case Keys.Return:\r
+                    if (ModifierKeys.HasFlag(Keys.Shift)) {\r
+                        m_play.ToggleFullscreen();\r
+                        result = true;\r
+                    }\r
+                    break;\r
                 case Keys.Escape:\r
                     if (m_play.IsFullscreen())\r
                         m_play.ToggleFullscreen();\r
@@ -311,12 +317,6 @@ namespace DxPlay {
         }\r
 \r
         private void PlayerForm_FormClosing(object sender, FormClosingEventArgs e) {\r
-            //foreach (MovieSegment segment in segments)\r
-            //    if (segment.TCOut == null) {\r
-            //        e.Cancel = true;\r
-            //        return;\r
-            //    }\r
-\r
             if (m_play != null) {\r
                 m_play.Stop();\r
                 m_play.Dispose();\r
@@ -355,7 +355,7 @@ namespace DxPlay {
                 MovieSegment lastSegment = segments[segments.Count - 1];\r
                 Timecode tcEnd = new Timecode(m_mediaDescription.FirstFrame, m_mediaDescription.Duration);\r
                 if (lastSegment.TCOut.Frames == tcEnd.Frames) {\r
-                    MessageBox.Show("Az utolsó szegmen az anyag végéig tart, így nem hozható létre új szegmens.");\r
+                    MessageBox.Show("Az utolsó szegmens az anyag végéig tart, így nem hozható létre új szegmens.");\r
                     return;\r
                 }\r
                 segment = new MovieSegment() {\r
@@ -464,7 +464,9 @@ namespace DxPlay {
                     e.Column.HeaderText = StringResource.KILEPO;\r
                     e.Column.ReadOnly = true;\r
                     break;\r
-                case 2: e.Column.HeaderText = StringResource.ELHAGYHATO; break;\r
+                case 2:\r
+                    e.Column.HeaderText = StringResource.ELHAGYHATO;\r
+                    break;\r
                 case 3: e.Column.HeaderText = StringResource.MEGJEGYZES; break;\r
             }\r
         }\r
@@ -492,5 +494,10 @@ namespace DxPlay {
             }\r
 \r
         }\r
+\r
+        private void dgSegments_CellContentClick(object sender, DataGridViewCellEventArgs e) {\r
+            if (e.ColumnIndex == 2)\r
+                dgSegments.EndEdit();\r
+        }\r
     }\r
 }\r
index dcc5e6db5458edfc4ee58570d904e7fe50b366eb..5f050d3d1ea06a665e0d6836d1ac4a9a32db53cf 100644 (file)
@@ -5,6 +5,7 @@
   "enableCustomMetadataId": true,\r
   "defaultWindowColor": "#E1BEE7",\r
   "partialWindowColor": "#F3E5F5",\r
+  "metadataOnly": false,\r
   "player": {\r
     "enabled": true,\r
     "autoStart": false,\r
@@ -15,7 +16,7 @@
     "filter": "avi,wav,mxf",\r
     "foldersAutoExpand": true,\r
     "local": {\r
-      "address": "file://c:/x"\r
+      "address": "file://10.10.1.100/BRAAVOS/OCTOPUS"\r
     }\r
   },\r
   "metadatas": [\r
@@ -41,7 +42,7 @@
           "subFolderFormat": "%IDROOT%-%TEXT%/PROJECT",\r
           "disableFileVersioning": true,\r
           "remote": {\r
-            "address": "file://10.10.1.100/BRAAVOS/.MAESTRO",\r
+            "address": "file://10.10.1.100/BRAAVOS/OCTOPUS",\r
             "userName": "mediacube",\r
             "password": "Dn8t4gfHcK98o8hyPgLDhr5SgSji4JCxsfpMJsODikUp3nXgrM0UNCi45lLAK8ZOnmEneO44P9qpJ4QDqhctN6MxZodjJgdZTyoZKmSa+ECzEzLr/wPYNgxVaXrVotEy",\r
             "timeout": 1000\r
index ddd13040318565787876b4f4db0d6b43d9a535d9..aa818ef78d9a56e12fce43f666f94ee12d06375c 100644 (file)
@@ -1,6 +1,6 @@
 {\r
   "title": "Lebony betöltő",\r
-  "active": false,\r
+  "active": true,\r
   "startInTray": false,\r
   "enableCustomMetadataId": true,\r
   "player": {\r
index c8fcc10ad784f0e52ff142341ac381f60f48d704..94b8ea638301d37bb71526e58fcb146f2aee3002 100644 (file)
@@ -12,7 +12,7 @@
     "$type": "UNCSource",\r
     "filter": "avi,wav,mxf",\r
     "local": {\r
-      "address": "file://c:/x"\r
+      "address": "file://c:/"\r
     }\r
   },\r
   "metadatas": [\r
index c2a054040f950c4598b0f3993c15f5507fdc2e64..cee5052759c2526c0d2b899787a84fc08e5d3d86 100644 (file)
Binary files a/client/Maestro/Installer/installforge-installer-project.ifp and b/client/Maestro/Installer/installforge-installer-project.ifp differ
index 4b77ea2517bb4a83188fc4456bd0e2b4e81ac43e..2c368a5f5d586bff85f9294afbb2dc1d80a9a751 100644 (file)
@@ -26,17 +26,17 @@ namespace Maestro {
         /// </summary>\r
         private void InitializeComponent() {\r
             this.components = new System.ComponentModel.Container();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle13 = new System.Windows.Forms.DataGridViewCellStyle();\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(MaestroForm));\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle16 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle17 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle14 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle15 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle19 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle20 = new System.Windows.Forms.DataGridViewCellStyle();\r
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle18 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();\r
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();\r
             this.groupSource = new System.Windows.Forms.GroupBox();\r
             this.dgSource = new System.Windows.Forms.DataGridView();\r
             this.bindingSource = new System.Windows.Forms.BindingSource(this.components);\r
@@ -49,7 +49,7 @@ namespace Maestro {
             this.tsSource = new System.Windows.Forms.ToolStrip();\r
             this.btnShowFolders = new System.Windows.Forms.ToolStripButton();\r
             this.textSelectedSource = new System.Windows.Forms.TextBox();\r
-            this.label1 = new System.Windows.Forms.Label();\r
+            this.lSelectedSource = new System.Windows.Forms.Label();\r
             this.btnLookupBySource = new System.Windows.Forms.Button();\r
             this.scOperations = new System.Windows.Forms.SplitContainer();\r
             this.scRightOperations = new System.Windows.Forms.SplitContainer();\r
@@ -75,6 +75,13 @@ namespace Maestro {
             this.tabSystem = new System.Windows.Forms.TabControl();\r
             this.tabPage1 = new System.Windows.Forms.TabPage();\r
             this.dgJobs = new System.Windows.Forms.DataGridView();\r
+            this.bindingSourceJobs = new System.Windows.Forms.BindingSource(this.components);\r
+            this.tabPage2 = new System.Windows.Forms.TabPage();\r
+            this.dgMessages = new System.Windows.Forms.DataGridView();\r
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
+            this.systemMessageBindingSource = new System.Windows.Forms.BindingSource(this.components);\r
+            this.metadataInfoBindingSource = new System.Windows.Forms.BindingSource(this.components);\r
             this.columnLabel = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
             this.columnID = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
             this.Progress = new Maestro.Commons.DataGridViewProgressColumn();\r
@@ -84,13 +91,7 @@ namespace Maestro {
             this.columnInput = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
             this.columnOutput = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
             this.columnKillDate = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
-            this.bindingSourceJobs = new System.Windows.Forms.BindingSource(this.components);\r
-            this.tabPage2 = new System.Windows.Forms.TabPage();\r
-            this.dgMessages = new System.Windows.Forms.DataGridView();\r
-            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
-            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
-            this.systemMessageBindingSource = new System.Windows.Forms.BindingSource(this.components);\r
-            this.metadataInfoBindingSource = new System.Windows.Forms.BindingSource(this.components);\r
+            this.Message = new System.Windows.Forms.DataGridViewTextBoxColumn();\r
             this.groupSource.SuspendLayout();\r
             ((System.ComponentModel.ISupportInitialize)(this.dgSource)).BeginInit();\r
             ((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();\r
@@ -159,32 +160,32 @@ namespace Maestro {
             this.dgSource.BackgroundColor = System.Drawing.Color.White;\r
             this.dgSource.BorderStyle = System.Windows.Forms.BorderStyle.None;\r
             this.dgSource.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.Raised;\r
-            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
-            dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Control;\r
-            dataGridViewCellStyle11.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.WindowText;\r
-            dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight;\r
-            dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.HighlightText;\r
-            dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.True;\r
-            this.dgSource.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle11;\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", 9F, 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.dgSource.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;\r
             this.dgSource.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;\r
             this.dgSource.DataSource = this.bindingSource;\r
-            dataGridViewCellStyle12.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
-            dataGridViewCellStyle12.BackColor = System.Drawing.SystemColors.Window;\r
-            dataGridViewCellStyle12.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            dataGridViewCellStyle12.ForeColor = System.Drawing.SystemColors.ControlText;\r
-            dataGridViewCellStyle12.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
-            dataGridViewCellStyle12.SelectionForeColor = System.Drawing.Color.Black;\r
-            dataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
-            this.dgSource.DefaultCellStyle = dataGridViewCellStyle12;\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", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText;\r
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.Color.Black;\r
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
+            this.dgSource.DefaultCellStyle = dataGridViewCellStyle2;\r
             this.dgSource.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.dgSource.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;\r
             this.dgSource.EnableHeadersVisualStyles = false;\r
             this.dgSource.Location = new System.Drawing.Point(10, 47);\r
             this.dgSource.Name = "dgSource";\r
             this.dgSource.RowHeadersVisible = false;\r
-            dataGridViewCellStyle13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.dgSource.RowsDefaultCellStyle = dataGridViewCellStyle13;\r
+            dataGridViewCellStyle3.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.dgSource.RowsDefaultCellStyle = dataGridViewCellStyle3;\r
             this.dgSource.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.dgSource.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
             this.dgSource.Size = new System.Drawing.Size(330, 159);\r
@@ -272,7 +273,7 @@ namespace Maestro {
             this.pSourceDisplay.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle());\r
             this.pSourceDisplay.Controls.Add(this.tsSource, 0, 0);\r
             this.pSourceDisplay.Controls.Add(this.textSelectedSource, 0, 2);\r
-            this.pSourceDisplay.Controls.Add(this.label1, 0, 1);\r
+            this.pSourceDisplay.Controls.Add(this.lSelectedSource, 0, 1);\r
             this.pSourceDisplay.Controls.Add(this.btnLookupBySource, 1, 2);\r
             this.pSourceDisplay.Dock = System.Windows.Forms.DockStyle.Bottom;\r
             this.pSourceDisplay.Location = new System.Drawing.Point(10, 367);\r
@@ -326,18 +327,18 @@ namespace Maestro {
             this.textSelectedSource.TabIndex = 10;\r
             this.textSelectedSource.KeyDown += new System.Windows.Forms.KeyEventHandler(this.textSelectedSource_KeyDown);\r
             // \r
-            // label1\r
+            // lSelectedSource\r
             // \r
-            this.label1.AutoSize = true;\r
-            this.pSourceDisplay.SetColumnSpan(this.label1, 2);\r
-            this.label1.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.label1.Location = new System.Drawing.Point(3, 30);\r
-            this.label1.Name = "label1";\r
-            this.label1.Padding = new System.Windows.Forms.Padding(0, 5, 0, 5);\r
-            this.label1.Size = new System.Drawing.Size(324, 30);\r
-            this.label1.TabIndex = 13;\r
-            this.label1.Text = "Selected source";\r
+            this.lSelectedSource.AutoSize = true;\r
+            this.pSourceDisplay.SetColumnSpan(this.lSelectedSource, 2);\r
+            this.lSelectedSource.Dock = System.Windows.Forms.DockStyle.Fill;\r
+            this.lSelectedSource.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.lSelectedSource.Location = new System.Drawing.Point(3, 30);\r
+            this.lSelectedSource.Name = "lSelectedSource";\r
+            this.lSelectedSource.Padding = new System.Windows.Forms.Padding(0, 5, 0, 5);\r
+            this.lSelectedSource.Size = new System.Drawing.Size(324, 30);\r
+            this.lSelectedSource.TabIndex = 13;\r
+            this.lSelectedSource.Text = "Selected source";\r
             // \r
             // btnLookupBySource\r
             // \r
@@ -704,17 +705,18 @@ namespace Maestro {
             this.columnFinished,\r
             this.columnInput,\r
             this.columnOutput,\r
-            this.columnKillDate});\r
+            this.columnKillDate,\r
+            this.Message});\r
             this.dgJobs.DataSource = this.bindingSourceJobs;\r
-            dataGridViewCellStyle16.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
-            dataGridViewCellStyle16.BackColor = System.Drawing.SystemColors.Window;\r
-            dataGridViewCellStyle16.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            dataGridViewCellStyle16.ForeColor = System.Drawing.SystemColors.ControlText;\r
-            dataGridViewCellStyle16.NullValue = null;\r
-            dataGridViewCellStyle16.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
-            dataGridViewCellStyle16.SelectionForeColor = System.Drawing.Color.Black;\r
-            dataGridViewCellStyle16.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
-            this.dgJobs.DefaultCellStyle = dataGridViewCellStyle16;\r
+            dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
+            dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Window;\r
+            dataGridViewCellStyle6.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.ControlText;\r
+            dataGridViewCellStyle6.NullValue = null;\r
+            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
+            dataGridViewCellStyle6.SelectionForeColor = System.Drawing.Color.Black;\r
+            dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
+            this.dgJobs.DefaultCellStyle = dataGridViewCellStyle6;\r
             this.dgJobs.Dock = System.Windows.Forms.DockStyle.Fill;\r
             this.dgJobs.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;\r
             this.dgJobs.EnableHeadersVisualStyles = false;\r
@@ -722,8 +724,8 @@ namespace Maestro {
             this.dgJobs.Location = new System.Drawing.Point(3, 3);\r
             this.dgJobs.Name = "dgJobs";\r
             this.dgJobs.RowHeadersVisible = false;\r
-            dataGridViewCellStyle17.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.dgJobs.RowsDefaultCellStyle = dataGridViewCellStyle17;\r
+            dataGridViewCellStyle7.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.dgJobs.RowsDefaultCellStyle = dataGridViewCellStyle7;\r
             this.dgJobs.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
             this.dgJobs.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
             this.dgJobs.Size = new System.Drawing.Size(988, 90);\r
@@ -732,6 +734,80 @@ namespace Maestro {
             this.dgJobs.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(this.OnJobsCellPainting);\r
             this.dgJobs.MouseClick += new System.Windows.Forms.MouseEventHandler(this.dataGridJobs_MouseClick);\r
             // \r
+            // tabPage2\r
+            // \r
+            this.tabPage2.Controls.Add(this.dgMessages);\r
+            this.tabPage2.Location = new System.Drawing.Point(4, 24);\r
+            this.tabPage2.Name = "tabPage2";\r
+            this.tabPage2.Padding = new System.Windows.Forms.Padding(3);\r
+            this.tabPage2.Size = new System.Drawing.Size(994, 96);\r
+            this.tabPage2.TabIndex = 1;\r
+            this.tabPage2.Text = global::Maestro.StringResources.UZENETEK;\r
+            this.tabPage2.UseVisualStyleBackColor = true;\r
+            // \r
+            // dgMessages\r
+            // \r
+            this.dgMessages.AllowUserToAddRows = false;\r
+            this.dgMessages.AllowUserToResizeRows = false;\r
+            this.dgMessages.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.DisplayedCells;\r
+            this.dgMessages.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells;\r
+            this.dgMessages.BackgroundColor = System.Drawing.Color.White;\r
+            this.dgMessages.BorderStyle = System.Windows.Forms.BorderStyle.None;\r
+            this.dgMessages.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;\r
+            this.dgMessages.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {\r
+            this.dataGridViewTextBoxColumn1,\r
+            this.dataGridViewTextBoxColumn2});\r
+            dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
+            dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Window;\r
+            dataGridViewCellStyle9.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            dataGridViewCellStyle9.ForeColor = System.Drawing.Color.Red;\r
+            dataGridViewCellStyle9.NullValue = null;\r
+            dataGridViewCellStyle9.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
+            dataGridViewCellStyle9.SelectionForeColor = System.Drawing.Color.Red;\r
+            dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
+            this.dgMessages.DefaultCellStyle = dataGridViewCellStyle9;\r
+            this.dgMessages.Dock = System.Windows.Forms.DockStyle.Fill;\r
+            this.dgMessages.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;\r
+            this.dgMessages.EnableHeadersVisualStyles = false;\r
+            this.dgMessages.GridColor = System.Drawing.Color.White;\r
+            this.dgMessages.Location = new System.Drawing.Point(3, 3);\r
+            this.dgMessages.Name = "dgMessages";\r
+            this.dgMessages.ReadOnly = true;\r
+            this.dgMessages.RowHeadersVisible = false;\r
+            dataGridViewCellStyle10.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.dgMessages.RowsDefaultCellStyle = dataGridViewCellStyle10;\r
+            this.dgMessages.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.dgMessages.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
+            this.dgMessages.Size = new System.Drawing.Size(988, 90);\r
+            this.dgMessages.TabIndex = 1;\r
+            // \r
+            // dataGridViewTextBoxColumn1\r
+            // \r
+            this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;\r
+            this.dataGridViewTextBoxColumn1.DataPropertyName = "Time";\r
+            this.dataGridViewTextBoxColumn1.HeaderText = "Időpont";\r
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";\r
+            this.dataGridViewTextBoxColumn1.ReadOnly = true;\r
+            this.dataGridViewTextBoxColumn1.Width = 73;\r
+            // \r
+            // dataGridViewTextBoxColumn2\r
+            // \r
+            this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;\r
+            this.dataGridViewTextBoxColumn2.DataPropertyName = "Message";\r
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle8;\r
+            this.dataGridViewTextBoxColumn2.HeaderText = "Üzenet";\r
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";\r
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;\r
+            // \r
+            // systemMessageBindingSource\r
+            // \r
+            this.systemMessageBindingSource.DataSource = typeof(Maestro.SystemMessage);\r
+            // \r
+            // metadataInfoBindingSource\r
+            // \r
+            this.metadataInfoBindingSource.DataSource = typeof(Maestro.Metadata.MetadataInfo);\r
+            // \r
             // columnLabel\r
             // \r
             this.columnLabel.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;\r
@@ -744,8 +820,8 @@ namespace Maestro {
             // \r
             this.columnID.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;\r
             this.columnID.DataPropertyName = "ID";\r
-            dataGridViewCellStyle14.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.columnID.DefaultCellStyle = dataGridViewCellStyle14;\r
+            dataGridViewCellStyle4.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.columnID.DefaultCellStyle = dataGridViewCellStyle4;\r
             this.columnID.HeaderText = "ID";\r
             this.columnID.Name = "columnID";\r
             this.columnID.Width = 44;\r
@@ -762,8 +838,8 @@ namespace Maestro {
             // \r
             this.columnStatus.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;\r
             this.columnStatus.DataPropertyName = "Status";\r
-            dataGridViewCellStyle15.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.columnStatus.DefaultCellStyle = dataGridViewCellStyle15;\r
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
+            this.columnStatus.DefaultCellStyle = dataGridViewCellStyle5;\r
             this.columnStatus.HeaderText = "Status";\r
             this.columnStatus.Name = "columnStatus";\r
             this.columnStatus.Width = 66;\r
@@ -808,79 +884,12 @@ namespace Maestro {
             this.columnKillDate.Name = "columnKillDate";\r
             this.columnKillDate.Width = 75;\r
             // \r
-            // tabPage2\r
-            // \r
-            this.tabPage2.Controls.Add(this.dgMessages);\r
-            this.tabPage2.Location = new System.Drawing.Point(4, 24);\r
-            this.tabPage2.Name = "tabPage2";\r
-            this.tabPage2.Padding = new System.Windows.Forms.Padding(3);\r
-            this.tabPage2.Size = new System.Drawing.Size(994, 96);\r
-            this.tabPage2.TabIndex = 1;\r
-            this.tabPage2.Text = global::Maestro.StringResources.UZENETEK;\r
-            this.tabPage2.UseVisualStyleBackColor = true;\r
-            // \r
-            // dgMessages\r
-            // \r
-            this.dgMessages.AllowUserToAddRows = false;\r
-            this.dgMessages.AllowUserToResizeRows = false;\r
-            this.dgMessages.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.DisplayedCells;\r
-            this.dgMessages.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCells;\r
-            this.dgMessages.BackgroundColor = System.Drawing.Color.White;\r
-            this.dgMessages.BorderStyle = System.Windows.Forms.BorderStyle.None;\r
-            this.dgMessages.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;\r
-            this.dgMessages.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {\r
-            this.dataGridViewTextBoxColumn1,\r
-            this.dataGridViewTextBoxColumn2});\r
-            dataGridViewCellStyle19.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;\r
-            dataGridViewCellStyle19.BackColor = System.Drawing.SystemColors.Window;\r
-            dataGridViewCellStyle19.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            dataGridViewCellStyle19.ForeColor = System.Drawing.Color.Red;\r
-            dataGridViewCellStyle19.NullValue = null;\r
-            dataGridViewCellStyle19.SelectionBackColor = System.Drawing.Color.Gainsboro;\r
-            dataGridViewCellStyle19.SelectionForeColor = System.Drawing.Color.Red;\r
-            dataGridViewCellStyle19.WrapMode = System.Windows.Forms.DataGridViewTriState.False;\r
-            this.dgMessages.DefaultCellStyle = dataGridViewCellStyle19;\r
-            this.dgMessages.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.dgMessages.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;\r
-            this.dgMessages.EnableHeadersVisualStyles = false;\r
-            this.dgMessages.GridColor = System.Drawing.Color.White;\r
-            this.dgMessages.Location = new System.Drawing.Point(3, 3);\r
-            this.dgMessages.Name = "dgMessages";\r
-            this.dgMessages.ReadOnly = true;\r
-            this.dgMessages.RowHeadersVisible = false;\r
-            dataGridViewCellStyle20.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.dgMessages.RowsDefaultCellStyle = dataGridViewCellStyle20;\r
-            this.dgMessages.RowTemplate.DefaultCellStyle.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.dgMessages.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
-            this.dgMessages.Size = new System.Drawing.Size(988, 90);\r
-            this.dgMessages.TabIndex = 1;\r
-            // \r
-            // dataGridViewTextBoxColumn1\r
-            // \r
-            this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.DisplayedCells;\r
-            this.dataGridViewTextBoxColumn1.DataPropertyName = "Time";\r
-            this.dataGridViewTextBoxColumn1.HeaderText = "Időpont";\r
-            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";\r
-            this.dataGridViewTextBoxColumn1.ReadOnly = true;\r
-            this.dataGridViewTextBoxColumn1.Width = 73;\r
-            // \r
-            // dataGridViewTextBoxColumn2\r
-            // \r
-            this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;\r
-            this.dataGridViewTextBoxColumn2.DataPropertyName = "Message";\r
-            dataGridViewCellStyle18.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238)));\r
-            this.dataGridViewTextBoxColumn2.DefaultCellStyle = dataGridViewCellStyle18;\r
-            this.dataGridViewTextBoxColumn2.HeaderText = "Üzenet";\r
-            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";\r
-            this.dataGridViewTextBoxColumn2.ReadOnly = true;\r
-            // \r
-            // systemMessageBindingSource\r
-            // \r
-            this.systemMessageBindingSource.DataSource = typeof(Maestro.SystemMessage);\r
-            // \r
-            // metadataInfoBindingSource\r
+            // Message\r
             // \r
-            this.metadataInfoBindingSource.DataSource = typeof(Maestro.Metadata.MetadataInfo);\r
+            this.Message.DataPropertyName = "Message";\r
+            this.Message.HeaderText = "Üzenet";\r
+            this.Message.Name = "Message";\r
+            this.Message.Width = 71;\r
             // \r
             // MaestroForm\r
             // \r
@@ -968,7 +977,7 @@ namespace Maestro {
         private System.Windows.Forms.BindingSource metadataInfoBindingSource;\r
         private System.Windows.Forms.Panel pExecute;\r
         private System.Windows.Forms.TableLayoutPanel pSourceDisplay;\r
-        private System.Windows.Forms.Label label1;\r
+        private System.Windows.Forms.Label lSelectedSource;\r
         private System.Windows.Forms.TableLayoutPanel pMetadataDisplay;\r
         private TrafficClient.TrafficIDSelector trafficIDSelector;\r
         private System.Windows.Forms.Button btnLookupBySource;\r
@@ -977,15 +986,6 @@ namespace Maestro {
         private System.Windows.Forms.TabPage tabPage2;\r
         private System.Windows.Forms.BindingSource systemMessageBindingSource;\r
         private System.Windows.Forms.DataGridView dgMessages;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnLabel;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnID;\r
-        private Commons.DataGridViewProgressColumn Progress;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnStatus;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnStarted;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnFinished;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnInput;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnOutput;\r
-        private System.Windows.Forms.DataGridViewTextBoxColumn columnKillDate;\r
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;\r
         private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;\r
         private System.Windows.Forms.TableLayoutPanel pSourceFilter;\r
@@ -999,6 +999,16 @@ namespace Maestro {
         private System.Windows.Forms.ToolStripButton btnShowFolders;\r
         private System.Windows.Forms.TreeView treeFolders;\r
         private System.Windows.Forms.ImageList ilFolders;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnLabel;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnID;\r
+        private Commons.DataGridViewProgressColumn Progress;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnStatus;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnStarted;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnFinished;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnInput;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnOutput;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn columnKillDate;\r
+        private System.Windows.Forms.DataGridViewTextBoxColumn Message;\r
     }\r
 }\r
 \r
index 16ff98b1068b2765b4a6d0ac8f6dd72d1f2fd2bd..ee8b61386a65cbd4e92de23c0c64c8638ef75abf 100644 (file)
@@ -43,11 +43,12 @@ namespace Maestro {
         }\r
 \r
         private void InitializeSource() {\r
-\r
+            if (Configuration.MetadataOnly)\r
+                return;\r
             if (Configuration.DefaultWindowColor != null)\r
-                defaultColor = (Color) Configuration.DefaultWindowColor;\r
+                defaultColor = (Color)Configuration.DefaultWindowColor;\r
             if (Configuration.PartialWindowColor != null)\r
-                partialColor = (Color) Configuration.PartialWindowColor;\r
+                partialColor = (Color)Configuration.PartialWindowColor;\r
 \r
             Uri localAddress = Configuration?.Source?.Local?.Address;\r
             Uri remoteAddress = Configuration?.Source?.Remote?.Address;\r
@@ -77,7 +78,7 @@ namespace Maestro {
 \r
         private string GetLastSegment(string path) {\r
             Uri uri = new Uri(path);\r
-            return uri.Segments[uri.Segments.Length - 1];\r
+            return Uri.UnescapeDataString(uri.Segments[uri.Segments.Length - 1]);\r
         }\r
 \r
         private void ShowFolders() {\r
@@ -90,6 +91,8 @@ namespace Maestro {
                 btnShowFolders.CheckState = CheckState.Unchecked;\r
             }\r
             Uri address = Configuration.Source.Local.Address;\r
+            if (!Directory.Exists(address.LocalPath))\r
+                return;\r
             string[] folders = Directory.GetDirectories(address.LocalPath);\r
             TreeNode rootNode = treeFolders.Nodes.Add(GetLastSegment(Configuration.Source.Local.Address.ToString()));\r
             foreach (var folder in folders) {\r
@@ -139,7 +142,7 @@ namespace Maestro {
             if (e.Node.Level == 0)\r
                 address = Configuration.Source.Local.Address;\r
             else\r
-                address = new Uri(Path.Combine(Configuration.Source.Local.Address.LocalPath, GetPath(e.Node)));\r
+                address = new Uri(Uri.UnescapeDataString(Path.Combine(Configuration.Source.Local.Address.LocalPath, GetPath(e.Node))));\r
             if (!String.IsNullOrEmpty(address.LocalPath))\r
                 formTooltip.SetToolTip(groupSource, address.LocalPath);\r
             source.Reset(address.LocalPath);\r
@@ -326,12 +329,13 @@ namespace Maestro {
         }\r
 \r
         private FileInfo GetSelectedSourceFileInfo() {\r
-            if (Configuration.Source.GetType() == typeof(NEXIOSource))\r
+            FileSystemSource source = bindingSource.DataSource as FileSystemSource;\r
+            if (source == null)\r
                 return null;\r
             if (selectedSourceItems.Count != 1)\r
                 return null;\r
             string name = selectedSourceItems[0].Name;\r
-            Uri inputUri = new Uri(String.Format("{0}/{1}", Configuration.Source.Local.Address.LocalPath, name));\r
+            Uri inputUri = new Uri(Uri.UnescapeDataString(Path.Combine(source.Path, name)));\r
             return new FileInfo(inputUri.LocalPath);\r
         }\r
 \r
index 88cf649f01d5413bc8645d48241a409c7f386303..665014c1e845ed65c6a520ee62ed0b1952075091 100644 (file)
@@ -14,6 +14,8 @@ namespace Maestro {
     public partial class MaestroForm {\r
 \r
         private void InitializeTarget() {\r
+            if (Configuration.MetadataOnly)\r
+                return;\r
             btnExecute.Enabled = false;\r
             if (Configuration.Targets == null)\r
                 return;\r
@@ -142,7 +144,10 @@ namespace Maestro {
         }\r
 \r
         private TargetProcessorParameter CreateProcessorParameter(Target target, ISourceItem sourceItem) {\r
+            FileSystemSource source = bindingSource.DataSource as FileSystemSource;\r
+\r
             return new TargetProcessorParameter() {\r
+                SourcePathOverride = (source == null || source.Path.Equals(Configuration.Source.Local.Address.LocalPath)) ? null : source.Path,\r
                 MediaCubeApi = mediaCubeApi,\r
                 SourceConfig = Configuration.Source,\r
                 TargetConfig = target,\r
index 15aa8906d4c95133458bd3e4e6462c0db66303b0..9c721752f3c1d70903adb31aab862fcfcc92ab8e 100644 (file)
@@ -61,7 +61,7 @@ namespace Maestro {
             groupSource.Text = StringResources.FORRAS_FAJL;\r
             groupMetadata.Text = StringResources.METAADAT;\r
             groupTarget.Text = StringResources.CEL_AKCIO;\r
-            label1.Text = StringResources.KIVALASZTOTT_FORRAS;\r
+            lSelectedSource.Text = StringResources.KIVALASZTOTT_FORRAS;\r
             labelSelectedMetadata.Text = StringResources.KIVALASZTOTT_METAADAT;\r
             btnExecute.Text = StringResources.VEGREHAJT;\r
             groupActions.Text = StringResources.AKCIOK;\r
@@ -83,6 +83,11 @@ namespace Maestro {
             errorMessageBus.Subscribe<TrafficAPIMessage>(OnMessage);\r
             errorMessageBus.Subscribe<MediaCubeMessage>(OnMessage);\r
 \r
+            if (Configuration.MetadataOnly) {\r
+                scOperations.Panel1Collapsed = true;\r
+                scRightOperations.Panel2Collapsed = true;\r
+            }\r
+\r
             InitializeMetadata();\r
             InitializeTarget();\r
             InitializeJobs();\r
index 401351b853dcce0299ccfe2322848bdd3b8536b7..5167bfdf8cc807f99b5c14d84caba77887fd193a 100644 (file)
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w\r
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0\r
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACU\r
-        BwAAAk1TRnQBSQFMAwEBAAGYAQABmAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA\r
+        BwAAAk1TRnQBSQFMAwEBAAGwAQABsAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA\r
         AUADAAEQAwABAQEAAQgGAAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA\r
         AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA\r
         AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm\r
         AUADAAEQAwABAQEAAQEFAAGAFwAD/4EACw==\r
 </value>\r
   </data>\r
-  <metadata name="tsSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
-    <value>951, 17</value>\r
-  </metadata>\r
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />\r
   <data name="picClearFilter.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
     <value>\r
   <metadata name="tsMetadata.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
     <value>846, 17</value>\r
   </metadata>\r
-  <metadata name="tsMetadata.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
-    <value>846, 17</value>\r
-  </metadata>\r
   <metadata name="columnLabel.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">\r
     <value>True</value>\r
   </metadata>\r
   <metadata name="columnKillDate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">\r
     <value>True</value>\r
   </metadata>\r
+  <metadata name="Message.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">\r
+    <value>True</value>\r
+  </metadata>\r
   <metadata name="bindingSourceJobs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
     <value>154, 17</value>\r
   </metadata>\r
index 6acc4e72e46d75fe1bf2863b2798041810f8ffd0..f9d37067f1216eab467d20fc3983205edba78830 100644 (file)
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
 // You can specify all the values or you can default the Build and Revision Numbers\r
 // by using the '*' as shown below:\r
 // [assembly: AssemblyVersion("1.0.*")]\r
-[assembly: AssemblyVersion("2.0.5.0")]\r
-[assembly: AssemblyFileVersion("2.0.5.0")]\r
+[assembly: AssemblyVersion("2.0.5.4")]\r
+[assembly: AssemblyFileVersion("2.0.5.4")]\r
index ec49526b80b1e676baafafa72b4b9227ef264e96..22408aa43f9a73cf7298729070c5b14d3e911af8 100644 (file)
@@ -93,6 +93,7 @@ namespace Maestro.Sources {
         }\r
 \r
         public bool PlayerEnabled { get; private set; }\r
+        public string Path { get; private set; }\r
 \r
         private void Refresh() {\r
             if (cache == null)\r
@@ -136,7 +137,7 @@ namespace Maestro.Sources {
 \r
         public void Reset(string path) {\r
             if (path != null)\r
-                this.path = path;\r
+                this.Path = path;\r
             Clear();\r
             cache = null;\r
             Shutdown();\r
@@ -156,7 +157,7 @@ namespace Maestro.Sources {
 \r
         private void pathWatcherWorker_watchPath(object sender, DoWorkEventArgs e) {\r
             while (true) {\r
-                if (!Directory.Exists(path)) {\r
+                if (!Directory.Exists(Path)) {\r
                     if (watcher != null)\r
                         Shutdown();\r
                 } else {\r
@@ -180,14 +181,14 @@ namespace Maestro.Sources {
         }\r
 \r
         public void Startup(Uri address) {\r
-            path = address.LocalPath;\r
-            rootPath = path;\r
+            Path = address.LocalPath;\r
+            rootPath = Path;\r
             pathWatcherWorker.RunWorkerAsync();\r
         }\r
 \r
         private void InnerStartUp() {\r
-            createWatch(path);\r
-            initializeList(path);\r
+            createWatch(Path);\r
+            initializeList(Path);\r
         }\r
 \r
         private FileSourceItem CreateItem(FileInfo fi, bool highlight) {\r
index 2a74a9a144085e9ca491e1384f616ccade705128..dbd5b7deb20ce4b677f2f0e2c72a8326148569a2 100644 (file)
@@ -58,7 +58,7 @@ namespace Maestro.Sources {
                         DataPropertyName = "Created",\r
                         HeaderText = StringResources.FELVETEL_DATUMA,\r
                         AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
-                        Width = 100\r
+                        Width = 120\r
                     },\r
                     new DataGridViewTextBoxColumn() {\r
                         DataPropertyName = "Modified",\r
index 044df3047ba72332073245fa3262aa1d2cc6862e..024107e0859af83a07d6a9fa805fdd3a90a87b5b 100644 (file)
@@ -3,19 +3,19 @@
 namespace MaestroShared.Commons {\r
     public class MsgBox {\r
         public static void Info(string text) {\r
-            MessageBox.Show(text, null, MessageBoxButtons.OK, MessageBoxIcon.Information);\r
+            MessageBox.Show(text, string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Information);\r
         }\r
 \r
         public static void Error(string text) {\r
-            MessageBox.Show(text, null, MessageBoxButtons.OK, MessageBoxIcon.Error);\r
+            MessageBox.Show(text, string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Error);\r
         }\r
 \r
         public static void Warning(string text) {\r
-            MessageBox.Show(text, null, MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
+            MessageBox.Show(text, string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Warning);\r
         }\r
 \r
         public static void Exclamation(string text) {\r
-            MessageBox.Show(text, null, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);\r
+            MessageBox.Show(text, string.Empty, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);\r
         }\r
     }\r
 }\r
index d0567ba380409c950d8387e9a742844204074b3f..bb84ab4f3ecb9c5da9d9354ddeaa0131a7782e14 100644 (file)
@@ -42,6 +42,8 @@ namespace MaestroShared.Configuration {
         public bool EnableCustomMetadataId { get; set; }\r
         public MetadataProvider[] Metadatas { get; set; }\r
         public Target[] Targets { get; set; }\r
+        public bool MetadataOnly { get; set; }\r
+        public Point Size { get; set; }\r
 \r
         public T GetMetadataProvider<T>() {\r
             MetadataProvider provider = Metadatas?.Where(m => { return m is T; }).FirstOrDefault();\r
@@ -74,7 +76,7 @@ namespace MaestroShared.Configuration {
         public string DeviceIDMorpheus { get; set; }\r
         public string PathMorpheusMetadata { get; set; }\r
         public bool DisableFileVersioning { get; set; }\r
-        public bool DisableOverride { get; set; }\r
+        public bool EnableOverride { get; set; }\r
         public bool SendEmailOnError { get; set; }\r
         public string ErrorEmailRecipient { get; set; }\r
         public string ErrorEmailPattern { get; set; }\r
similarity index 81%
rename from client/MaestroShared/Configuration/KeysJsonConverter.cs
rename to client/MaestroShared/Configuration/KeysPasswordConverter.cs
index 210dfc7a3468b832eab624c5951dba387703d218..12bf7eca76545295521a620dceb9c62a5d3b60e7 100644 (file)
@@ -1,10 +1,13 @@
 using Newtonsoft.Json;\r
+using Newtonsoft.Json.Linq;\r
 using PasswordEncrypter;\r
 using System;\r
 \r
 namespace MaestroShared.Configuration {\r
     public class KeysPasswordConverter : JsonConverter {\r
         public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) {\r
+            JToken t = JToken.FromObject(StringCipher.Encrypt(value as string));\r
+            t.WriteTo(writer);\r
         }\r
 \r
         public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) {\r
index 002a9c55579b1685d1c95ee285406ed3afcba725..0de39cbdb91f02b6fce1699fdd0dec0e2f19a875 100644 (file)
@@ -88,7 +88,7 @@
     <Compile Include="Commons\Win32File.cs" />\r
     <Compile Include="Configuration\ConfigurationInfo.cs" />\r
     <Compile Include="Configuration\KeysColorConverter.cs" />\r
-    <Compile Include="Configuration\KeysJsonConverter.cs" />\r
+    <Compile Include="Configuration\KeysPasswordConverter.cs" />\r
     <Compile Include="Configuration\KnownTypesBinder.cs" />\r
     <Compile Include="Controls\ColorSlider.cs">\r
       <SubType>Component</SubType>\r
index cc5392204b4681c733fef8a3a122237a2d38b59f..b6ead38cd63beeaca465e026f3d9b762aea41c1a 100644 (file)
@@ -22,12 +22,22 @@ namespace MaestroShared.Targets {
             FtpTrace.LogFunctions = false;\r
             string address = parameters?.SourceConfig?.Remote?.Address.ToString();\r
             if (address == null)\r
-                return;\r
+                throw new Exception("Nem található a 'source.remote.address' beállítás.");\r
             inputFile = null;\r
+\r
+            if (!String.IsNullOrEmpty(parameters.SourcePathOverride)) {\r
+                string relativePath = parameters.SourcePathOverride.Replace(parameters.SourceConfig.Local.Address.LocalPath, "").Replace(BACKSLASH, SLASH);\r
+                if (relativePath.StartsWith(SLASH))\r
+                    relativePath = relativePath.Substring(1);\r
+                Input = new Uri(Path.Combine(address, relativePath, parameters.InputFileName)).LocalPath;\r
+            }\r
+            else\r
+                Input = new Uri(Path.Combine(address, parameters.InputFileName)).LocalPath;\r
+\r
             //if (address == null)\r
             //    throw new Exception("Missing 'source.remote' parameter.");\r
-            Uri inputUri = new Uri(Path.Combine(address, parameters.InputFileName));\r
-            Input = inputUri.ToString();\r
+            //Uri inputUri = new Uri(Path.Combine(address, parameters.InputFileName));\r
+            //Input = inputUri.ToString();\r
         }\r
 \r
         protected override void BeforeExecute() {\r
@@ -141,5 +151,11 @@ namespace MaestroShared.Targets {
             }\r
         }\r
 \r
+\r
+        protected override void CreateOutput(string workingDir) {\r
+            base.CreateOutput(workingDir);\r
+            Output = Output.Replace(BACKSLASH, SLASH);\r
+        }\r
+\r
     }\r
 }\r
index 0517ed54aeeb53b0c996d5f2cac2380124573f9c..09513ee2e9d3ada5491f8e7a733ecd7b25e8979b 100644 (file)
@@ -3,6 +3,7 @@ using MaestroShared.Configuration;
 using MaestroShared.Target;\r
 using NLog;\r
 using System;\r
+using System.Diagnostics;\r
 using System.IO;\r
 using System.Text.RegularExpressions;\r
 using System.Threading;\r
@@ -20,8 +21,21 @@ namespace MaestroShared.Targets {
         public override void Initialize(Control parent, TargetProcessorParameter parameters) {\r
             base.Initialize(parent, parameters);\r
             sourceConfig = parameters.SourceConfig;\r
-            inputUri = new Uri(Path.Combine(parameters.SourceConfig.Remote.Address.ToString(), parameters.InputFileName));\r
-            Input = inputUri.ToString();\r
+            //inputUri = new Uri(Path.Combine(parameters.SourceConfig.Remote.Address.ToString(), parameters.InputFileName));\r
+            //Input = inputUri.ToString();\r
+\r
+            string address = parameters?.SourceConfig?.Remote?.Address.ToString();\r
+            if (address == null)\r
+                throw new Exception("Nem található a 'source.remote.address' beállítás.");\r
+\r
+            if (!String.IsNullOrEmpty(parameters.SourcePathOverride)) {\r
+                string relativePath = parameters.SourcePathOverride.Replace(parameters.SourceConfig.Local.Address.LocalPath, "").Replace(BACKSLASH, SLASH);\r
+                if (relativePath.StartsWith(SLASH))\r
+                    relativePath = relativePath.Substring(1);\r
+                inputUri = new Uri(Path.Combine(address, relativePath, parameters.InputFileName));\r
+            } else\r
+                inputUri = new Uri(Path.Combine(address, parameters.InputFileName));\r
+            Input = inputUri.LocalPath;\r
         }\r
 \r
         protected override void UploadFile() {\r
@@ -31,7 +45,7 @@ namespace MaestroShared.Targets {
             try {\r
                 sourceFTP = CreateClient(sourceConfig.Remote);\r
 \r
-                string input = inputUri.AbsolutePath.Replace(LITERAL_SPACE, SPACE);\r
+                string input = Uri.UnescapeDataString(inputUri.AbsolutePath);\r
                 long ilength = sourceFTP.GetFileSize(input);\r
                 if (Parameters.TargetConfig.NexioServer)\r
                     ilength = ilength / 2;\r
@@ -88,7 +102,13 @@ namespace MaestroShared.Targets {
                 long lastSize = 0;\r
                 while (overall != ilength) {\r
                     overall = monitorFTP.GetFileSize(OutputName);\r
-                    if (overall == lastSize) {\r
+                    FtpReply statRETR = sourceFTP.Execute("STAT");\r
+                    if (!statRETR.Success)\r
+                        Debug.WriteLine($"Overall {overall}, last {lastSize}");\r
+                    else\r
+                        Debug.WriteLine($"Overall {overall}, last {lastSize} site {statRETR.Message}");\r
+\r
+                    if (overall == lastSize && overall > 0) {\r
                         Progress = 100;\r
                         break;\r
                     } else {\r
@@ -111,5 +131,6 @@ namespace MaestroShared.Targets {
             //logger.Debug("Done");\r
         }\r
 \r
+\r
     }\r
 }\r
index e60d1ff2006ad4b274cf46302ff82e5e77db005a..2bd01184943be775f383b36aed2baec2d6188391 100644 (file)
@@ -6,6 +6,7 @@ using LinkDotNet.MessageHandling.Contracts;
 \r
 namespace MaestroShared.Target {\r
     public class TargetProcessorParameter {\r
+        public string SourcePathOverride { get; set; }\r
         public Source SourceConfig { get; set; }\r
         public Configuration.Target TargetConfig { get; set; }\r
         public string InputFileName { get; set; }\r
index db0e27fcbe56f8d8fc6f58792aa14f01fec3d339..2c0cdae0d4f7a9977642b9658b6e4ad29cc03c20 100644 (file)
@@ -46,7 +46,10 @@ namespace MaestroShared.Targets {
         public override void Initialize(Control parent, TargetProcessorParameter parameters) {\r
             base.Initialize(parent, parameters);\r
             InputName = parameters.InputFileName;\r
-            Input = Path.Combine(parameters.SourceConfig.Local.Address.LocalPath, parameters.InputFileName);\r
+            if (!String.IsNullOrEmpty(parameters.SourcePathOverride))\r
+                Input = Path.Combine(parameters.SourcePathOverride, parameters.InputFileName);\r
+            else\r
+                Input = Path.Combine(parameters.SourceConfig.Local.Address.LocalPath, parameters.InputFileName);\r
             inputFile = new FileInfo(Input);\r
             ID = parameters.ID;\r
             workFlowAction = new WorkflowAction() {\r
@@ -100,22 +103,22 @@ namespace MaestroShared.Targets {
             return result;\r
         }\r
 \r
-        private void CreateOutput(string workingDir) {\r
+        protected virtual void CreateOutput(string workingDir) {\r
             Output = SLASH.Equals(workingDir) ? OutputName : Path.Combine(workingDir, OutputName);\r
         }\r
 \r
         private bool DeleteExisting(string currentFile) {\r
             bool result = true;\r
-            if (FileExists(currentFile) && (Parameters.TargetConfig.DisableFileVersioning || Parameters.TargetConfig.DisableOverride)) {\r
+            if (FileExists(currentFile) && (Parameters.TargetConfig.DisableFileVersioning || Parameters.TargetConfig.EnableOverride)) {\r
                 if (Parameters.TargetConfig.NexioServer) {\r
                     Status = REVOKED;\r
                     ShowNexioFileExistsMessage();\r
                     result = false;\r
                 } else {\r
-                    if (Parameters.TargetConfig.DisableOverride)\r
-                        result = false;\r
-                    else\r
+                    if (Parameters.TargetConfig.EnableOverride)\r
                         DeleteFile(currentFile);\r
+                    else\r
+                        result = false;\r
                 }\r
             }\r
             return result;\r
index e9cb460d055ddf600a094a7e0009ffa1d6da0bed..309864f6d6b48a8664aec486228babb45b884959 100644 (file)
@@ -26,8 +26,8 @@
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
 \r
                <remote.address>scp://root:password@10.10.1.27</remote.address>\r
-<!--           <remote.hostkey>ssh-ed25519 256 ea:ab:67:70:79:63:2f:6a:34:81:48:e2:b9:dd:ca:d4</remote.hostkey> -->\r
-               <remote.hostkey>ssh-ed25519 256 ea:58:1c:d3:b8:d5:7a:92:4c:a3:a5:8d:e2:7b:07:fd</remote.hostkey>\r
+               <remote.hostkey>ssh-ed25519 256 ea:ab:67:70:79:63:2f:6a:34:81:48:e2:b9:dd:ca:d4</remote.hostkey>\r
+<!--           <remote.hostkey>ssh-ed25519 256 ea:58:1c:d3:b8:d5:7a:92:4c:a3:a5:8d:e2:7b:07:fd</remote.hostkey> -->\r
        </properties>\r
 \r
        <repositories>\r