git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 3 Sep 2018 11:29:25 +0000 (11:29 +0000)
committerVásáry Dániel <daniel.vasary@userrendszerhaz.hu>
Mon, 3 Sep 2018 11:29:25 +0000 (11:29 +0000)
12 files changed:
client/DxPlay/PlayerForm.Designer.cs
client/DxPlay/PlayerForm.cs
client/DxPlay/PlayerForm.resx
client/DxPlay/Properties/Resources.Designer.cs [new file with mode: 0644]
client/DxPlay/Properties/Resources.resx [new file with mode: 0644]
client/NativeOctopusClient/NativeOctopusClient.csproj.vspscc [new file with mode: 0644]
client/OctopusClient/OctopusIDSelector.cs
client/OctopusClient/Resources.Designer.cs [deleted file]
client/PlanAIRClient/TrafficIDSelector.cs
client/PlanAIRClient/TrafficIDSelectorColumns.cs
docs/mediacube-audiorecorder.md
docs/mediacube-dxplay.md

index fe261c6bb8e45851ee731e4da4dc5b3127a2f12d..5034f1dedb1bd7b8a3bbdefc94d2e9bb0ef62808 100644 (file)
@@ -184,7 +184,7 @@ namespace DxPlay {
             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(284, 377);\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
@@ -214,7 +214,7 @@ namespace DxPlay {
             this.dgSegments.Name = "dgSegments";\r
             this.dgSegments.RowHeadersVisible = false;\r
             this.dgSegments.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;\r
-            this.dgSegments.Size = new System.Drawing.Size(278, 346);\r
+            this.dgSegments.Size = new System.Drawing.Size(186, 0);\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
@@ -235,7 +235,7 @@ namespace DxPlay {
             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(278, 25);\r
+            this.segmentActions.Size = new System.Drawing.Size(186, 25);\r
             this.segmentActions.TabIndex = 0;\r
             this.segmentActions.Text = "toolStrip1";\r
             // \r
index b83cb1ac3080a4fbfcd514b14aab3b436516f321..dd0d21d4b3c827f5c86925d0f33ac7691db2eda0 100644 (file)
@@ -294,7 +294,7 @@ namespace DxPlay {
 \r
         private bool HandleHotKey(Keys keyCode) {\r
             logger.Debug("Key pressed " + keyCode);\r
-            if (openFileDialogOpened || dgSegments.IsCurrentCellInEditMode || (m_play != null && !m_play.IsFullscreen() && !ContainsFocus))\r
+            if (trafficBrowser.ContainsFocus || openFileDialogOpened || dgSegments.IsCurrentCellInEditMode || (m_play != null && !m_play.IsFullscreen() && !ContainsFocus))\r
                 return true;\r
             logger.Debug("Handling " + keyCode);\r
             bool result = false;\r
index 0bbfdd1b27b18c574f0041847e6f282a5a8c4b27..48f49eaf27b207e2efab9e93d7ba83ef1f7610aa 100644 (file)
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w\r
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0\r
         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABo\r
-        CAAAAk1TRnQBSQFMAgEBAgEAAUABAQFAAQEBGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo\r
+        CAAAAk1TRnQBSQFMAgEBAgEAAVABAQFQAQEBGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo\r
         AwABYAMAARgDAAEBAQABCAYAAQkYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA\r
         AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5\r
         AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA\r
diff --git a/client/DxPlay/Properties/Resources.Designer.cs b/client/DxPlay/Properties/Resources.Designer.cs
new file mode 100644 (file)
index 0000000..083dc24
--- /dev/null
@@ -0,0 +1,346 @@
+//------------------------------------------------------------------------------\r
+// <auto-generated>\r
+//     This code was generated by a tool.\r
+//     Runtime Version:4.0.30319.42000\r
+//\r
+//     Changes to this file may cause incorrect behavior and will be lost if\r
+//     the code is regenerated.\r
+// </auto-generated>\r
+//------------------------------------------------------------------------------\r
+\r
+namespace DxPlay.Properties {\r
+    using System;\r
+    \r
+    \r
+    /// <summary>\r
+    ///   A strongly-typed resource class, for looking up localized strings, etc.\r
+    /// </summary>\r
+    // This class was auto-generated by the StronglyTypedResourceBuilder\r
+    // class via a tool like ResGen or Visual Studio.\r
+    // To add or remove a member, edit your .ResX file then rerun ResGen\r
+    // with the /str option, or rebuild your VS project.\r
+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]\r
+    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
+    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]\r
+    internal class Resources {\r
+        \r
+        private static global::System.Resources.ResourceManager resourceMan;\r
+        \r
+        private static global::System.Globalization.CultureInfo resourceCulture;\r
+        \r
+        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]\r
+        internal Resources() {\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Returns the cached ResourceManager instance used by this class.\r
+        /// </summary>\r
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
+        internal static global::System.Resources.ResourceManager ResourceManager {\r
+            get {\r
+                if (object.ReferenceEquals(resourceMan, null)) {\r
+                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DxPlay.Properties.Resources", typeof(Resources).Assembly);\r
+                    resourceMan = temp;\r
+                }\r
+                return resourceMan;\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Overrides the current thread's CurrentUICulture property for all\r
+        ///   resource lookups using this strongly typed resource class.\r
+        /// </summary>\r
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
+        internal static global::System.Globalization.CultureInfo Culture {\r
+            get {\r
+                return resourceCulture;\r
+            }\r
+            set {\r
+                resourceCulture = value;\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Kész.\r
+        /// </summary>\r
+        internal static string APPROVE {\r
+            get {\r
+                return ResourceManager.GetString("APPROVE", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Megjegyzés.\r
+        /// </summary>\r
+        internal static string COMMENT {\r
+            get {\r
+                return ResourceManager.GetString("COMMENT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Vége.\r
+        /// </summary>\r
+        internal static string COMPLETED {\r
+            get {\r
+                return ResourceManager.GetString("COMPLETED", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szegmens definiálása.\r
+        /// </summary>\r
+        internal static string DEFINESEGMENT {\r
+            get {\r
+                return ResourceManager.GetString("DEFINESEGMENT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szegmens törlése.\r
+        /// </summary>\r
+        internal static string DELETESEGMENT {\r
+            get {\r
+                return ResourceManager.GetString("DELETESEGMENT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Nem tudok kapcsolódni a PlanAir rendszerhez ezen az útvonalon: {0}.\r
+        /// </summary>\r
+        internal static string ERRORTRAFFICCONNECT {\r
+            get {\r
+                return ResourceManager.GetString("ERRORTRAFFICCONNECT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Kilépés.\r
+        /// </summary>\r
+        internal static string EXITING {\r
+            get {\r
+                return ResourceManager.GetString("EXITING", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.\r
+        /// </summary>\r
+        internal static System.Drawing.Bitmap ic_pause_black_24dp_2x {\r
+            get {\r
+                object obj = ResourceManager.GetObject("ic_pause_black_24dp_2x", resourceCulture);\r
+                return ((System.Drawing.Bitmap)(obj));\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.\r
+        /// </summary>\r
+        internal static System.Drawing.Bitmap ic_play_arrow_black_24dp_2x {\r
+            get {\r
+                object obj = ResourceManager.GetObject("ic_play_arrow_black_24dp_2x", resourceCulture);\r
+                return ((System.Drawing.Bitmap)(obj));\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.\r
+        /// </summary>\r
+        internal static System.Drawing.Bitmap ic_stop_black_24dp_2x {\r
+            get {\r
+                object obj = ResourceManager.GetObject("ic_stop_black_24dp_2x", resourceCulture);\r
+                return ((System.Drawing.Bitmap)(obj));\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Hossz.\r
+        /// </summary>\r
+        internal static string LENGTH {\r
+            get {\r
+                return ResourceManager.GetString("LENGTH", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized resource of type System.Drawing.Bitmap.\r
+        /// </summary>\r
+        internal static System.Drawing.Bitmap lgs {\r
+            get {\r
+                object obj = ResourceManager.GetObject("lgs", resourceCulture);\r
+                return ((System.Drawing.Bitmap)(obj));\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Metaadat.\r
+        /// </summary>\r
+        internal static string METADATA {\r
+            get {\r
+                return ResourceManager.GetString("METADATA", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Nem található a PlanAir rendszer kapcsolódási információja a dxplay.json állományban..\r
+        /// </summary>\r
+        internal static string MISSINGTRAFFICCONFIGURATION {\r
+            get {\r
+                return ResourceManager.GetString("MISSINGTRAFFICCONFIGURATION", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Nem található az {0} azonosító a PlanAir rendszerben..\r
+        /// </summary>\r
+        internal static string MISSINGTRAFFICVARIANT {\r
+            get {\r
+                return ResourceManager.GetString("MISSINGTRAFFICVARIANT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to NINCS BEMENET.\r
+        /// </summary>\r
+        internal static string NOINPUT {\r
+            get {\r
+                return ResourceManager.GetString("NOINPUT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Megnyitás.\r
+        /// </summary>\r
+        internal static string OPEN {\r
+            get {\r
+                return ResourceManager.GetString("OPEN", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Elhagyható.\r
+        /// </summary>\r
+        internal static string OPTIONAL {\r
+            get {\r
+                return ResourceManager.GetString("OPTIONAL", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szünet.\r
+        /// </summary>\r
+        internal static string PAUSE {\r
+            get {\r
+                return ResourceManager.GetString("PAUSE", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szüneteltetett.\r
+        /// </summary>\r
+        internal static string PAUSED {\r
+            get {\r
+                return ResourceManager.GetString("PAUSED", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Lejátszás.\r
+        /// </summary>\r
+        internal static string PLAY {\r
+            get {\r
+                return ResourceManager.GetString("PLAY", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Lejátszás.\r
+        /// </summary>\r
+        internal static string PLAYING {\r
+            get {\r
+                return ResourceManager.GetString("PLAYING", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Aktuális pozíció belépőként.\r
+        /// </summary>\r
+        internal static string POSITIONASTCIN {\r
+            get {\r
+                return ResourceManager.GetString("POSITIONASTCIN", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Aktuális pozíció kilépőként.\r
+        /// </summary>\r
+        internal static string POSITIONASTCOUT {\r
+            get {\r
+                return ResourceManager.GetString("POSITIONASTCOUT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szegmensek.\r
+        /// </summary>\r
+        internal static string SEGMENTS {\r
+            get {\r
+                return ResourceManager.GetString("SEGMENTS", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Szegmens szétvágása.\r
+        /// </summary>\r
+        internal static string SPLITSEGMENT {\r
+            get {\r
+                return ResourceManager.GetString("SPLITSEGMENT", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Kezdés.\r
+        /// </summary>\r
+        internal static string START {\r
+            get {\r
+                return ResourceManager.GetString("START", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Leállítás.\r
+        /// </summary>\r
+        internal static string STOP {\r
+            get {\r
+                return ResourceManager.GetString("STOP", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Megállítva.\r
+        /// </summary>\r
+        internal static string STOPPED {\r
+            get {\r
+                return ResourceManager.GetString("STOPPED", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Belépő.\r
+        /// </summary>\r
+        internal static string TCIN {\r
+            get {\r
+                return ResourceManager.GetString("TCIN", resourceCulture);\r
+            }\r
+        }\r
+        \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Kilépő.\r
+        /// </summary>\r
+        internal static string TCOUT {\r
+            get {\r
+                return ResourceManager.GetString("TCOUT", resourceCulture);\r
+            }\r
+        }\r
+    }\r
+}\r
diff --git a/client/DxPlay/Properties/Resources.resx b/client/DxPlay/Properties/Resources.resx
new file mode 100644 (file)
index 0000000..96e1843
--- /dev/null
@@ -0,0 +1,214 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<root>\r
+  <!-- \r
+    Microsoft ResX Schema \r
+    \r
+    Version 2.0\r
+    \r
+    The primary goals of this format is to allow a simple XML format \r
+    that is mostly human readable. The generation and parsing of the \r
+    various data types are done through the TypeConverter classes \r
+    associated with the data types.\r
+    \r
+    Example:\r
+    \r
+    ... ado.net/XML headers & schema ...\r
+    <resheader name="resmimetype">text/microsoft-resx</resheader>\r
+    <resheader name="version">2.0</resheader>\r
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>\r
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>\r
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>\r
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>\r
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">\r
+        <value>[base64 mime encoded serialized .NET Framework object]</value>\r
+    </data>\r
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>\r
+        <comment>This is a comment</comment>\r
+    </data>\r
+                \r
+    There are any number of "resheader" rows that contain simple \r
+    name/value pairs.\r
+    \r
+    Each data row contains a name, and value. The row also contains a \r
+    type or mimetype. Type corresponds to a .NET class that support \r
+    text/value conversion through the TypeConverter architecture. \r
+    Classes that don't support this are serialized and stored with the \r
+    mimetype set.\r
+    \r
+    The mimetype is used for serialized objects, and tells the \r
+    ResXResourceReader how to depersist the object. This is currently not \r
+    extensible. For a given mimetype the value must be set accordingly:\r
+    \r
+    Note - application/x-microsoft.net.object.binary.base64 is the format \r
+    that the ResXResourceWriter will generate, however the reader can \r
+    read any of the formats listed below.\r
+    \r
+    mimetype: application/x-microsoft.net.object.binary.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter\r
+            : and then encoded with base64 encoding.\r
+    \r
+    mimetype: application/x-microsoft.net.object.soap.base64\r
+    value   : The object must be serialized with \r
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter\r
+            : and then encoded with base64 encoding.\r
+\r
+    mimetype: application/x-microsoft.net.object.bytearray.base64\r
+    value   : The object must be serialized into a byte array \r
+            : using a System.ComponentModel.TypeConverter\r
+            : and then encoded with base64 encoding.\r
+    -->\r
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">\r
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />\r
+    <xsd:element name="root" msdata:IsDataSet="true">\r
+      <xsd:complexType>\r
+        <xsd:choice maxOccurs="unbounded">\r
+          <xsd:element name="metadata">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" use="required" type="xsd:string" />\r
+              <xsd:attribute name="type" type="xsd:string" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="assembly">\r
+            <xsd:complexType>\r
+              <xsd:attribute name="alias" type="xsd:string" />\r
+              <xsd:attribute name="name" type="xsd:string" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="data">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />\r
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />\r
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />\r
+              <xsd:attribute ref="xml:space" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+          <xsd:element name="resheader">\r
+            <xsd:complexType>\r
+              <xsd:sequence>\r
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />\r
+              </xsd:sequence>\r
+              <xsd:attribute name="name" type="xsd:string" use="required" />\r
+            </xsd:complexType>\r
+          </xsd:element>\r
+        </xsd:choice>\r
+      </xsd:complexType>\r
+    </xsd:element>\r
+  </xsd:schema>\r
+  <resheader name="resmimetype">\r
+    <value>text/microsoft-resx</value>\r
+  </resheader>\r
+  <resheader name="version">\r
+    <value>2.0</value>\r
+  </resheader>\r
+  <resheader name="reader">\r
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+  <resheader name="writer">\r
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+  </resheader>\r
+  <data name="POSITIONASTCIN" xml:space="preserve">\r
+    <value>Aktuális pozíció belépőként</value>\r
+  </data>\r
+  <data name="POSITIONASTCOUT" xml:space="preserve">\r
+    <value>Aktuális pozíció kilépőként</value>\r
+  </data>\r
+  <data name="TCIN" xml:space="preserve">\r
+    <value>Belépő</value>\r
+  </data>\r
+  <data name="OPTIONAL" xml:space="preserve">\r
+    <value>Elhagyható</value>\r
+  </data>\r
+  <data name="ERRORTRAFFICCONNECT" xml:space="preserve">\r
+    <value>Nem tudok kapcsolódni a PlanAir rendszerhez ezen az útvonalon: {0}</value>\r
+  </data>\r
+  <data name="LENGTH" xml:space="preserve">\r
+    <value>Hossz</value>\r
+  </data>\r
+  <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />\r
+  <data name="ic_pause_black_24dp_2x" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
+    <value>..\resources\ic_pause_black_24dp_2x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
+  </data>\r
+  <data name="ic_play_arrow_black_24dp_2x" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
+    <value>..\resources\ic_play_arrow_black_24dp_2x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
+  </data>\r
+  <data name="ic_stop_black_24dp_2x" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
+    <value>..\resources\ic_stop_black_24dp_2x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
+  </data>\r
+  <data name="START" xml:space="preserve">\r
+    <value>Kezdés</value>\r
+  </data>\r
+  <data name="EXITING" xml:space="preserve">\r
+    <value>Kilépés</value>\r
+  </data>\r
+  <data name="TCOUT" xml:space="preserve">\r
+    <value>Kilépő</value>\r
+  </data>\r
+  <data name="STOP" xml:space="preserve">\r
+    <value>Leállítás</value>\r
+  </data>\r
+  <data name="PLAYING" xml:space="preserve">\r
+    <value>Lejátszás</value>\r
+  </data>\r
+  <data name="lgs" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
+    <value>..\resources\lgs.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>\r
+  </data>\r
+  <data name="STOPPED" xml:space="preserve">\r
+    <value>Megállítva</value>\r
+  </data>\r
+  <data name="COMMENT" xml:space="preserve">\r
+    <value>Megjegyzés</value>\r
+  </data>\r
+  <data name="MISSINGTRAFFICCONFIGURATION" xml:space="preserve">\r
+    <value>Nem található a PlanAir rendszer kapcsolódási információja a dxplay.json állományban.</value>\r
+  </data>\r
+  <data name="MISSINGTRAFFICVARIANT" xml:space="preserve">\r
+    <value>Nem található az {0} azonosító a PlanAir rendszerben.</value>\r
+  </data>\r
+  <data name="NOINPUT" xml:space="preserve">\r
+    <value>NINCS BEMENET</value>\r
+  </data>\r
+  <data name="SEGMENTS" xml:space="preserve">\r
+    <value>Szegmensek</value>\r
+  </data>\r
+  <data name="DEFINESEGMENT" xml:space="preserve">\r
+    <value>Szegmens definiálása</value>\r
+  </data>\r
+  <data name="SPLITSEGMENT" xml:space="preserve">\r
+    <value>Szegmens szétvágása</value>\r
+  </data>\r
+  <data name="DELETESEGMENT" xml:space="preserve">\r
+    <value>Szegmens törlése</value>\r
+  </data>\r
+  <data name="PAUSE" xml:space="preserve">\r
+    <value>Szünet</value>\r
+  </data>\r
+  <data name="PAUSED" xml:space="preserve">\r
+    <value>Szüneteltetett</value>\r
+  </data>\r
+  <data name="COMPLETED" xml:space="preserve">\r
+    <value>Vége</value>\r
+  </data>\r
+  <data name="PLAY" xml:space="preserve">\r
+    <value>Lejátszás</value>\r
+  </data>\r
+  <data name="METADATA" xml:space="preserve">\r
+    <value>Metaadat</value>\r
+  </data>\r
+  <data name="APPROVE" xml:space="preserve">\r
+    <value>Kész</value>\r
+  </data>\r
+  <data name="OPEN" xml:space="preserve">\r
+    <value>Megnyitás</value>\r
+  </data>\r
+</root>
\ No newline at end of file
diff --git a/client/NativeOctopusClient/NativeOctopusClient.csproj.vspscc b/client/NativeOctopusClient/NativeOctopusClient.csproj.vspscc
new file mode 100644 (file)
index 0000000..feffdec
--- /dev/null
@@ -0,0 +1,10 @@
+""\r
+{\r
+"FILE_VERSION" = "9237"\r
+"ENLISTMENT_CHOICE" = "NEVER"\r
+"PROJECT_FILE_RELATIVE_PATH" = ""\r
+"NUMBER_OF_EXCLUDED_FILES" = "0"\r
+"ORIGINAL_PROJECT_FILE_PATH" = ""\r
+"NUMBER_OF_NESTED_PROJECTS" = "0"\r
+"SOURCE_CONTROL_SETTINGS_PROVIDER" = "PROVIDER"\r
+}\r
index a9f333b24316aa02b8a64f123dd299f82ed91e28..95cd42d7e4fb12a039c110e3197ec06e5f39b7e5 100644 (file)
@@ -4,7 +4,6 @@ using System.Linq;
 using System.Windows.Forms;\r
 using System.Collections.Generic;\r
 using System.Runtime.InteropServices;\r
-using LinkDotNet.MessageHandling.Contracts;\r
 using MaestroShared.Configuration;\r
 using MaestroShared.Commons;\r
 using MaestroShared.MessageBus;\r
diff --git a/client/OctopusClient/Resources.Designer.cs b/client/OctopusClient/Resources.Designer.cs
deleted file mode 100644 (file)
index c1b4549..0000000
+++ /dev/null
@@ -1,208 +0,0 @@
-//------------------------------------------------------------------------------\r
-// <auto-generated>\r
-//     This code was generated by a tool.\r
-//     Runtime Version:4.0.30319.42000\r
-//\r
-//     Changes to this file may cause incorrect behavior and will be lost if\r
-//     the code is regenerated.\r
-// </auto-generated>\r
-//------------------------------------------------------------------------------\r
-\r
-namespace OctopusClient {\r
-    using System;\r
-    \r
-    \r
-    /// <summary>\r
-    ///   A strongly-typed resource class, for looking up localized strings, etc.\r
-    /// </summary>\r
-    // This class was auto-generated by the StronglyTypedResourceBuilder\r
-    // class via a tool like ResGen or Visual Studio.\r
-    // To add or remove a member, edit your .ResX file then rerun ResGen\r
-    // with the /str option, or rebuild your VS project.\r
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]\r
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]\r
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]\r
-    internal class Resources {\r
-        \r
-        private static global::System.Resources.ResourceManager resourceMan;\r
-        \r
-        private static global::System.Globalization.CultureInfo resourceCulture;\r
-        \r
-        [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]\r
-        internal Resources() {\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Returns the cached ResourceManager instance used by this class.\r
-        /// </summary>\r
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
-        internal static global::System.Resources.ResourceManager ResourceManager {\r
-            get {\r
-                if (object.ReferenceEquals(resourceMan, null)) {\r
-                    global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OctopusClient.Resources", typeof(Resources).Assembly);\r
-                    resourceMan = temp;\r
-                }\r
-                return resourceMan;\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Overrides the current thread's CurrentUICulture property for all\r
-        ///   resource lookups using this strongly typed resource class.\r
-        /// </summary>\r
-        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]\r
-        internal static global::System.Globalization.CultureInfo Culture {\r
-            get {\r
-                return resourceCulture;\r
-            }\r
-            set {\r
-                resourceCulture = value;\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Adástükör.\r
-        /// </summary>\r
-        internal static string ADASTUKOR {\r
-            get {\r
-                return ResourceManager.GetString("ADASTUKOR", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Archive.\r
-        /// </summary>\r
-        internal static string ARCHIVE {\r
-            get {\r
-                return ResourceManager.GetString("ARCHIVE", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Global ID.\r
-        /// </summary>\r
-        internal static string GLOBAL_ID {\r
-            get {\r
-                return ResourceManager.GetString("GLOBAL_ID", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized resource of type System.Drawing.Bitmap.\r
-        /// </summary>\r
-        internal static System.Drawing.Bitmap ic_refresh_black_24dp_1x {\r
-            get {\r
-                object obj = ResourceManager.GetObject("ic_refresh_black_24dp_1x", resourceCulture);\r
-                return ((System.Drawing.Bitmap)(obj));\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to ID.\r
-        /// </summary>\r
-        internal static string ID {\r
-            get {\r
-                return ResourceManager.GetString("ID", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Keresés.\r
-        /// </summary>\r
-        internal static string KERESES {\r
-            get {\r
-                return ResourceManager.GetString("KERESES", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Keresés eredménye.\r
-        /// </summary>\r
-        internal static string KERESES_EREDMENYE {\r
-            get {\r
-                return ResourceManager.GetString("KERESES_EREDMENYE", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Mappa.\r
-        /// </summary>\r
-        internal static string MAPPA {\r
-            get {\r
-                return ResourceManager.GetString("MAPPA", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Mégse.\r
-        /// </summary>\r
-        internal static string MEGSE {\r
-            get {\r
-                return ResourceManager.GetString("MEGSE", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Módosítva.\r
-        /// </summary>\r
-        internal static string MODOSITVA {\r
-            get {\r
-                return ResourceManager.GetString("MODOSITVA", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to MosID.\r
-        /// </summary>\r
-        internal static string MOS_ID {\r
-            get {\r
-                return ResourceManager.GetString("MOS_ID", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Név.\r
-        /// </summary>\r
-        internal static string NEV {\r
-            get {\r
-                return ResourceManager.GetString("NEV", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Objektum ID.\r
-        /// </summary>\r
-        internal static string OBJECT_ID {\r
-            get {\r
-                return ResourceManager.GetString("OBJECT_ID", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Objektum típusa.\r
-        /// </summary>\r
-        internal static string OBJECT_TYPE {\r
-            get {\r
-                return ResourceManager.GetString("OBJECT_TYPE", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Nem lehet csatlakozni az octopus kiszolgálóhoz.\r
-        /// </summary>\r
-        internal static string OCTOPUS_KAPCSOLATI_HIBA {\r
-            get {\r
-                return ResourceManager.GetString("OCTOPUS_KAPCSOLATI_HIBA", resourceCulture);\r
-            }\r
-        }\r
-        \r
-        /// <summary>\r
-        ///   Looks up a localized string similar to Válasszon elemet.\r
-        /// </summary>\r
-        internal static string VALASSZON_ELEMET {\r
-            get {\r
-                return ResourceManager.GetString("VALASSZON_ELEMET", resourceCulture);\r
-            }\r
-        }\r
-    }\r
-}\r
index 66d314c4f3239bdfe8864d634feadf2790c13b5b..d292e904832705722e7991b7def2bdd23a19bb31 100644 (file)
@@ -19,17 +19,23 @@ namespace TrafficClient {
 \r
         public TrafficIDSelector() {\r
             InitializeComponent();\r
+        }\r
+\r
+        protected override void OnLoad(EventArgs e) {\r
+            base.OnLoad(e);\r
             InitializeTexts();\r
         }\r
 \r
+\r
         private void InitializeTexts() {\r
-            chkProblematic.Text = Resources.PROBLEMATIC;\r
+            TrafficMetadata metadata = parameters?.Configuration ?? new TrafficMetadata();\r
 \r
             dgTraffic.AutoGenerateColumns = false;\r
 \r
-            rbMaterial.Text = Resources.MATERIAL;\r
-            rbPromo.Text = Resources.PROMOTION;\r
-            rbAD.Text = Resources.ADVERTISEMENT;\r
+            chkProblematic.Text = metadata.Resource("PROBLEMATIC", Resources.PROBLEMATIC);\r
+            rbMaterial.Text = metadata.Resource("MATERIAL", Resources.MATERIAL);\r
+            rbPromo.Text = metadata.Resource("PROMOTION", Resources.PROMOTION); \r
+            rbAD.Text = metadata.Resource("ADVERTISEMENT", Resources.ADVERTISEMENT);\r
         }\r
 \r
         public TrafficParameters Parameters {\r
@@ -53,15 +59,16 @@ namespace TrafficClient {
 \r
             List<TrafficItem> items = null;\r
             dgTraffic.Columns.Clear();\r
+            TrafficMetadata metadata = parameters?.Configuration ?? new TrafficMetadata();\r
             if (rbMaterial.Checked) {\r
-                dgTraffic.Columns.AddRange(GetMaterialColumns());\r
+                dgTraffic.Columns.AddRange(GetMaterialColumns(metadata));\r
                 string searchText = Regex.Replace(txtFilter.Text, "[^0-9]", "");\r
                 items = trafficAPI.GetMaterials(searchText, chkProblematic.Checked, scheduledDate, scheduledDate);\r
             } else if (rbAD.Checked) {\r
-                dgTraffic.Columns.AddRange(GetADColumns());\r
+                dgTraffic.Columns.AddRange(GetADColumns(metadata));\r
                 items = trafficAPI.GetADs(txtFilter.Text, chkProblematic.Checked, scheduledDate, scheduledDate);\r
             } else if (rbPromo.Checked) {\r
-                dgTraffic.Columns.AddRange(GetPromoColumns());\r
+                dgTraffic.Columns.AddRange(GetPromoColumns(metadata));\r
                 items = trafficAPI.GetPromos(txtFilter.Text, chkProblematic.Checked, scheduledDate, scheduledDate);\r
             }\r
 \r
index 46573816c31b260928a8c31ed6dc819ddbccaeea..68cda895e3443e507dda37e7d966f55c7e74ec60 100644 (file)
@@ -1,9 +1,10 @@
 \r
+using MaestroShared.Configuration;\r
 using System.Windows.Forms;\r
 \r
 namespace TrafficClient {\r
     public partial class TrafficIDSelector {\r
-        DataGridViewColumn[] GetMaterialColumns() {\r
+        DataGridViewColumn[] GetMaterialColumns(TrafficMetadata metadata) {\r
             return new DataGridViewColumn[] {\r
                 new DataGridViewCheckBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells,\r
@@ -13,7 +14,7 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "MediaID",\r
-                    HeaderText = Resources.TRAFFICID,\r
+                    HeaderText = metadata.Resource("TRAFFICID", Resources.TRAFFICID),\r
                     Width = 100\r
                 },\r
                 new DataGridViewCheckBoxColumn() {\r
@@ -24,49 +25,49 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "Title",\r
-                    HeaderText = Resources.TITLE,\r
+                    HeaderText = metadata.Resource("TITLE", Resources.TITLE),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeNumber",\r
-                    HeaderText = Resources.EPISODENUMBER,\r
+                    HeaderText = metadata.Resource("EPISODENUMBER", Resources.EPISODENUMBER),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeID",\r
-                    HeaderText = Resources.EPISODEID,\r
+                    HeaderText = metadata.Resource("EPISODEID", Resources.EPISODEID),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "FirsBroadcastDate",\r
-                    HeaderText = Resources.FIRSTBROADCASTDATE,\r
+                    HeaderText = metadata.Resource("FIRSTBROADCASTDATE", Resources.FIRSTBROADCASTDATE),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "NextBroadcastDate",\r
-                    HeaderText = Resources.NEXTBROADCASTDATE,\r
+                    HeaderText = metadata.Resource("NEXTBROADCASTDATE", Resources.NEXTBROADCASTDATE),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "SegmentCount",\r
-                    HeaderText = Resources.SEGMENTCOUNT,\r
+                    HeaderText = metadata.Resource("SEGMENTCOUNT", Resources.SEGMENTCOUNT),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeTitle",\r
-                    HeaderText = Resources.EPISODETITLE,\r
+                    HeaderText = metadata.Resource("EPISODETITLE", Resources.EPISODETITLE),\r
                     Width = 100\r
                 },\r
             };\r
         }\r
 \r
-        DataGridViewColumn[] GetADColumns() {\r
+        DataGridViewColumn[] GetADColumns(TrafficMetadata metadata) {\r
             return new DataGridViewColumn[] {\r
                 new DataGridViewCheckBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells,\r
@@ -76,7 +77,7 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "MediaID",\r
-                    HeaderText = Resources.TRAFFICID,\r
+                    HeaderText = metadata.Resource("TRAFFICID", Resources.TRAFFICID),\r
                     Width = 100\r
                 },\r
                 new DataGridViewCheckBoxColumn() {\r
@@ -87,25 +88,25 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "Title",\r
-                    HeaderText = Resources.TITLE,\r
+                    HeaderText = metadata.Resource("TITLE", Resources.TITLE),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeNumber",\r
-                    HeaderText = Resources.EPISODENUMBER,\r
+                    HeaderText = metadata.Resource("EPISODENUMBER", Resources.EPISODENUMBER),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeTitle",\r
-                    HeaderText = Resources.EPISODETITLE,\r
+                    HeaderText = metadata.Resource("EPISODETITLE", Resources.EPISODETITLE),\r
                     Width = 100\r
                 },\r
             };\r
         }\r
 \r
-        DataGridViewColumn[] GetPromoColumns() {\r
+        DataGridViewColumn[] GetPromoColumns(TrafficMetadata metadata) {\r
             return new DataGridViewColumn[] {\r
                 new DataGridViewCheckBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells,\r
@@ -115,7 +116,7 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "MediaID",\r
-                    HeaderText = Resources.TRAFFICID,\r
+                    HeaderText = metadata.Resource("TRAFFICID", Resources.TRAFFICID),\r
                     Width = 100\r
                 },\r
                 new DataGridViewCheckBoxColumn() {\r
@@ -126,13 +127,13 @@ namespace TrafficClient {
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "Title",\r
-                    HeaderText = Resources.TITLE,\r
+                    HeaderText = metadata.Resource("TITLE", Resources.TITLE),\r
                     Width = 100\r
                 },\r
                 new DataGridViewTextBoxColumn() {\r
                     AutoSizeMode = DataGridViewAutoSizeColumnMode.None,\r
                     DataPropertyName = "EpisodeTitle",\r
-                    HeaderText = Resources.EPISODETITLE,\r
+                    HeaderText = metadata.Resource("EPISODETITLE", Resources.EPISODETITLE),\r
                     Width = 100\r
                 },\r
             };\r
index 04178b35f330c3304bd5c166c6c1be018ff330b9..7589a124a90900f3125c7af6564c5d7c1b979a20 100644 (file)
@@ -14,8 +14,8 @@ Az ablakban látható információs- és vezérlőelemek:
 * Rögzített anyag hossza: felvétel közben mutatja a hosszt.\r
 * Felvétel gomb: megjelenik a metaadat azonosító kiválasztás ablak. Sikeres kiválasztás után a gombon megjelenik egy visszaszámláló, és amikor az a nullához ér, elkezdődik a rögzítés a kiválasztott hangbemenetről.\r
 * Pillanat állj gomb: felvétel közben megszakítható a folyamat, újra rákattintva folyatatódik a rögzítés.\r
-* Állj gomb: a rögzítés befelyezése. A rögzített állományt a program  beállítások figyelembe vételévelfogja elmozgatni a megfelelő névvel a megfelelő helyre.\r
-* Hangbement kiválasztása gomb: megjelenik a lehetséges hangbemeneteket tartalmaző legördülő menü, a kiválasztást megerősítés után a program megjegyzi. Amennyiben még nem volt kiválasztott hangbemenet, a program indulásakor automatikusan megnyílik ez az ablak.  \r
+* Állj gomb: a rögzítés befelyezése. A rögzített állományt a program beállítások figyelembe vételével fogja elmozgatni a megfelelő névvel a megfelelő helyre.\r
+* Hangbement kiválasztása gomb: megjelenik a lehetséges hangbemeneteket tartalmazó legördülő menü, a kiválasztást megerősítés után a program megjegyzi. Amennyiben még nem volt kiválasztott hangbemenet, a program indulásakor automatikusan megnyílik ez az ablak.  \r
 \r
 ![Choose audio device](audiorecorder-input.png)\r
 \r
@@ -30,7 +30,7 @@ A rögzített fájl formátuma fixen:
 > Bit depth : 32 bits  \r
 \r
 * Fájlnév: a rögzített fájl útvonala.\r
-* Lejátszás: a korábban rögzített fájlt lejátssza a WAV fájlkiterjesztéshez a rendszerben beállított lejátszóval. \r
+* Lejátszás: a korábban rögzített fájlt lejátssza az operációs rendszerben társított audió lejátszó programmal. \r
 * Hangerő kijelzés: a konfigurációs állományban megadott szinthez képest az aktuálisan érzékelt hang erőssége. A halk hangok zöld, a hangos hangok sárga a nagyon hangos hangok a piros tartományban kerülnek kijelzésre.\r
 * Rögzítés hangereje: a csúszka segítségével a rögzítés hangereje állítható be. Ezt javasolt úgy megtenni, hogy a hangerő kijelzés minél kevesebbet tartózkodjon a piros tartományban, de hagyja el a zöldet.\r
 \r
@@ -42,7 +42,123 @@ A felvétel gombra kattintva minden alkalommal megjelenik a metaadat kiválaszt
 \r
 Az ablakban látható információs- és vezérlőelemek:\r
 \r
-\r
+* Felső keresősáv: egy létező azonosítót begépelve, majd Enter billenyűt nyomva, a program megkeresi az azonosító első előfordulását az adástükrökben, illetve ha egyik tükörben sem található, akkor a sztori mappákban. Sikeres esetben odanavigál és kipipálja a találatot. A keresés nem veszi figyelembe az alatta elhelyezkedő szűrőket.\r
+* Adástükör / Sztori mappa: az adásnap szűrő állapotát és a tárolók szűrő tartalmát befolyásolják. \r
+* Adásnap szűrő: Adástükör szűrés esetén aktív és kiválasztható vele egy tetszőleges adásnap. Sztori mappa szűrés esetén inaktív.\r
+* Tárolók szűrő: Adástükör szűrés esetén a kiválasztott adásnap adástükreit listázza ki időrendi sorrendben. Sztori mappa szűrés esetén a sztori mappákat mutatja. Módosítása frissíti a listát. \r
+* Frissítés: amennyiben ki van töltve a felső keresősáv, újból lefuttatja a keresést. Egyéb esetben a beállított szűrőknek megfelelően frissíti a listát.\r
+* Jelölőnégyzet: a kívánt azonosító előtti jelölőnégyzetet kipipálva az egérrel, vagy a szóköz billenytű segítségével, az azonosító kiválasztásra kerül és megjelenik az alsó keresősávban.\r
+* Alső keresősáv: működése megegyezik a felső keresősávval.\r
+* Keresés: az alsó keresősávban beírt azonosítóra futtatja a keresést.\r
+* Mégsem: ablak bezárása a metaadat kiválasztása nélkül.\r
+* Rendben: ablak bezárása a metaadat kiválasztásával. Csak akkor aktív, ha létező azonosítót választottunk ki.\r
+       \r
 ## Konfigurációs állomány\r
 \r
+```json\r
+{\r
+    "deviceName": "Internal Microphone",\r
+    "peekMeterStep": 200,\r
+    "workingDirectory": "file://C:\\temp",\r
+    "uiFileName": "audiorecorder.en",\r
+    "metadatas": [\r
+        {\r
+            "$type": "NativeOctopusMetadata",\r
+            "uiFileName": "audiorecorder.en",\r
+            "server": {\r
+                "address": " http://10.10.10.10/api/v1/",\r
+                "userName": "username",\r
+                "password": "encoded password",\r
+                "timeout": 3000\r
+            }\r
+        }\r
+    ],\r
+    "octopusTarget": {\r
+        "processor": "FTPTargetProcessor",\r
+        "outputFormat": "%ID%",\r
+        "subFolderFormat": "%IDROOT%-%TEXT%",\r
+        "remote": {\r
+            "address": "ftp://localhost",\r
+            "userName": "username",\r
+            "password": "encoded password",\r
+            "timeout": 1000\r
+        }\r
+    }\r
+}\r
+```\r
+\r
+### deviceName\r
+A kiválasztott hangbement neve.\r
+\r
+### peekMeterStep\r
+A hangerő kijelzést szabályozó konstans, módosítása nem javasolt.\r
+> **200**\r
+\r
+### workingDirectory\r
+A hangfájlok rögzítésének helye.\r
+> **file://C:\\temp**\r
+\r
+### uiFileName\r
+A program felületének honosított címkéit tartalmazó JSON állomány neve.\r
+> **audiorecorder.en**\r
+\r
+### metadatas\r
+Lehetséges metaadat tallózók gyüjteménye.\r
+\r
+### metadatas.$type\r
+A tallózó típusa.\r
+> **NativeOctopusMetadata**: direkt Octopus kapcsolat REST API-n keresztül. \r
+\r
+### metadatas.uiFileName\r
+A tallózó felületének honosított címkéit tartalmazó JSON állomány neve.\r
+> **audiorecorder.en**\r
+\r
+### metadatas.server\r
+A szolgáltatás elérhetősége a távoli szerveren.\r
+\r
+### octopusTarget\r
+A rögzítés végeztével alkalmazandó transzfer jellemzői.\r
+\r
+### octopusTarget.processor\r
+A transzfer típusa.\r
+> UNCTargetProcessor: helyi mappából (osztásból), helyi mappába (osztásba)  \r
+> **FTPTargetProcessor**: helyi mappából (osztásból), FTP mappába  \r
+> FXPTargetProcessor: FTP mappából, FTP mappába  \r
+       \r
+### octopusTarget.outputFormat\r
+A transzferált állomány névképzése, ami fix szöveg és az alább cimkék kombinációja.\r
+> %ID%: A kiválasztott metaadat azonosító.  \r
+> %SOURCENAME%: A forrás fájl neve.  \r
+> %TEXT%: A kiválasztott metaadat címe.  \r
+> %TIMESTAMP%: Időbélyeg "yyyyMMddhhmmss" formátumban.  \r
+> %DATESTAMP%: Időbélyeg "yyyyMMdd" formátumban.  \r
+> %USERNAME%: Windows felhasználó.  \r
+> %COMPUTERNAME%: Számítógépnév.  \r
+\r
+### octopusTarget.subFolderFormat\r
+A transzferált állomány mappájának névképzése. Ha még nem létezik ilyen mppa, létrehozza azt.\r
+A névképzésben ugyan azok a cimkék használhtóak mint az __outputFormat__ kapcsolóban. \r
+\r
+### octopusTarget.remote\r
+A szolgáltatás elérhetősége a távoli szerveren.\r
+\r
+__A "szolgáltatás elérhetősége" típusú bejegyzések paraméterei:__\r
+\r
+### address\r
+A távoli szerveren futó szolgáltatás elérésének protokollja, címe és portja.\r
+> A támogatott protokollok:  \r
+> file://  \r
+> ftp://  \r
+\r
+### userName\r
+A csatlakozáshoz használható felhasználói név.\r
+\r
+### password\r
+A felhasználói névhez tartozó jelszónak a __PasswordEncrypter.exe__ programmal titkosított lenyomata.\r
+\r
+### timeout\r
+Csatlakozás időtúllépése ezredmásodpercben.\r
+> **3000**\r
+\r
 ## Naplózás\r
+A naplózást az NLOG alrendszer végzi: https://github.com/nlog/nlog/wiki
\ No newline at end of file
index 3f56d9e7eccc3c106108bf89b6855f14087f2891..d1e87f236ef77e04ee7e236743534c85ae809fb8 100644 (file)
@@ -3,33 +3,31 @@
 \r
 A DxPlay alkalmazás lehetővé teszi a nagyfelbontású MXF fájlok lejátszását, és a megnyitott anyaghoz PlanAir szegmens adatok hozzárendelését.\r
 \r
-## MediaCube server\r
-* Platformfüggetlen Java OSGi alkalmazás média állományok és metaadataik kezeléséhez.\r
-* Magas rendelkezésreállású Linux cluster környezet.\r
-* Tetszőlegesen ütemezhető, könnyen konfigurálható és bővíthető folyamatkezelés.\r
-* A támogatott folyamatok: TSM archiválás/visszatöltés on-demand és automatizált módon, média másolás/mozgatás tárhelyek között, tárhely felszabadítás lejárati feltételek teljesülésekor, média transzkódolás.\r
-* A tárhely kezeléshez beépített API: tsm, ftp, smb, filesystem támogatással.\r
-* Konfigurálható metaadat kezelés, Full-Text keresési lehetőséggel.\r
-* Webes HTML5 kliens: keresés, kisfelbontású videók megtekintése, on-demand visszatöltés, folyamatok kézi indítása, folyamatok monitorozása, média mozgatási folyamatok megtekintése idővonalon.\r
-* REST API az adatok lekérdezéséhez, módosításához.\r
-\r
-## MediaCube Maestro\r
-* Windows .NET vastag kliens a média állományok és metaadataik felhasználói kezeléséhez.\r
-* Tálca alkalmazásként vagy ablakban futva több forrásmappa változás-monitorozása lehetséges, változás esetén felhasználói értesítés.\r
-* Beépített videólejátszó a nagyfelbontású anyagok megtekintéséhez és szegmentáláshoz.\r
-* Beépített hangrögzítő a hangalámondás és a telefonos interjúk felvételéhez.\r
-* Támogatott források: smb, ftp, filesystem\r
-* Társrendszerekből érkező metaadat hozzárendelése videó állományhoz, a cél állományok fájlnév képzése sablonokkal konfigurálva.\r
-* Egy vagy több forrásfájlra tetszőleges számú célba történő másolási/mozgatási folyamat elindítása.\r
-* Konfigurációban engedélyezhető munkafolyamat segítő funkciók: lejárati dátumok beállítása, jelzés küldése emailben, metaadatok exportálása specifikus formátumokba.\r
-* Televíziós munkahelyekre kihegyezett médiakezelési sablonok: szerkesztő, szerkesztő-riporter, vágó, adásmegtekintő, adáslebonyolító.\r
-* FXP alapú átvitel támogatása a forrás és a cél tárolók között.\r
+## Működés\r
+A program elindítása után a főablak jelenik meg.\r
 \r
-## Beállítások\r
 ![Dxplay Main](dxplay-main.png)\r
 \r
-* Octopus hírrendszer: metaadat forrásként REST API-n keresztül.\r
-* PlanAir adástervező rendszer: lekérdezés, adásinformáció visszatöltése SQL tárolt eljáráson keresztül (adáskész, szegmensadatok, új kópiák létrehozása).\r
-* Morpheus adáskijátszó rendszer: XML alapú metaadat betöltés.\r
-* NEXIO videóserver: API-n keresztül a MediaBase lekérdezése, metaadatok feltöltése.\r
-* TSM: API-n keresztül anyag betöltés/visszatöltés.\r
+A videóanyag megnyitására több módon is lehetőség van:\r
+* Az operációs rendszerben ezt az alkalmzást társítjuk az MXF fájlkiterjesztéshez.\r
+* A megnyitott alkalmazásra húzd és ejtsd módszerrel rádobjuk a fájlrendszerből a megnyitni kívánt állományt.\r
+* A File menü Open funkciójával (Ctrl+O)\r
+\r
+A fájl megnyitása után a média első képkockája válik láthatóvá a felületen. A vezérlők és a gyorsítóbillenytűk segítségével lehet a tartalmat lejátszani. A szegmensek definiálásához metaadat tallózóban ki kell választani egy azonosítót a jelölőnégyzet kipipálásával. Ismert azonosító esetén a felső keresősávba beírva és Enter-t nyomva, listázhatók ki a találatok.\r
+\r
+Ha a megnyitott fájl neve egy létező azonosító, akkor a kereső automatikusan listázza és a listában kijleöli azt.\r
+\r
+\r
+## Gyorsító billenytűk\r
+Ctrl+O : Fájl megnyitása.  \r
+Ctrl+S : A változtatások elfogadása, tehát a fájl mozgatása a célmappába és a szegmens adatok mentése a PlanAir rendszerbe.  \r
+Space : fájl lejátszása, lejátszás szüneteltetése. Ha a metaadat tallózó az aktív, akkor ott az aktuális metaadat azonosítójának kijelölése, vagy annak eltávolítása. Ha nincs verziója a kiválasztott bejegyzésnek, akkor létrehoz egyet.  \r
+Shift+Space : Ha a metaadat tallózó az aktív, új verzió létrehozását végzi el a kijelölt anyagon. A lista automatikusan frissül utána.  \r
+Esc: teljes képernyős módban, kilép ablak módba. A teljes képrnyős módba lépéshez a képen duplán kell kattintani a bal egérgombbal. Ablak módban kilép az alkalmazás.  \r
+Balra nyíl: Léptetés az előző képkockára.  \r
+Jobbra nyíl: Léptetés a következő képkockára.  \r
+Ctrl+Balra nyíl: Léptetés 5 képkockával vissza.  \r
+Ctrl+Jobbra nyíl: Léptetés 5 képkockával előre.    \r
+\r
+## Beállítások\r
+\r